@kong-ui-public/entities-plugins 4.0.0 → 4.0.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.
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
`+e.slice(o,r),o=r+1),l=s;return c+=`
|
|
30
30
|
`,e.length-o>n&&l>o?c+=e.slice(o,l)+`
|
|
31
31
|
`+e.slice(l+1):c+=e.slice(o),c.slice(1)}function np(e){for(var n="",i=0,a,o=0;o<e.length;i>=65536?o+=2:o++)i=on(e,o),a=Me[i],!a&&an(i)?(n+=e[o],i>=65536&&(n+=e[o+1])):n+=a||Xd(i);return n}function ip(e,n,i){var a="",o=e.tag,r,l,s;for(r=0,l=i.length;r<l;r+=1)s=i[r],e.replacer&&(s=e.replacer.call(i,String(r),s)),(lt(e,n,s,!1,!1)||typeof s>"u"&<(e,n,null,!1,!1))&&(a!==""&&(a+=","+(e.condenseFlow?"":" ")),a+=e.dump);e.tag=o,e.dump="["+a+"]"}function So(e,n,i,a){var o="",r=e.tag,l,s,c;for(l=0,s=i.length;l<s;l+=1)c=i[l],e.replacer&&(c=e.replacer.call(i,String(l),c)),(lt(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&<(e,n+1,null,!0,!0,!1,!0))&&((!a||o!=="")&&(o+=Bi(e,n)),e.dump&&tn===e.dump.charCodeAt(0)?o+="-":o+="- ",o+=e.dump);e.tag=r,e.dump=o||"[]"}function ap(e,n,i){var a="",o=e.tag,r=Object.keys(i),l,s,c,d,u;for(l=0,s=r.length;l<s;l+=1)u="",a!==""&&(u+=", "),e.condenseFlow&&(u+='"'),c=r[l],d=i[c],e.replacer&&(d=e.replacer.call(i,c,d)),lt(e,n,c,!1,!1)&&(e.dump.length>1024&&(u+="? "),u+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),lt(e,n,d,!1,!1)&&(u+=e.dump,a+=u));e.tag=o,e.dump="{"+a+"}"}function op(e,n,i,a){var o="",r=e.tag,l=Object.keys(i),s,c,d,u,m,f;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new Ve("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)f="",(!a||o!=="")&&(f+=Bi(e,n)),d=l[s],u=i[d],e.replacer&&(u=e.replacer.call(i,d,u)),lt(e,n+1,d,!0,!0,!0)&&(m=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,m&&(e.dump&&tn===e.dump.charCodeAt(0)?f+="?":f+="? "),f+=e.dump,m&&(f+=Bi(e,n)),lt(e,n+1,u,!0,m)&&(e.dump&&tn===e.dump.charCodeAt(0)?f+=":":f+=": ",f+=e.dump,o+=f));e.tag=r,e.dump=o||"{}"}function Mo(e,n,i){var a,o,r,l,s,c;for(o=i?e.explicitTypes:e.implicitTypes,r=0,l=o.length;r<l;r+=1)if(s=o[r],(s.instanceOf||s.predicate)&&(!s.instanceOf||typeof n=="object"&&n instanceof s.instanceOf)&&(!s.predicate||s.predicate(n))){if(i?s.multi&&s.representName?e.tag=s.representName(n):e.tag=s.tag:e.tag="?",s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,po.call(s.represent)==="[object Function]")a=s.represent(n,c);else if(uo.call(s.represent,c))a=s.represent[c](n,c);else throw new Ve("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=a}return!0}return!1}function lt(e,n,i,a,o,r,l){e.tag=null,e.dump=i,Mo(e,i,!1)||Mo(e,i,!0);var s=po.call(e.dump),c=a,d;a&&(a=e.flowLevel<0||e.flowLevel>n);var u=s==="[object Object]"||s==="[object Array]",m,f;if(u&&(m=e.duplicates.indexOf(i),f=m!==-1),(e.tag!==null&&e.tag!=="?"||f||e.indent!==2&&n>0)&&(o=!1),f&&e.usedDuplicates[m])e.dump="*ref_"+m;else{if(u&&f&&!e.usedDuplicates[m]&&(e.usedDuplicates[m]=!0),s==="[object Object]")a&&Object.keys(e.dump).length!==0?(op(e,n,e.dump,o),f&&(e.dump="&ref_"+m+e.dump)):(ap(e,n,e.dump),f&&(e.dump="&ref_"+m+" "+e.dump));else if(s==="[object Array]")a&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?So(e,n-1,e.dump,o):So(e,n,e.dump,o),f&&(e.dump="&ref_"+m+e.dump)):(ip(e,n,e.dump),f&&(e.dump="&ref_"+m+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&ep(e,e.dump,n,r,c);else{if(s==="[object Undefined]"||e.skipInvalid)return!1;throw new Ve("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(d=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?d="!"+d:d.slice(0,18)==="tag:yaml.org,2002:"?d="!!"+d.slice(18):d="!<"+d+">",e.dump=d+" "+e.dump)}return!0}function rp(e,n){var i=[],a=[],o,r;for(xi(e,i,a),o=0,r=a.length;o<r;o+=1)n.duplicates.push(i[a[o]]);n.usedDuplicates=new Array(r)}function xi(e,n,i){var a,o,r;if(e!==null&&typeof e=="object")if(o=n.indexOf(e),o!==-1)i.indexOf(o)===-1&&i.push(o);else if(n.push(e),Array.isArray(e))for(o=0,r=e.length;o<r;o+=1)xi(e[o],n,i);else for(a=Object.keys(e),o=0,r=a.length;o<r;o+=1)xi(e[a[o]],n,i)}function lp(e,n){n=n||{};var i=new Zd(n);i.noRefs||rp(e,i);var a=e;return i.replacer&&(a=i.replacer.call({"":a},"",a)),lt(i,0,a,!0,!0)?i.dump+`
|
|
32
|
-
`:""}var sp=lp,cp={dump:sp};function Ii(e,n){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var dp=Ie,pp=va,up=Va,mp=Ua,gp=Ya,fp=yi,Ap=co.load,hp=co.loadAll,yp=cp.dump,bp=Ve,wp={binary:Ka,float:Pa,map:Na,null:La,pairs:Xa,set:Ja,timestamp:Ha,bool:Da,int:ja,merge:za,omap:qa,seq:Ra,str:Ta},Cp=Ii("safeLoad","load"),kp=Ii("safeLoadAll","loadAll"),Ep=Ii("safeDump","dump"),Bp={Type:dp,Schema:pp,FAILSAFE_SCHEMA:up,JSON_SCHEMA:mp,CORE_SCHEMA:gp,DEFAULT_SCHEMA:fp,load:Ap,loadAll:hp,dump:yp,YAMLException:bp,types:wp,safeLoad:Cp,safeLoadAll:kp,safeDump:Ep};const Op={class:"yaml-config"},Si=t.defineComponent({__name:"YamlCodeBlock",props:{yamlRecord:{type:Object,required:!0}},setup(e){const n=e,i=t.computed(()=>{const a=Object.fromEntries(Object.entries(n.yamlRecord).filter(([,o])=>o!==null&&o!==""&&(Array.isArray(o)?o.length!==0:!0)));return Object.keys(a).length===0&&a.constructor===Object?"":Bp.dump(a).trim()});return(a,o)=>{const r=t.resolveComponent("KCodeBlock");return t.openBlock(),t.createElementBlock("div",Op,[n.yamlRecord?(t.openBlock(),t.createBlock(r,{key:0,id:"yaml-codeblock",code:i.value,language:"yaml",theme:"dark"},null,8,["code"])):t.createCommentVNode("",!0)])}}}),xp={key:0,class:"config-card-display-form"},Ip=["data-testid"],Sp={key:0,class:"config-card-prop-section-title"},Mp=t.defineComponent({__name:"ConfigCardDisplay",props:{config:{type:Object,required:!1,default:()=>({})},propertyCollections:{type:Object,required:!1,default:()=>null},format:{type:String,required:!1,default:"structured",validator:e=>["structured","yaml","json"].includes(e)},propListTypes:{type:Array,required:!1,default:()=>[]},record:{type:Object,required:!1,default:()=>({})},fetcherUrl:{type:String,required:!1,default:""}},setup(e){const n=e,i=t.useSlots(),{i18n:{t:a}}=ke.useI18n(),o=l=>!!(l.tooltip||i[`${l.key}-label-tooltip`]),r=t.computed(()=>{if(!n.record)return n.record;const l=JSON.parse(JSON.stringify(n.record));return delete l.created_at,delete l.updated_at,l});return(l,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.format==="structured"?(t.openBlock(),t.createElementBlock("div",xp,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.propListTypes,c=>(t.openBlock(),t.createElementBlock("div",{key:`config-card-details-${c}-props`,class:t.normalizeClass(`config-card-details-${c}-props`),"data-testid":`config-card-details-${c}-props`},[c!=="basic"?(t.openBlock(),t.createElementBlock("div",Sp,t.toDisplayString(c==="advanced"?t.unref(a)("baseConfigCard.sections.advanced"):t.unref(a)("baseConfigCard.sections.plugin")),1)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.propertyCollections[c],d=>(t.openBlock(),t.createBlock(xa,{key:d.key,item:d},t.createSlots({label:t.withCtx(()=>[t.renderSlot(l.$slots,`${d.key}-label`,{row:d},void 0,!0)]),[d.key]:t.withCtx(({rowValue:u})=>[t.renderSlot(l.$slots,d.key,{row:d,rowValue:u},void 0,!0)]),_:2},[o(d)?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(l.$slots,`${d.key}-label-tooltip`,{row:d},void 0,!0)]),key:"0"}:void 0]),1032,["item"]))),128))],10,Ip))),128))])):t.createCommentVNode("",!0),e.format==="json"&&n.record?(t.openBlock(),t.createBlock(mi,{key:1,config:n.config,"fetcher-url":n.fetcherUrl,"json-record":r.value,"request-method":"get"},null,8,["config","fetcher-url","json-record"])):t.createCommentVNode("",!0),e.format==="yaml"&&n.record?(t.openBlock(),t.createBlock(Si,{key:2,"yaml-record":r.value},null,8,["yaml-record"])):t.createCommentVNode("",!0)],64))}}),vp=_e(Mp,[["__scopeId","data-v-147a2f70"]]),mt="24px",Vn=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},Tp=e=>(t.pushScopeId("data-v-20c17c32"),e=e(),t.popScopeId(),e),Rp=["aria-hidden"],Np={key:0,"data-testid":"kui-icon-svg-title"},Vp=Tp(()=>t.createElementVNode("path",{d:"M11 19V13H5V11H11V5H13V11H19V13H13V19H11Z",fill:"currentColor"},null,-1)),Lp=t.defineComponent({__name:"AddIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:mt,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return mt}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon add-icon","data-testid":"kui-icon-wrapper-add-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-add-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Np,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Vp],8,Rp))]),_:1},8,["aria-hidden","style"]))}}),Dp=Vn(Lp,[["__scopeId","data-v-20c17c32"]]),jp=e=>(t.pushScopeId("data-v-b939f1df"),e=e(),t.popScopeId(),e),Pp=["aria-hidden"],Up={key:0,"data-testid":"kui-icon-svg-title"},Yp=jp(()=>t.createElementVNode("path",{d:"M14 9.9V8.2C14.55 7.96667 15.1125 7.79167 15.6875 7.675C16.2625 7.55833 16.8667 7.5 17.5 7.5C17.9333 7.5 18.3583 7.53333 18.775 7.6C19.1917 7.66667 19.6 7.75 20 7.85V9.45C19.6 9.3 19.1958 9.1875 18.7875 9.1125C18.3792 9.0375 17.95 9 17.5 9C16.8667 9 16.2583 9.07917 15.675 9.2375C15.0917 9.39583 14.5333 9.61667 14 9.9ZM14 15.4V13.7C14.55 13.4667 15.1125 13.2917 15.6875 13.175C16.2625 13.0583 16.8667 13 17.5 13C17.9333 13 18.3583 13.0333 18.775 13.1C19.1917 13.1667 19.6 13.25 20 13.35V14.95C19.6 14.8 19.1958 14.6875 18.7875 14.6125C18.3792 14.5375 17.95 14.5 17.5 14.5C16.8667 14.5 16.2583 14.575 15.675 14.725C15.0917 14.875 14.5333 15.1 14 15.4ZM14 12.65V10.95C14.55 10.7167 15.1125 10.5417 15.6875 10.425C16.2625 10.3083 16.8667 10.25 17.5 10.25C17.9333 10.25 18.3583 10.2833 18.775 10.35C19.1917 10.4167 19.6 10.5 20 10.6V12.2C19.6 12.05 19.1958 11.9375 18.7875 11.8625C18.3792 11.7875 17.95 11.75 17.5 11.75C16.8667 11.75 16.2583 11.8292 15.675 11.9875C15.0917 12.1458 14.5333 12.3667 14 12.65ZM6.5 16C7.28333 16 8.04583 16.0875 8.7875 16.2625C9.52917 16.4375 10.2667 16.7 11 17.05V7.2C10.3167 6.8 9.59167 6.5 8.825 6.3C8.05833 6.1 7.28333 6 6.5 6C5.9 6 5.30417 6.05833 4.7125 6.175C4.12083 6.29167 3.55 6.46667 3 6.7V16.6C3.58333 16.4 4.1625 16.25 4.7375 16.15C5.3125 16.05 5.9 16 6.5 16ZM13 17.05C13.7333 16.7 14.4708 16.4375 15.2125 16.2625C15.9542 16.0875 16.7167 16 17.5 16C18.1 16 18.6875 16.05 19.2625 16.15C19.8375 16.25 20.4167 16.4 21 16.6V6.7C20.45 6.46667 19.8792 6.29167 19.2875 6.175C18.6958 6.05833 18.1 6 17.5 6C16.7167 6 15.9417 6.1 15.175 6.3C14.4083 6.5 13.6833 6.8 13 7.2V17.05ZM12 20C11.2 19.3667 10.3333 18.875 9.4 18.525C8.46667 18.175 7.5 18 6.5 18C5.8 18 5.1125 18.0917 4.4375 18.275C3.7625 18.4583 3.11667 18.7167 2.5 19.05C2.15 19.2333 1.8125 19.225 1.4875 19.025C1.1625 18.825 1 18.5333 1 18.15V6.1C1 5.91667 1.04583 5.74167 1.1375 5.575C1.22917 5.40833 1.36667 5.28333 1.55 5.2C2.31667 4.8 3.11667 4.5 3.95 4.3C4.78333 4.1 5.63333 4 6.5 4C7.46667 4 8.4125 4.125 9.3375 4.375C10.2625 4.625 11.15 5 12 5.5C12.85 5 13.7375 4.625 14.6625 4.375C15.5875 4.125 16.5333 4 17.5 4C18.3667 4 19.2167 4.1 20.05 4.3C20.8833 4.5 21.6833 4.8 22.45 5.2C22.6333 5.28333 22.7708 5.40833 22.8625 5.575C22.9542 5.74167 23 5.91667 23 6.1V18.15C23 18.5333 22.8375 18.825 22.5125 19.025C22.1875 19.225 21.85 19.2333 21.5 19.05C20.8833 18.7167 20.2375 18.4583 19.5625 18.275C18.8875 18.0917 18.2 18 17.5 18C16.5 18 15.5333 18.175 14.6 18.525C13.6667 18.875 12.8 19.3667 12 20Z",fill:"currentColor"},null,-1)),Gp=t.defineComponent({__name:"BookIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:mt,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return mt}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon book-icon","data-testid":"kui-icon-wrapper-book-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-book-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Up,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Yp],8,Pp))]),_:1},8,["aria-hidden","style"]))}}),Fp=Vn(Gp,[["__scopeId","data-v-b939f1df"]]),Hp=e=>(t.pushScopeId("data-v-f1d0332e"),e=e(),t.popScopeId(),e),zp=["aria-hidden"],Kp={key:0,"data-testid":"kui-icon-svg-title"},qp=Hp(()=>t.createElementVNode("path",{d:"M12 15.4L6 9.4L7.4 8L12 12.6L16.6 8L18 9.4L12 15.4Z",fill:"currentColor"},null,-1)),Xp=t.defineComponent({__name:"ChevronDownIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:mt,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return mt}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon chevron-down-icon","data-testid":"kui-icon-wrapper-chevron-down-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-chevron-down-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Kp,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),qp],8,zp))]),_:1},8,["aria-hidden","style"]))}}),Jp=Vn(Xp,[["__scopeId","data-v-f1d0332e"]]),Zp=e=>(t.pushScopeId("data-v-288b6455"),e=e(),t.popScopeId(),e),Wp=["aria-hidden"],Qp={key:0,"data-testid":"kui-icon-svg-title"},_p=Zp(()=>t.createElementVNode("path",{d:"M6.4 19L5 17.6L10.6 12L5 6.4L6.4 5L12 10.6L17.6 5L19 6.4L13.4 12L19 17.6L17.6 19L12 13.4L6.4 19Z",fill:"currentColor"},null,-1)),$p=t.defineComponent({__name:"CloseIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:mt,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return mt}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon close-icon","data-testid":"kui-icon-wrapper-close-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-close-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Qp,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),_p],8,Wp))]),_:1},8,["aria-hidden","style"]))}}),eu=Vn($p,[["__scopeId","data-v-288b6455"]]),tu={class:"config-card-title","data-testid":"config-card-title"},nu={class:"config-card-actions"},iu=["href"],au={class:"config-card-details-section"},ou=t.defineComponent({__name:"EntityBaseConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId)},configSchema:{type:Object,required:!1,default:()=>({})},pluginConfigKey:{type:String,required:!1,default:""},pluginConfigSchema:{type:Object,required:!1,default:()=>({})},fetchUrl:{type:String,required:!0},dataKey:{type:String,required:!1,default:""},hideTitle:{type:Boolean,default:!1},label:{type:String,default:"Format: ",required:!1},configCardDoc:{type:String,default:"",required:!1},titleTag:{type:String,default:"h2"}},emits:["loading","fetch:success","fetch:error"],setup(e,{emit:n}){var i;const a=n,o=e,{i18n:{t:r}}=ke.useI18n(),{getMessageFromError:l}=ke.useErrors(),{convertKeyToTitle:s}=ke.useStringHelpers(),{axiosInstance:c}=ke.useAxios((i=o.config)==null?void 0:i.axiosRequestConfig),d=[{label:r("baseConfigCard.general.structuredFormat"),value:"structured",selected:!0},{label:"JSON",value:"json"},{label:"YAML",value:"yaml"}],u=t.ref("structured"),m=g=>{u.value=g==null?void 0:g.value},f={id:{type:_.ID,label:r("baseConfigCard.commonFields.id_label"),order:0,section:xe.Basic},name:{order:1,section:xe.Basic},enabled:{type:_.BadgeStatus,order:2,section:xe.Basic},updated_at:{type:_.Date,label:r("baseConfigCard.commonFields.updated_at_label"),order:3,section:xe.Basic},created_at:{type:_.Date,label:r("baseConfigCard.commonFields.created_at_label"),order:4,section:xe.Basic},tags:{type:_.BadgeTag,order:-1,section:xe.Basic}},h=t.ref(!1),C=t.ref(!1),b=t.ref(""),y=t.ref({}),B=t.computed(()=>{var g,E,k;if(!y.value)return[];const v=[],G=Object.keys(y.value).length;for(const j in y.value){const F=(E=(g=o.configSchema)==null?void 0:g[j])==null?void 0:E.order,R=(k=f[j])==null?void 0:k.order;let V=G;(R||R===0)&&(V=R===-1?G+1:R),F&&(V=F===-1?G+1:F),v.push([j,V])}return v.sort(function(j,F){return j[1]-F[1]}),v.map(j=>{var F,R;const V=j[0],K=(F=y.value)==null?void 0:F[V],H=((R=o.configSchema)==null?void 0:R[V])||{},z=f[V];return{key:V,value:K,hidden:H.hidden||!1,type:H.type??((z==null?void 0:z.type)||_.Text),label:H.label??((z==null?void 0:z.label)||s(V)),tooltip:H.tooltip??((z==null?void 0:z.tooltip)||void 0),section:H.section??((z==null?void 0:z.section)||xe.Advanced)}}).filter(j=>!j.hidden&&j.key!==o.pluginConfigKey)}),x=t.computed(()=>{var g,E;if(!y.value||!o.pluginConfigKey)return[];const k=y.value[o.pluginConfigKey]||{},v=Object.keys(k).length,G=[];for(const j in k){const F=(E=(g=o.pluginConfigSchema)==null?void 0:g[j])==null?void 0:E.order,R=k[j];let V=R!=null&&R!==""?v-1:v;F&&(V=F===-1?v+1:F),G.push([j,V])}return G.sort(function(j,F){return j[1]-F[1]}),G.map(j=>{var F;const R=j[0],V=k[R],K=((F=o.pluginConfigSchema)==null?void 0:F[R])||{};return{key:R,value:V,hidden:K.hidden||!1,type:K.type??_.Text,label:K.label??s(R),tooltip:K.tooltip??void 0,section:xe.Plugin}}).filter(j=>!j.hidden)}),S=t.computed(()=>{var g,E,k,v;return{basic:(g=B.value)==null?void 0:g.filter(G=>G.section===xe.Basic),advanced:(E=B.value)==null?void 0:E.filter(G=>G.section===xe.Advanced),plugin:(v=x.value)==null?void 0:v.concat((k=B.value)==null?void 0:k.filter(G=>G.section===xe.Plugin))}}),w=t.computed(()=>{const g=[];return S.value.basic.length&&g.push("basic"),S.value.advanced.length&&g.push("advanced"),S.value.plugin.length&&g.push("plugin"),g}),A=t.computed(()=>{var g,E;let k=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?k=k.replace(/{controlPlaneId}/gi,((g=o.config)==null?void 0:g.controlPlaneId)||""):o.config.app==="kongManager"&&(k=k.replace(/\/{workspace}/gi,(E=o.config)!=null&&E.workspace?`/${o.config.workspace}`:"")),k=k.replace(/{id}/gi,o.config.entityId),k});return t.watch(h,g=>{a("loading",g)},{immediate:!0}),t.onBeforeMount(async()=>{C.value=!1,h.value=!0;try{const{data:g}=await c.get(A.value);if(o.dataKey)if(typeof g[o.dataKey]<"u")y.value={...g[o.dataKey]};else throw new Error(r("errors.dataKeyUndefined",{dataKey:o.dataKey}));else y.value={...g};Object.keys(o.configSchema).filter(E=>o.configSchema[E].forceShow).forEach(E=>{y.value&&typeof y.value[E]>"u"&&(y.value[E]=null)}),a("fetch:success",g)}catch(g){const E=l(g);b.value=E.startsWith("code")?r("baseConfigCard.errors.load"):E,C.value=!0,a("fetch:error",g)}finally{h.value=!1}}),(g,E)=>{const k=t.resolveComponent("KLabel"),v=t.resolveComponent("KSelect"),G=t.resolveComponent("KButton"),j=t.resolveComponent("KSkeleton"),F=t.resolveComponent("KEmptyState"),R=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(R,{class:"kong-ui-entity-base-config-card","title-tag":e.titleTag},t.createSlots({actions:t.withCtx(()=>[t.createElementVNode("div",nu,[t.renderSlot(g.$slots,"actions",{},void 0,!0),t.createVNode(k,{class:"config-format-select-label","data-testid":"config-format-select-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.label),1)]),_:1}),t.createVNode(v,{"data-testid":"select-config-format",items:d,onChange:m}),e.configCardDoc?(t.openBlock(),t.createBlock(G,{key:0,appearance:"tertiary",class:"book-icon","data-testid":"book-icon"},{default:t.withCtx(()=>[t.createElementVNode("a",{href:e.configCardDoc,rel:"noopener",target:"_blank"},[t.createVNode(t.unref(Fp),{size:t.unref(zs)},null,8,["size"])],8,iu)]),_:1})):t.createCommentVNode("",!0)])]),default:t.withCtx(()=>[h.value?(t.openBlock(),t.createBlock(j,{key:0,"data-testid":"config-card-loader","table-columns":2,type:"table"})):C.value?(t.openBlock(),t.createBlock(F,{key:1,"data-testid":"config-card-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(b.value),1)]),_:1})):t.createCommentVNode("",!0),t.createElementVNode("div",au,[t.createVNode(vp,{config:e.config,"fetcher-url":A.value,format:u.value,"prop-list-types":w.value,"property-collections":S.value,record:y.value},t.createSlots({_:2},[t.renderList(Object.keys(g.$slots),V=>({name:V,fn:t.withCtx(({row:K,rowValue:H})=>[t.renderSlot(g.$slots,V,{row:K,rowValue:H},void 0,!0)])}))]),1032,["config","fetcher-url","format","prop-list-types","property-collections","record"])])]),_:2},[e.hideTitle?void 0:{name:"title",fn:t.withCtx(()=>[t.createElementVNode("span",tu,[t.renderSlot(g.$slots,"title",{},()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("baseConfigCard.title")),1)],!0)])]),key:"0"}]),1032,["title-tag"])}}}),ru=_e(ou,[["__scopeId","data-v-f40a683b"]]),lu=["novalidate"],su={class:"form-actions","data-testid":"form-actions"},cu=t.defineComponent({__name:"EntityBaseForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},editId:{type:String,required:!1,default:""},fetchUrl:{type:String,required:!1,default:""},isReadonly:{type:Boolean,required:!1,default:!1},canSubmit:{type:Boolean,required:!1,default:void 0},errorMessage:{type:String,required:!1,default:""},formFields:{type:Object,required:!0},noValidate:{type:Boolean,default:!1}},emits:["loading","fetch:success","fetch:error","submit","cancel"],setup(e,{emit:n}){var i;const a=n,o=e,r=Pt.useRouter(),{i18n:{t:l}}=ke.useI18n(),{getMessageFromError:s}=ke.useErrors(),{axiosInstance:c}=ke.useAxios((i=o.config)==null?void 0:i.axiosRequestConfig),d=t.ref(!1),u=t.ref(!1),m=t.ref(""),f=t.computed(()=>o.canSubmit===!1||o.isReadonly),h=t.ref(!1),C=t.computed(()=>{var w,A;let g=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?g=g.replace(/{controlPlaneId}/gi,((w=o.config)==null?void 0:w.controlPlaneId)||""):o.config.app==="kongManager"&&(g=g.replace(/\/{workspace}/gi,(A=o.config)!=null&&A.workspace?`/${o.config.workspace}`:"")),o.editId?(g=g.replace(/{id}/gi,o.editId),g):(g=g.replace(/\/{id}/gi,""),g)}),b=()=>{h.value=!h.value},y=()=>{o.config.cancelRoute?r.push(o.config.cancelRoute):B()},B=()=>{a("cancel")},x=()=>{f.value||a("submit")},S=t.ref([{title:l("baseForm.configuration.yaml"),hash:"#yaml"},{title:l("baseForm.configuration.json"),hash:"#json"}]);return t.watch(()=>d.value,w=>{a("loading",w)},{immediate:!0}),t.onBeforeMount(async()=>{if(o.editId)try{u.value=!1,d.value=!0;const{data:w}=await c.get(C.value);a("fetch:success",w)}catch(w){const A=s(w);m.value=A.startsWith("code")?l("baseForm.errors.edit"):A,u.value=!0,a("fetch:error",w)}finally{d.value=!1}}),(w,A)=>{const g=t.resolveComponent("KSkeleton"),E=t.resolveComponent("KEmptyState"),k=t.resolveComponent("KAlert"),v=t.resolveComponent("KButton"),G=t.resolveComponent("KTabs"),j=t.resolveComponent("KSlideout"),F=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(F,{class:"kong-ui-entity-base-form"},{default:t.withCtx(()=>[d.value?(t.openBlock(),t.createBlock(g,{key:0,type:"form"})):u.value?(t.openBlock(),t.createBlock(E,{key:1,"action-button-text":t.unref(l)("baseForm.actions.back"),"data-testid":"form-fetch-error","icon-variant":"error",onClickAction:y},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(m.value),1)]),_:1},8,["action-button-text"])):(t.openBlock(),t.createElementBlock("form",{key:2,"data-testid":"form-content",novalidate:o.noValidate,onReset:t.withModifiers(B,["prevent"]),onSubmit:t.withModifiers(x,["prevent"])},[t.renderSlot(w.$slots,"default",{},void 0,!0),e.errorMessage?(t.openBlock(),t.createBlock(k,{key:0,appearance:"danger","data-testid":"form-error",message:e.errorMessage},null,8,["message"])):t.createCommentVNode("",!0),t.createElementVNode("div",su,[t.renderSlot(w.$slots,"form-actions",{},()=>[t.createVNode(v,{appearance:"tertiary","data-testid":"form-view-configuration",onClick:A[0]||(A[0]=R=>b())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("baseForm.actions.viewConfiguration")),1)]),_:1}),t.createVNode(v,{appearance:"secondary","data-testid":"form-cancel",disabled:e.isReadonly,type:"reset"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("baseForm.actions.cancel")),1)]),_:1},8,["disabled"]),t.createVNode(v,{appearance:"primary","data-testid":"form-submit",disabled:f.value,type:"submit"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("baseForm.actions.save")),1)]),_:1},8,["disabled"])],!0)])],40,lu)),t.createVNode(j,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(l)("baseForm.configuration.title"),visible:h.value,onClose:A[1]||(A[1]=R=>b())},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("baseForm.configuration.message")),1),t.createVNode(G,{"data-testid":"form-view-configuration-slideout-tabs",tabs:S.value},{json:t.withCtx(()=>[t.createVNode(mi,{config:e.config,"fetcher-url":C.value,"json-record":o.formFields,"request-method":o.editId?"put":"post"},null,8,["config","fetcher-url","json-record","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(Si,{"yaml-record":o.formFields},null,8,["yaml-record"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])]),_:3})}}}),du=_e(cu,[["__scopeId","data-v-3def74fe"]]),pu=["data-truncate"],uu=t.defineComponent({__name:"EntityBaseTableCell",props:{keyName:{type:String,required:!0},rowEl:{type:[Object,null],required:!0},tooltip:{type:Boolean,default:!1}},setup(e){const n=e,i=t.computed(()=>{var y;return((y=n.rowEl)==null?void 0:y.querySelector(`[data-testid="${n.keyName}"]`))||null}),a=t.computed(()=>{var y;return((y=i.value)==null?void 0:y.querySelector('[data-truncate="true"]'))||null}),o=t.computed(()=>{var y,B;const x=(y=n.rowEl)==null?void 0:y.querySelectorAll("td");return x?((B=x[0])==null?void 0:B.getAttribute("data-testid"))===n.keyName:!1}),r=t.computed(()=>o.value||n.tooltip);let l;const s=()=>{l&&(l.disconnect(),l=void 0)},c=()=>{var y,B,x;let S=((y=i.value)==null?void 0:y.clientWidth)||0;if(i.value&&"getComputedStyle"in window){const w=window.getComputedStyle(i.value);S-=(parseFloat(w.paddingLeft)||0)+(parseFloat(w.paddingRight)||0)}u.value=((B=a.value)==null?void 0:B.getBoundingClientRect().width)||0,m.value=S,f.value=((x=d.value)==null?void 0:x.innerText)||""},d=t.ref({}),u=t.ref(0),m=t.ref(0),f=t.ref(""),h=t.computed(()=>[a.value,i.value]),C=t.watch(h,y=>{if(r.value&&(s(),"ResizeObserver"in window&&window)){l=new ResizeObserver(B=>{window.requestAnimationFrame(()=>{!Array.isArray(B)||!B.length||c()})});for(const B of y)B&&l.observe(B)}},{immediate:!0,flush:"post",deep:!0}),b=t.computed(()=>r.value?u.value>m.value:!1);return t.onMounted(()=>{c()}),t.onUnmounted(()=>{C()}),(y,B)=>{const x=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("span",{ref_key:"contentRef",ref:d,class:"content-wrapper"},[r.value?(t.openBlock(),t.createElementBlock("span",{key:0,"data-truncate":r.value||void 0},[t.createVNode(x,{"max-width":"300",placement:"bottomStart",text:b.value?f.value:""},{default:t.withCtx(()=>[t.renderSlot(y.$slots,"default",{},void 0,!0)]),_:3},8,["text"])],8,pu)):t.renderSlot(y.$slots,"default",{key:1},void 0,!0)],512)}}}),mu=_e(uu,[["__scopeId","data-v-6019026f"]]),gu={class:"toolbar-container"},fu={key:0,class:"toolbar-button-container"},Au=["data-testid"],hu=t.defineComponent({__name:"EntityBaseTable",props:{tableHeaders:{type:Object,required:!0,default:()=>({})},fetcher:{type:Function,required:!0,default:async()=>({data:[],total:0})},initialFetcherParams:{type:Object,default:null},cacheIdentifier:{type:String,default:""},fetcherCacheKey:{type:Number,default:1},isLoading:{type:Boolean,default:!1},query:{type:String,default:""},enableClientSort:{type:Boolean,default:!1},enableEntityActions:{type:Boolean,default:!0},emptyStateOptions:{type:Object,default:()=>({})},errorMessage:{type:[String,Object],default:null},disablePaginationPageJump:{type:Boolean,default:void 0},disableSorting:{type:Boolean,default:void 0},paginationType:{type:String,default:void 0},cellAttributes:{type:Function,default:()=>({})},rowAttributes:{type:Function,default:()=>({})},preferencesStorageKey:{type:String,default:"",required:!0},dropdownMenuWidth:{type:String,default:"",required:!1},title:{type:String,default:""},titleTag:{type:String,default:"h2"},disableRowClick:{type:Boolean,default:!1}},emits:["click:row","sort","clear-search-input","empty-state-cta-clicked"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=ke.useI18n(),r=t.computed(()=>{var A,g;return typeof i.errorMessage=="string"?{hasError:!!i.errorMessage,title:i.errorMessage,message:void 0}:{hasError:!!i.errorMessage,title:(A=i.errorMessage)==null?void 0:A.title,message:(g=i.errorMessage)==null?void 0:g.message}}),l=t.computed(()=>i.cacheIdentifier||i.preferencesStorageKey),s=A=>A.hasData||!!i.query,c=t.computed(()=>{const A=[];return Object.keys(i.tableHeaders).forEach(g=>{const E=i.tableHeaders[g];A.push({label:E.label??g,key:g,sortable:E.sortable??!1})}),i.enableEntityActions&&A.push({key:"actions",hideLabel:!0}),A}),d=A=>({"data-rowid":A.id,"data-testid":A.name,...i.rowAttributes(A)}),u=t.ref({}),m=A=>{var g;return(g=u.value)==null?void 0:g.$el.querySelector(`[data-rowid="${A.id}"]`)},f=A=>{const g={"data-testid":A.headerKey,...i.cellAttributes(A)};return A.colIndex===0&&(g.style={maxWidth:"250px",overflowX:"hidden",textOverflow:"ellipsis"}),g},h=()=>{a("empty-state-cta-clicked"),C()},C=()=>{a("clear-search-input")},b=t.computed(()=>i.disableRowClick?void 0:(A,g)=>{a("click:row",g)}),y=A=>{a("sort",A)},{setTablePreferences:B,getTablePreferences:x}=cs(),S=t.computed(()=>{const A=x(i.preferencesStorageKey);return{...i.initialFetcherParams,...A}}),w=A=>{i.preferencesStorageKey&&B(i.preferencesStorageKey,A)};return(A,g)=>{const E=t.resolveComponent("KIcon"),k=t.resolveComponent("KButton"),v=t.resolveComponent("KDropdown"),G=t.resolveComponent("KTable"),j=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(j,{class:"kong-ui-entity-base-table",title:e.title,"title-tag":e.titleTag},{default:t.withCtx(()=>[t.createVNode(G,{ref_key:"tableRefs",ref:u,"cache-identifier":l.value,"cell-attrs":f,"disable-pagination-page-jump":e.disablePaginationPageJump,"disable-sorting":e.disableSorting,"empty-state-action-message":e.query?t.unref(o)("baseTable.emptyState.noSearchResultsCtaText"):e.emptyStateOptions.ctaText,"empty-state-action-route":e.query?void 0:e.emptyStateOptions.ctaPath,"empty-state-icon-variant":e.query?"search":"kong","empty-state-message":e.query?t.unref(o)("baseTable.emptyState.noSearchResultsMessage"):e.emptyStateOptions.message,"empty-state-title":e.query?t.unref(o)("baseTable.emptyState.noSearchResultsTitle"):e.emptyStateOptions.title,"enable-client-sort":e.enableClientSort,"error-state-message":r.value.message,"error-state-title":r.value.title,fetcher:e.fetcher,"fetcher-cache-key":String(e.fetcherCacheKey),"has-error":r.value.hasError,headers:c.value,"hide-pagination-when-optional":"","initial-fetcher-params":S.value,"is-loading":e.isLoading,"pagination-type":e.paginationType,"row-attrs":d,"search-input":e.query,onKtableEmptyStateCtaClicked:h,"onRow:click":b.value,onSort:g[0]||(g[0]=F=>y(F)),"onUpdate:tablePreferences":w},t.createSlots({toolbar:t.withCtx(({state:F})=>[t.withDirectives(t.createElementVNode("div",gu,[t.renderSlot(A.$slots,"toolbar-filter",{},void 0,!0),A.$slots["toolbar-button"]?(t.openBlock(),t.createElementBlock("div",fu,[t.renderSlot(A.$slots,"toolbar-button",{},void 0,!0)])):t.createCommentVNode("",!0)],512),[[t.vShow,s(F)]])]),actions:t.withCtx(({row:F,rowKey:R,rowValue:V})=>[t.createElementVNode("div",{class:"actions-container","data-testid":F.name},[t.createVNode(v,{"kpop-attributes":{placement:"bottomEnd"},width:e.dropdownMenuWidth},{items:t.withCtx(()=>[t.renderSlot(A.$slots,"actions",{row:F,rowKey:R,rowValue:V},void 0,!0)]),default:t.withCtx(()=>[t.createVNode(k,{class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:t.withCtx(()=>[t.createVNode(E,{color:t.unref(Gs),icon:"more",size:"16"},null,8,["color"])]),_:1})]),_:2},1032,["width"])],8,Au)]),_:2},[t.renderList(e.tableHeaders,(F,R)=>({name:R,fn:t.withCtx(({row:V,rowKey:K,rowValue:H})=>[t.createVNode(mu,{"key-name":String(R),"row-el":m(V),tooltip:F.tooltip},{default:t.withCtx(()=>[t.renderSlot(A.$slots,R,{row:V,rowKey:K,rowValue:H},()=>[t.createTextVNode(t.toDisplayString(H),1)],!0)]),_:2},1032,["key-name","row-el","tooltip"])])})),e.query?void 0:{name:"empty-state-action-icon",fn:t.withCtx(()=>[t.createVNode(t.unref(Dp))]),key:"0"}]),1032,["cache-identifier","disable-pagination-page-jump","disable-sorting","empty-state-action-message","empty-state-action-route","empty-state-icon-variant","empty-state-message","empty-state-title","enable-client-sort","error-state-message","error-state-title","fetcher","fetcher-cache-key","has-error","headers","initial-fetcher-params","is-loading","pagination-type","search-input","onRow:click"])]),_:3},8,["title","title-tag"])}}}),yu=_e(hu,[["__scopeId","data-v-adb02213"]]),bu={key:0,class:"kong-ui-entity-delete-error"},wu={key:1,class:"description"},Cu=t.defineComponent({__name:"EntityDeleteModal",props:{visible:{type:Boolean,required:!0,default:!1},title:{type:String,default:"Delete"},entityType:{type:String,required:!0},entityName:{type:String,default:""},needConfirm:{type:Boolean,default:!0},description:{type:String,default:""},actionPending:{type:Boolean,default:!1},error:{type:String,default:""}},emits:["cancel","proceed"],setup(e,{emit:n}){const{i18nT:i}=ke.useI18n(),a=e,o=n,r=t.computed(()=>a.needConfirm?a.entityName:""),l=()=>{o("cancel")},s=()=>{o("proceed")};return(c,d)=>{const u=t.resolveComponent("KAlert"),m=t.resolveComponent("KPrompt");return t.openBlock(),t.createBlock(m,{"action-button-appearance":"danger","action-button-disabled":e.actionPending,"action-button-text":"Yes, delete",class:"kong-ui-entity-delete-modal","confirmation-text":r.value,title:e.title,visible:e.visible,onCancel:l,onProceed:s},{default:t.withCtx(()=>[e.error?(t.openBlock(),t.createElementBlock("div",bu,[t.createVNode(u,{appearance:"danger"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.error),1)]),_:1})])):t.createCommentVNode("",!0),t.createVNode(t.unref(i),{class:"message",keypath:a.entityName?"deleteModal.messageWithName":"deleteModal.message",tag:"p"},t.createSlots({entityType:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.entityType),1)]),_:2},[a.entityName?{name:"entityName",fn:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(a.entityName),1)]),key:"0"}:void 0]),1032,["keypath"]),a.description||c.$slots.description?(t.openBlock(),t.createElementBlock("div",wu,[t.renderSlot(c.$slots,"description",{},()=>[t.createElementVNode("p",null,t.toDisplayString(a.description),1)],!0)])):t.createCommentVNode("",!0)]),_:3},8,["action-button-disabled","confirmation-text","title","visible"])}}}),vo=_e(Cu,[["__scopeId","data-v-4361d622"]]),ku={fill:"none",height:"20",viewBox:"0 0 20 20",width:"20",xmlns:"http://www.w3.org/2000/svg"},Eu={id:"mask0_180_20349",height:"20",maskUnits:"userSpaceOnUse",style:{"mask-type":"alpha"},width:"20",x:"0",y:"0"},Bu=["fill"],Ou={mask:"url(#mask0_180_20349)"},xu=["fill"],To=t.defineComponent({__name:"IconFilter",props:{color:{type:String,default:`var(--kong-ui-entity-filter-color, ${Us})`}},setup(e){return(n,i)=>(t.openBlock(),t.createElementBlock("svg",ku,[t.createElementVNode("mask",Eu,[t.createElementVNode("rect",{fill:e.color,height:"20",width:"20"},null,8,Bu)]),t.createElementVNode("g",Ou,[t.createElementVNode("path",{d:"M8 14.5V13H12V14.5H8ZM5 10.75V9.25H15V10.75H5ZM3 7V5.5H17V7H3Z",fill:e.color},null,8,xu)])]))}}),Iu={key:1,class:"kong-ui-entity-filter"},Su={class:"kong-ui-entity-filter-menu"},Mu=["data-testid"],vu=["onClick","onKeydown"],Tu={class:"menu-item-indicator"},Ru={class:"menu-item-body"},Nu=["for"],Vu={class:"menu-item-buttons"},Lu={class:"filter-clear-button-container"},Du=t.defineComponent({__name:"EntityFilter",props:{config:{type:Object,required:!0,default:()=>({isExactMatch:!0,placeholder:""})},modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:n}){const{i18n:{t:i}}=ke.useI18n(),a=e,o=n,r=t.ref(!1),l=t.ref({}),s=t.ref(new Set),c=t.computed(()=>{const w=[];return new URLSearchParams(a.modelValue).forEach((A,g)=>{A!==""&&w.push(g)}),w}),d=t.computed(()=>{const w=a.config.fields;return Object.keys(w).filter(A=>{var g;return(g=w==null?void 0:w[A])==null?void 0:g.searchable}).map(A=>({label:w[A].label||A,value:A,expanded:!1}))});t.watch(()=>a.modelValue,w=>{l.value={},new URLSearchParams(w).forEach((A,g)=>{l.value[g]=A})});const u=()=>{r.value=!r.value},m=w=>{s.value.has(w)?s.value.delete(w):s.value.add(w)},f=w=>{o("update:modelValue",w)},h=()=>{f("")},C=w=>`filter-${w}`,b=w=>{var A,g;return(((g=(A=a.config.schema)==null?void 0:A[w])==null?void 0:g.values)??[]).map(E=>({value:E,label:E}))},y=w=>{var A,g;return((g=(A=a.config.schema)==null?void 0:A[w])==null?void 0:g.type)??"text"},B=w=>{l.value={...l.value,[w]:""},S()},x=()=>{l.value={},S(!0)},S=(w=!1)=>{const A=Object.keys(l.value).reduce((g,E)=>(l.value[E]&&(g[E]=`${l.value[E]}`),g),{});w&&(r.value=!1),o("update:modelValue",new URLSearchParams(A).toString())};return(w,A)=>{const g=t.resolveComponent("KInput"),E=t.resolveComponent("KButton"),k=t.resolveComponent("KSelect");return e.config.isExactMatch?(t.openBlock(),t.createBlock(g,{key:0,autocomplete:"off",class:"kong-ui-entity-filter-input","data-testid":"search-input","model-value":e.modelValue,placeholder:e.config.placeholder,"onUpdate:modelValue":f},{before:t.withCtx(()=>[t.createVNode(To)]),after:t.withCtx(()=>[t.withDirectives(t.createVNode(t.unref(eu),{class:"kong-ui-entity-filter-clear",onClick:h},null,512),[[t.vShow,e.modelValue!==""]])]),_:1},8,["model-value","placeholder"])):(t.openBlock(),t.createElementBlock("div",Iu,[t.createVNode(E,{appearance:"tertiary","data-testid":"filter-button",onClick:u},{default:t.withCtx(()=>[t.createVNode(To),t.createTextVNode(" "+t.toDisplayString(t.unref(i)("filter.filterButtonText"))+" "+t.toDisplayString(c.value.length>0?`(${c.value.length})`:""),1)]),_:1}),t.withDirectives(t.createElementVNode("div",{class:"kong-ui-entity-filter-backdrop",onClick:u},null,512),[[t.vShow,r.value]]),t.withDirectives(t.createElementVNode("div",Su,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,v=>{var G,j;return t.openBlock(),t.createElementBlock("div",{key:v.value,class:"kong-ui-entity-filter-menu-item","data-testid":v.value},[t.createElementVNode("span",{class:t.normalizeClass(["menu-item-title",{expanded:s.value.has(v.value)}]),role:"button",tabindex:"0",onClick:F=>m(v.value),onKeydown:t.withKeys(F=>m(v.value),["enter"])},[t.createTextVNode(t.toDisplayString(v.label)+" ",1),t.withDirectives(t.createElementVNode("span",Tu,null,512),[[t.vShow,c.value.includes(v.value)]]),t.createVNode(t.unref(Jp),{class:t.normalizeClass(["menu-item-expand-icon",{expanded:s.value.has(v.value)}]),color:t.unref(Fs)},null,8,["class","color"])],42,vu),t.withDirectives(t.createElementVNode("div",Ru,[t.createElementVNode("label",{class:"menu-item-label",for:C(v.value)},t.toDisplayString(t.unref(i)("filter.fieldLabel")),9,Nu),((j=(G=e.config.schema)==null?void 0:G[v.value])==null?void 0:j.type)==="select"?(t.openBlock(),t.createBlock(k,{key:0,id:C(v.value),modelValue:l.value[v.value],"onUpdate:modelValue":F=>l.value[v.value]=F,items:b(v.value),placeholder:t.unref(i)("filter.selectPlaceholder")},null,8,["id","modelValue","onUpdate:modelValue","items","placeholder"])):(t.openBlock(),t.createBlock(g,{key:1,id:C(v.value),modelValue:l.value[v.value],"onUpdate:modelValue":F=>l.value[v.value]=F,autocomplete:"off",placeholder:t.unref(i)("filter.inputPlaceholder"),type:y(v.value)},null,8,["id","modelValue","onUpdate:modelValue","placeholder","type"]))],512),[[t.vShow,s.value.has(v.value)]]),t.withDirectives(t.createElementVNode("div",Vu,[t.createVNode(E,{appearance:"tertiary","data-testid":"apply-filter",size:"small",onClick:A[0]||(A[0]=F=>S(!0))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("filter.applyButtonText")),1)]),_:1}),t.createVNode(E,{appearance:"tertiary","data-testid":"clear-filter",size:"small",onClick:F=>B(v.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("filter.clearButtonText")),1)]),_:2},1032,["onClick"])],512),[[t.vShow,s.value.has(v.value)]])],8,Mu)}),128)),t.createElementVNode("div",Lu,[t.createVNode(E,{appearance:"tertiary",size:"small",onClick:x},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("filter.clearAllButtonText")),1)]),_:1})])],512),[[t.vShow,r.value]])]))}}}),ju=_e(Du,[["__scopeId","data-v-9a370e3a"]]),Pu=t.defineComponent({__name:"EntityToggleModal",props:{visible:{type:Boolean,required:!0},action:{type:String,required:!0},entityId:{type:String,required:!0},entityType:{type:String,required:!0},entityName:{type:String,required:!0},onConfirm:{type:Function,required:!1,default:null}},emits:["cancel","proceed"],setup(e,{emit:n}){const{i18n:{t:i},i18nT:a}=ke.useI18n(),o=e,r=n,l=t.ref(!1),s=t.computed(()=>o.action==="enable"?i("toggleModal.enable.title",{entityType:o.entityType}):i("toggleModal.disable.title",{entityType:o.entityType})),c=t.computed(()=>o.action==="enable"?i("toggleModal.enable.confirmText"):i("toggleModal.disable.confirmText")),d=()=>r("cancel"),u=async()=>{if(o.onConfirm){l.value=!0;try{await o.onConfirm(),r("proceed")}catch(m){console.error(m)}finally{l.value=!1}}};return(m,f)=>{const h=t.resolveComponent("KPrompt");return t.openBlock(),t.createBlock(t.Teleport,{to:"body"},[t.createVNode(h,{"action-button-disabled":l.value,"action-button-text":c.value,"data-testid":`${e.entityType}-${e.entityId}-toggle-prompt`,title:s.value,visible:e.visible,onCancel:d,onProceed:u},{default:t.withCtx(()=>[t.createVNode(t.unref(a),{keypath:`toggleModal.${o.action}.message`,scope:"global"},{entityType:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.entityType),1)]),entityName:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.entityName),1)]),_:1},8,["keypath"])]),_:1},8,["action-button-disabled","action-button-text","data-testid","title","visible"])])}}}),Ct=t.defineComponent({__name:"PermissionsWrapper",props:{authFunction:{type:Function,required:!0,default:async()=>!0},forceShow:{type:Boolean,default:!1}},setup(e){const n=e,i=t.ref(void 0),a=t.computed(()=>i.value===!0||i.value!==void 0&&n.forceShow===!0);return t.watch(()=>n.authFunction,async()=>{i.value=await n.authFunction()},{immediate:!0}),(o,r)=>a.value?t.renderSlot(o.$slots,"default",{key:0,isAllowed:i.value}):t.createCommentVNode("",!0)}}),Uu=[];for(let e=0;e<256;++e)Uu.push((e+256).toString(16).slice(1));typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);const{useAxios:Kt,useDeleteUrlBuilder:Yu,useErrors:Ln,useExternalLinkCreator:DO,useFetchUrlBuilder:jO,useFetcher:Gu,useDebouncedFilter:PO,useStringHelpers:Mi,useHelpers:Dn,useGatewayFeatureSupported:Fu,useTruncationDetector:UO,useValidators:YO}=ke;function vi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let kt=vi();function Ro(e){kt=e}const No=/[&<>"']/,Hu=new RegExp(No.source,"g"),Vo=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,zu=new RegExp(Vo.source,"g"),Ku={"&":"&","<":"<",">":">",'"':""","'":"'"},Lo=e=>Ku[e];function He(e,n){if(n){if(No.test(e))return e.replace(Hu,Lo)}else if(Vo.test(e))return e.replace(zu,Lo);return e}const qu=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function Xu(e){return e.replace(qu,(n,i)=>(i=i.toLowerCase(),i==="colon"?":":i.charAt(0)==="#"?i.charAt(1)==="x"?String.fromCharCode(parseInt(i.substring(2),16)):String.fromCharCode(+i.substring(1)):""))}const Ju=/(^|[^\[])\^/g;function ce(e,n){let i=typeof e=="string"?e:e.source;n=n||"";const a={replace:(o,r)=>{let l=typeof r=="string"?r:r.source;return l=l.replace(Ju,"$1"),i=i.replace(o,l),a},getRegex:()=>new RegExp(i,n)};return a}function Do(e){try{e=encodeURI(e).replace(/%25/g,"%")}catch{return null}return e}const rn={exec:()=>null};function jo(e,n){const i=e.replace(/\|/g,(r,l,s)=>{let c=!1,d=l;for(;--d>=0&&s[d]==="\\";)c=!c;return c?"|":" |"}),a=i.split(/ \|/);let o=0;if(a[0].trim()||a.shift(),a.length>0&&!a[a.length-1].trim()&&a.pop(),n)if(a.length>n)a.splice(n);else for(;a.length<n;)a.push("");for(;o<a.length;o++)a[o]=a[o].trim().replace(/\\\|/g,"|");return a}function jn(e,n,i){const a=e.length;if(a===0)return"";let o=0;for(;o<a;){const r=e.charAt(a-o-1);if(r===n&&!i)o++;else if(r!==n&&i)o++;else break}return e.slice(0,a-o)}function Zu(e,n){if(e.indexOf(n[1])===-1)return-1;let i=0;for(let a=0;a<e.length;a++)if(e[a]==="\\")a++;else if(e[a]===n[0])i++;else if(e[a]===n[1]&&(i--,i<0))return a;return-1}function Po(e,n,i,a){const o=n.href,r=n.title?He(n.title):null,l=e[1].replace(/\\([\[\]])/g,"$1");if(e[0].charAt(0)!=="!"){a.state.inLink=!0;const s={type:"link",raw:i,href:o,title:r,text:l,tokens:a.inlineTokens(l)};return a.state.inLink=!1,s}return{type:"image",raw:i,href:o,title:r,text:He(l)}}function Wu(e,n){const i=e.match(/^(\s+)(?:```)/);if(i===null)return n;const a=i[1];return n.split(`
|
|
32
|
+
`:""}var sp=lp,cp={dump:sp};function Ii(e,n){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var dp=Ie,pp=va,up=Va,mp=Ua,gp=Ya,fp=yi,Ap=co.load,hp=co.loadAll,yp=cp.dump,bp=Ve,wp={binary:Ka,float:Pa,map:Na,null:La,pairs:Xa,set:Ja,timestamp:Ha,bool:Da,int:ja,merge:za,omap:qa,seq:Ra,str:Ta},Cp=Ii("safeLoad","load"),kp=Ii("safeLoadAll","loadAll"),Ep=Ii("safeDump","dump"),Bp={Type:dp,Schema:pp,FAILSAFE_SCHEMA:up,JSON_SCHEMA:mp,CORE_SCHEMA:gp,DEFAULT_SCHEMA:fp,load:Ap,loadAll:hp,dump:yp,YAMLException:bp,types:wp,safeLoad:Cp,safeLoadAll:kp,safeDump:Ep};const Op={class:"yaml-config"},Si=t.defineComponent({__name:"YamlCodeBlock",props:{yamlRecord:{type:Object,required:!0}},setup(e){const n=e,i=t.computed(()=>{const a=Object.fromEntries(Object.entries(n.yamlRecord).filter(([,o])=>o!==null&&o!==""&&(Array.isArray(o)?o.length!==0:!0)));return Object.keys(a).length===0&&a.constructor===Object?"":Bp.dump(a).trim()});return(a,o)=>{const r=t.resolveComponent("KCodeBlock");return t.openBlock(),t.createElementBlock("div",Op,[n.yamlRecord?(t.openBlock(),t.createBlock(r,{key:0,id:"yaml-codeblock",code:i.value,language:"yaml",theme:"dark"},null,8,["code"])):t.createCommentVNode("",!0)])}}}),xp={key:0,class:"config-card-display-form"},Ip=["data-testid"],Sp={key:0,class:"config-card-prop-section-title"},Mp=t.defineComponent({__name:"ConfigCardDisplay",props:{config:{type:Object,required:!1,default:()=>({})},propertyCollections:{type:Object,required:!1,default:()=>null},format:{type:String,required:!1,default:"structured",validator:e=>["structured","yaml","json"].includes(e)},propListTypes:{type:Array,required:!1,default:()=>[]},record:{type:Object,required:!1,default:()=>({})},fetcherUrl:{type:String,required:!1,default:""}},setup(e){const n=e,i=t.useSlots(),{i18n:{t:a}}=ke.useI18n(),o=l=>!!(l.tooltip||i[`${l.key}-label-tooltip`]),r=t.computed(()=>{if(!n.record)return n.record;const l=JSON.parse(JSON.stringify(n.record));return delete l.created_at,delete l.updated_at,l});return(l,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.format==="structured"?(t.openBlock(),t.createElementBlock("div",xp,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.propListTypes,c=>(t.openBlock(),t.createElementBlock("div",{key:`config-card-details-${c}-props`,class:t.normalizeClass(`config-card-details-${c}-props`),"data-testid":`config-card-details-${c}-props`},[c!=="basic"?(t.openBlock(),t.createElementBlock("div",Sp,t.toDisplayString(c==="advanced"?t.unref(a)("baseConfigCard.sections.advanced"):t.unref(a)("baseConfigCard.sections.plugin")),1)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.propertyCollections[c],d=>(t.openBlock(),t.createBlock(xa,{key:d.key,item:d},t.createSlots({label:t.withCtx(()=>[t.renderSlot(l.$slots,`${d.key}-label`,{row:d},void 0,!0)]),[d.key]:t.withCtx(({rowValue:u})=>[t.renderSlot(l.$slots,d.key,{row:d,rowValue:u},void 0,!0)]),_:2},[o(d)?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(l.$slots,`${d.key}-label-tooltip`,{row:d},void 0,!0)]),key:"0"}:void 0]),1032,["item"]))),128))],10,Ip))),128))])):t.createCommentVNode("",!0),e.format==="json"&&n.record?(t.openBlock(),t.createBlock(mi,{key:1,config:n.config,"fetcher-url":n.fetcherUrl,"json-record":r.value,"request-method":"get"},null,8,["config","fetcher-url","json-record"])):t.createCommentVNode("",!0),e.format==="yaml"&&n.record?(t.openBlock(),t.createBlock(Si,{key:2,"yaml-record":r.value},null,8,["yaml-record"])):t.createCommentVNode("",!0)],64))}}),vp=_e(Mp,[["__scopeId","data-v-147a2f70"]]),mt="24px",Vn=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},Tp=e=>(t.pushScopeId("data-v-1d2a8d30"),e=e(),t.popScopeId(),e),Rp=["aria-hidden"],Np={key:0,"data-testid":"kui-icon-svg-title"},Vp=Tp(()=>t.createElementVNode("path",{d:"M11 19V13H5V11H11V5H13V11H19V13H13V19H11Z",fill:"currentColor"},null,-1)),Lp=t.defineComponent({__name:"AddIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:mt,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return mt}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon add-icon","data-testid":"kui-icon-wrapper-add-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-add-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Np,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Vp],8,Rp))]),_:1},8,["aria-hidden","style"]))}}),Dp=Vn(Lp,[["__scopeId","data-v-1d2a8d30"]]),jp=e=>(t.pushScopeId("data-v-929b4762"),e=e(),t.popScopeId(),e),Pp=["aria-hidden"],Up={key:0,"data-testid":"kui-icon-svg-title"},Yp=jp(()=>t.createElementVNode("path",{d:"M14 9.9V8.2C14.55 7.96667 15.1125 7.79167 15.6875 7.675C16.2625 7.55833 16.8667 7.5 17.5 7.5C17.9333 7.5 18.3583 7.53333 18.775 7.6C19.1917 7.66667 19.6 7.75 20 7.85V9.45C19.6 9.3 19.1958 9.1875 18.7875 9.1125C18.3792 9.0375 17.95 9 17.5 9C16.8667 9 16.2583 9.07917 15.675 9.2375C15.0917 9.39583 14.5333 9.61667 14 9.9ZM14 15.4V13.7C14.55 13.4667 15.1125 13.2917 15.6875 13.175C16.2625 13.0583 16.8667 13 17.5 13C17.9333 13 18.3583 13.0333 18.775 13.1C19.1917 13.1667 19.6 13.25 20 13.35V14.95C19.6 14.8 19.1958 14.6875 18.7875 14.6125C18.3792 14.5375 17.95 14.5 17.5 14.5C16.8667 14.5 16.2583 14.575 15.675 14.725C15.0917 14.875 14.5333 15.1 14 15.4ZM14 12.65V10.95C14.55 10.7167 15.1125 10.5417 15.6875 10.425C16.2625 10.3083 16.8667 10.25 17.5 10.25C17.9333 10.25 18.3583 10.2833 18.775 10.35C19.1917 10.4167 19.6 10.5 20 10.6V12.2C19.6 12.05 19.1958 11.9375 18.7875 11.8625C18.3792 11.7875 17.95 11.75 17.5 11.75C16.8667 11.75 16.2583 11.8292 15.675 11.9875C15.0917 12.1458 14.5333 12.3667 14 12.65ZM6.5 16C7.28333 16 8.04583 16.0875 8.7875 16.2625C9.52917 16.4375 10.2667 16.7 11 17.05V7.2C10.3167 6.8 9.59167 6.5 8.825 6.3C8.05833 6.1 7.28333 6 6.5 6C5.9 6 5.30417 6.05833 4.7125 6.175C4.12083 6.29167 3.55 6.46667 3 6.7V16.6C3.58333 16.4 4.1625 16.25 4.7375 16.15C5.3125 16.05 5.9 16 6.5 16ZM13 17.05C13.7333 16.7 14.4708 16.4375 15.2125 16.2625C15.9542 16.0875 16.7167 16 17.5 16C18.1 16 18.6875 16.05 19.2625 16.15C19.8375 16.25 20.4167 16.4 21 16.6V6.7C20.45 6.46667 19.8792 6.29167 19.2875 6.175C18.6958 6.05833 18.1 6 17.5 6C16.7167 6 15.9417 6.1 15.175 6.3C14.4083 6.5 13.6833 6.8 13 7.2V17.05ZM12 20C11.2 19.3667 10.3333 18.875 9.4 18.525C8.46667 18.175 7.5 18 6.5 18C5.8 18 5.1125 18.0917 4.4375 18.275C3.7625 18.4583 3.11667 18.7167 2.5 19.05C2.15 19.2333 1.8125 19.225 1.4875 19.025C1.1625 18.825 1 18.5333 1 18.15V6.1C1 5.91667 1.04583 5.74167 1.1375 5.575C1.22917 5.40833 1.36667 5.28333 1.55 5.2C2.31667 4.8 3.11667 4.5 3.95 4.3C4.78333 4.1 5.63333 4 6.5 4C7.46667 4 8.4125 4.125 9.3375 4.375C10.2625 4.625 11.15 5 12 5.5C12.85 5 13.7375 4.625 14.6625 4.375C15.5875 4.125 16.5333 4 17.5 4C18.3667 4 19.2167 4.1 20.05 4.3C20.8833 4.5 21.6833 4.8 22.45 5.2C22.6333 5.28333 22.7708 5.40833 22.8625 5.575C22.9542 5.74167 23 5.91667 23 6.1V18.15C23 18.5333 22.8375 18.825 22.5125 19.025C22.1875 19.225 21.85 19.2333 21.5 19.05C20.8833 18.7167 20.2375 18.4583 19.5625 18.275C18.8875 18.0917 18.2 18 17.5 18C16.5 18 15.5333 18.175 14.6 18.525C13.6667 18.875 12.8 19.3667 12 20Z",fill:"currentColor"},null,-1)),Gp=t.defineComponent({__name:"BookIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:mt,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return mt}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon book-icon","data-testid":"kui-icon-wrapper-book-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-book-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Up,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Yp],8,Pp))]),_:1},8,["aria-hidden","style"]))}}),Fp=Vn(Gp,[["__scopeId","data-v-929b4762"]]),Hp=e=>(t.pushScopeId("data-v-219f8484"),e=e(),t.popScopeId(),e),zp=["aria-hidden"],Kp={key:0,"data-testid":"kui-icon-svg-title"},qp=Hp(()=>t.createElementVNode("path",{d:"M12 15.4L6 9.4L7.4 8L12 12.6L16.6 8L18 9.4L12 15.4Z",fill:"currentColor"},null,-1)),Xp=t.defineComponent({__name:"ChevronDownIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:mt,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return mt}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon chevron-down-icon","data-testid":"kui-icon-wrapper-chevron-down-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-chevron-down-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Kp,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),qp],8,zp))]),_:1},8,["aria-hidden","style"]))}}),Jp=Vn(Xp,[["__scopeId","data-v-219f8484"]]),Zp=e=>(t.pushScopeId("data-v-ed11facd"),e=e(),t.popScopeId(),e),Wp=["aria-hidden"],Qp={key:0,"data-testid":"kui-icon-svg-title"},_p=Zp(()=>t.createElementVNode("path",{d:"M6.4 19L5 17.6L10.6 12L5 6.4L6.4 5L12 10.6L17.6 5L19 6.4L13.4 12L19 17.6L17.6 19L12 13.4L6.4 19Z",fill:"currentColor"},null,-1)),$p=t.defineComponent({__name:"CloseIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:mt,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return mt}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon close-icon","data-testid":"kui-icon-wrapper-close-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-close-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Qp,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),_p],8,Wp))]),_:1},8,["aria-hidden","style"]))}}),eu=Vn($p,[["__scopeId","data-v-ed11facd"]]),tu={class:"config-card-title","data-testid":"config-card-title"},nu={class:"config-card-actions"},iu=["href"],au={class:"config-card-details-section"},ou=t.defineComponent({__name:"EntityBaseConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId)},configSchema:{type:Object,required:!1,default:()=>({})},pluginConfigKey:{type:String,required:!1,default:""},pluginConfigSchema:{type:Object,required:!1,default:()=>({})},fetchUrl:{type:String,required:!0},dataKey:{type:String,required:!1,default:""},hideTitle:{type:Boolean,default:!1},label:{type:String,default:"Format: ",required:!1},configCardDoc:{type:String,default:"",required:!1},titleTag:{type:String,default:"h2"}},emits:["loading","fetch:success","fetch:error"],setup(e,{emit:n}){var i;const a=n,o=e,{i18n:{t:r}}=ke.useI18n(),{getMessageFromError:l}=ke.useErrors(),{convertKeyToTitle:s}=ke.useStringHelpers(),{axiosInstance:c}=ke.useAxios((i=o.config)==null?void 0:i.axiosRequestConfig),d=[{label:r("baseConfigCard.general.structuredFormat"),value:"structured",selected:!0},{label:"JSON",value:"json"},{label:"YAML",value:"yaml"}],u=t.ref("structured"),m=g=>{u.value=g==null?void 0:g.value},f={id:{type:_.ID,label:r("baseConfigCard.commonFields.id_label"),order:0,section:xe.Basic},name:{order:1,section:xe.Basic},enabled:{type:_.BadgeStatus,order:2,section:xe.Basic},updated_at:{type:_.Date,label:r("baseConfigCard.commonFields.updated_at_label"),order:3,section:xe.Basic},created_at:{type:_.Date,label:r("baseConfigCard.commonFields.created_at_label"),order:4,section:xe.Basic},tags:{type:_.BadgeTag,order:-1,section:xe.Basic}},h=t.ref(!1),C=t.ref(!1),b=t.ref(""),y=t.ref({}),B=t.computed(()=>{var g,E,k;if(!y.value)return[];const v=[],G=Object.keys(y.value).length;for(const j in y.value){const F=(E=(g=o.configSchema)==null?void 0:g[j])==null?void 0:E.order,R=(k=f[j])==null?void 0:k.order;let V=G;(R||R===0)&&(V=R===-1?G+1:R),F&&(V=F===-1?G+1:F),v.push([j,V])}return v.sort(function(j,F){return j[1]-F[1]}),v.map(j=>{var F,R;const V=j[0],K=(F=y.value)==null?void 0:F[V],H=((R=o.configSchema)==null?void 0:R[V])||{},z=f[V];return{key:V,value:K,hidden:H.hidden||!1,type:H.type??((z==null?void 0:z.type)||_.Text),label:H.label??((z==null?void 0:z.label)||s(V)),tooltip:H.tooltip??((z==null?void 0:z.tooltip)||void 0),section:H.section??((z==null?void 0:z.section)||xe.Advanced)}}).filter(j=>!j.hidden&&j.key!==o.pluginConfigKey)}),x=t.computed(()=>{var g,E;if(!y.value||!o.pluginConfigKey)return[];const k=y.value[o.pluginConfigKey]||{},v=Object.keys(k).length,G=[];for(const j in k){const F=(E=(g=o.pluginConfigSchema)==null?void 0:g[j])==null?void 0:E.order,R=k[j];let V=R!=null&&R!==""?v-1:v;F&&(V=F===-1?v+1:F),G.push([j,V])}return G.sort(function(j,F){return j[1]-F[1]}),G.map(j=>{var F;const R=j[0],V=k[R],K=((F=o.pluginConfigSchema)==null?void 0:F[R])||{};return{key:R,value:V,hidden:K.hidden||!1,type:K.type??_.Text,label:K.label??s(R),tooltip:K.tooltip??void 0,section:xe.Plugin}}).filter(j=>!j.hidden)}),S=t.computed(()=>{var g,E,k,v;return{basic:(g=B.value)==null?void 0:g.filter(G=>G.section===xe.Basic),advanced:(E=B.value)==null?void 0:E.filter(G=>G.section===xe.Advanced),plugin:(v=x.value)==null?void 0:v.concat((k=B.value)==null?void 0:k.filter(G=>G.section===xe.Plugin))}}),w=t.computed(()=>{const g=[];return S.value.basic.length&&g.push("basic"),S.value.advanced.length&&g.push("advanced"),S.value.plugin.length&&g.push("plugin"),g}),A=t.computed(()=>{var g,E;let k=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?k=k.replace(/{controlPlaneId}/gi,((g=o.config)==null?void 0:g.controlPlaneId)||""):o.config.app==="kongManager"&&(k=k.replace(/\/{workspace}/gi,(E=o.config)!=null&&E.workspace?`/${o.config.workspace}`:"")),k=k.replace(/{id}/gi,o.config.entityId),k});return t.watch(h,g=>{a("loading",g)},{immediate:!0}),t.onBeforeMount(async()=>{C.value=!1,h.value=!0;try{const{data:g}=await c.get(A.value);if(o.dataKey)if(typeof g[o.dataKey]<"u")y.value={...g[o.dataKey]};else throw new Error(r("errors.dataKeyUndefined",{dataKey:o.dataKey}));else y.value={...g};Object.keys(o.configSchema).filter(E=>o.configSchema[E].forceShow).forEach(E=>{y.value&&typeof y.value[E]>"u"&&(y.value[E]=null)}),a("fetch:success",g)}catch(g){const E=l(g);b.value=E.startsWith("code")?r("baseConfigCard.errors.load"):E,C.value=!0,a("fetch:error",g)}finally{h.value=!1}}),(g,E)=>{const k=t.resolveComponent("KLabel"),v=t.resolveComponent("KSelect"),G=t.resolveComponent("KButton"),j=t.resolveComponent("KSkeleton"),F=t.resolveComponent("KEmptyState"),R=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(R,{class:"kong-ui-entity-base-config-card","title-tag":e.titleTag},t.createSlots({actions:t.withCtx(()=>[t.createElementVNode("div",nu,[t.renderSlot(g.$slots,"actions",{},void 0,!0),t.createVNode(k,{class:"config-format-select-label","data-testid":"config-format-select-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.label),1)]),_:1}),t.createVNode(v,{"data-testid":"select-config-format",items:d,onChange:m}),e.configCardDoc?(t.openBlock(),t.createBlock(G,{key:0,appearance:"tertiary",class:"book-icon","data-testid":"book-icon"},{default:t.withCtx(()=>[t.createElementVNode("a",{href:e.configCardDoc,rel:"noopener",target:"_blank"},[t.createVNode(t.unref(Fp),{size:t.unref(zs)},null,8,["size"])],8,iu)]),_:1})):t.createCommentVNode("",!0)])]),default:t.withCtx(()=>[h.value?(t.openBlock(),t.createBlock(j,{key:0,"data-testid":"config-card-loader","table-columns":2,type:"table"})):C.value?(t.openBlock(),t.createBlock(F,{key:1,"data-testid":"config-card-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(b.value),1)]),_:1})):t.createCommentVNode("",!0),t.createElementVNode("div",au,[t.createVNode(vp,{config:e.config,"fetcher-url":A.value,format:u.value,"prop-list-types":w.value,"property-collections":S.value,record:y.value},t.createSlots({_:2},[t.renderList(Object.keys(g.$slots),V=>({name:V,fn:t.withCtx(({row:K,rowValue:H})=>[t.renderSlot(g.$slots,V,{row:K,rowValue:H},void 0,!0)])}))]),1032,["config","fetcher-url","format","prop-list-types","property-collections","record"])])]),_:2},[e.hideTitle?void 0:{name:"title",fn:t.withCtx(()=>[t.createElementVNode("span",tu,[t.renderSlot(g.$slots,"title",{},()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("baseConfigCard.title")),1)],!0)])]),key:"0"}]),1032,["title-tag"])}}}),ru=_e(ou,[["__scopeId","data-v-f40a683b"]]),lu=["novalidate"],su={class:"form-actions","data-testid":"form-actions"},cu=t.defineComponent({__name:"EntityBaseForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},editId:{type:String,required:!1,default:""},fetchUrl:{type:String,required:!1,default:""},isReadonly:{type:Boolean,required:!1,default:!1},canSubmit:{type:Boolean,required:!1,default:void 0},errorMessage:{type:String,required:!1,default:""},formFields:{type:Object,required:!0},noValidate:{type:Boolean,default:!1}},emits:["loading","fetch:success","fetch:error","submit","cancel"],setup(e,{emit:n}){var i;const a=n,o=e,r=Pt.useRouter(),{i18n:{t:l}}=ke.useI18n(),{getMessageFromError:s}=ke.useErrors(),{axiosInstance:c}=ke.useAxios((i=o.config)==null?void 0:i.axiosRequestConfig),d=t.ref(!1),u=t.ref(!1),m=t.ref(""),f=t.computed(()=>o.canSubmit===!1||o.isReadonly),h=t.ref(!1),C=t.computed(()=>{var w,A;let g=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?g=g.replace(/{controlPlaneId}/gi,((w=o.config)==null?void 0:w.controlPlaneId)||""):o.config.app==="kongManager"&&(g=g.replace(/\/{workspace}/gi,(A=o.config)!=null&&A.workspace?`/${o.config.workspace}`:"")),o.editId?(g=g.replace(/{id}/gi,o.editId),g):(g=g.replace(/\/{id}/gi,""),g)}),b=()=>{h.value=!h.value},y=()=>{o.config.cancelRoute?r.push(o.config.cancelRoute):B()},B=()=>{a("cancel")},x=()=>{f.value||a("submit")},S=t.ref([{title:l("baseForm.configuration.yaml"),hash:"#yaml"},{title:l("baseForm.configuration.json"),hash:"#json"}]);return t.watch(()=>d.value,w=>{a("loading",w)},{immediate:!0}),t.onBeforeMount(async()=>{if(o.editId)try{u.value=!1,d.value=!0;const{data:w}=await c.get(C.value);a("fetch:success",w)}catch(w){const A=s(w);m.value=A.startsWith("code")?l("baseForm.errors.edit"):A,u.value=!0,a("fetch:error",w)}finally{d.value=!1}}),(w,A)=>{const g=t.resolveComponent("KSkeleton"),E=t.resolveComponent("KEmptyState"),k=t.resolveComponent("KAlert"),v=t.resolveComponent("KButton"),G=t.resolveComponent("KTabs"),j=t.resolveComponent("KSlideout"),F=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(F,{class:"kong-ui-entity-base-form"},{default:t.withCtx(()=>[d.value?(t.openBlock(),t.createBlock(g,{key:0,type:"form"})):u.value?(t.openBlock(),t.createBlock(E,{key:1,"action-button-text":t.unref(l)("baseForm.actions.back"),"data-testid":"form-fetch-error","icon-variant":"error",onClickAction:y},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(m.value),1)]),_:1},8,["action-button-text"])):(t.openBlock(),t.createElementBlock("form",{key:2,"data-testid":"form-content",novalidate:o.noValidate,onReset:t.withModifiers(B,["prevent"]),onSubmit:t.withModifiers(x,["prevent"])},[t.renderSlot(w.$slots,"default",{},void 0,!0),e.errorMessage?(t.openBlock(),t.createBlock(k,{key:0,appearance:"danger","data-testid":"form-error",message:e.errorMessage},null,8,["message"])):t.createCommentVNode("",!0),t.createElementVNode("div",su,[t.renderSlot(w.$slots,"form-actions",{},()=>[t.createVNode(v,{appearance:"tertiary","data-testid":"form-view-configuration",onClick:A[0]||(A[0]=R=>b())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("baseForm.actions.viewConfiguration")),1)]),_:1}),t.createVNode(v,{appearance:"secondary","data-testid":"form-cancel",disabled:e.isReadonly,type:"reset"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("baseForm.actions.cancel")),1)]),_:1},8,["disabled"]),t.createVNode(v,{appearance:"primary","data-testid":"form-submit",disabled:f.value,type:"submit"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("baseForm.actions.save")),1)]),_:1},8,["disabled"])],!0)])],40,lu)),t.createVNode(j,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(l)("baseForm.configuration.title"),visible:h.value,onClose:A[1]||(A[1]=R=>b())},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("baseForm.configuration.message")),1),t.createVNode(G,{"data-testid":"form-view-configuration-slideout-tabs",tabs:S.value},{json:t.withCtx(()=>[t.createVNode(mi,{config:e.config,"fetcher-url":C.value,"json-record":o.formFields,"request-method":o.editId?"put":"post"},null,8,["config","fetcher-url","json-record","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(Si,{"yaml-record":o.formFields},null,8,["yaml-record"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])]),_:3})}}}),du=_e(cu,[["__scopeId","data-v-3def74fe"]]),pu=["data-truncate"],uu=t.defineComponent({__name:"EntityBaseTableCell",props:{keyName:{type:String,required:!0},rowEl:{type:[Object,null],required:!0},tooltip:{type:Boolean,default:!1}},setup(e){const n=e,i=t.computed(()=>{var y;return((y=n.rowEl)==null?void 0:y.querySelector(`[data-testid="${n.keyName}"]`))||null}),a=t.computed(()=>{var y;return((y=i.value)==null?void 0:y.querySelector('[data-truncate="true"]'))||null}),o=t.computed(()=>{var y,B;const x=(y=n.rowEl)==null?void 0:y.querySelectorAll("td");return x?((B=x[0])==null?void 0:B.getAttribute("data-testid"))===n.keyName:!1}),r=t.computed(()=>o.value||n.tooltip);let l;const s=()=>{l&&(l.disconnect(),l=void 0)},c=()=>{var y,B,x;let S=((y=i.value)==null?void 0:y.clientWidth)||0;if(i.value&&"getComputedStyle"in window){const w=window.getComputedStyle(i.value);S-=(parseFloat(w.paddingLeft)||0)+(parseFloat(w.paddingRight)||0)}u.value=((B=a.value)==null?void 0:B.getBoundingClientRect().width)||0,m.value=S,f.value=((x=d.value)==null?void 0:x.innerText)||""},d=t.ref({}),u=t.ref(0),m=t.ref(0),f=t.ref(""),h=t.computed(()=>[a.value,i.value]),C=t.watch(h,y=>{if(r.value&&(s(),"ResizeObserver"in window&&window)){l=new ResizeObserver(B=>{window.requestAnimationFrame(()=>{!Array.isArray(B)||!B.length||c()})});for(const B of y)B&&l.observe(B)}},{immediate:!0,flush:"post",deep:!0}),b=t.computed(()=>r.value?u.value>m.value:!1);return t.onMounted(()=>{c()}),t.onUnmounted(()=>{C()}),(y,B)=>{const x=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("span",{ref_key:"contentRef",ref:d,class:"content-wrapper"},[r.value?(t.openBlock(),t.createElementBlock("span",{key:0,"data-truncate":r.value||void 0},[t.createVNode(x,{"max-width":"300",placement:"bottomStart",text:b.value?f.value:""},{default:t.withCtx(()=>[t.renderSlot(y.$slots,"default",{},void 0,!0)]),_:3},8,["text"])],8,pu)):t.renderSlot(y.$slots,"default",{key:1},void 0,!0)],512)}}}),mu=_e(uu,[["__scopeId","data-v-6019026f"]]),gu={class:"toolbar-container"},fu={key:0,class:"toolbar-button-container"},Au=["data-testid"],hu=t.defineComponent({__name:"EntityBaseTable",props:{tableHeaders:{type:Object,required:!0,default:()=>({})},fetcher:{type:Function,required:!0,default:async()=>({data:[],total:0})},initialFetcherParams:{type:Object,default:null},cacheIdentifier:{type:String,default:""},fetcherCacheKey:{type:Number,default:1},isLoading:{type:Boolean,default:!1},query:{type:String,default:""},enableClientSort:{type:Boolean,default:!1},enableEntityActions:{type:Boolean,default:!0},emptyStateOptions:{type:Object,default:()=>({})},errorMessage:{type:[String,Object],default:null},disablePaginationPageJump:{type:Boolean,default:void 0},disableSorting:{type:Boolean,default:void 0},paginationType:{type:String,default:void 0},cellAttributes:{type:Function,default:()=>({})},rowAttributes:{type:Function,default:()=>({})},preferencesStorageKey:{type:String,default:"",required:!0},dropdownMenuWidth:{type:String,default:"",required:!1},title:{type:String,default:""},titleTag:{type:String,default:"h2"},disableRowClick:{type:Boolean,default:!1}},emits:["click:row","sort","clear-search-input","empty-state-cta-clicked"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=ke.useI18n(),r=t.computed(()=>{var A,g;return typeof i.errorMessage=="string"?{hasError:!!i.errorMessage,title:i.errorMessage,message:void 0}:{hasError:!!i.errorMessage,title:(A=i.errorMessage)==null?void 0:A.title,message:(g=i.errorMessage)==null?void 0:g.message}}),l=t.computed(()=>i.cacheIdentifier||i.preferencesStorageKey),s=A=>A.hasData||!!i.query,c=t.computed(()=>{const A=[];return Object.keys(i.tableHeaders).forEach(g=>{const E=i.tableHeaders[g];A.push({label:E.label??g,key:g,sortable:E.sortable??!1})}),i.enableEntityActions&&A.push({key:"actions",hideLabel:!0}),A}),d=A=>({"data-rowid":A.id,"data-testid":A.name,...i.rowAttributes(A)}),u=t.ref({}),m=A=>{var g;return(g=u.value)==null?void 0:g.$el.querySelector(`[data-rowid="${A.id}"]`)},f=A=>{const g={"data-testid":A.headerKey,...i.cellAttributes(A)};return A.colIndex===0&&(g.style={maxWidth:"250px",overflowX:"hidden",textOverflow:"ellipsis"}),g},h=()=>{a("empty-state-cta-clicked"),C()},C=()=>{a("clear-search-input")},b=t.computed(()=>i.disableRowClick?void 0:(A,g)=>{a("click:row",g)}),y=A=>{a("sort",A)},{setTablePreferences:B,getTablePreferences:x}=cs(),S=t.computed(()=>{const A=x(i.preferencesStorageKey);return{...i.initialFetcherParams,...A}}),w=A=>{i.preferencesStorageKey&&B(i.preferencesStorageKey,A)};return(A,g)=>{const E=t.resolveComponent("KIcon"),k=t.resolveComponent("KButton"),v=t.resolveComponent("KDropdown"),G=t.resolveComponent("KTable"),j=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(j,{class:"kong-ui-entity-base-table",title:e.title,"title-tag":e.titleTag},{default:t.withCtx(()=>[t.createVNode(G,{ref_key:"tableRefs",ref:u,"cache-identifier":l.value,"cell-attrs":f,"disable-pagination-page-jump":e.disablePaginationPageJump,"disable-sorting":e.disableSorting,"empty-state-action-message":e.query?t.unref(o)("baseTable.emptyState.noSearchResultsCtaText"):e.emptyStateOptions.ctaText,"empty-state-action-route":e.query?void 0:e.emptyStateOptions.ctaPath,"empty-state-icon-variant":e.query?"search":"kong","empty-state-message":e.query?t.unref(o)("baseTable.emptyState.noSearchResultsMessage"):e.emptyStateOptions.message,"empty-state-title":e.query?t.unref(o)("baseTable.emptyState.noSearchResultsTitle"):e.emptyStateOptions.title,"enable-client-sort":e.enableClientSort,"error-state-message":r.value.message,"error-state-title":r.value.title,fetcher:e.fetcher,"fetcher-cache-key":String(e.fetcherCacheKey),"has-error":r.value.hasError,headers:c.value,"hide-pagination-when-optional":"","initial-fetcher-params":S.value,"is-loading":e.isLoading,"pagination-type":e.paginationType,"row-attrs":d,"search-input":e.query,onKtableEmptyStateCtaClicked:h,"onRow:click":b.value,onSort:g[0]||(g[0]=F=>y(F)),"onUpdate:tablePreferences":w},t.createSlots({toolbar:t.withCtx(({state:F})=>[t.withDirectives(t.createElementVNode("div",gu,[t.renderSlot(A.$slots,"toolbar-filter",{},void 0,!0),A.$slots["toolbar-button"]?(t.openBlock(),t.createElementBlock("div",fu,[t.renderSlot(A.$slots,"toolbar-button",{},void 0,!0)])):t.createCommentVNode("",!0)],512),[[t.vShow,s(F)]])]),actions:t.withCtx(({row:F,rowKey:R,rowValue:V})=>[t.createElementVNode("div",{class:"actions-container","data-testid":F.name},[t.createVNode(v,{"kpop-attributes":{placement:"bottomEnd"},width:e.dropdownMenuWidth},{items:t.withCtx(()=>[t.renderSlot(A.$slots,"actions",{row:F,rowKey:R,rowValue:V},void 0,!0)]),default:t.withCtx(()=>[t.createVNode(k,{class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:t.withCtx(()=>[t.createVNode(E,{color:t.unref(Gs),icon:"more",size:"16"},null,8,["color"])]),_:1})]),_:2},1032,["width"])],8,Au)]),_:2},[t.renderList(e.tableHeaders,(F,R)=>({name:R,fn:t.withCtx(({row:V,rowKey:K,rowValue:H})=>[t.createVNode(mu,{"key-name":String(R),"row-el":m(V),tooltip:F.tooltip},{default:t.withCtx(()=>[t.renderSlot(A.$slots,R,{row:V,rowKey:K,rowValue:H},()=>[t.createTextVNode(t.toDisplayString(H),1)],!0)]),_:2},1032,["key-name","row-el","tooltip"])])})),e.query?void 0:{name:"empty-state-action-icon",fn:t.withCtx(()=>[t.createVNode(t.unref(Dp))]),key:"0"}]),1032,["cache-identifier","disable-pagination-page-jump","disable-sorting","empty-state-action-message","empty-state-action-route","empty-state-icon-variant","empty-state-message","empty-state-title","enable-client-sort","error-state-message","error-state-title","fetcher","fetcher-cache-key","has-error","headers","initial-fetcher-params","is-loading","pagination-type","search-input","onRow:click"])]),_:3},8,["title","title-tag"])}}}),yu=_e(hu,[["__scopeId","data-v-adb02213"]]),bu={key:0,class:"kong-ui-entity-delete-error"},wu={key:1,class:"description"},Cu=t.defineComponent({__name:"EntityDeleteModal",props:{visible:{type:Boolean,required:!0,default:!1},title:{type:String,default:"Delete"},entityType:{type:String,required:!0},entityName:{type:String,default:""},needConfirm:{type:Boolean,default:!0},description:{type:String,default:""},actionPending:{type:Boolean,default:!1},error:{type:String,default:""}},emits:["cancel","proceed"],setup(e,{emit:n}){const{i18nT:i}=ke.useI18n(),a=e,o=n,r=t.computed(()=>a.needConfirm?a.entityName:""),l=()=>{o("cancel")},s=()=>{o("proceed")};return(c,d)=>{const u=t.resolveComponent("KAlert"),m=t.resolveComponent("KPrompt");return t.openBlock(),t.createBlock(m,{"action-button-appearance":"danger","action-button-disabled":e.actionPending,"action-button-text":"Yes, delete",class:"kong-ui-entity-delete-modal","confirmation-text":r.value,title:e.title,visible:e.visible,onCancel:l,onProceed:s},{default:t.withCtx(()=>[e.error?(t.openBlock(),t.createElementBlock("div",bu,[t.createVNode(u,{appearance:"danger"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.error),1)]),_:1})])):t.createCommentVNode("",!0),t.createVNode(t.unref(i),{class:"message",keypath:a.entityName?"deleteModal.messageWithName":"deleteModal.message",tag:"p"},t.createSlots({entityType:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.entityType),1)]),_:2},[a.entityName?{name:"entityName",fn:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(a.entityName),1)]),key:"0"}:void 0]),1032,["keypath"]),a.description||c.$slots.description?(t.openBlock(),t.createElementBlock("div",wu,[t.renderSlot(c.$slots,"description",{},()=>[t.createElementVNode("p",null,t.toDisplayString(a.description),1)],!0)])):t.createCommentVNode("",!0)]),_:3},8,["action-button-disabled","confirmation-text","title","visible"])}}}),vo=_e(Cu,[["__scopeId","data-v-4361d622"]]),ku={fill:"none",height:"20",viewBox:"0 0 20 20",width:"20",xmlns:"http://www.w3.org/2000/svg"},Eu={id:"mask0_180_20349",height:"20",maskUnits:"userSpaceOnUse",style:{"mask-type":"alpha"},width:"20",x:"0",y:"0"},Bu=["fill"],Ou={mask:"url(#mask0_180_20349)"},xu=["fill"],To=t.defineComponent({__name:"IconFilter",props:{color:{type:String,default:`var(--kong-ui-entity-filter-color, ${Us})`}},setup(e){return(n,i)=>(t.openBlock(),t.createElementBlock("svg",ku,[t.createElementVNode("mask",Eu,[t.createElementVNode("rect",{fill:e.color,height:"20",width:"20"},null,8,Bu)]),t.createElementVNode("g",Ou,[t.createElementVNode("path",{d:"M8 14.5V13H12V14.5H8ZM5 10.75V9.25H15V10.75H5ZM3 7V5.5H17V7H3Z",fill:e.color},null,8,xu)])]))}}),Iu={key:1,class:"kong-ui-entity-filter"},Su={class:"kong-ui-entity-filter-menu"},Mu=["data-testid"],vu=["onClick","onKeydown"],Tu={class:"menu-item-indicator"},Ru={class:"menu-item-body"},Nu=["for"],Vu={class:"menu-item-buttons"},Lu={class:"filter-clear-button-container"},Du=t.defineComponent({__name:"EntityFilter",props:{config:{type:Object,required:!0,default:()=>({isExactMatch:!0,placeholder:""})},modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:n}){const{i18n:{t:i}}=ke.useI18n(),a=e,o=n,r=t.ref(!1),l=t.ref({}),s=t.ref(new Set),c=t.computed(()=>{const w=[];return new URLSearchParams(a.modelValue).forEach((A,g)=>{A!==""&&w.push(g)}),w}),d=t.computed(()=>{const w=a.config.fields;return Object.keys(w).filter(A=>{var g;return(g=w==null?void 0:w[A])==null?void 0:g.searchable}).map(A=>({label:w[A].label||A,value:A,expanded:!1}))});t.watch(()=>a.modelValue,w=>{l.value={},new URLSearchParams(w).forEach((A,g)=>{l.value[g]=A})});const u=()=>{r.value=!r.value},m=w=>{s.value.has(w)?s.value.delete(w):s.value.add(w)},f=w=>{o("update:modelValue",w)},h=()=>{f("")},C=w=>`filter-${w}`,b=w=>{var A,g;return(((g=(A=a.config.schema)==null?void 0:A[w])==null?void 0:g.values)??[]).map(E=>({value:E,label:E}))},y=w=>{var A,g;return((g=(A=a.config.schema)==null?void 0:A[w])==null?void 0:g.type)??"text"},B=w=>{l.value={...l.value,[w]:""},S()},x=()=>{l.value={},S(!0)},S=(w=!1)=>{const A=Object.keys(l.value).reduce((g,E)=>(l.value[E]&&(g[E]=`${l.value[E]}`),g),{});w&&(r.value=!1),o("update:modelValue",new URLSearchParams(A).toString())};return(w,A)=>{const g=t.resolveComponent("KInput"),E=t.resolveComponent("KButton"),k=t.resolveComponent("KSelect");return e.config.isExactMatch?(t.openBlock(),t.createBlock(g,{key:0,autocomplete:"off",class:"kong-ui-entity-filter-input","data-testid":"search-input","model-value":e.modelValue,placeholder:e.config.placeholder,"onUpdate:modelValue":f},{before:t.withCtx(()=>[t.createVNode(To)]),after:t.withCtx(()=>[t.withDirectives(t.createVNode(t.unref(eu),{class:"kong-ui-entity-filter-clear",onClick:h},null,512),[[t.vShow,e.modelValue!==""]])]),_:1},8,["model-value","placeholder"])):(t.openBlock(),t.createElementBlock("div",Iu,[t.createVNode(E,{appearance:"tertiary","data-testid":"filter-button",onClick:u},{default:t.withCtx(()=>[t.createVNode(To),t.createTextVNode(" "+t.toDisplayString(t.unref(i)("filter.filterButtonText"))+" "+t.toDisplayString(c.value.length>0?`(${c.value.length})`:""),1)]),_:1}),t.withDirectives(t.createElementVNode("div",{class:"kong-ui-entity-filter-backdrop",onClick:u},null,512),[[t.vShow,r.value]]),t.withDirectives(t.createElementVNode("div",Su,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,v=>{var G,j;return t.openBlock(),t.createElementBlock("div",{key:v.value,class:"kong-ui-entity-filter-menu-item","data-testid":v.value},[t.createElementVNode("span",{class:t.normalizeClass(["menu-item-title",{expanded:s.value.has(v.value)}]),role:"button",tabindex:"0",onClick:F=>m(v.value),onKeydown:t.withKeys(F=>m(v.value),["enter"])},[t.createTextVNode(t.toDisplayString(v.label)+" ",1),t.withDirectives(t.createElementVNode("span",Tu,null,512),[[t.vShow,c.value.includes(v.value)]]),t.createVNode(t.unref(Jp),{class:t.normalizeClass(["menu-item-expand-icon",{expanded:s.value.has(v.value)}]),color:t.unref(Fs)},null,8,["class","color"])],42,vu),t.withDirectives(t.createElementVNode("div",Ru,[t.createElementVNode("label",{class:"menu-item-label",for:C(v.value)},t.toDisplayString(t.unref(i)("filter.fieldLabel")),9,Nu),((j=(G=e.config.schema)==null?void 0:G[v.value])==null?void 0:j.type)==="select"?(t.openBlock(),t.createBlock(k,{key:0,id:C(v.value),modelValue:l.value[v.value],"onUpdate:modelValue":F=>l.value[v.value]=F,items:b(v.value),placeholder:t.unref(i)("filter.selectPlaceholder")},null,8,["id","modelValue","onUpdate:modelValue","items","placeholder"])):(t.openBlock(),t.createBlock(g,{key:1,id:C(v.value),modelValue:l.value[v.value],"onUpdate:modelValue":F=>l.value[v.value]=F,autocomplete:"off",placeholder:t.unref(i)("filter.inputPlaceholder"),type:y(v.value)},null,8,["id","modelValue","onUpdate:modelValue","placeholder","type"]))],512),[[t.vShow,s.value.has(v.value)]]),t.withDirectives(t.createElementVNode("div",Vu,[t.createVNode(E,{appearance:"tertiary","data-testid":"apply-filter",size:"small",onClick:A[0]||(A[0]=F=>S(!0))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("filter.applyButtonText")),1)]),_:1}),t.createVNode(E,{appearance:"tertiary","data-testid":"clear-filter",size:"small",onClick:F=>B(v.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("filter.clearButtonText")),1)]),_:2},1032,["onClick"])],512),[[t.vShow,s.value.has(v.value)]])],8,Mu)}),128)),t.createElementVNode("div",Lu,[t.createVNode(E,{appearance:"tertiary",size:"small",onClick:x},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("filter.clearAllButtonText")),1)]),_:1})])],512),[[t.vShow,r.value]])]))}}}),ju=_e(Du,[["__scopeId","data-v-9a370e3a"]]),Pu=t.defineComponent({__name:"EntityToggleModal",props:{visible:{type:Boolean,required:!0},action:{type:String,required:!0},entityId:{type:String,required:!0},entityType:{type:String,required:!0},entityName:{type:String,required:!0},onConfirm:{type:Function,required:!1,default:null}},emits:["cancel","proceed"],setup(e,{emit:n}){const{i18n:{t:i},i18nT:a}=ke.useI18n(),o=e,r=n,l=t.ref(!1),s=t.computed(()=>o.action==="enable"?i("toggleModal.enable.title",{entityType:o.entityType}):i("toggleModal.disable.title",{entityType:o.entityType})),c=t.computed(()=>o.action==="enable"?i("toggleModal.enable.confirmText"):i("toggleModal.disable.confirmText")),d=()=>r("cancel"),u=async()=>{if(o.onConfirm){l.value=!0;try{await o.onConfirm(),r("proceed")}catch(m){console.error(m)}finally{l.value=!1}}};return(m,f)=>{const h=t.resolveComponent("KPrompt");return t.openBlock(),t.createBlock(t.Teleport,{to:"body"},[t.createVNode(h,{"action-button-disabled":l.value,"action-button-text":c.value,"data-testid":`${e.entityType}-${e.entityId}-toggle-prompt`,title:s.value,visible:e.visible,onCancel:d,onProceed:u},{default:t.withCtx(()=>[t.createVNode(t.unref(a),{keypath:`toggleModal.${o.action}.message`,scope:"global"},{entityType:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.entityType),1)]),entityName:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.entityName),1)]),_:1},8,["keypath"])]),_:1},8,["action-button-disabled","action-button-text","data-testid","title","visible"])])}}}),Ct=t.defineComponent({__name:"PermissionsWrapper",props:{authFunction:{type:Function,required:!0,default:async()=>!0},forceShow:{type:Boolean,default:!1}},setup(e){const n=e,i=t.ref(void 0),a=t.computed(()=>i.value===!0||i.value!==void 0&&n.forceShow===!0);return t.watch(()=>n.authFunction,async()=>{i.value=await n.authFunction()},{immediate:!0}),(o,r)=>a.value?t.renderSlot(o.$slots,"default",{key:0,isAllowed:i.value}):t.createCommentVNode("",!0)}}),Uu=[];for(let e=0;e<256;++e)Uu.push((e+256).toString(16).slice(1));typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);const{useAxios:Kt,useDeleteUrlBuilder:Yu,useErrors:Ln,useExternalLinkCreator:DO,useFetchUrlBuilder:jO,useFetcher:Gu,useDebouncedFilter:PO,useStringHelpers:Mi,useHelpers:Dn,useGatewayFeatureSupported:Fu,useTruncationDetector:UO,useValidators:YO}=ke;function vi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let kt=vi();function Ro(e){kt=e}const No=/[&<>"']/,Hu=new RegExp(No.source,"g"),Vo=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,zu=new RegExp(Vo.source,"g"),Ku={"&":"&","<":"<",">":">",'"':""","'":"'"},Lo=e=>Ku[e];function He(e,n){if(n){if(No.test(e))return e.replace(Hu,Lo)}else if(Vo.test(e))return e.replace(zu,Lo);return e}const qu=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function Xu(e){return e.replace(qu,(n,i)=>(i=i.toLowerCase(),i==="colon"?":":i.charAt(0)==="#"?i.charAt(1)==="x"?String.fromCharCode(parseInt(i.substring(2),16)):String.fromCharCode(+i.substring(1)):""))}const Ju=/(^|[^\[])\^/g;function ce(e,n){let i=typeof e=="string"?e:e.source;n=n||"";const a={replace:(o,r)=>{let l=typeof r=="string"?r:r.source;return l=l.replace(Ju,"$1"),i=i.replace(o,l),a},getRegex:()=>new RegExp(i,n)};return a}function Do(e){try{e=encodeURI(e).replace(/%25/g,"%")}catch{return null}return e}const rn={exec:()=>null};function jo(e,n){const i=e.replace(/\|/g,(r,l,s)=>{let c=!1,d=l;for(;--d>=0&&s[d]==="\\";)c=!c;return c?"|":" |"}),a=i.split(/ \|/);let o=0;if(a[0].trim()||a.shift(),a.length>0&&!a[a.length-1].trim()&&a.pop(),n)if(a.length>n)a.splice(n);else for(;a.length<n;)a.push("");for(;o<a.length;o++)a[o]=a[o].trim().replace(/\\\|/g,"|");return a}function jn(e,n,i){const a=e.length;if(a===0)return"";let o=0;for(;o<a;){const r=e.charAt(a-o-1);if(r===n&&!i)o++;else if(r!==n&&i)o++;else break}return e.slice(0,a-o)}function Zu(e,n){if(e.indexOf(n[1])===-1)return-1;let i=0;for(let a=0;a<e.length;a++)if(e[a]==="\\")a++;else if(e[a]===n[0])i++;else if(e[a]===n[1]&&(i--,i<0))return a;return-1}function Po(e,n,i,a){const o=n.href,r=n.title?He(n.title):null,l=e[1].replace(/\\([\[\]])/g,"$1");if(e[0].charAt(0)!=="!"){a.state.inLink=!0;const s={type:"link",raw:i,href:o,title:r,text:l,tokens:a.inlineTokens(l)};return a.state.inLink=!1,s}return{type:"image",raw:i,href:o,title:r,text:He(l)}}function Wu(e,n){const i=e.match(/^(\s+)(?:```)/);if(i===null)return n;const a=i[1];return n.split(`
|
|
33
33
|
`).map(o=>{const r=o.match(/^\s+/);if(r===null)return o;const[l]=r;return l.length>=a.length?o.slice(a.length):o}).join(`
|
|
34
34
|
`)}class Pn{constructor(n){ge(this,"options");ge(this,"rules");ge(this,"lexer");this.options=n||kt}space(n){const i=this.rules.block.newline.exec(n);if(i&&i[0].length>0)return{type:"space",raw:i[0]}}code(n){const i=this.rules.block.code.exec(n);if(i){const a=i[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:i[0],codeBlockStyle:"indented",text:this.options.pedantic?a:jn(a,`
|
|
35
35
|
`)}}}fences(n){const i=this.rules.block.fences.exec(n);if(i){const a=i[0],o=Wu(a,i[3]||"");return{type:"code",raw:a,lang:i[2]?i[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):i[2],text:o}}}heading(n){const i=this.rules.block.heading.exec(n);if(i){let a=i[2].trim();if(/#$/.test(a)){const o=jn(a,"#");(this.options.pedantic||!o||/ $/.test(o))&&(a=o.trim())}return{type:"heading",raw:i[0],depth:i[1].length,text:a,tokens:this.lexer.inline(a)}}}hr(n){const i=this.rules.block.hr.exec(n);if(i)return{type:"hr",raw:i[0]}}blockquote(n){const i=this.rules.block.blockquote.exec(n);if(i){const a=jn(i[0].replace(/^ *>[ \t]?/gm,""),`
|
|
@@ -83,4 +83,4 @@ Please report this to https://github.com/markedjs/marked.`,n){const o="<p>An err
|
|
|
83
83
|
will be generated for you.`,inputType:"text",encrypted:!0}},{client_secret:{submitWhenNull:!1,hint:`You can optionally set your own unique client_secret. If missing,
|
|
84
84
|
it will be generated for you.`,inputType:"text",encrypted:!0}},{redirect_uris:pn.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
|
|
85
85
|
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})}]},uf={fields:[{id:{uuid:!0,auto:!0,type:"string",description:"A string representing a UUID (universally unique identifier)."}},{created_at:{description:"An integer representing an automatic Unix timestamp in seconds.",timestamp:!0,auto:!0,type:"integer"}},{consumer:{on_delete:"cascade",type:"foreign",reference:"consumers",required:!0}},{name:{required:!0,type:"string"}},{client_id:{required:!1,hint:"You can optionally set your own unique client_id. If missing, it will be generated for you.",unique:!0,auto:!0,type:"string"}},{client_secret:{required:!1,hint:"You can optionally set your own unique client_secret. If missing, it will be generated for you.",auto:!0,type:"string",encrypted:!0}},{hash_secret:{required:!0,type:"boolean",default:!1}},{redirect_uris:{required:!1,hint:"One or more URLs in your app where users will be sent after authorization (RFC 6742 Section 3.1.2)",type:"array",elements:{type:"string"}}},{tags:{elements:{required:!0,type:"string",description:"A string representing a tag."},type:"set",description:"A set of strings representing tags."}},{client_type:{required:!0,default:"confidential",type:"string",one_of:["confidential","public"]}}]},er={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
86
|
-
client. If missing, it will be generated for you.`,inputType:"text",encrypted:!0}}]},mf={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}}]},Je={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},jwt:{descriptionKey:"plugins.meta.jwt.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.jwt.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",group:T.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},cors:{descriptionKey:"plugins.meta.cors.description",group:T.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.cors.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",group:T.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP],fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]}},opa:{descriptionKey:"plugins.meta.opa.description",group:T.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.opa.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",group:T.DEPLOYMENT,isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",scope:[p.GLOBAL]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]}},acl:{descriptionKey:"plugins.meta.acl.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.acl.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],fieldRules:{onlyOneOf:[["config.allow","config.deny"]]}},canary:{descriptionKey:"plugins.meta.canary.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.canary.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]}},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]}},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP],imageName:"proxy-cache"},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],imageName:"graphql"},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP],fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]}},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},mocking:{descriptionKey:"plugins.meta.mocking.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.mocking.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]}},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",group:T.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",scope:[p.ROUTE],useLegacyForm:!0},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],useLegacyForm:!0},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],useLegacyForm:!0},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],useLegacyForm:!0},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],useLegacyForm:!0},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],useLegacyForm:!0},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP],useLegacyForm:!0},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",group:T.SERVERLESS,isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",group:T.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",group:T.SERVERLESS,isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",group:T.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],imageName:"kong-function"},"post-function":{descriptionKey:"plugins.meta.post-function.description",group:T.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.post-function.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],imageName:"kong-function"},datadog:{descriptionKey:"plugins.meta.datadog.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.datadog.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},prometheus:{descriptionKey:"plugins.meta.prometheus.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},zipkin:{descriptionKey:"plugins.meta.zipkin.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},collector:{descriptionKey:"plugins.meta.collector.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.collector.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]}},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],imageName:"exit-transformer"},jq:{descriptionKey:"plugins.meta.jq.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.jq.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],imageName:"jq",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]}},"file-log":{descriptionKey:"plugins.meta.file-log.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.file-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"http-log":{descriptionKey:"plugins.meta.http-log.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.http-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},loggly:{descriptionKey:"plugins.meta.loggly.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.loggly.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},statsd:{descriptionKey:"plugins.meta.statsd.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.statsd.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},syslog:{descriptionKey:"plugins.meta.syslog.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.syslog.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",group:T.LOGGING,isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},session:{descriptionKey:"plugins.meta.session.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.session.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",scope:[p.SERVICE]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",scope:[p.GLOBAL,p.SERVICE],imageName:"application-registration"},acme:{descriptionKey:"plugins.meta.acme.description",group:T.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.acme.name",scope:[p.GLOBAL]},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]}},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",group:T.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",group:T.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},saml:{descriptionKey:"plugins.meta.saml.description",group:T.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.saml.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]}},qt={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Zo,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Ot(Zo),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Wo,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Ot(Wo)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Qo,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Ot(Qo)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:er,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Ot(er)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:$o,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Ot($o)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:_o,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Ot(_o)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:df,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},gf={acls:of,basicauth_credentials:rf,keyauth_credentials:lf,keyauth_enc_credentials:mf,oauth2_credentials:uf,hmacauth_credentials:sf,jwt_secrets:pf},tr=e=>{var a;const n=((a=Je[e])==null?void 0:a.imageName)||e||"missing",i=new URL(Object.assign({"../assets/images/plugin-icons/acl.png":Em,"../assets/images/plugin-icons/acme.png":Bm,"../assets/images/plugin-icons/ai-data-sanitization.png":Om,"../assets/images/plugin-icons/ai-prompt-decorator.png":xm,"../assets/images/plugin-icons/ai-prompt-guard.png":Im,"../assets/images/plugin-icons/ai-prompt-template.png":Sm,"../assets/images/plugin-icons/ai-proxy.png":Mm,"../assets/images/plugin-icons/ai-rate-limiting-advanced.png":vm,"../assets/images/plugin-icons/ai-request-transformer.png":Tm,"../assets/images/plugin-icons/ai-response-transformer.png":Rm,"../assets/images/plugin-icons/app-dynamics.png":Nm,"../assets/images/plugin-icons/application-registration.png":Vm,"../assets/images/plugin-icons/aws-lambda.png":Lm,"../assets/images/plugin-icons/azure-functions.png":Dm,"../assets/images/plugin-icons/basic-auth.png":jm,"../assets/images/plugin-icons/bot-detection.png":Pm,"../assets/images/plugin-icons/canary.png":Um,"../assets/images/plugin-icons/collector.png":Ym,"../assets/images/plugin-icons/correlation-id.png":Gm,"../assets/images/plugin-icons/cors.png":Fm,"../assets/images/plugin-icons/datadog.png":Hm,"../assets/images/plugin-icons/degraphql.png":zm,"../assets/images/plugin-icons/dynamic-ssl.png":Km,"../assets/images/plugin-icons/exit-transformer.png":qm,"../assets/images/plugin-icons/file-log.png":Xm,"../assets/images/plugin-icons/forward-proxy.png":Jm,"../assets/images/plugin-icons/graphql-rate-limiting-advanced.png":Zm,"../assets/images/plugin-icons/graphql.png":Wm,"../assets/images/plugin-icons/grpc-gateway.png":Qm,"../assets/images/plugin-icons/grpc-web.png":_m,"../assets/images/plugin-icons/hmac-auth.png":$m,"../assets/images/plugin-icons/http-log.png":eg,"../assets/images/plugin-icons/ip-restriction.png":tg,"../assets/images/plugin-icons/jq.png":ng,"../assets/images/plugin-icons/jwe-decrypt.png":ig,"../assets/images/plugin-icons/jwt-signer.png":ag,"../assets/images/plugin-icons/jwt.png":og,"../assets/images/plugin-icons/kafka-log.png":rg,"../assets/images/plugin-icons/kafka-upstream.png":lg,"../assets/images/plugin-icons/key-auth-enc.png":sg,"../assets/images/plugin-icons/key-auth.png":cg,"../assets/images/plugin-icons/kong-function.png":dg,"../assets/images/plugin-icons/kubernetes-sidecar-injector.png":pg,"../assets/images/plugin-icons/ldap-auth-advanced.png":ug,"../assets/images/plugin-icons/ldap-auth.png":mg,"../assets/images/plugin-icons/loggly.png":gg,"../assets/images/plugin-icons/missing.png":fg,"../assets/images/plugin-icons/mocking.png":Ag,"../assets/images/plugin-icons/mtls-auth.png":hg,"../assets/images/plugin-icons/new.png":yg,"../assets/images/plugin-icons/oas-validation.png":bg,"../assets/images/plugin-icons/oauth2-introspection.png":wg,"../assets/images/plugin-icons/oauth2.png":Cg,"../assets/images/plugin-icons/opa.png":kg,"../assets/images/plugin-icons/openid-connect.png":Eg,"../assets/images/plugin-icons/opentelemetry.png":Bg,"../assets/images/plugin-icons/openwhisk.png":Og,"../assets/images/plugin-icons/prometheus.png":xg,"../assets/images/plugin-icons/proxy-cache.png":Ig,"../assets/images/plugin-icons/rate-limiting-advanced.png":Sg,"../assets/images/plugin-icons/rate-limiting.png":Mg,"../assets/images/plugin-icons/request-size-limiting.png":vg,"../assets/images/plugin-icons/request-termination.png":Tg,"../assets/images/plugin-icons/request-transformer-advanced.png":Rg,"../assets/images/plugin-icons/request-transformer.png":Ng,"../assets/images/plugin-icons/request-validator.png":Vg,"../assets/images/plugin-icons/response-ratelimiting.png":Lg,"../assets/images/plugin-icons/response-transformer-advanced.png":Dg,"../assets/images/plugin-icons/response-transformer.png":jg,"../assets/images/plugin-icons/route-by-header.png":Pg,"../assets/images/plugin-icons/route-transformer-advanced.png":Ug,"../assets/images/plugin-icons/runscope.png":Yg,"../assets/images/plugin-icons/saml.png":Gg,"../assets/images/plugin-icons/session.png":Fg,"../assets/images/plugin-icons/statsd-advanced.png":Hg,"../assets/images/plugin-icons/statsd.png":zg,"../assets/images/plugin-icons/syslog.png":Kg,"../assets/images/plugin-icons/tcp-log.png":qg,"../assets/images/plugin-icons/tls-handshake-modifier.png":Xg,"../assets/images/plugin-icons/tls-metadata-headers.png":Jg,"../assets/images/plugin-icons/udp-log.png":Zg,"../assets/images/plugin-icons/upstream-timeout.png":Wg,"../assets/images/plugin-icons/upstream-tls.png":Qg,"../assets/images/plugin-icons/vault-auth.png":_g,"../assets/images/plugin-icons/websocket-size-limit.png":$g,"../assets/images/plugin-icons/websocket-validator.png":ef,"../assets/images/plugin-icons/xml-threat-protection.png":tf,"../assets/images/plugin-icons/zipkin.png":nf})[`../assets/images/plugin-icons/${n}.png`],typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Ut&&Ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;return i.includes("undefined")?new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAMAAABKCk6nAAAAhFBMVEUAAADs+fnr8PTo7fLm7PDl6e7j6+7j6O3i6Ozh5+vp9PTm7PDj6e319fXn7PHj6O739/fn7PDi6e3////o7fLj6Ozt8fbj6u7r7vPi6ezo7fL////n7PHm6/Dl6+/q8PTs8vbu9Pjv9frw9vri6ezv9fnp7/Pt8vfk6u6cpar////e4ePLpSv+AAAAHnRSTlMAKIq93/T6/f7/W8z3GbL4Hr/9AZ39OPFo/Z4FzOeuk05oAAAFJklEQVR4Ae3ThZLjyhWA4SNdWJ9BMy/KA3n/twoXBafWWYb2QPi6Vd9XKGz4q5t4QPNZHDP2n8W/4uT0bJBUZHB2ehL/pPOLy6wQlxfn8bThaJxUajwaxuMm01lSsdl0Eo+YL5LKLebxoOUqqd5qGQ9YD7IHGKzjPptt9gTbzT19n2dv8Pyw8DZ7hG0U1tkrrOM7y0H2CoNlfGO+yp5hNY8vJovsHRaT+GyaPcQ03mkiYvjnNu4za94Ljtn+vd/Efc7+/sf4YJT32L286qjE1ctd3mMUH5yP89D1m46KvLnOQ+PzeO8iD+xuOipzs8sDF/HeZZZuX3dU5/Vtli7jnZMs7fSts/AuSycRcZqlm44q3WTpNCLOsnDdUanrLJxF29zF9zZ3QaXuNuWNJtosvOyo1ssstG0ThZ+Dah3Ea+LHIvmLjoq9KHL+2DYHyanYQc6jDYzACCxwZKGjallog177DwIjMAIjMAIjsMAIjMAIjMAIjMAILDACIzACIzACI7DACIzACIzACIzAAiMwAiMwAiMwAiOwwAiMwAiMwAiMwAIjMAIjMAIjMAILjMAIjMAIjMAIjMACIzACIzACIzACC4zACIzACIzACIzAAiMwAiMwAiMwAguMwAiMwAiMwAgsMAIjMAIjMAIjMAILjMAIjMAIjMAILDACIzACI/DP/6GjGENgBEZgBBYYgREYgREYgRGYJwMjMAIjMAI3TziCMQTmaAIjMAIjMAIjMAILjMAIjMAIjMAITBa6X9CveqD7hWWhDXpNYIERGIERGIERGIEFRmAERmAERuBKCdw2R68VGIERGIERWGAERmAERmAERmCBERiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIEFRmAERmAERuB+EPjt/ui9FRiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgWshcNscvVZgBEZgBEZggREYgREYgREYgQVGYARGYARGYARGYIERGIERGIERGIEFRmAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBBYYgREYgREYgftB4Lf7o/dWYARGYARGYIERGIERGIERGIEFRmAE5kj9GEfkb/EfwwkWGIERGIERGIERWGAERmAERmAERmAEFhiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIERWGAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBEZggREYgREYgREYgQVGYARGYARGYAQWGIERGIERGIERGIEFRmAERmAERmAEFhiBERiBERiBEZh2r3iflPn2B4HvgordPRl4H1RsL7DAfSJw/JCFq45qXWXhh3Yfhb8F1TqIt2/3ZeGf9kGl9j/F997XPcvCdUelrrNwFhGnWbrpqNJNlk4j4iRLu9cdFXq9y9JJvHOZpVuFa+x7m6XLeO8iD+xuOipzs8sDF/He+TgPXb/pqMib6zw0Po8PRnmP3curjkpcvdzlPUYR0UTE8M9t3GfWvBfHjP17v4n7nP39j/HRNOmhaXw2WSS9s5jEF/NV0jOreXxjOUh6ZbCM76yTXllHYZv0yDZKm+dJbzzfxGHhbdIT203cZz1IemCwjgcsV0n1Vst40HyRVG4xj0dMprOkYrPpJB43HI2TSo1Hw3ja+cVlUqHLi/P4J52cng2SigzOTk/iPk08oPksjhn7z+J+/wBSUhUZLUGZBgAAAABJRU5ErkJggg==",typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Ut&&Ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href:i};function nr(){const{capitalize:e}=Mi(),n=["methods","logout_methods"];return{setFieldType:(d,u,m)=>{var f,h,C;if(!(!d||!u||!m))switch(m.type){case"boolean":d[u]={type:_.BadgeStatus,...d[u]};break;case"string":m.encrypted?d[u]={type:_.Redacted,...d[u]}:d[u]={type:_.Text,...d[u]};break;case"set":((f=m.elements)==null?void 0:f.type)==="string"&&(d[u]={type:_.BadgeTag,...d[u]});break;case"array":n.includes(u)?d[u]={type:_.BadgeMethod,...d[u]}:((h=m.elements)==null?void 0:h.type)==="string"?m.encrypted?d[u]={type:_.RedactedArray,...d[u]}:d[u]={type:_.BadgeTag,...d[u]}:((C=m.elements)==null?void 0:C.type)==="record"&&(d[u]={type:_.Json,...d[u]});break;case"record":d[u]={type:_.Json,...d[u]};break;default:d[u]={type:_.Text,...d[u]};break}},getPluginCards:(d,u,m)=>d==="all"?u:d==="visible"?u.slice(0,m):u.slice(m),convertToDotNotation:d=>d.replace(/-/g,"."),unFlattenObject:d=>{const u={};for(const m in d){const f=m.split(".");f.reduce((h,C,b)=>h[C]||(h[C]=isNaN(f[b+1])?f.length-1===b?d[m]:{}:[]),u)}return u},isObjectEmpty:d=>Object.keys(d).length===0,unsetNullForeignKey:(d,u)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(d)>-1&&u[d]===null&&(delete u[d],u[d.replace(".id","")]=null)},formatPluginFieldLabel:d=>e(d.replace(/_/g," "))}}const ff=()=>{const{i18n:{t:e}}=Hn(),n={},i={};for(const[o,r]of Object.entries(Je))n[o]={...r,name:e(r.nameKey),description:e(r.descriptionKey)};for(const[o,r]of Object.entries(qt))i[o]={...r,name:e(r.nameKey),title:e(r.titleKey)};return{pluginMetaData:n,credentialMetaData:i,credentialSchemas:qt,getDisplayName:o=>{var r;return((r=n[o])==null?void 0:r.name)||o}}};function ir(e,n){for(var i=-1,a=e==null?0:e.length;++i<a&&n(e[i],i,e)!==!1;);return e}function Af(e){return function(n,i,a){for(var o=-1,r=Object(n),l=a(n),s=l.length;s--;){var c=l[e?s:++o];if(i(r[c],c,r)===!1)break}return n}}var hf=Af();const yf=hf;function bf(e,n){for(var i=-1,a=Array(e);++i<e;)a[i]=n(i);return a}var ar=typeof global=="object"&&global&&global.Object===Object&&global,wf=typeof self=="object"&&self&&self.Object===Object&&self,Ke=ar||wf||Function("return this")(),nt=Ke.Symbol,or=Object.prototype,Cf=or.hasOwnProperty,kf=or.toString,un=nt?nt.toStringTag:void 0;function Ef(e){var n=Cf.call(e,un),i=e[un];try{e[un]=void 0;var a=!0}catch{}var o=kf.call(e);return a&&(n?e[un]=i:delete e[un]),o}var Bf=Object.prototype,Of=Bf.toString;function xf(e){return Of.call(e)}var If="[object Null]",Sf="[object Undefined]",rr=nt?nt.toStringTag:void 0;function gt(e){return e==null?e===void 0?Sf:If:rr&&rr in Object(e)?Ef(e):xf(e)}function it(e){return e!=null&&typeof e=="object"}var Mf="[object Arguments]";function lr(e){return it(e)&>(e)==Mf}var sr=Object.prototype,vf=sr.hasOwnProperty,Tf=sr.propertyIsEnumerable,Pi=lr(function(){return arguments}())?lr:function(e){return it(e)&&vf.call(e,"callee")&&!Tf.call(e,"callee")},ze=Array.isArray;function Rf(){return!1}var cr=typeof Z=="object"&&Z&&!Z.nodeType&&Z,dr=cr&&typeof module=="object"&&module&&!module.nodeType&&module,Nf=dr&&dr.exports===cr,pr=Nf?Ke.Buffer:void 0,Vf=pr?pr.isBuffer:void 0,mn=Vf||Rf,Lf=9007199254740991,Df=/^(?:0|[1-9]\d*)$/;function Ui(e,n){var i=typeof e;return n=n??Lf,!!n&&(i=="number"||i!="symbol"&&Df.test(e))&&e>-1&&e%1==0&&e<n}var jf=9007199254740991;function Yi(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=jf}var Pf="[object Arguments]",Uf="[object Array]",Yf="[object Boolean]",Gf="[object Date]",Ff="[object Error]",Hf="[object Function]",zf="[object Map]",Kf="[object Number]",qf="[object Object]",Xf="[object RegExp]",Jf="[object Set]",Zf="[object String]",Wf="[object WeakMap]",Qf="[object ArrayBuffer]",_f="[object DataView]",$f="[object Float32Array]",eA="[object Float64Array]",tA="[object Int8Array]",nA="[object Int16Array]",iA="[object Int32Array]",aA="[object Uint8Array]",oA="[object Uint8ClampedArray]",rA="[object Uint16Array]",lA="[object Uint32Array]",me={};me[$f]=me[eA]=me[tA]=me[nA]=me[iA]=me[aA]=me[oA]=me[rA]=me[lA]=!0,me[Pf]=me[Uf]=me[Qf]=me[Yf]=me[_f]=me[Gf]=me[Ff]=me[Hf]=me[zf]=me[Kf]=me[qf]=me[Xf]=me[Jf]=me[Zf]=me[Wf]=!1;function sA(e){return it(e)&&Yi(e.length)&&!!me[gt(e)]}function Gi(e){return function(n){return e(n)}}var ur=typeof Z=="object"&&Z&&!Z.nodeType&&Z,gn=ur&&typeof module=="object"&&module&&!module.nodeType&&module,cA=gn&&gn.exports===ur,Fi=cA&&ar.process,Xt=function(){try{var e=gn&&gn.require&&gn.require("util").types;return e||Fi&&Fi.binding&&Fi.binding("util")}catch{}}(),mr=Xt&&Xt.isTypedArray,Hi=mr?Gi(mr):sA,dA=Object.prototype,pA=dA.hasOwnProperty;function gr(e,n){var i=ze(e),a=!i&&Pi(e),o=!i&&!a&&mn(e),r=!i&&!a&&!o&&Hi(e),l=i||a||o||r,s=l?bf(e.length,String):[],c=s.length;for(var d in e)(n||pA.call(e,d))&&!(l&&(d=="length"||o&&(d=="offset"||d=="parent")||r&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Ui(d,c)))&&s.push(d);return s}var uA=Object.prototype;function zn(e){var n=e&&e.constructor,i=typeof n=="function"&&n.prototype||uA;return e===i}function fr(e,n){return function(i){return e(n(i))}}var mA=fr(Object.keys,Object),gA=Object.prototype,fA=gA.hasOwnProperty;function Ar(e){if(!zn(e))return mA(e);var n=[];for(var i in Object(e))fA.call(e,i)&&i!="constructor"&&n.push(i);return n}function Be(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var AA="[object AsyncFunction]",hA="[object Function]",yA="[object GeneratorFunction]",bA="[object Proxy]";function oe(e){if(!Be(e))return!1;var n=gt(e);return n==hA||n==yA||n==AA||n==bA}function Jt(e){return e!=null&&Yi(e.length)&&!oe(e)}function Zt(e){return Jt(e)?gr(e):Ar(e)}function wA(e,n){return e&&yf(e,n,Zt)}function CA(e,n){return function(i,a){if(i==null)return i;if(!Jt(i))return e(i,a);for(var o=i.length,r=n?o:-1,l=Object(i);(n?r--:++r<o)&&a(l[r],r,l)!==!1;);return i}}var kA=CA(wA);const EA=kA;function Kn(e){return e}function BA(e){return typeof e=="function"?e:Kn}function Le(e,n){var i=ze(e)?ir:EA;return i(e,BA(n))}var OA="[object Symbol]";function qn(e){return typeof e=="symbol"||it(e)&>(e)==OA}var xA=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,IA=/^\w*$/;function zi(e,n){if(ze(e))return!1;var i=typeof e;return i=="number"||i=="symbol"||i=="boolean"||e==null||qn(e)?!0:IA.test(e)||!xA.test(e)||n!=null&&e in Object(n)}var Ki=Ke["__core-js_shared__"],hr=function(){var e=/[^.]+$/.exec(Ki&&Ki.keys&&Ki.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function SA(e){return!!hr&&hr in e}var MA=Function.prototype,vA=MA.toString;function xt(e){if(e!=null){try{return vA.call(e)}catch{}try{return e+""}catch{}}return""}var TA=/[\\^$.*+?()[\]{}|]/g,RA=/^\[object .+?Constructor\]$/,NA=Function.prototype,VA=Object.prototype,LA=NA.toString,DA=VA.hasOwnProperty,jA=RegExp("^"+LA.call(DA).replace(TA,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function PA(e){if(!Be(e)||SA(e))return!1;var n=oe(e)?jA:RA;return n.test(xt(e))}function UA(e,n){return e==null?void 0:e[n]}function It(e,n){var i=UA(e,n);return PA(i)?i:void 0}var fn=It(Object,"create");function YA(){this.__data__=fn?fn(null):{},this.size=0}function GA(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var FA="__lodash_hash_undefined__",HA=Object.prototype,zA=HA.hasOwnProperty;function KA(e){var n=this.__data__;if(fn){var i=n[e];return i===FA?void 0:i}return zA.call(n,e)?n[e]:void 0}var qA=Object.prototype,XA=qA.hasOwnProperty;function JA(e){var n=this.__data__;return fn?n[e]!==void 0:XA.call(n,e)}var ZA="__lodash_hash_undefined__";function WA(e,n){var i=this.__data__;return this.size+=this.has(e)?0:1,i[e]=fn&&n===void 0?ZA:n,this}function St(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}St.prototype.clear=YA,St.prototype.delete=GA,St.prototype.get=KA,St.prototype.has=JA,St.prototype.set=WA;function QA(){this.__data__=[],this.size=0}function An(e,n){return e===n||e!==e&&n!==n}function Xn(e,n){for(var i=e.length;i--;)if(An(e[i][0],n))return i;return-1}var _A=Array.prototype,$A=_A.splice;function eh(e){var n=this.__data__,i=Xn(n,e);if(i<0)return!1;var a=n.length-1;return i==a?n.pop():$A.call(n,i,1),--this.size,!0}function th(e){var n=this.__data__,i=Xn(n,e);return i<0?void 0:n[i][1]}function nh(e){return Xn(this.__data__,e)>-1}function ih(e,n){var i=this.__data__,a=Xn(i,e);return a<0?(++this.size,i.push([e,n])):i[a][1]=n,this}function st(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}st.prototype.clear=QA,st.prototype.delete=eh,st.prototype.get=th,st.prototype.has=nh,st.prototype.set=ih;var hn=It(Ke,"Map");function ah(){this.size=0,this.__data__={hash:new St,map:new(hn||st),string:new St}}function oh(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Jn(e,n){var i=e.__data__;return oh(n)?i[typeof n=="string"?"string":"hash"]:i.map}function rh(e){var n=Jn(this,e).delete(e);return this.size-=n?1:0,n}function lh(e){return Jn(this,e).get(e)}function sh(e){return Jn(this,e).has(e)}function ch(e,n){var i=Jn(this,e),a=i.size;return i.set(e,n),this.size+=i.size==a?0:1,this}function ct(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}ct.prototype.clear=ah,ct.prototype.delete=rh,ct.prototype.get=lh,ct.prototype.has=sh,ct.prototype.set=ch;var dh="Expected a function";function qi(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(dh);var i=function(){var a=arguments,o=n?n.apply(this,a):a[0],r=i.cache;if(r.has(o))return r.get(o);var l=e.apply(this,a);return i.cache=r.set(o,l)||r,l};return i.cache=new(qi.Cache||ct),i}qi.Cache=ct;var ph=500;function uh(e){var n=qi(e,function(a){return i.size===ph&&i.clear(),a}),i=n.cache;return n}var mh=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,gh=/\\(\\)?/g,fh=uh(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(mh,function(i,a,o,r){n.push(o?r.replace(gh,"$1"):a||i)}),n});function Ah(e,n){for(var i=-1,a=e==null?0:e.length,o=Array(a);++i<a;)o[i]=n(e[i],i,e);return o}var hh=1/0,yr=nt?nt.prototype:void 0,br=yr?yr.toString:void 0;function wr(e){if(typeof e=="string")return e;if(ze(e))return Ah(e,wr)+"";if(qn(e))return br?br.call(e):"";var n=e+"";return n=="0"&&1/e==-hh?"-0":n}function Cr(e){return e==null?"":wr(e)}function kr(e,n){return ze(e)?e:zi(e,n)?[e]:fh(Cr(e))}var yh=1/0;function Zn(e){if(typeof e=="string"||qn(e))return e;var n=e+"";return n=="0"&&1/e==-yh?"-0":n}function Er(e,n){n=kr(n,e);for(var i=0,a=n.length;e!=null&&i<a;)e=e[Zn(n[i++])];return i&&i==a?e:void 0}function ee(e,n,i){var a=e==null?void 0:Er(e,n);return a===void 0?i:a}function Ce(e){return e==null}var bh="[object String]";function Mt(e){return typeof e=="string"||!ze(e)&&it(e)&>(e)==bh}const Br={methods:{getFieldRowClasses(e){const n=this.fieldErrors(e).length>0,i={[ee(this.options,"validationErrorClass","error")]:n,[ee(this.options,"validationSuccessClass","valid")]:!n,disabled:this.fieldDisabled(e),readonly:this.fieldReadonly(e),featured:this.fieldFeatured(e),required:this.fieldRequired(e)};return Array.isArray(e.styleClasses)?Le(e.styleClasses,a=>i[a]=!0):Mt(e.styleClasses)&&(i[e.styleClasses]=!0),Ce(e.type)||(i["field-"+e.type]=!0),i},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},fieldDisabled(e){return oe(e.disabled)?e.disabled.call(this,this.model,e,this):Ce(e.disabled)?!1:e.disabled},fieldReadonly(e){return oe(e.readonly)?e.readonly.call(this,this.model,e,this):Ce(e.readonly)?!1:e.readonly},fieldFeatured(e){return oe(e.featured)?e.featured.call(this,this.model,e,this):Ce(e.featured)?!1:e.featured},fieldRequired(e){return oe(e.required)?e.required.call(this,this.model,e,this):Ce(e.required)?!1:e.required}}};function wh(){this.__data__=new st,this.size=0}function Ch(e){var n=this.__data__,i=n.delete(e);return this.size=n.size,i}function kh(e){return this.__data__.get(e)}function Eh(e){return this.__data__.has(e)}var Bh=200;function Oh(e,n){var i=this.__data__;if(i instanceof st){var a=i.__data__;if(!hn||a.length<Bh-1)return a.push([e,n]),this.size=++i.size,this;i=this.__data__=new ct(a)}return i.set(e,n),this.size=i.size,this}function at(e){var n=this.__data__=new st(e);this.size=n.size}at.prototype.clear=wh,at.prototype.delete=Ch,at.prototype.get=kh,at.prototype.has=Eh,at.prototype.set=Oh;var Wn=function(){try{var e=It(Object,"defineProperty");return e({},"",{}),e}catch{}}();function Or(e,n,i){n=="__proto__"&&Wn?Wn(e,n,{configurable:!0,enumerable:!0,value:i,writable:!0}):e[n]=i}var xh=Object.prototype,Ih=xh.hasOwnProperty;function xr(e,n,i){var a=e[n];(!(Ih.call(e,n)&&An(a,i))||i===void 0&&!(n in e))&&Or(e,n,i)}function Qn(e,n,i,a){var o=!i;i||(i={});for(var r=-1,l=n.length;++r<l;){var s=n[r],c=a?a(i[s],e[s],s,i,e):void 0;c===void 0&&(c=e[s]),o?Or(i,s,c):xr(i,s,c)}return i}function Sh(e,n){return e&&Qn(n,Zt(n),e)}function Mh(e){var n=[];if(e!=null)for(var i in Object(e))n.push(i);return n}var vh=Object.prototype,Th=vh.hasOwnProperty;function Rh(e){if(!Be(e))return Mh(e);var n=zn(e),i=[];for(var a in e)a=="constructor"&&(n||!Th.call(e,a))||i.push(a);return i}function _n(e){return Jt(e)?gr(e,!0):Rh(e)}function Nh(e,n){return e&&Qn(n,_n(n),e)}var Ir=typeof Z=="object"&&Z&&!Z.nodeType&&Z,Sr=Ir&&typeof module=="object"&&module&&!module.nodeType&&module,Vh=Sr&&Sr.exports===Ir,Mr=Vh?Ke.Buffer:void 0,vr=Mr?Mr.allocUnsafe:void 0;function Lh(e,n){if(n)return e.slice();var i=e.length,a=vr?vr(i):new e.constructor(i);return e.copy(a),a}function Dh(e,n){var i=-1,a=e.length;for(n||(n=Array(a));++i<a;)n[i]=e[i];return n}function jh(e,n){for(var i=-1,a=e==null?0:e.length,o=0,r=[];++i<a;){var l=e[i];n(l,i,e)&&(r[o++]=l)}return r}function Tr(){return[]}var Ph=Object.prototype,Uh=Ph.propertyIsEnumerable,Rr=Object.getOwnPropertySymbols,Xi=Rr?function(e){return e==null?[]:(e=Object(e),jh(Rr(e),function(n){return Uh.call(e,n)}))}:Tr;function Yh(e,n){return Qn(e,Xi(e),n)}function Nr(e,n){for(var i=-1,a=n.length,o=e.length;++i<a;)e[o+i]=n[i];return e}var Gh=fr(Object.getPrototypeOf,Object);const Vr=Gh;var Fh=Object.getOwnPropertySymbols,Lr=Fh?function(e){for(var n=[];e;)Nr(n,Xi(e)),e=Vr(e);return n}:Tr;function Hh(e,n){return Qn(e,Lr(e),n)}function Dr(e,n,i){var a=n(e);return ze(e)?a:Nr(a,i(e))}function Ji(e){return Dr(e,Zt,Xi)}function zh(e){return Dr(e,_n,Lr)}var Zi=It(Ke,"DataView"),Wi=It(Ke,"Promise"),Wt=It(Ke,"Set"),Qi=It(Ke,"WeakMap"),jr="[object Map]",Kh="[object Object]",Pr="[object Promise]",Ur="[object Set]",Yr="[object WeakMap]",Gr="[object DataView]",qh=xt(Zi),Xh=xt(hn),Jh=xt(Wi),Zh=xt(Wt),Wh=xt(Qi),vt=gt;(Zi&&vt(new Zi(new ArrayBuffer(1)))!=Gr||hn&&vt(new hn)!=jr||Wi&&vt(Wi.resolve())!=Pr||Wt&&vt(new Wt)!=Ur||Qi&&vt(new Qi)!=Yr)&&(vt=function(e){var n=gt(e),i=n==Kh?e.constructor:void 0,a=i?xt(i):"";if(a)switch(a){case qh:return Gr;case Xh:return jr;case Jh:return Pr;case Zh:return Ur;case Wh:return Yr}return n});const Qt=vt;var Qh=Object.prototype,_h=Qh.hasOwnProperty;function $h(e){var n=e.length,i=new e.constructor(n);return n&&typeof e[0]=="string"&&_h.call(e,"index")&&(i.index=e.index,i.input=e.input),i}var $n=Ke.Uint8Array;function _i(e){var n=new e.constructor(e.byteLength);return new $n(n).set(new $n(e)),n}function ey(e,n){var i=n?_i(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.byteLength)}var ty=/\w*$/;function ny(e){var n=new e.constructor(e.source,ty.exec(e));return n.lastIndex=e.lastIndex,n}var Fr=nt?nt.prototype:void 0,Hr=Fr?Fr.valueOf:void 0;function iy(e){return Hr?Object(Hr.call(e)):{}}function ay(e,n){var i=n?_i(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.length)}var oy="[object Boolean]",ry="[object Date]",ly="[object Map]",sy="[object Number]",cy="[object RegExp]",dy="[object Set]",py="[object String]",uy="[object Symbol]",my="[object ArrayBuffer]",gy="[object DataView]",fy="[object Float32Array]",Ay="[object Float64Array]",hy="[object Int8Array]",yy="[object Int16Array]",by="[object Int32Array]",wy="[object Uint8Array]",Cy="[object Uint8ClampedArray]",ky="[object Uint16Array]",Ey="[object Uint32Array]";function By(e,n,i){var a=e.constructor;switch(n){case my:return _i(e);case oy:case ry:return new a(+e);case gy:return ey(e,i);case fy:case Ay:case hy:case yy:case by:case wy:case Cy:case ky:case Ey:return ay(e,i);case ly:return new a;case sy:case py:return new a(e);case cy:return ny(e);case dy:return new a;case uy:return iy(e)}}var zr=Object.create,Oy=function(){function e(){}return function(n){if(!Be(n))return{};if(zr)return zr(n);e.prototype=n;var i=new e;return e.prototype=void 0,i}}();function xy(e){return typeof e.constructor=="function"&&!zn(e)?Oy(Vr(e)):{}}var Iy="[object Map]";function Sy(e){return it(e)&&Qt(e)==Iy}var Kr=Xt&&Xt.isMap,My=Kr?Gi(Kr):Sy,vy="[object Set]";function Ty(e){return it(e)&&Qt(e)==vy}var qr=Xt&&Xt.isSet,Ry=qr?Gi(qr):Ty,Ny=1,Vy=2,Ly=4,Xr="[object Arguments]",Dy="[object Array]",jy="[object Boolean]",Py="[object Date]",Uy="[object Error]",Jr="[object Function]",Yy="[object GeneratorFunction]",Gy="[object Map]",Fy="[object Number]",Zr="[object Object]",Hy="[object RegExp]",zy="[object Set]",Ky="[object String]",qy="[object Symbol]",Xy="[object WeakMap]",Jy="[object ArrayBuffer]",Zy="[object DataView]",Wy="[object Float32Array]",Qy="[object Float64Array]",_y="[object Int8Array]",$y="[object Int16Array]",eb="[object Int32Array]",tb="[object Uint8Array]",nb="[object Uint8ClampedArray]",ib="[object Uint16Array]",ab="[object Uint32Array]",pe={};pe[Xr]=pe[Dy]=pe[Jy]=pe[Zy]=pe[jy]=pe[Py]=pe[Wy]=pe[Qy]=pe[_y]=pe[$y]=pe[eb]=pe[Gy]=pe[Fy]=pe[Zr]=pe[Hy]=pe[zy]=pe[Ky]=pe[qy]=pe[tb]=pe[nb]=pe[ib]=pe[ab]=!0,pe[Uy]=pe[Jr]=pe[Xy]=!1;function yn(e,n,i,a,o,r){var l,s=n&Ny,c=n&Vy,d=n&Ly;if(i&&(l=o?i(e,a,o,r):i(e)),l!==void 0)return l;if(!Be(e))return e;var u=ze(e);if(u){if(l=$h(e),!s)return Dh(e,l)}else{var m=Qt(e),f=m==Jr||m==Yy;if(mn(e))return Lh(e,s);if(m==Zr||m==Xr||f&&!o){if(l=c||f?{}:xy(e),!s)return c?Hh(e,Nh(l,e)):Yh(e,Sh(l,e))}else{if(!pe[m])return o?e:{};l=By(e,m,s)}}r||(r=new at);var h=r.get(e);if(h)return h;r.set(e,l),Ry(e)?e.forEach(function(y){l.add(yn(y,n,i,y,e,r))}):My(e)&&e.forEach(function(y,B){l.set(B,yn(y,n,i,B,e,r))});var C=d?c?zh:Ji:c?_n:Zt,b=u?void 0:C(e);return ir(b||e,function(y,B){b&&(B=y,y=e[B]),xr(l,B,yn(y,n,i,B,e,r))}),l}var ob=1,rb=4;function $i(e){return yn(e,ob|rb)}const ea=(e,n="")=>typeof e.id<"u"?n+e.id:n+(e.inputName||e.label||e.model||"").toString().trim().toLowerCase().replace(/ |_/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-]+)/g,""),Wr=(e="")=>e.toString().trim().replace(/ /g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-_/./:]+)/g,"");var ta=function(){return Ke.Date.now()},lb=/\s/;function sb(e){for(var n=e.length;n--&&lb.test(e.charAt(n)););return n}var cb=/^\s+/;function db(e){return e&&e.slice(0,sb(e)+1).replace(cb,"")}var Qr=NaN,pb=/^[-+]0x[0-9a-f]+$/i,ub=/^0b[01]+$/i,mb=/^0o[0-7]+$/i,gb=parseInt;function na(e){if(typeof e=="number")return e;if(qn(e))return Qr;if(Be(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=Be(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=db(e);var i=ub.test(e);return i||mb.test(e)?gb(e.slice(2),i?2:8):pb.test(e)?Qr:+e}var fb="Expected a function",Ab=Math.max,hb=Math.min;function bn(e,n,i){var a,o,r,l,s,c,d=0,u=!1,m=!1,f=!0;if(typeof e!="function")throw new TypeError(fb);n=na(n)||0,Be(i)&&(u=!!i.leading,m="maxWait"in i,r=m?Ab(na(i.maxWait)||0,n):r,f="trailing"in i?!!i.trailing:f);function h(g){var E=a,k=o;return a=o=void 0,d=g,l=e.apply(k,E),l}function C(g){return d=g,s=setTimeout(B,n),u?h(g):l}function b(g){var E=g-c,k=g-d,v=n-E;return m?hb(v,r-k):v}function y(g){var E=g-c,k=g-d;return c===void 0||E>=n||E<0||m&&k>=r}function B(){var g=ta();if(y(g))return x(g);s=setTimeout(B,b(g))}function x(g){return s=void 0,f&&a?h(g):(a=o=void 0,l)}function S(){s!==void 0&&clearTimeout(s),d=0,a=c=o=s=void 0}function w(){return s===void 0?l:x(ta())}function A(){var g=ta(),E=y(g);if(a=arguments,o=this,c=g,E){if(s===void 0)return C(c);if(m)return clearTimeout(s),s=setTimeout(B,n),h(c)}return s===void 0&&(s=setTimeout(B,n)),l}return A.cancel=S,A.flush=w,A}var yb="__lodash_hash_undefined__";function bb(e){return this.__data__.set(e,yb),this}function wb(e){return this.__data__.has(e)}function wn(e){var n=-1,i=e==null?0:e.length;for(this.__data__=new ct;++n<i;)this.add(e[n])}wn.prototype.add=wn.prototype.push=bb,wn.prototype.has=wb;function _r(e,n,i,a){for(var o=e.length,r=i+(a?1:-1);a?r--:++r<o;)if(n(e[r],r,e))return r;return-1}function Cb(e){return e!==e}function kb(e,n,i){for(var a=i-1,o=e.length;++a<o;)if(e[a]===n)return a;return-1}function Eb(e,n,i){return n===n?kb(e,n,i):_r(e,Cb,i)}function Bb(e,n){var i=e==null?0:e.length;return!!i&&Eb(e,n,0)>-1}function Ob(e,n,i){for(var a=-1,o=e==null?0:e.length;++a<o;)if(i(n,e[a]))return!0;return!1}function $r(e,n){return e.has(n)}function xb(){}function ia(e){var n=-1,i=Array(e.size);return e.forEach(function(a){i[++n]=a}),i}var Ib=1/0,Sb=Wt&&1/ia(new Wt([,-0]))[1]==Ib?function(e){return new Wt(e)}:xb,Mb=200;function vb(e,n,i){var a=-1,o=Bb,r=e.length,l=!0,s=[],c=s;if(i)l=!1,o=Ob;else if(r>=Mb){var d=n?null:Sb(e);if(d)return ia(d);l=!1,o=$r,c=new wn}else c=n?[]:s;e:for(;++a<r;){var u=e[a],m=n?n(u):u;if(u=i||u!==0?u:0,l&&m===m){for(var f=c.length;f--;)if(c[f]===m)continue e;n&&c.push(m),s.push(u)}else o(c,m,i)||(c!==s&&c.push(m),s.push(u))}return s}function el(e){return e&&e.length?vb(e):[]}var Tb=0;function tl(e){var n=++Tb;return Cr(e)+n}function Rb(e,n,i){switch(i.length){case 0:return e.call(n);case 1:return e.call(n,i[0]);case 2:return e.call(n,i[0],i[1]);case 3:return e.call(n,i[0],i[1],i[2])}return e.apply(n,i)}var nl=Math.max;function Nb(e,n,i){return n=nl(n===void 0?e.length-1:n,0),function(){for(var a=arguments,o=-1,r=nl(a.length-n,0),l=Array(r);++o<r;)l[o]=a[n+o];o=-1;for(var s=Array(n+1);++o<n;)s[o]=a[o];return s[n]=i(l),Rb(e,this,s)}}function Vb(e){return function(){return e}}var Lb=Wn?function(e,n){return Wn(e,"toString",{configurable:!0,enumerable:!1,value:Vb(n),writable:!0})}:Kn;const Db=Lb;var jb=800,Pb=16,Ub=Date.now;function Yb(e){var n=0,i=0;return function(){var a=Ub(),o=Pb-(a-i);if(i=a,o>0){if(++n>=jb)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}var Gb=Yb(Db);function Fb(e,n){return Gb(Nb(e,n,Kn),e+"")}function Hb(e,n,i){if(!Be(i))return!1;var a=typeof n;return(a=="number"?Jt(i)&&Ui(n,i.length):a=="string"&&n in i)?An(i[n],e):!1}var il=Object.prototype,zb=il.hasOwnProperty,ft=Fb(function(e,n){e=Object(e);var i=-1,a=n.length,o=a>2?n[2]:void 0;for(o&&Hb(n[0],n[1],o)&&(a=1);++i<a;)for(var r=n[i],l=_n(r),s=-1,c=l.length;++s<c;){var d=l[s],u=e[d];(u===void 0||An(u,il[d])&&!zb.call(e,d))&&(e[d]=r[d])}return e}),Kb=Ke.isFinite;function qb(e){return typeof e=="number"&&Kb(e)}var al=1/0,Xb=17976931348623157e292;function Jb(e){if(!e)return e===0?e:0;if(e=na(e),e===al||e===-al){var n=e<0?-1:1;return n*Xb}return e===e?e:0}function ol(e){var n=Jb(e),i=n%1;return n===n?i?n-i:n:0}function Zb(e){return typeof e=="number"&&e==ol(e)}var Wb="[object Number]";function aa(e){return typeof e=="number"||it(e)&>(e)==Wb}var rl=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,At="\\d\\d?",ht="\\d\\d",Qb="\\d{3}",_b="\\d{4}",Cn="[^\\s]+",ll=/\[([^]*?)\]/gm;function sl(e,n){for(var i=[],a=0,o=e.length;a<o;a++)i.push(e[a].substr(0,n));return i}var cl=function(e){return function(n,i){var a=i[e].map(function(r){return r.toLowerCase()}),o=a.indexOf(n.toLowerCase());return o>-1?o:null}};function Tt(e){for(var n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];for(var a=0,o=n;a<o.length;a++){var r=o[a];for(var l in r)e[l]=r[l]}return e}var dl=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],pl=["January","February","March","April","May","June","July","August","September","October","November","December"],$b=sl(pl,3),e1=sl(dl,3),ul={dayNamesShort:e1,dayNames:dl,monthNamesShort:$b,monthNames:pl,amPm:["am","pm"],DoFn:function(e){return e+["th","st","nd","rd"][e%10>3?0:(e-e%10!==10?1:0)*e%10]}},ei=Tt({},ul),t1=function(e){return ei=Tt(ei,e)},ml=function(e){return e.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},Ue=function(e,n){for(n===void 0&&(n=2),e=String(e);e.length<n;)e="0"+e;return e},n1={D:function(e){return String(e.getDate())},DD:function(e){return Ue(e.getDate())},Do:function(e,n){return n.DoFn(e.getDate())},d:function(e){return String(e.getDay())},dd:function(e){return Ue(e.getDay())},ddd:function(e,n){return n.dayNamesShort[e.getDay()]},dddd:function(e,n){return n.dayNames[e.getDay()]},M:function(e){return String(e.getMonth()+1)},MM:function(e){return Ue(e.getMonth()+1)},MMM:function(e,n){return n.monthNamesShort[e.getMonth()]},MMMM:function(e,n){return n.monthNames[e.getMonth()]},YY:function(e){return Ue(String(e.getFullYear()),4).substr(2)},YYYY:function(e){return Ue(e.getFullYear(),4)},h:function(e){return String(e.getHours()%12||12)},hh:function(e){return Ue(e.getHours()%12||12)},H:function(e){return String(e.getHours())},HH:function(e){return Ue(e.getHours())},m:function(e){return String(e.getMinutes())},mm:function(e){return Ue(e.getMinutes())},s:function(e){return String(e.getSeconds())},ss:function(e){return Ue(e.getSeconds())},S:function(e){return String(Math.round(e.getMilliseconds()/100))},SS:function(e){return Ue(Math.round(e.getMilliseconds()/10),2)},SSS:function(e){return Ue(e.getMilliseconds(),3)},a:function(e,n){return e.getHours()<12?n.amPm[0]:n.amPm[1]},A:function(e,n){return e.getHours()<12?n.amPm[0].toUpperCase():n.amPm[1].toUpperCase()},ZZ:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Ue(Math.floor(Math.abs(n)/60)*100+Math.abs(n)%60,4)},Z:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Ue(Math.floor(Math.abs(n)/60),2)+":"+Ue(Math.abs(n)%60,2)}},gl=function(e){return+e-1},fl=[null,At],Al=[null,Cn],hl=["isPm",Cn,function(e,n){var i=e.toLowerCase();return i===n.amPm[0]?0:i===n.amPm[1]?1:null}],yl=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(e){var n=(e+"").match(/([+-]|\d\d)/gi);if(n){var i=+n[1]*60+parseInt(n[2],10);return n[0]==="+"?i:-i}return 0}],i1={D:["day",At],DD:["day",ht],Do:["day",At+Cn,function(e){return parseInt(e,10)}],M:["month",At,gl],MM:["month",ht,gl],YY:["year",ht,function(e){var n=new Date,i=+(""+n.getFullYear()).substr(0,2);return+(""+(+e>68?i-1:i)+e)}],h:["hour",At,void 0,"isPm"],hh:["hour",ht,void 0,"isPm"],H:["hour",At],HH:["hour",ht],m:["minute",At],mm:["minute",ht],s:["second",At],ss:["second",ht],YYYY:["year",_b],S:["millisecond","\\d",function(e){return+e*100}],SS:["millisecond",ht,function(e){return+e*10}],SSS:["millisecond",Qb],d:fl,dd:fl,ddd:Al,dddd:Al,MMM:["month",Cn,cl("monthNamesShort")],MMMM:["month",Cn,cl("monthNames")],a:hl,A:hl,ZZ:yl,Z:yl},ti={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},a1=function(e){return Tt(ti,e)},o1=function(e,n,i){if(n===void 0&&(n=ti.default),i===void 0&&(i={}),typeof e=="number"&&(e=new Date(e)),Object.prototype.toString.call(e)!=="[object Date]"||isNaN(e.getTime()))throw new Error("Invalid Date pass to format");n=ti[n]||n;var a=[];n=n.replace(ll,function(r,l){return a.push(l),"@@@"});var o=Tt(Tt({},ei),i);return n=n.replace(rl,function(r){return n1[r](e,o)}),n.replace(/@@@/g,function(){return a.shift()})};function r1(e,n,i){if(i===void 0&&(i={}),typeof n!="string")throw new Error("Invalid format in fecha parse");if(n=ti[n]||n,e.length>1e3)return null;var a=new Date,o={year:a.getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},r=[],l=[],s=n.replace(ll,function(w,A){return l.push(ml(A)),"@@@"}),c={},d={};s=ml(s).replace(rl,function(w){var A=i1[w],g=A[0],E=A[1],k=A[3];if(c[g])throw new Error("Invalid format. "+g+" specified twice in format");return c[g]=!0,k&&(d[k]=!0),r.push(A),"("+E+")"}),Object.keys(d).forEach(function(w){if(!c[w])throw new Error("Invalid format. "+w+" is required in specified format")}),s=s.replace(/@@@/g,function(){return l.shift()});var u=e.match(new RegExp(s,"i"));if(!u)return null;for(var m=Tt(Tt({},ei),i),f=1;f<u.length;f++){var h=r[f-1],C=h[0],b=h[2],y=b?b(u[f],m):+u[f];if(y==null)return null;o[C]=y}o.isPm===1&&o.hour!=null&&+o.hour!=12?o.hour=+o.hour+12:o.isPm===0&&+o.hour==12&&(o.hour=0);var B;if(o.timezoneOffset==null){B=new Date(o.year,o.month,o.day,o.hour,o.minute,o.second,o.millisecond);for(var x=[["month","getMonth"],["day","getDate"],["hour","getHours"],["minute","getMinutes"],["second","getSeconds"]],f=0,S=x.length;f<S;f++)if(c[x[f][0]]&&o[x[f][0]]!==B[x[f][1]]())return null}else if(B=new Date(Date.UTC(o.year,o.month,o.day,o.hour,o.minute-o.timezoneOffset,o.second,o.millisecond)),o.month>11||o.month<0||o.day>31||o.day<1||o.hour>23||o.hour<0||o.minute>59||o.minute<0||o.second>59||o.second<0)return null;return B}var ot={format:o1,parse:r1,defaultI18n:ul,setGlobalDateI18n:t1,setGlobalDateMasks:a1};const ve={fieldIsRequired:"This field is required!",invalidFormat:"Invalid format!",numberTooSmall:"The number is too small! Minimum: {0}",numberTooBig:"The number is too big! Maximum: {0}",invalidNumber:"Invalid number",invalidInteger:"The value is not an integer",textTooSmall:"The length of text is too small! Current: {0}, Minimum: {1}",textTooBig:"The length of text is too big! Current: {0}, Maximum: {1}",thisNotText:"This is not a text!",thisNotArray:"This is not an array!",selectMinItems:"Select minimum {0} items!",selectMaxItems:"Select maximum {0} items!",invalidDate:"Invalid date!",dateIsEarly:"The date is too early! Current: {0}, Minimum: {1}",dateIsLate:"The date is too late! Current: {0}, Maximum: {1}",invalidEmail:"Invalid e-mail address!",invalidURL:"Invalid URL!",invalidCard:"Invalid card format!",invalidCardNumber:"Invalid card number!",invalidTextContainNumber:"Invalid text! Cannot contains numbers or special characters",invalidTextContainSpec:"Invalid text! Cannot contains special characters"};function qe(e,n,i=ve){return Ce(e)||e===""?n?[he(i.fieldIsRequired)]:[]:null}function he(e,...n){if(e!=null&&n.length>0)for(let i=0;i<n.length;i++)e=e.replace("{"+(i-1)+"}",n[i]);return e}const Rt={resources:ve,required(e,n,i,a=ve){return qe(e,n.required,a)},number(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=[];return qb(e)?(!Ce(n.min)&&e<n.min&&r.push(he(a.numberTooSmall,n.min)),!Ce(n.max)&&e>n.max&&r.push(he(a.numberTooBig,n.max))):r.push(he(a.invalidNumber)),r},integer(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=Rt.number(e,n,i,a);return Zb(e)||r.push(he(a.invalidInteger)),r},double(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!aa(e)||isNaN(e))return[he(a.invalidNumber)]},string(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=[];return Mt(e)?(!Ce(n.min)&&e.length<n.min&&r.push(he(a.textTooSmall,e.length,n.min)),!Ce(n.max)&&e.length>n.max&&r.push(he(a.textTooBig,e.length,n.max))):r.push(he(a.thisNotText)),r},array(e,n,i,a=ve){if(n.required){if(!Array.isArray(e))return[he(a.thisNotArray)];if(e.length===0)return[he(a.fieldIsRequired)]}if(!Ce(e)){if(!Ce(n.min)&&e.length<n.min)return[he(a.selectMinItems,n.min)];if(!Ce(n.max)&&e.length>n.max)return[he(a.selectMaxItems,n.max)]}},date(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=new Date(e);if(isNaN(r.getDate()))return[he(a.invalidDate)];const l=[];if(!Ce(n.min)){const s=new Date(n.min);r.valueOf()<s.valueOf()&&l.push(he(a.dateIsEarly,ot.format(r),ot.format(s)))}if(!Ce(n.max)){const s=new Date(n.max);r.valueOf()>s.valueOf()&&l.push(he(a.dateIsLate,ot.format(r),ot.format(s)))}return l},regexp(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!Ce(n.pattern)&&!new RegExp(n.pattern).test(e))return[he(a.invalidFormat)]},email(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e))return[he(a.invalidEmail)]},url(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g.test(e))return[he(a.invalidURL)]},creditCard(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,l=e.replace(/[^0-9]+/g,"");if(!r.test(l))return[he(a.invalidCard)];let s=0,c,d,u;for(let m=l.length-1;m>=0;m--)c=l.substring(m,m+1),d=parseInt(c,10),u?(d*=2,d>=10?s+=d%10+1:s+=d):s+=d,u=!u;if(!(s%10===0&&l))return[he(a.invalidCardNumber)]},alpha(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!/^[a-zA-Z]*$/.test(e))return[he(a.invalidTextContainNumber)]},alphaNumeric(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!/^[a-zA-Z0-9]*$/.test(e))return[he(a.invalidTextContainSpec)]}};Object.keys(Rt).forEach(e=>{const n=Rt[e];oe(n)&&(n.locale=i=>(a,o,r)=>n(a,o,r,ft(i,ve)))});function bl(e){return Mt(e)?Rt[e]!=null?Rt[e]:(console.warn(`'${e}' is not a validator function!`),null):e}function oa(e,n,i){let a=ee(i.context,"schema.attributes",{});const o=n.value||"input";Mt(o)&&(a=ee(a,o)||a),Le(a,(r,l)=>{e.setAttribute(l,r)})}const le={name:"abstractField",props:["vfg","model","schema","formOptions","disabled"],emits:["validated","modelUpdated"],data(){return{errors:[],debouncedValidateFunc:null,debouncedFormatFunc:null}},directives:{attributes:{beforeMount:oa,updated:oa,componentUpdated:oa}},computed:{value:{cache:!1,get(){let e;return oe(ee(this.schema,"get"))?e=this.schema.get(this.model):e=ee(this.model,this.schema.model),this.formatValueToField(e)},set(e){const n=this.value;e=this.formatValueToModel(e),oe(e)?e(e,n):this.updateModelValue(e,n)}}},methods:{validate(e){this.clearValidationErrors();const n=ee(this.formOptions,"validateAsync",!1);let i=[];if(this.schema.validator&&this.schema.readonly!==!0&&this.disabled!==!0){const o=[];Array.isArray(this.schema.validator)?Le(this.schema.validator,r=>{o.push(bl(r).bind(this))}):o.push(bl(this.schema.validator).bind(this)),Le(o,r=>{if(n)i.push(r(this.value,this.schema,this.model));else{const l=r(this.value,this.schema,this.model);l&&oe(l.then)?l.then(s=>{s&&(this.errors=this.errors.concat(s));const c=this.errors.length===0;this.$emit("validated",c,this.errors,this)}):l&&(i=i.concat(l))}})}const a=o=>{let r=[];Le(el(o),s=>{Array.isArray(s)&&s.length>0?r=r.concat(s):Mt(s)&&r.push(s)}),oe(this.schema.onValidated)&&this.schema.onValidated.call(this,this.model,r,this.schema);const l=r.length===0;return e||this.$emit("validated",l,r,this),this.errors=r,r};return n?Promise.all(i).then(a):a(i)},debouncedValidate(){oe(this.debouncedValidateFunc)||(this.debouncedValidateFunc=bn(this.validate.bind(this),ee(this.schema,"validateDebounceTime",ee(this.formOptions,"validateDebounceTime",500)))),this.debouncedValidateFunc()},updateModelValue(e,n){let i=!1;oe(this.schema.set)?(this.schema.set(this.model,e),i=!0):this.schema.model&&(this.setModelValueByPath(this.schema.model,e),i=!0),i&&(this.$emit("modelUpdated",e,this.schema.model),oe(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,e,n,this.schema),ee(this.formOptions,"validateAfterChanged",!1)===!0&&(ee(this.schema,"validateDebounceTime",ee(this.formOptions,"validateDebounceTime",0))>0?this.debouncedValidate():this.validate()))},clearValidationErrors(){this.errors.splice(0)},setModelValueByPath(e,n){let i=e.replace(/\[(\w+)\]/g,".$1");i=i.replace(/^\./,"");let a=this.model;const o=i.split(".");let r=0;const l=o.length;for(;r<l;){const s=o[r];if(r<l-1)a[s]!==void 0||(a[s]={}),a=a[s];else{a[s]=n;return}++r}},getFieldID(e,n=!1){const i=ee(this.formOptions,"fieldIdPrefix","");return ea(e,i)+(n?"-"+tl():"")},getLabelId(e){return`${this.getFieldID(e)}-label`},getFieldClasses(){return ee(this.schema,"fieldClasses",[])},formatValueToField(e){return e},formatValueToModel(e){return e}}},l1={mixins:[le]},s1=["id","autocomplete","disabled","name","required"];function c1(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("input",{id:e.getFieldID(e.schema),type:"checkbox","onUpdate:modelValue":n[0]||(n[0]=s=>e.value=s),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,name:e.schema.inputName,class:t.normalizeClass(e.schema.fieldClasses),required:e.schema.required},null,10,s1)),[[t.vModelCheckbox,e.value],[l,"input"]])}const Q=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},d1=Q(l1,[["render",c1]]);var p1=4;function wl(e){return yn(e,p1)}const u1={class:"wrapper"},m1=["disabled"],g1=["id","checked","disabled","onChange","name"],f1=["disabled"],A1={class:"info"},h1=t.createElementVNode("div",{class:"arrow"},null,-1),y1={class:"dropList"},b1=["id","checked","disabled","onChange","name"];function w1(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",u1,[e.schema.listBox?(t.openBlock(),t.createElementBlock("div",{key:0,class:"listbox form-control",disabled:e.disabled||null},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,s=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":r.isItemChecked(s)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:r.isItemChecked(s)||null,disabled:e.disabled||null,onChange:c=>r.onChanged(c,s),name:r.getInputName(s)},null,40,g1),[[l,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(s)),1)])],2))),256))],8,m1)):t.createCommentVNode("",!0),e.schema.listBox?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:1,class:"combobox form-control",disabled:e.disabled||null},[t.createElementVNode("div",{class:t.normalizeClass(["mainRow",{expanded:o.comboExpanded}]),onClick:n[0]||(n[0]=(...s)=>r.onExpandCombo&&r.onExpandCombo(...s))},[t.createElementVNode("div",A1,t.toDisplayString(r.selectedCount)+" selected",1),h1],2),t.createElementVNode("div",y1,[o.comboExpanded?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(r.items,s=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":r.isItemChecked(s)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:r.isItemChecked(s)||null,disabled:e.disabled||null,onChange:c=>r.onChanged(c,s),name:r.getInputName(s)},null,40,b1),[[l,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(s)),1)])],2))),256)):t.createCommentVNode("",!0)])],8,f1))])),[[l,"wrapper"]])}const C1={mixins:[le],data(){return{comboExpanded:!1}},computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e},selectedCount(){return this.value?this.value.length:0}},methods:{getInputName(e){return this.schema&&this.schema.inputName&&this.schema.inputName.length>0?Wr(this.schema.inputName+"_"+this.getItemValue(e)):Wr(this.getItemValue(e))},getItemValue(e){if(Be(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.value<"u")return e[this.schema.checklistOptions.value];if(typeof e.value<"u")return e.value;throw new Error("`value` is not defined. If you want to use another key name, add a `value` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},getItemName(e){if(Be(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.name<"u")return e[this.schema.checklistOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},isItemChecked(e){return this.value&&this.value.indexOf(this.getItemValue(e))!==-1},onChanged(e,n){if((Ce(this.value)||!Array.isArray(this.value))&&(this.value=[]),e.target.checked){const i=wl(this.value);i.push(this.getItemValue(n)),this.value=i}else{const i=wl(this.value);i.splice(this.value.indexOf(this.getItemValue(n)),1),this.value=i}},onExpandCombo(){this.comboExpanded=!this.comboExpanded}}},k1=Q(C1,[["render",w1]]);function E1(e){const n=t.ref([]),i=t.ref(null),a=b=>Mt(b)?Rt[b]!=null?Rt[b]:(console.warn(`'${b}' is not a validator function!`),null):b,o=t.computed({get(){let b;return oe(ee(e.schema,"get"))?b=e.schema.get(e.model):b=ee(e.model,e.schema.model),h(b)},set(b){const y=o;b=C(b),oe(b)?b(b,y):s(b,y)}}),r=b=>{var y;c();const B=(y=e.schema)==null?void 0:y.validator,x=ee(e.formOptions,"validateAsync",!1);let S=[];if(B&&e.schema.readonly!==!0&&e.disabled!==!0){const A=[];Array.isArray(B)?Le(B,g=>{A.push(a(g))}):A.push(a(B)),Le(A,g=>{if(x)S.push(g(o.value,e.schema,e.model));else{const E=g(o.value,e.schema,e.model);E&&oe(E.then)?E.then(k=>{k&&(n.value=n.value.concat(k));const v=n.value.length===0;e.emitValidated&&e.emitValidated({isValid:v,errors:n.value,field:e.schema})}):E&&(S=S.concat(E))}})}const w=A=>{var g;let E=[];if(Le(el(A),k=>{Array.isArray(k)&&k.length>0?E=E.concat(k):Mt(k)&&E.push(k)}),oe((g=e.schema)==null?void 0:g.onValidated)&&e.schema.onValidated(e.model,E,e.schema),!b){const k=E.length===0;e.emitValidated&&e.emitValidated({isValid:k,errors:E,field:e.schema})}return A=E,E};return x?Promise.all(S).then(w):w(S)},l=()=>{oe(i.value)?i.value():i.value=bn(r,ee(e.schema,"validateDebounceTime",ee(e.formOptions,"validateDebounceTime",500)))},s=(b,y)=>{let B=!1;oe(e.schema.set)?(e.schema.set(e.model,b),B=!0):e.schema.model&&(d(e.schema.model,b),B=!0),B&&(e.emitModelUpdated&&e.model&&e.emitModelUpdated({value:b,model:e.schema.model}),oe(e.schema.onChanged)&&e.schema.onChanged(e.model,b,y,e.schema),ee(e.formOptions,"validateAfterChanged",!1)===!0&&(ee(e.schema,"validateDebounceTime",ee(e.formOptions,"validateDebounceTime",0))>0?l():r()))},c=()=>{n.value.splice(0)},d=(b,y)=>{let B=b.replace(/\[(\w+)\]/g,".$1");B=B.replace(/^\./,"");let x=e.model||{},S=0;const w=B.split("."),A=w.length;for(;S<A;){const g=w[S];if(S<A-1)x[g]!==void 0||(x[g]={}),x=x[g];else{x[g]=y;return}++S}},u=(b,y=!1)=>{const B=ee(e.formOptions,"fieldIdPrefix","");return ea(b,B)+(y?"-"+tl():"")},m=b=>`${u(b)}-label`,f=()=>ee(e.schema,"fieldClasses",[]),h=b=>b,C=b=>b;return{value:o,clearValidationErrors:c,getFieldID:u,getLabelId:m,getFieldClasses:f,updateModelValue:s}}const Cl={useAbstractFields:E1},B1={class:"form-field-wrapper"},O1=t.defineComponent({__name:"FieldInput",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,{updateModelValue:r,getFieldID:l,clearValidationErrors:s,value:c}=Cl.useAbstractFields({model:a.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:y=>{o("modelUpdated",y.value,y.model)}});n({clearValidationErrors:s});const d=t.computed(()=>{var y;const B=(y=a.schema)==null?void 0:y.inputType.toLowerCase();return B==="string"?"text":B==="datetime"?"datetime-local":B||"text"}),u={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss","datetime-local":"YYYY-MM-DDTHH:mm:ss"},m=(y,B)=>{var x,S;let w=y;const A=u[d.value]||"",g=ot.parse(y,A);g&&((x=a.schema)!=null&&x.format?w=ot.format(g,(S=a.schema)==null?void 0:S.format):w=g.valueOf()),r(w,B)},f=(y,B)=>{aa(y)||(y=NaN),r(y,B)},h=y=>{let B=y;switch(d.value){case"number":case"range":aa(parseFloat(y))&&(B=parseFloat(y));break}c.value=B,r(B,y)},C=t.ref(null),b=()=>{var y;oe(C.value)&&((y=C.value)==null||y.flush())};return t.onMounted(()=>{switch(d.value){case"number":case"range":C.value=bn((y,B)=>{f(y,B)},parseInt(ee(a.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break;case"date":case"datetime":case"datetime-local":C.value=bn((y,B)=>{m(y,B)},parseInt(ee(a.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break}}),t.onBeforeMount(()=>{d.value==="checkbox"?console.warn("The use of 'checkbox' inputType with 'input' type fields is deprecated. Use 'checkbox' type instead."):d.value==="radio"?console.warn("The use of 'radio' inputType with 'input' type fields is deprecated. Use 'radio' type instead."):d.value==="file"&&console.warn("The 'file' type in input field is deprecated. Use 'file' field instead.")}),(y,B)=>{const x=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock("div",B1,[t.createVNode(x,t.mergeProps(y.$attrs,{id:t.unref(l)(e.schema),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||null,help:e.hint?e.hint:d.value==="color"||d.value==="range"?t.unref(c):void 0,max:e.schema.max,maxlength:e.schema.maxlength,min:e.schema.min,minlength:e.schema.minlength,"model-value":t.unref(c),name:e.schema.inputName,pattern:e.schema.pattern,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,type:d.value,width:e.schema.width,onBlur:b,onInput:h}),null,16,["id","autocomplete","class","disabled","help","max","maxlength","min","minlength","model-value","name","pattern","placeholder","readonly","required","type","width"])])}}}),kl=Q(O1,[["__scopeId","data-v-a27819bb"]]),x1=t.defineComponent({__name:"FieldLabel",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0}},setup(e){const n=e,{getFieldID:i,value:a}=Cl.useAbstractFields({model:n.model,schema:n.schema,formOptions:n.formOptions});return(o,r)=>{const l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["field-label",e.schema.fieldClasses])},[t.createVNode(l,{id:t.unref(i)(e.schema)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)),1)]),_:1},8,["id"])],2)}}}),I1=Q(x1,[["__scopeId","data-v-158563b8"]]),S1=["disabled"],M1=["id","disabled","name","onClick","value","checked","required"];function v1(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:"radio-list",disabled:e.disabled||null},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,s=>t.withDirectives((t.openBlock(),t.createElementBlock("label",{class:t.normalizeClass(r.getItemCssClasses(s))},[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"radio",disabled:r.isItemDisabled(s)||null,name:r.id,onClick:c=>r.onSelection(s),value:r.getItemValue(s),checked:r.isItemChecked(s)||null,class:t.normalizeClass(e.schema.fieldClasses),required:e.schema.required},null,10,M1),[[l,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(s)),1)],2)),[[l,"label"]])),256))],8,S1)),[[l,"wrapper"]])}const T1={mixins:[le],computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e},id(){return this.schema.model}},methods:{getItemValue(e){if(Be(e)){if(typeof this.schema.radiosOptions<"u"&&typeof this.schema.radiosOptions.value<"u")return e[this.schema.radiosOptions.value];if(typeof e.value<"u")return e.value;throw new Error("`value` is not defined. If you want to use another key name, add a `value` property under `radiosOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/radios.html#radios-field-with-object-values")}else return e},getItemName(e){if(Be(e)){if(typeof this.schema.radiosOptions<"u"&&typeof this.schema.radiosOptions.name<"u")return e[this.schema.radiosOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `radiosOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/radios.html#radios-field-with-object-values")}else return e},getItemCssClasses(e){return{"is-checked":this.isItemChecked(e),"is-disabled":this.isItemDisabled(e)}},onSelection(e){this.value=this.getItemValue(e)},isItemChecked(e){return this.getItemValue(e)===this.value},isItemDisabled(e){if(this.disabled)return!0;const n=ee(e,"disabled",!1);return oe(n)?n(this.model):n}}},R1=Q(T1,[["render",v1]]);function N1(e,n){for(var i=-1,a=e==null?0:e.length;++i<a;)if(n(e[i],i,e))return!0;return!1}var V1=1,L1=2;function El(e,n,i,a,o,r){var l=i&V1,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=r.get(e),u=r.get(n);if(d&&u)return d==n&&u==e;var m=-1,f=!0,h=i&L1?new wn:void 0;for(r.set(e,n),r.set(n,e);++m<s;){var C=e[m],b=n[m];if(a)var y=l?a(b,C,m,n,e,r):a(C,b,m,e,n,r);if(y!==void 0){if(y)continue;f=!1;break}if(h){if(!N1(n,function(B,x){if(!$r(h,x)&&(C===B||o(C,B,i,a,r)))return h.push(x)})){f=!1;break}}else if(!(C===b||o(C,b,i,a,r))){f=!1;break}}return r.delete(e),r.delete(n),f}function D1(e){var n=-1,i=Array(e.size);return e.forEach(function(a,o){i[++n]=[o,a]}),i}var j1=1,P1=2,U1="[object Boolean]",Y1="[object Date]",G1="[object Error]",F1="[object Map]",H1="[object Number]",z1="[object RegExp]",K1="[object Set]",q1="[object String]",X1="[object Symbol]",J1="[object ArrayBuffer]",Z1="[object DataView]",Bl=nt?nt.prototype:void 0,ra=Bl?Bl.valueOf:void 0;function W1(e,n,i,a,o,r,l){switch(i){case Z1:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case J1:return!(e.byteLength!=n.byteLength||!r(new $n(e),new $n(n)));case U1:case Y1:case H1:return An(+e,+n);case G1:return e.name==n.name&&e.message==n.message;case z1:case q1:return e==n+"";case F1:var s=D1;case K1:var c=a&j1;if(s||(s=ia),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;a|=P1,l.set(e,n);var u=El(s(e),s(n),a,o,r,l);return l.delete(e),u;case X1:if(ra)return ra.call(e)==ra.call(n)}return!1}var Q1=1,_1=Object.prototype,$1=_1.hasOwnProperty;function ew(e,n,i,a,o,r){var l=i&Q1,s=Ji(e),c=s.length,d=Ji(n),u=d.length;if(c!=u&&!l)return!1;for(var m=c;m--;){var f=s[m];if(!(l?f in n:$1.call(n,f)))return!1}var h=r.get(e),C=r.get(n);if(h&&C)return h==n&&C==e;var b=!0;r.set(e,n),r.set(n,e);for(var y=l;++m<c;){f=s[m];var B=e[f],x=n[f];if(a)var S=l?a(x,B,f,n,e,r):a(B,x,f,e,n,r);if(!(S===void 0?B===x||o(B,x,i,a,r):S)){b=!1;break}y||(y=f=="constructor")}if(b&&!y){var w=e.constructor,A=n.constructor;w!=A&&"constructor"in e&&"constructor"in n&&!(typeof w=="function"&&w instanceof w&&typeof A=="function"&&A instanceof A)&&(b=!1)}return r.delete(e),r.delete(n),b}var tw=1,Ol="[object Arguments]",xl="[object Array]",ni="[object Object]",nw=Object.prototype,Il=nw.hasOwnProperty;function iw(e,n,i,a,o,r){var l=ze(e),s=ze(n),c=l?xl:Qt(e),d=s?xl:Qt(n);c=c==Ol?ni:c,d=d==Ol?ni:d;var u=c==ni,m=d==ni,f=c==d;if(f&&mn(e)){if(!mn(n))return!1;l=!0,u=!1}if(f&&!u)return r||(r=new at),l||Hi(e)?El(e,n,i,a,o,r):W1(e,n,c,i,a,o,r);if(!(i&tw)){var h=u&&Il.call(e,"__wrapped__"),C=m&&Il.call(n,"__wrapped__");if(h||C){var b=h?e.value():e,y=C?n.value():n;return r||(r=new at),o(b,y,i,a,r)}}return f?(r||(r=new at),ew(e,n,i,a,o,r)):!1}function la(e,n,i,a,o){return e===n?!0:e==null||n==null||!it(e)&&!it(n)?e!==e&&n!==n:iw(e,n,i,a,la,o)}var aw=1,ow=2;function rw(e,n,i,a){var o=i.length,r=o,l=!a;if(e==null)return!r;for(e=Object(e);o--;){var s=i[o];if(l&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++o<r;){s=i[o];var c=s[0],d=e[c],u=s[1];if(l&&s[2]){if(d===void 0&&!(c in e))return!1}else{var m=new at;if(a)var f=a(d,u,c,e,n,m);if(!(f===void 0?la(u,d,aw|ow,a,m):f))return!1}}return!0}function Sl(e){return e===e&&!Be(e)}function lw(e){for(var n=Zt(e),i=n.length;i--;){var a=n[i],o=e[a];n[i]=[a,o,Sl(o)]}return n}function Ml(e,n){return function(i){return i==null?!1:i[e]===n&&(n!==void 0||e in Object(i))}}function sw(e){var n=lw(e);return n.length==1&&n[0][2]?Ml(n[0][0],n[0][1]):function(i){return i===e||rw(i,e,n)}}function cw(e,n){return e!=null&&n in Object(e)}function dw(e,n,i){n=kr(n,e);for(var a=-1,o=n.length,r=!1;++a<o;){var l=Zn(n[a]);if(!(r=e!=null&&i(e,l)))break;e=e[l]}return r||++a!=o?r:(o=e==null?0:e.length,!!o&&Yi(o)&&Ui(l,o)&&(ze(e)||Pi(e)))}function pw(e,n){return e!=null&&dw(e,n,cw)}var uw=1,mw=2;function gw(e,n){return zi(e)&&Sl(n)?Ml(Zn(e),n):function(i){var a=ee(i,e);return a===void 0&&a===n?pw(i,e):la(n,a,uw|mw)}}function fw(e){return function(n){return n==null?void 0:n[e]}}function Aw(e){return function(n){return Er(n,e)}}function hw(e){return zi(e)?fw(Zn(e)):Aw(e)}function vl(e){return typeof e=="function"?e:e==null?Kn:typeof e=="object"?ze(e)?gw(e[0],e[1]):sw(e):hw(e)}function yw(e){return function(n,i,a){var o=Object(n);if(!Jt(n)){var r=vl(i);n=Zt(n),i=function(s){return r(o[s],s,o)}}var l=e(n,i,a);return l>-1?o[r?n[l]:l]:void 0}}var bw=Math.max;function ww(e,n,i){var a=e==null?0:e.length;if(!a)return-1;var o=i==null?0:ol(i);return o<0&&(o=bw(a+o,0)),_r(e,vl(n),o)}var Cw=yw(ww);const kw=["disabled","name","id"],Ew=["disabled"],Bw=["label"],Ow=["value"],xw=["value"];function Iw(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("select",{class:t.normalizeClass(["form-control",e.schema.fieldClasses]),"onUpdate:modelValue":n[0]||(n[0]=s=>e.value=s),disabled:e.disabled||null,name:e.schema.inputName,id:e.getFieldID(e.schema)},[r.selectOptions.hideNoneSelectedText?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("option",{key:0,disabled:e.schema.required||null,value:null},t.toDisplayString(r.selectOptions.noneSelectedText||"<Nothing selected>"),9,Ew)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,s=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[s.group?(t.openBlock(),t.createElementBlock("optgroup",{key:0,label:r.getGroupName(s)},[s.ops?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(s.ops,c=>(t.openBlock(),t.createElementBlock("option",{value:r.getItemValue(c)},t.toDisplayString(r.getItemName(c)),9,Ow))),256)):t.createCommentVNode("",!0)],8,Bw)):t.createCommentVNode("",!0),s.group?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("option",{key:1,value:r.getItemValue(s)},t.toDisplayString(r.getItemName(s)),9,xw))],64))),256))],10,kw)),[[t.vModelSelect,e.value],[l,"input"]])}const Sw={mixins:[le],computed:{selectOptions(){return this.schema.selectOptions||{}},items(){const e=this.schema.values;return typeof e=="function"?this.groupValues(e.apply(this,[this.model,this.schema])):this.groupValues(e)}},methods:{formatValueToField(e){return Ce(e)?null:e},groupValues(e){const n=[];let i={};return e.forEach(a=>{i=null,a.group&&Be(a)?(i=Cw(n,o=>o.group===a.group),i?i.ops.push({id:a.id,name:a.name}):(i={group:"",ops:[]},i.group=a.group,i.ops.push({id:a.id,name:a.name}),n.push(i))):n.push(a)}),n},getGroupName(e){if(e&&e.group)return e.group;throw new Error("Group name is missing! https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")},getItemValue(e){if(Be(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.value<"u")return e[this.schema.selectOptions.value];if(typeof e.id<"u")return e.id;throw new Error("`id` is not defined. If you want to use another key name, add a `value` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e},getItemName(e){if(Be(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.name<"u")return e[this.schema.selectOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e}}},Tl=Q(Sw,[["render",Iw]]);var Mw="[object Map]",vw="[object Set]",Tw=Object.prototype,Rw=Tw.hasOwnProperty;function Nw(e){if(e==null)return!0;if(Jt(e)&&(ze(e)||typeof e=="string"||typeof e.splice=="function"||mn(e)||Hi(e)||Pi(e)))return!e.length;var n=Qt(e);if(n==Mw||n==vw)return!e.size;if(zn(e))return!Ar(e).length;for(var i in e)if(Rw.call(e,i))return!1;return!0}const Vw=["id","value","name","disabled"];function Lw(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("input",{id:e.getFieldID(e.schema),type:"submit",value:e.schema.buttonText,onClick:n[0]||(n[0]=(...l)=>r.onClick&&r.onClick(...l)),name:e.schema.inputName,disabled:e.disabled||null,class:t.normalizeClass(e.schema.fieldClasses)},null,10,Vw)}const Dw={mixins:[le],methods:{onClick(e){if(this.schema.validateBeforeSubmit===!0){e.preventDefault();const n=ee(this.formOptions,"validateAsync",!1),i=this.vfg.validate(),a=o=>{n&&!Nw(o)||!n&&!o?oe(this.schema.onValidationError)&&this.schema.onValidationError(this.model,this.schema,o,e):oe(this.schema.onSubmit)&&this.schema.onSubmit(this.model,this.schema,e)};i&&oe(i.then)?i.then(a):a(i)}else oe(this.schema.onSubmit)&&this.schema.onSubmit(this.model,this.schema,e)}}},jw=Q(Dw,[["render",Lw]]),Pw=["id","disabled","maxlength","minlength","placeholder","readonly","required","rows","name"];function Uw(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("textarea",{class:t.normalizeClass(["form-control",e.schema.fieldClasses]),"onUpdate:modelValue":n[0]||(n[0]=s=>e.value=s),id:e.getFieldID(e.schema),disabled:e.disabled||null,maxlength:e.schema.max,minlength:e.schema.min,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,rows:e.schema.rows||2,name:e.schema.inputName},null,10,Pw)),[[t.vModelText,e.value],[l,"input"]])}const Yw={mixins:[le]},Rl=Q(Yw,[["render",Uw]]),Gw={class:"wrapper"},Fw=["id","name","accept","multiple","placeholder","readonly","required","disabled"];function Hw(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",Gw,[t.withDirectives(t.createElementVNode("input",{class:"form-control",id:e.getFieldID(e.schema),type:"file",name:e.schema.inputName,onChange:n[0]||(n[0]=(...s)=>r.onChange&&r.onChange(...s)),accept:e.schema.accept,multiple:e.schema.multiple,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,disabled:e.disabled||null},null,40,Fw),[[l,"input"]])])),[[l,"wrapper"]])}const zw={mixins:[le],methods:{onChange(e){oe(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,this.schema,e,this)}}},Kw=Q(zw,[["render",Hw]]),qw=["value","autocomplete","disabled","placeholder","readonly","name","id"];function Xw(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("input",{class:"form-control",type:"text",value:e.value,autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,qw)}const Jw={mixins:[le],data(){return{cleave:null}},mounted(){this.$nextTick(function(){window.Cleave?(this.cleave=new window.Cleave(this.$el,ft(this.schema.cleaveOptions||{},{creditCard:!1,phone:!1,phoneRegionCode:"AU",date:!1,datePattern:["d","m","Y"],numeral:!1,numeralThousandsGroupStyle:"thousand",numeralDecimalScale:2,numeralDecimalMark:".",blocks:[],delimiter:" ",prefix:null,numericOnly:!1,uppercase:!1,lowercase:!1,maxLength:0})),this.cleave.properties&&this.cleave.properties.hasOwnProperty.call("result")?this.$watch("cleave.properties.result",()=>{this.value=this.cleave.properties.result}):this.$el.addEventListener("input",this.inputChange)):console.warn("Cleave is missing. Please download from https://github.com/nosir/cleave.js/ and load the script in the HTML head section!")})},beforeUnmount(){this.cleave&&(this.cleave.destroy(),this.$el.removeEventListener("input",this.inputChange))},methods:{inputChange(){this.value=this.$el.value}}},Zw=Q(Jw,[["render",Xw]]),Nl={formatValueToField(e){if(e!=null){const n=this.schema.format?ot.parse(e,this.schema.format):new Date(e);return ot.format(n,this.getDateFormat())}return e},formatValueToModel(e){if(e!=null){const n=ot.parse(e,this.getDateFormat());this.schema.format?e=ot.format(n,this.schema.format):e=n.valueOf()}return e}},Ww={class:"input-group date"},Qw=["autocomplete","disabled","placeholder","readonly","name","id"],_w=t.createElementVNode("span",{class:"input-group-addon"},[t.createElementVNode("span",{class:"glyphicon glyphicon-calendar"})],-1);function $w(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("div",Ww,[t.withDirectives(t.createElementVNode("input",{class:"form-control",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,Qw),[[t.vModelText,e.value]]),_w])}const Vl="YYYY-MM-DD HH:mm:ss",eC={mixins:[le],mounted(){this.$nextTick(function(){if(window.$&&window.$.fn.datetimepicker){const e=this.$el.querySelector(".form-control");$(this.$el).datetimepicker(ft(this.schema.dateTimePickerOptions||{},{format:Vl})).on("dp.change",()=>{this.value=e.value})}else console.warn("Bootstrap datetimepicker library is missing. Please download from https://eonasdan.github.io/bootstrap-datetimepicker/ and load the script and CSS in the HTML head section!")})},beforeUnmount(){window.$&&window.$.fn.datetimepicker&&$(this.$el).data("DateTimePicker").destroy()},methods:{getDateFormat(){return this.schema.dateTimePickerOptions&&this.schema.dateTimePickerOptions.format?this.schema.dateTimePickerOptions.format:Vl},...Nl}},tC=Q(eC,[["render",$w]]),nC=["autocomplete","disabled","placeholder","readonly","name","id"];function iC(e,n,i,a,o,r){return t.withDirectives((t.openBlock(),t.createElementBlock("input",{class:"form-control",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,debounce:"500",onFocus:n[1]||(n[1]=l=>r.geolocate()),id:e.getFieldID(e.schema)},null,40,nC)),[[t.vModelText,e.value]])}const aC={mixins:[le],data(){return{autocomplete:"",inputs:{street_number:"long_name",route:"long_name",country:"long_name",administrative_area_level_1:"long_name",administrative_area_level_2:"long_name",locality:"long_name",postal_code:"short_name"}}},mounted(){this.$nextTick(()=>{window.google&&window.google.maps&&window.google.maps.places&&window.google.maps.places.Autocomplete?(this.autocomplete=new google.maps.places.Autocomplete(this.$el,{types:["geocode"]}),this.autocomplete.addListener("place_changed",this.pipeAddress)):console.warn("Google Maps API is missing. Please add https://maps.googleapis.com/maps/api/js?key=YOUR_KEY&libraries=places script in the HTML head section!")})},methods:{pipeAddress(){const e=this.autocomplete.getPlace();if(e){this.value=e.formatted_address;const n={};if(e.address_components!==void 0)for(let i=0;i<e.address_components.length;i++){const a=e.address_components[i].types[0];this.inputs[a]&&(n[a]=e.address_components[i][this.inputs[a]])}oe(this.schema.onPlaceChanged)&&this.schema.onPlaceChanged(this.value,n,e,this.model,this.schema)}},geolocate(){navigator.geolocation&&navigator.geolocation.getCurrentPosition(e=>{const n={lat:e.coords.latitude,lng:e.coords.longitude},i=new window.google.maps.Circle({center:n,radius:e.coords.accuracy});this.autocomplete.setBounds(i.getBounds())})}}},oC=Q(aC,[["render",iC]]),rC={class:"wrapper"},lC=["autocomplete","disabled","placeholder","readonly"],sC=["disabled","name"];function cC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("div",rC,[t.withDirectives(t.createElementVNode("input",{class:"form-control link",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>r.wrappedValue=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly},null,8,lC),[[t.vShow,e.schema.hideInput!==!0],[t.vModelText,r.wrappedValue]]),e.schema.browse!==!1?(t.openBlock(),t.createElementBlock("input",{key:0,class:"form-control file",type:"file",disabled:e.disabled||null,onChange:n[1]||(n[1]=(...l)=>r.fileChanged&&r.fileChanged(...l)),name:e.schema.inputName},null,40,sC)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"preview",style:t.normalizeStyle(r.previewStyle)},[t.createElementVNode("div",{class:"remove",title:"Remove image",onClick:n[2]||(n[2]=(...l)=>r.remove&&r.remove(...l))})],4)])}const dC={mixins:[le],computed:{previewStyle(){return this.schema.preview!==!1?{display:"block","background-image":this.value!=null?"url("+this.value+")":"none"}:{display:"none"}},wrappedValue:{get(){return this.value&&this.value.indexOf("data")===0?"<inline base64 image>":this.value},set(e){e&&e.indexOf("http")===0&&(this.value=e)}}},watch:{model:{deep:!0,handler(){const e=this.$el.querySelector("input.file");e&&(e.value="")}}},methods:{remove(){this.value=""},fileChanged(e){const n=new FileReader;n.onload=i=>{this.value=i.target.result},e.target.files&&e.target.files.length>0&&n.readAsDataURL(e.target.files[0])}}},pC=Q(dC,[["render",cC]]),uC=["autocomplete","disabled","placeholder","readonly","name","id"];function mC(e,n,i,a,o,r){return t.withDirectives((t.openBlock(),t.createElementBlock("input",{class:"form-control",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,uC)),[[t.vModelText,e.value]])}const gC={mixins:[le],mounted(){this.$nextTick(function(){window.$&&window.$.fn.mask?$(this.$el).unmask().mask(this.schema.mask,this.schema.maskOptions):console.warn("JQuery MaskedInput library is missing. Please download from https://github.com/digitalBush/jquery.maskedinput and load the script in the HTML head section!")})},beforeUnmount(){window.$&&window.$.fn.mask&&$(this.$el).unmask()}},fC=Q(gC,[["render",mC]]),AC={mixins:[le],data(){return{slider:null}},computed:{containPips(){return this.schema.noUiSliderOptions&&typeof this.schema.noUiSliderOptions.pips<"u"},containTooltip(){return this.schema.noUiSliderOptions&&this.schema.noUiSliderOptions.tooltips}},watch:{model:{handler(){window.noUiSlider&&this.slider&&this.slider.noUiSlider&&this.slider.noUiSlider.set(this.value)},deep:!0}},mounted(){this.$nextTick(()=>{window.noUiSlider?(this.slider=this.$el,window.noUiSlider.create(this.slider,ft(this.schema.noUiSliderOptions||{},{start:this.getStartValue(),range:{min:this.schema.min,max:this.schema.max}})),this.slider.noUiSlider.on("change",this.onChange.bind(this))):console.warn("noUiSlider is missing. Please download from https://github.com/leongersen/noUiSlider and load the script and CSS in the HTML head section!")})},beforeUnmount(){this.slider&&this.slider.noUiSlider.off("change")},methods:{onChange(e){Array.isArray(e)?this.value=[parseFloat(e[0]),parseFloat(e[1])]:this.value=parseFloat(e)},formatValueToField(e){this.slider!==null&&typeof this.slider.noUiSlider<"u"&&this.slider.noUiSlider.set(e)},formatValueToModel(e){if(typeof this.slider.noUiSlider<"u")return e instanceof Array?[Number(e[0]),Number(e[1])]:Number(e)},getStartValue(){return this.value!=null?this.value:typeof this.schema.noUiSliderOptions<"u"&&this.schema.noUiSliderOptions.double?[this.schema.min,this.schema.min]:this.schema.min}}},hC=["disabled"];function yC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["slider",{"contain-pips":r.containPips,"contain-tooltip":r.containTooltip}]),disabled:e.disabled||null},null,10,hC)}const bC=Q(AC,[["render",yC]]),wC=["autocomplete","disabled","placeholder","readonly","name"];function CC(e,n,i,a,o,r){return t.withDirectives((t.openBlock(),t.createElementBlock("input",{class:"form-control",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName},null,8,wC)),[[t.vModelText,e.value]])}const kC="YYYY-MM-DD",EC={mixins:[le],data(){return{picker:null,options:null}},mounted(){this.initialize(ee(this.schema,"pikadayOptions",{}))},beforeUnmount(){this.picker&&this.picker.destroy()},methods:{getDateFormat(){return ee(this.schema,"pikadayOptions.format",kC)},...Nl,initialize(e){this.picker&&this.picker.destroy&&this.picker.destroy(),this.$nextTick(()=>{window.Pikaday?(this.options=ft({},e,{field:this.$el,onSelect:()=>{this.value=this.picker.toString()}}),this.picker=new window.Pikaday(this.options)):console.warn("Pikaday is missing. Please download from https://github.com/dbushell/Pikaday/ and load the script and CSS in the HTML head section!")})}}},BC=Q(EC,[["render",CC]]),OC=["autocomplete","data-disable","data-max","data-min","data-step","placeholder","readonly","name"];function xC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("input",{type:"text",autocomplete:e.schema.autocomplete,"data-disable":e.disabled,"data-max":e.schema.max,"data-min":e.schema.min,"data-step":e.schema.step,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName},null,8,OC)}const IC={mixins:[le],data(){return{slider:null}},watch:{model:{deep:!0,handler(){if(window.$&&window.$.fn.ionRangeSlider){let e,n;Array.isArray(this.value)?[e,n]=this.value:e=this.value,this.slider&&this.slider.update({from:e,to:n})}}}},mounted(){this.$nextTick(function(){if(window.$&&window.$.fn.ionRangeSlider){let e,n;Array.isArray(this.value)?[e,n]=this.value:e=this.value;const i=this;$(this.$el).ionRangeSlider(ft(this.schema.rangeSliderOptions||{},{type:"single",grid:!0,hide_min_max:!0,from:e,to:n,onChange(a){i.slider.options.type==="double"?i.value=[a.from,a.to]:i.value=a.from}})),this.slider=$(this.$el).data("ionRangeSlider")}else console.warn("ion.rangeSlider library is missing. Please download from https://github.com/IonDen/ion.rangeSlider and load the script and CSS in the HTML head section!")})},beforeUnmount(){this.slider&&this.slider.destroy()}},SC=Q(IC,[["render",xC]]),MC=["disabled","multiple","title","name"],vC=["disabled","selected"],TC=["value"];function RC(e,n,i,a,o,r){return t.withDirectives((t.openBlock(),t.createElementBlock("select",{class:"selectpicker","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),disabled:e.disabled||null,multiple:e.schema.multiSelect,title:e.schema.placeholder,"data-width":"100%",name:e.schema.inputName},[e.schema.multiSelect!==!0?(t.openBlock(),t.createElementBlock("option",{key:0,disabled:e.schema.required||null,value:null,selected:e.value==null},null,8,vC)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,l=>(t.openBlock(),t.createElementBlock("option",{value:r.getItemValue(l)},t.toDisplayString(r.getItemName(l)),9,TC))),256))],8,MC)),[[t.vModelSelect,e.value]])}const NC={mixins:[le],computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e}},watch:{model:{deep:!0,handler(){$.fn.selectpicker&&$(this.$el).selectpicker("refresh")}}},mounted(){this.$nextTick(function(){$.fn.selectpicker?$(this.$el).selectpicker("destroy").selectpicker(this.schema.selectOptions):console.warn("Bootstrap-select library is missing. Please download from https://silviomoreto.github.io/bootstrap-select/ and load the script and CSS in the HTML head section!")})},beforeUnmount(){$.fn.selectpicker&&$(this.$el).selectpicker("destroy")},methods:{getItemValue(e){if(Be(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.value<"u")return e[this.schema.selectOptions.value];if(typeof e.id<"u")return e.id;throw new Error("`id` is not defined. If you want to use another key name, add a `value` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e},getItemName(e){if(Be(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.name<"u")return e[this.schema.selectOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e}}},VC=Q(NC,[["render",RC]]),LC=["autocomplete","disabled","placeholder","readonly","name","id"];function DC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("input",{type:"text",autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,LC)}const jC={mixins:[le],data(){return{picker:null}},watch:{model:{deep:!0,handler(){window.$&&window.$.fn.spectrum&&this.picker.spectrum("set",this.value)}},disabled(e){e?this.picker.spectrum("disable"):this.picker.spectrum("enable")}},mounted(){this.$nextTick(function(){window.$&&window.$.fn.spectrum?(this.picker=$(this.$el).spectrum("destroy").spectrum(ft(this.schema.colorOptions||{},{showInput:!0,showAlpha:!0,disabled:this.schema.disabled,allowEmpty:!this.schema.required,preferredFormat:"hex",change:e=>{this.value=e?e.toString():null}})),this.picker.spectrum("set",this.value)):console.warn("Spectrum color library is missing. Please download from http://bgrins.github.io/spectrum/ and load the script and CSS in the HTML head section!")})},beforeUnmount(){this.picker&&this.picker.spectrum("destroy")}},PC=Q(jC,[["render",DC]]),UC=["src"];function YC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("img",{src:r.mapLink},null,8,UC)}const GC={mixins:[le],computed:{mapLink(){let e,n,i;if(this.value){const a=ft(this.schema.staticMapOptions||{},{lat:"lat",lng:"lng",zoom:8,sizeX:640,sizeY:640});e=this.value[a.lat],n=this.value[a.lng],i=`http://maps.googleapis.com/maps/api/staticmap?center=${e},${n}&zoom=${a.zoom}&size=${a.sizeX}x${a.sizeY}`;const o=["scale","format","maptype","language","region","markers","path","visible","style","key","signature"];for(const r of o)typeof a[r]<"u"&&(i+=`&${r}=${a[r]}`)}return i}}},FC=Q(GC,[["render",YC]]),HC=["autocomplete","disabled","name","id"],zC=["data-on","data-off","for"],KC=t.createElementVNode("span",{class:"handle"},null,-1);function qC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("label",null,[t.withDirectives(t.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,HC),[[t.vModelCheckbox,e.value]]),t.createElementVNode("span",{class:"label","data-on":e.schema.textOn||"On","data-off":e.schema.textOff||"Off",for:e.getFieldID(e.schema)},null,8,zC),KC])}const XC={mixins:[le],methods:{formatValueToField(e){return e!=null&&this.schema.valueOn?e===this.schema.valueOn:e},formatValueToModel(e){return e!=null&&this.schema.valueOn?e?this.schema.valueOn:this.schema.valueOff:e}}},JC=Q(XC,[["render",qC]]),ZC={mixins:[le],data(){return{attributes:this.schema?this.schema.attributes:void 0,newKeyType:"string",newKeyName:"",keyTypes:{}}},created(){this.value||(this.value={})},mounted(){if(!this.value)return;const e=Object.keys(this.value),n={};for(let i=0;i<e.length;i++){const a=e[i];n[a]=typeof this.value[a]}this.keyTypes=n},methods:{removeElement(e){const n=this.value;delete n[e],this.value=JSON.parse(JSON.stringify(n));const i=this.keyTypes;delete i[e],this.keyTypes=JSON.parse(JSON.stringify(i))},addKey(){this.value[this.newKeyName]=void 0,this.value={...this.value},this.keyTypes[this.newKeyName]=this.newKeyType,this.keyTypes={...this.keyTypes},this.newKeyName=""}}},WC={key:0},QC={key:1},_C=["id"],$C={key:0},ek=["onUpdate:modelValue"],tk={key:1},nk=["onUpdate:modelValue"],ik={key:2},ak=["onUpdate:modelValue"],ok=["onClick"],rk=t.createElementVNode("option",{value:"string"}," String ",-1),lk=t.createElementVNode("option",{value:"number"}," Number ",-1),sk=t.createElementVNode("option",{value:"boolean"}," Boolean ",-1),ck=[rk,lk,sk];function dk(e,n,i,a,o,r){const l=t.resolveComponent("vue-form-generator"),s=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",null,[e.schema.schema?(t.openBlock(),t.createElementBlock("div",WC,[t.createVNode(l,{model:e.value,options:e.formOptions,schema:e.schema.schema},null,8,["model","options","schema"])])):(t.openBlock(),t.createElementBlock("div",QC,[t.createElementVNode("table",{id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(c,d)=>(t.openBlock(),t.createElementBlock("tr",{key:d},[t.createElementVNode("td",null,t.toDisplayString(d),1),o.keyTypes[d]==="string"?(t.openBlock(),t.createElementBlock("td",$C,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[d]=u,type:"text"},null,8,ek),[[t.vModelText,e.value[d]]])])):t.createCommentVNode("",!0),o.keyTypes[d]==="boolean"?(t.openBlock(),t.createElementBlock("td",tk,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[d]=u,type:"checkbox"},null,8,nk),[[t.vModelCheckbox,e.value[d]]])])):t.createCommentVNode("",!0),o.keyTypes[d]==="number"?(t.openBlock(),t.createElementBlock("td",ik,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[d]=u,type:"number"},null,8,ak),[[t.vModelText,e.value[d]]])])):t.createCommentVNode("",!0),t.createElementVNode("td",null,[t.createElementVNode("input",{type:"button",value:"x",onClick:u=>r.removeElement(d)},null,8,ok)])]))),128))],10,_C),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":n[0]||(n[0]=c=>o.newKeyType=c)},ck,512),[[t.vModelSelect,o.newKeyType]]),t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[1]||(n[1]=c=>o.newKeyName=c),type:"text"},null,512),[[t.vModelText,o.newKeyName]]),t.createElementVNode("input",{type:"button",value:"Add key",onClick:n[2]||(n[2]=(...c)=>r.addKey&&r.addKey(...c))})]))])),[[s,o.attributes]])}const Ll=Q(ZC,[["render",dk]]),pk={mixins:[le],emits:["model-updated"],data(){return{newKeyName:""}},computed:{subSchema(){return this.schema.schema&&this.schema.schema.fields[0].schema},subFields(){return!this.subSchema&&this.schema.fields},hasObjectKeys(){return this.value&&Object.keys(this.value).length>0},transformedModel(){return this.subSchema&&this.subSchema.fields.length>=1&&this.subSchema.fields[0].type==="array"?new Proxy(this.model[this.schema.model],{get:(e,n)=>({[this.schema.model]:e[n]}),set:(e,n,i)=>e[n]=i[this.schema.model]}):this.model[this.schema.model]}},mounted(){this.value||(this.value={});let e=[];this.subSchema?e=this.subSchema.fields:this.subFields&&(e=this.schema.fields[0].schema),this.value=this.transformMapModelValuesToObject(this.model,e,this.schema.model)},methods:{removeElement(e){const n=this.value;delete n[e],this.value={...n}},transformMapModelValuesToObject(e,n,i){const a={};return Object.keys(e).map(o=>{const r=o.indexOf(i+"-");if(r>-1&&Array.isArray(n))if(n.length>0){const l=o.split("-").filter(c=>n.find(d=>d.model===c)),s=o.split(`-${l}`)[0].split(`${i}-`)[1];l.length?a[s]={...a[s],[l]:e[o]}:a[o.substring(r+`${i}-`.length)]=e[o]}else a[o.substring(`${i}-`.length)]=e[o];else{const l=o.split("-").filter(c=>c===this.schema.model),s=o.split(`-${l}`)[0].split(`${i}-`)[1];s&&(a[s]=e[o])}return o}),a},addKey(){const e=this.subSchema&&Array.isArray(this.subSchema.fields)&&this.subSchema.fields.length===1&&this.subSchema.fields[0].type==="array",n=this.subSchema?e?[""]:{}:"";this.value[this.newKeyName]=n,this.newKeyName=""},updateModel(e,n){this.$emit("model-updated",this.model[this.schema.model],n)}}},Dl=e=>(t.pushScopeId("data-v-22600a29"),e=e(),t.popScopeId(),e),uk=["id"],mk=["data-testid"],gk={class:"item-wrapper"},fk={class:"index-wrapper"},Ak=Dl(()=>t.createElementVNode("hr",{class:"divider"},null,-1)),hk={key:0},yk={key:1},bk=["onUpdate:modelValue","placeholder","onInput"],wk={key:0,class:"hint"},Ck=Dl(()=>t.createElementVNode("hr",{class:"wide-divider"},null,-1)),kk={class:"input-item"},Ek=["placeholder"],Bk={key:0,class:"hint"};function Ok(e,n,i,a,o,r){const l=t.resolveComponent("KIcon"),s=t.resolveComponent("KButton"),c=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",{id:e.getFieldID(e.schema),class:t.normalizeClass(["object-advanced-wrapper",e.schema.fieldClasses])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(d,u)=>(t.openBlock(),t.createElementBlock("div",{key:u,"data-testid":`field-object-key-${u}`},[t.createElementVNode("div",null,[t.createElementVNode("div",gk,[t.createElementVNode("div",fk,[t.createElementVNode("strong",null,t.toDisplayString(u),1),t.createElementVNode("div",null,[t.createVNode(s,{appearance:"tertiary",class:"delete",type:"button",onClick:m=>r.removeElement(u)},{default:t.withCtx(()=>[t.createVNode(l,{icon:"trash",size:"18"})]),_:2},1032,["onClick"])])]),Ak,r.subSchema?(t.openBlock(),t.createElementBlock("div",hk,[t.createVNode(c,{model:r.transformedModel[u],options:{helpAsHtml:!0},schema:r.subSchema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])):(t.openBlock(),t.createElementBlock("div",yk,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":m=>e.value[u]=m,class:"form-control",placeholder:e.schema.fields&&e.schema.fields[0].schema.placeholder,type:"text",onInput:m=>r.updateModel(e.value[u],e.model[e.schema.model])},null,40,bk),[[t.vModelText,e.value[u]]]),e.schema.fields&&e.schema.fields[0].schema.hint?(t.openBlock(),t.createElementBlock("p",wk,t.toDisplayString(e.schema.fields[0].schema.hint),1)):t.createCommentVNode("",!0)])),Ck])])],8,mk))),128)),t.createElementVNode("div",{class:t.normalizeClass(["input-wrapper",{indent:r.hasObjectKeys}])},[t.createElementVNode("div",kk,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=d=>o.newKeyName=d),class:"form-control","data-testid":"keyname-input",placeholder:e.schema.placeholder,type:"text"},null,8,Ek),[[t.vModelText,o.newKeyName]]),t.createVNode(s,{appearance:"tertiary","data-testid":"add-key",disabled:!o.newKeyName,onClick:r.addKey},{default:t.withCtx(()=>[t.createTextVNode(" + Add "+t.toDisplayString(e.schema.buttonLabel||e.schema.label),1)]),_:1},8,["disabled","onClick"])]),e.schema.hintText?(t.openBlock(),t.createElementBlock("p",Bk,t.toDisplayString(e.schema.hintText),1)):t.createCommentVNode("",!0)],2)],10,uk)}const jl=Q(pk,[["render",Ok],["__scopeId","data-v-22600a29"]]),ii="24px",Pl=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},xk=e=>(t.pushScopeId("data-v-20c17c32"),e=e(),t.popScopeId(),e),Ik=["aria-hidden"],Sk={key:0,"data-testid":"kui-icon-svg-title"},Mk=xk(()=>t.createElementVNode("path",{d:"M11 19V13H5V11H11V5H13V11H19V13H13V19H11Z",fill:"currentColor"},null,-1)),vk=t.defineComponent({__name:"AddIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:ii,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return ii}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon add-icon","data-testid":"kui-icon-wrapper-add-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-add-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Sk,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Mk],8,Ik))]),_:1},8,["aria-hidden","style"]))}}),Tk=Pl(vk,[["__scopeId","data-v-20c17c32"]]),Rk=e=>(t.pushScopeId("data-v-b5498bf0"),e=e(),t.popScopeId(),e),Nk=["aria-hidden"],Vk={key:0,"data-testid":"kui-icon-svg-title"},Lk=Rk(()=>t.createElementVNode("path",{d:"M7 21C6.45 21 5.97917 20.8042 5.5875 20.4125C5.19583 20.0208 5 19.55 5 19V6H4V4H9V3H15V4H20V6H19V19C19 19.55 18.8042 20.0208 18.4125 20.4125C18.0208 20.8042 17.55 21 17 21H7ZM17 6H7V19H17V6ZM9 17H11V8H9V17ZM13 17H15V8H13V17Z",fill:"currentColor"},null,-1)),Dk=t.defineComponent({__name:"TrashIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:ii,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return ii}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trash-icon","data-testid":"kui-icon-wrapper-trash-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trash-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Vk,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Lk],8,Nk))]),_:1},8,["aria-hidden","style"]))}}),ai=Pl(Dk,[["__scopeId","data-v-b5498bf0"]]),jk={class:"array-item"},Pk=t.defineComponent({__name:"FieldArrayItem",props:{model:{type:String,default:""}},emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",jk,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(a,{appearance:"tertiary",class:"delete",onClick:i[0]||(i[0]=o=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ai))]),_:1})])}}}),Ul=Q(Pk,[["__scopeId","data-v-ec926551"]]),Uk=e=>(t.pushScopeId("data-v-27d212bd"),e=e(),t.popScopeId(),e),Yk={class:"multi-item-wrapper"},Gk=Uk(()=>t.createElementVNode("hr",null,null,-1)),Fk=t.defineComponent({__name:"FieldArrayMultiItem",emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",Yk,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(a,{appearance:"danger",class:"delete",onClick:i[0]||(i[0]=o=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createTextVNode(" - Remove Field ")]),_:1}),Gk])}}}),Yl=Q(Fk,[["__scopeId","data-v-27d212bd"]]),Hk={name:"FieldMetric",components:{AddIcon:Tk,TrashIcon:ai},mixins:[le],emits:["remove-item"],data(){return{contentVisible:!1}}},zk={key:0,class:"content"};function Kk(e,n,i,a,o,r){const l=t.resolveComponent("AddIcon"),s=t.resolveComponent("TrashIcon"),c=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["field-dropdown",{active:o.contentVisible}])},[t.createElementVNode("div",{class:"title",onClick:n[0]||(n[0]=d=>o.contentVisible=!o.contentVisible)},[t.createTextVNode(t.toDisplayString(e.model.name?e.model.name:"New Item")+" ",1),t.createVNode(l,{class:"metric-add-icon"})]),t.createVNode(t.Transition,{name:"slide-fade"},{default:t.withCtx(()=>[o.contentVisible?(t.openBlock(),t.createElementBlock("div",zk,[t.renderSlot(e.$slots,"default"),t.createVNode(c,{appearance:"tertiary",class:"metric-remove-button",onClick:n[1]||(n[1]=d=>e.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(s)]),_:1})])):t.createCommentVNode("",!0)]),_:3})],2)}const Gl=Q(Hk,[["render",Kk]]),yt="kong-ui-forms-api",qk="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}";function Xk(e){return e?e.length===36&&new RegExp(`^${qk}$`).test(e):!1}const sa=50,Nt={CREATE_NOT_FROM_ENTITY:"CREATE_NOT_FROM_ENTITY",CREATE_FROM_ENTITY:"CREATE_FROM_ENTITY",UPDATE_ENTITY:"UPDATE_ENTITY",SET_REFERRAL_VALUE:"SET_REFERRAL_VALUE"};function Jk(e,n,i){return i?Nt.SET_REFERRAL_VALUE:e&&!n||!e&&n?Nt.UPDATE_ENTITY:e&&n?Nt.CREATE_FROM_ENTITY:Nt.CREATE_NOT_FROM_ENTITY}const Zk={mixins:[le],inject:[yt],emits:["model-updated"],data(){return{suggestions:[],idValue:"",message:"Type something to search",items:[],initialItems:[],loading:!1}},computed:{fieldState(){return Jk(this.model[this.schema.model],this.associatedEntity||this.entityId,this.bypassSearch)},associatedEntity(){return this.$route&&this.$route.params[this.entity]},entity(){return this.schema.entity},bypassSearch(){return this.$route&&this.$route.query&&this.$route.query.no_search}},watch:{idValue:{handler(e,n){e!==n&&this.updateModel(e)}}},async created(){await this.$nextTick();let e,n;switch(this.fieldState){case Nt.UPDATE_ENTITY:if(!this[yt]){console.warn("[@kong-ui-public/forms] No API service provided");break}n=(await this[yt].getOne(this.entity,this.model[this.schema.model])).data,e=this.getItem(this.schema.entityDataKey?n[this.schema.entityDataKey]:n),this.idValue=e.id;break;case Nt.CREATE_FROM_ENTITY:this.idValue=this.associatedEntity.id;break;case Nt.SET_REFERRAL_VALUE:this.idValue=this.value}try{e&&(this.initialItems=[{...e,label:this.getSuggestionLabel(e),value:e.id}]),this.items=this.initialItems}catch(i){this.message=`There was an error loading ${this.schema.entity}`,console.error("err!",i)}},methods:{onQueryChange(e){e.trim().length===0&&(this.items=[],this.message="Type something to search"),typeof this.performSearch!="function"&&(this.performSearch=bn(this.search,500)),this.performSearch(e)},async search(e){if(e.trim().length===0)return;this.loading=!0;const n=[],i=[],a=this.getInputFields(),o=new Set;Xk(e)&&a.includes("id")?i.push((async()=>{const r=await this.fetchExact(e);n.push({...r,label:this.getSuggestionLabel(r),value:r.id})})()):i.push(...a.filter(r=>r!=="id").map(async r=>{(await this.fetchSuggestions(e,r)).forEach(l=>{o.has(l.id)||(o.add(l.id),n.push({...l,label:this.getSuggestionLabel(l),value:l.id}))})})),await Promise.all(i),this.items=n,this.items.length===0&&(this.message="No results"),this.loading=!1},getItem(e){return e.data?e.data.length>0?e.data[0]:[]:e},async fetchUntilLimit(e){const n=[];let i=null;if(!this[yt])return console.warn("[@kong-ui-public/forms] No API service provided"),[];for(;n.length<sa;){const a=await this[yt].getAll(this.entity,{size:sa,offset:i,...e});if(n.push(...a.data.data),i=a.data.offset,!i)break}return n.slice(0,sa)},async fetchSuggestions(e,n){return this.fetchUntilLimit({[n]:e})},async fetchExact(e){return this[yt]?(await this[yt].getOne(this.entity,e)).data:(console.warn("[@kong-ui-public/forms] No API service provided"),{})},getInputFields(){var e,n;return((n=(e=this.schema)==null?void 0:e.inputValues)==null?void 0:n.fields)||[]},getSuggestionLabel(e){const n=this.getInputFields();return n.length&&e?n.map(i=>e[i]).filter(Boolean).join(" - "):""},updateModel(e){this.$emit("model-updated",e!=null&&e.length?e:null,this.schema.model)},onSelected(e){this.idValue=e&&e.id,this.updateModel(this.getReturnValue(e||{}))},getReturnValue(e){var n;const i=(n=this.schema)==null?void 0:n.returnKey;return i?e[i]:e.id}}},Wk={class:"field-wrap autosuggest"},Qk=["data-testid","data-testlabel"],_k=["data-testid"],$k={class:"autosuggest__results_message"};function eE(e,n,i,a,o,r){const l=t.resolveComponent("KSelect");return t.openBlock(),t.createElementBlock("div",Wk,[t.createVNode(l,{id:e.schema.model,ref:"suggestion",modelValue:o.idValue,"onUpdate:modelValue":n[0]||(n[0]=s=>o.idValue=s),clearable:"","enable-filtering":"","filter-function":()=>!0,items:o.items,loading:o.loading,placeholder:e.schema.placeholder,width:"100%",onChange:r.onSelected,onQueryChange:r.onQueryChange},{"item-template":t.withCtx(({item:s})=>[t.createElementVNode("span",{class:"first-part","data-testid":s.id&&`${s.id}-0`,"data-testlabel":s.label},t.toDisplayString(r.getSuggestionLabel(s).split(" - ")[0]),9,Qk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.getSuggestionLabel(s).split(" - ").slice(1),(c,d)=>(t.openBlock(),t.createElementBlock("span",{key:d,class:"field-span","data-testid":s.id&&`${s.id}-${d+1}`||d+1},t.toDisplayString(c),9,_k))),128))]),empty:t.withCtx(()=>[t.createElementVNode("div",$k,[t.createElementVNode("span",null,t.toDisplayString(o.message),1)])]),_:1},8,["id","modelValue","items","loading","placeholder","onChange","onQueryChange"])])}const Fl=Q(Zk,[["render",eE],["__scopeId","data-v-d0c3e2aa"]]),tE={class:"array-card-container"},nE=t.defineComponent({__name:"FieldArrayCardContainer",props:{model:{type:Object,default:()=>null},schema:{type:Object,default:()=>null}},emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KCard"),o=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",tE,[t.createVNode(a,{class:"card"},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default",{},void 0,!0)]),_:3}),t.createVNode(o,{appearance:"tertiary",class:"array-card-remove-button",onClick:i[0]||(i[0]=r=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ai))]),_:1})])}}}),Hl=Q(nE,[["__scopeId","data-v-5fa27cb4"]]),iE={mixins:[le],emits:["model-updated"],methods:{updateModel(e){this.$emit("model-updated",e,this.schema.model)},checkOption(e){return this.model[this.schema.model]?e.value.toString()===this.model[this.schema.model].toString():e.checked},onChange(e){let n=e.target.value.split(",");this.schema.array||(n=n.toString()),this.updateModel(n)}}},aE={class:"selection-group"},oE={class:"form-group"},rE=["id","checked","name","value"];function lE(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("div",aE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.values,(l,s)=>(t.openBlock(),t.createElementBlock("div",{key:s,class:"option-group"},[t.createElementVNode("div",oE,[t.createElementVNode("label",{class:t.normalizeClass(["k-label",l.name])},[t.createElementVNode("input",{id:e.schema.name+"-"+s,checked:r.checkOption(l),class:"k-input",name:e.schema.name,type:"radio",value:l.value,onChange:n[0]||(n[0]=(...c)=>r.onChange&&r.onChange(...c))},null,40,rE),t.createTextVNode(" "+t.toDisplayString(l.name),1)],2)])]))),128))])}const zl=Q(iE,[["render",lE],["__scopeId","data-v-7e49acd6"]]),sE={name:"FieldArray",components:{FieldArrayItem:Ul,FieldArrayMultiItem:Yl,FieldSelect:Tl,FieldMetric:Gl,FieldObject:Ll,FieldObjectAdvanced:jl,FieldAutoSuggest:Fl,FieldRadio:zl,FieldArrayCardContainer:Hl,FieldTextArea:Rl,FieldInput:kl},mixins:[le],props:{newElementButtonLabel:{type:String,default:"New Item"},removeElementButtonLabel:{type:String,default:"x"}},methods:{generateSchema(e,n,i){var a,o,r;let l;return n&&(l=JSON.parse(JSON.stringify(n)),(r=(o=(a=l.schema)==null?void 0:a.fields)==null?void 0:o.map)==null||r.call(o,s=>(s.id=`${s.id||s.model}-${i}`,s))),{...l,set(s,c){e[i]=c},get(){return e[i]}}},newElement(){let e=this.value,n;(!e||!e.push)&&(e=[]),this.schema.items&&this.schema.items.default&&(typeof this.schema.items.default=="function"?n=this.schema.items.default():n=this.schema.items.default),e.push(n),this.value=[...e]},removeElement(e){this.value.splice(e,1)},getFieldType(e){return"field-"+e.type},modelUpdated(){}}},cE=["id"],dE={key:1},pE=["onUpdate:modelValue","aria-labelledby","type"],uE=["value","onClick"],mE=["onUpdate:modelValue","aria-labelledby"],gE=["value","onClick"];function fE(e,n,i,a,o,r){const l=t.resolveComponent("FieldTextArea"),s=t.resolveComponent("KButton");return e.schema?(t.openBlock(),t.createElementBlock("div",{key:0,id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(c,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:t.normalizeClass(e.schema.fieldItemsClasses)},[e.schema.items&&e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:0,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onRemoveItem:u=>r.removeElement(d)},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))]),_:2},1064,["model","schema","onRemoveItem"])):e.schema.items?(t.openBlock(),t.createElementBlock("span",dE,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))])):e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:2,"data-testid":`${e.getFieldID(e.schema)}-item-${d}`,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onRemoveItem:u=>r.removeElement(d)},{default:t.withCtx(()=>{var u,m;return[((u=e.schema.inputAttributes)==null?void 0:u.type)==="textarea"?(t.openBlock(),t.createBlock(l,{key:0,"aria-labelledby":e.getLabelId(e.schema),class:"k-input","form-options":e.formOptions,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onModelUpdated:r.modelUpdated},null,8,["aria-labelledby","form-options","model","schema","onModelUpdated"])):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:1,"onUpdate:modelValue":f=>e.value[d]=f,"aria-labelledby":e.getLabelId(e.schema)},e.schema.inputAttributes,{type:((m=e.schema.inputAttributes)==null?void 0:m.type)||"text"}),null,16,pE)),[[t.vModelDynamic,e.value[d]]]),e.schema.showRemoveButton?(t.openBlock(),t.createElementBlock("input",t.mergeProps({key:2},e.schema.removeElementButtonAttributes,{type:"button",value:e.schema.removeElementButtonLabel||i.removeElementButtonLabel,onClick:f=>r.removeElement(d)}),null,16,uE)):t.createCommentVNode("",!0)]}),_:2},1064,["data-testid","model","schema","onRemoveItem"])):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:3},e.schema.inputAttributes,{"onUpdate:modelValue":u=>e.value[d]=u,"aria-labelledby":e.getLabelId(e.schema),type:"text"}),null,16,mE)),[[t.vModelText,e.value[d]]]),e.schema.showRemoveButton?(t.openBlock(),t.createElementBlock("input",t.mergeProps({key:4},e.schema.removeElementButtonAttributes,{type:"button",value:e.schema.removeElementButtonLabel||i.removeElementButtonLabel,onClick:u=>r.removeElement(d)}),null,16,gE)):t.createCommentVNode("",!0)],2))),128)),t.createVNode(s,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`add-${e.getFieldID(e.schema)}`,type:"button",onClick:r.newElement},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel||i.newElementButtonLabel),1)]),_:1},8,["class","data-testid","onClick"])],10,cE)):t.createCommentVNode("",!0)}const AE=Q(sE,[["render",fE],["__scopeId","data-v-c42fe627"]]),hE={mixins:[le],emits:["model-updated"],data(){return{isOpen:!1}},computed:{openClass(){return this.isOpen?"open":"closed"},fieldCount(){return this.schema.fields.length},titleText(){return`${this.isOpen?"Hide":"View"} ${this.fieldCount} Advanced Fields`}},methods:{handleOpen(){this.isOpen=!this.isOpen},updateModel(e,n){this.$emit("model-updated",e,n)}}},yE={class:"advanced-field-dropdown-wrapper","data-testid":"advanced-field-dropdown-wrapper"},bE={class:"material-icons"};function wE(e,n,i,a,o,r){const l=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",yE,[t.createElementVNode("button",{class:"advanced-field-title",type:"button",onClick:n[0]||(n[0]=(...s)=>r.handleOpen&&r.handleOpen(...s))},[t.createElementVNode("i",bE,t.toDisplayString(o.isOpen?"keyboard_arrow_up":"keyboard_arrow_right"),1),t.createElementVNode("span",null,t.toDisplayString(r.titleText),1)]),t.createElementVNode("div",{class:t.normalizeClass(["advanced-field-dropdown",r.openClass])},[t.createVNode(l,{model:e.model,options:{helpAsHtml:!0},schema:e.schema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])],2)])}const CE=Q(hE,[["render",wE],["__scopeId","data-v-2d8e71e1"]]),kE={mixins:[le],emits:["model-updated"],data(){return{checkedGroup:null,fieldModel:{...this.model},fieldSchema:[]}},watch:{checkedGroup:{handler(e,n){if(n===null){this.fieldModel={...this.model};return}const i=this.schema.fields[e].fields,a=this.schema.fields[n].fields;a&&a.forEach(o=>this.updateModel("",o.model)),i&&i.forEach(o=>this.updateModel(this.fieldModel[o.model],o.model))}}},async created(){await this.$nextTick(),this.schema.fields.forEach((e,n)=>{e.fields&&e.fields.forEach(i=>{this.model[i.model]&&(this.checkedGroup=n,this.fieldSchema.push(i.model))})}),this.checkedGroup===null&&(this.checkedGroup=0)},methods:{updateModel(e,n){this.$emit("model-updated",e,n)}}},EE={class:"selection-group"},BE={class:"form-group"},OE=["value"],xE={class:"control-help"},IE={class:"option-field"},SE={class:"option-field-container"};function ME(e,n,i,a,o,r){const l=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",EE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(s,c)=>(t.openBlock(),t.createElementBlock("div",{key:c,class:"option-group"},[t.createElementVNode("div",BE,[t.createElementVNode("label",{class:t.normalizeClass(["k-label",`${s.label}-check`])},[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=d=>o.checkedGroup=d),class:"k-input",type:"radio",value:c},null,8,OE),[[t.vModelRadio,o.checkedGroup]]),t.createTextVNode(" "+t.toDisplayString(s.label)+" ",1),t.createElementVNode("div",xE,t.toDisplayString(s.description),1)],2)]),t.withDirectives(t.createElementVNode("div",IE,[t.createElementVNode("div",SE,[t.createVNode(l,{model:e.model,options:{helpAsHtml:!0},schema:{fields:s.fields},onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])],512),[[t.vShow,s.fields&&o.checkedGroup===c]])]))),128))])}const vE=Q(kE,[["render",ME],["__scopeId","data-v-25fe24da"]]),TE={mixins:[le],emits:["model-updated"],methods:{onUpdate(e){this.$emit("model-updated",e,this.schema.model)}}};function RE(e,n,i,a,o,r){const l=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(l,{"aria-labelledby":e.getLabelId(e.schema),"data-testid":"field-multiselect",items:e.schema.values,"label-attributes":{info:e.schema.help},"model-value":e.value,placeholder:e.schema.placeholder,required:e.schema.required||void 0,width:"100%","onUpdate:modelValue":r.onUpdate},null,8,["aria-labelledby","items","label-attributes","model-value","placeholder","required","onUpdate:modelValue"])}const NE=Q(TE,[["render",RE]]),VE={name:"FieldKeyValuePairs",components:{TrashIcon:ai},mixins:[le],data(){return{pairs:[]}},watch:{pairs:{handler(){this.updateValue()},deep:!0}},created(){var e,n;this.value||(this.value={});const i=((n=this.model)==null?void 0:n[(e=this.schema)==null?void 0:e.model])??{};Object.keys(i).forEach(a=>{this.pairs.push({key:a,value:i[a]})})},methods:{onInput(e,n,i){this.pairs[n][i]=e.target.value},updateValue(){this.value=this.pairs.reduce((e,{key:n,value:i})=>({...e,...n&&i?{[n]:i}:null}),{})},addPair(){this.pairs.push({key:"",value:""})},removePair(e){this.pairs.splice(e,1)}}},LE={class:"key-value-pairs-editor"},DE=["data-testid","placeholder","value","onInput"],jE=["data-testid","placeholder","value","onInput"];function PE(e,n,i,a,o,r){const l=t.resolveComponent("TrashIcon"),s=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",LE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.pairs,(c,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:"pair-item"},[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-key-${d}`,placeholder:e.schema.keyInputPlaceholder??"Key",type:"text",value:c.key,onInput:u=>{r.onInput(u,d,"key")}},null,40,DE),t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-value-${d}`,placeholder:e.schema.valueInputPlaceholder??"Value",type:"text",value:c.value,onInput:u=>{r.onInput(u,d,"value")}},null,40,jE),t.createVNode(s,{appearance:"tertiary","data-testid":`${e.getFieldID(e.schema)}-remove-pair-${d}`,onClick:()=>{r.removePair(d)}},{default:t.withCtx(()=>[t.createVNode(l)]),_:2},1032,["data-testid","onClick"])]))),128)),t.createVNode(s,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`${e.getFieldID(e.schema)}-add-pair`,type:"button",onClick:r.addPair},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel??"+ Add Pair"),1)]),_:1},8,["class","data-testid","onClick"])])}const UE=Q(VE,[["render",PE],["__scopeId","data-v-29d15375"]]),YE=Object.freeze(Object.defineProperty({__proto__:null,FieldAdvanced:CE,FieldArray:AE,FieldArrayCardContainer:Hl,FieldArrayItem:Ul,FieldArrayMultiItem:Yl,FieldAutoSuggest:Fl,FieldCheckbox:d1,FieldChecklist:k1,FieldCleave:Zw,FieldDateTimePicker:tC,FieldGoogleAddress:oC,FieldImage:pC,FieldInput:kl,FieldKeyValuePairs:UE,FieldLabel:I1,FieldMasked:fC,FieldMetric:Gl,FieldMultiselect:NE,FieldNoUiSlider:bC,FieldObject:Ll,FieldObjectAdvanced:jl,FieldPikaday:BC,FieldRadio:zl,FieldRadios:R1,FieldRangeSlider:SC,FieldSelect:Tl,FieldSelectEx:VC,FieldSelectionGroup:vE,FieldSpectrum:PC,FieldStaticMap:FC,FieldSubmit:jw,FieldTextArea:Rl,FieldUpload:Kw,fieldSwitch:JC},Symbol.toStringTag,{value:"Module"})),GE={name:"FormGroup",components:YE,mixins:[Br],props:{vfg:{type:Object,required:!0},model:{type:Object,default:()=>{}},options:{type:Object,default:()=>{}},field:{type:Object,required:!0},errors:{type:Array,default(){return[]}}},emits:["validated","modelUpdated"],data(){return{child:t.ref()}},methods:{fieldTypeHasLabel(e){if(Ce(e.label))return!1;let n="";switch(e.type==="input"?n=e.inputType:n=e.type,n){case"button":case"submit":case"reset":return!1;default:return!0}},getFieldID(e){const n=ee(this.options,"fieldIdPrefix","");return ea(e,n)},getTooltipId(e){return`${this.getFieldID(e)}-tooltip`},getFieldType(e){return"field-"+e.type},getButtonType(e){return ee(e,"type","button")},onFieldValidated(e,n,i){this.$emit("validated",e,n,i)},buttonVisibility(e){return e.buttons&&e.buttons.length>0},buttonClickHandler(e,n,i){return e.onclick.call(this,this.model,n,i,this)},fieldHint(e){return oe(e.hint)?e.hint.call(this,this.model,e,this):e.hint},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e){return this.$refs.child.validate(e)},clearValidationErrors(){if(this.$refs.child)return this.$refs.child.clearValidationErrors()},formattedLabel(e){return e?e.replace(/^[cC]onfig\./,""):""}}},FE=e=>(t.pushScopeId("data-v-b1f6f432"),e=e(),t.popScopeId(),e),HE=["innerHTML"],zE={class:"icon-wrapper"},KE=["innerHTML"],qE={key:0,class:"link-wrapper"},XE=FE(()=>t.createElementVNode("span",{class:"section-header"},"More info",-1)),JE={class:"field-wrap"},ZE={key:0,class:"buttons"},WE=["type","onClick","textContent"],QE=["innerHTML"],_E={key:2,class:"errors help-block"},$E=["innerHTML"];function e0(e,n,i,a,o,r){const l=t.resolveComponent("KExternalLink"),s=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["form-group",e.getFieldRowClasses(i.field)])},[r.fieldTypeHasLabel(i.field)?(t.openBlock(),t.createBlock(s,{key:0,"aria-describedby":i.field.help?r.getTooltipId(i.field):void 0,class:t.normalizeClass(i.field.labelClasses),for:r.getFieldID(i.field),info:!i.options.helpAsHtml&&i.field.help?i.field.help:void 0,"tooltip-attributes":i.field.help?{maxWidth:"300",placement:"top",tooltipId:r.getTooltipId(i.field)}:void 0},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",zE,[t.createElementVNode("span",{innerHTML:r.formattedLabel(i.field.label)},null,8,KE)]),i.field.link?(t.openBlock(),t.createElementBlock("div",qE,[t.createVNode(l,{href:i.field.link},{default:t.withCtx(()=>[XE]),_:1},8,["href"])])):t.createCommentVNode("",!0)]),_:2},[i.options.helpAsHtml?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:i.field.help},null,8,HE)]),key:"0"}:void 0]),1032,["aria-describedby","class","for","info","tooltip-attributes"])):t.createCommentVNode("",!0),t.createElementVNode("div",JE,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(i.field)),t.mergeProps(e.$attrs,{ref:"child",disabled:e.fieldDisabled(i.field)||null,"form-options":i.options,hint:i.field.hint&&r.getFieldType(i.field)==="field-input"?r.fieldHint(i.field):void 0,model:i.model,schema:i.field,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated}),null,16,["disabled","form-options","hint","model","schema","vfg","onModelUpdated","onValidated"])),r.buttonVisibility(i.field)?(t.openBlock(),t.createElementBlock("div",ZE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.field.buttons,(c,d)=>(t.openBlock(),t.createElementBlock("button",{key:d,class:t.normalizeClass(c.classes),type:r.getButtonType(c),onClick:u=>r.buttonClickHandler(c,i.field,u),textContent:t.toDisplayString(c.label)},null,10,WE))),128))])):t.createCommentVNode("",!0)]),i.field.hint&&r.getFieldType(i.field)!=="field-input"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"hint",innerHTML:r.fieldHint(i.field)},null,8,QE)):t.createCommentVNode("",!0),r.fieldErrors(i.field).length>0?(t.openBlock(),t.createElementBlock("div",_E,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.fieldErrors(i.field),(c,d)=>(t.openBlock(),t.createElementBlock("span",{key:d,innerHTML:c},null,8,$E))),128))])):t.createCommentVNode("",!0)],2)}const t0=Q(GE,[["render",e0],["__scopeId","data-v-b1f6f432"]]),n0={name:"FormGenerator",components:{formGroup:t0},mixins:[Br],props:{schema:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},options:{type:Object,default(){return{validateAfterLoad:!1,validateAfterChanged:!1,child:t.ref([]),fieldIdPrefix:"",validateAsync:!1,validationErrorClass:"error",validationSuccessClass:"",helpAsHtml:!1}}},multiple:{type:Boolean,default:!1},isNewModel:{type:Boolean,default:!1},tag:{type:String,default:"fieldset",validator:function(e){return e.length>0}}},emits:["validated","modelUpdated"],data(){return{vfg:this,errors:[],children:t.ref([]),collapseStates:{}}},computed:{fields(){const e=[];return this.schema&&this.schema.fields&&Le(this.schema.fields,n=>{(!this.multiple||n.multi===!0)&&e.push(n)}),e},groups(){const e=[];return this.schema&&this.schema.groups&&Le(this.schema.groups.slice(0),n=>{e.push(n)}),e}},watch:{model:{deep:!0,handler(e,n){n!==e&&e!=null&&this.$nextTick(()=>{this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors()})}}},mounted(){this.$nextTick(()=>{this.model&&(this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors())})},methods:{fieldVisible(e){return oe(e.visible)?e.visible.call(this,this.model,e,this):Ce(e.visible)?!0:e.visible},onFieldValidated(e,n,i){this.errors=this.errors.filter(o=>o.field.fieldName!==i.schema.fieldName),!e&&n&&n.length>0&&Le(n,o=>{this.errors.push({field:i.schema,error:o})});const a=this.errors.length===0;this.$emit("validated",a,this.errors,this)},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e=null){e===null&&(e=ee(this.options,"validateAsync",!1)),this.clearValidationErrors();const n=[],i=[];Le(this.$refs.children,o=>{oe(o.validate)&&(n.push(o.$refs.child),i.push(o.$refs.child.validate(!0)))});const a=o=>{const r=[];Le(o,(s,c)=>{Array.isArray(s)&&s.length>0&&Le(s,d=>{r.push({field:n[c].schema,error:d})})}),this.errors=r;const l=r.length===0;return this.$emit("validated",l,r,this),e?r:l};return e?Promise.all(i).then(a):a(i)},clearValidationErrors(){this.errors.splice(0),Le(this.$refs.children,e=>{e.clearValidationErrors()})}}},i0={key:0,class:"vue-form-generator"},a0={key:0};function o0(e,n,i,a,o,r){const l=t.resolveComponent("form-group"),s=t.resolveComponent("KCollapse");return i.schema!=null?(t.openBlock(),t.createElementBlock("div",i0,[i.schema.fields?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.fields,c=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:c.model},[r.fieldVisible(c)?(t.openBlock(),t.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:c,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:1})):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.groups,(c,d)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`group-${d}`},[c.collapsible!==void 0&&c.collapsible!==!1?(t.openBlock(),t.createBlock(s,{key:0,class:"root-level-collapse","model-value":!1,title:c.collapsible.title},t.createSlots({default:t.withCtx(()=>{var u,m,f,h;return[(u=c.slots)!=null&&u.beforeContent?t.renderSlot(e.$slots,(m=c.slots)==null?void 0:m.beforeContent,{key:0}):t.createCommentVNode("",!0),c.fields.length===0&&(f=c.slots)!=null&&f.emptyState?t.renderSlot(e.$slots,(h=c.slots)==null?void 0:h.emptyState,{key:1}):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:2,class:t.normalizeClass(e.getFieldRowClasses(c))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.fields,C=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:C.model},[r.fieldVisible(C)?(t.openBlock(),t.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:C,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"])),c.collapsible!==!0&&c.collapsible.nestedCollapsible&&c.collapsible.nestedCollapsible.fields.length>0?(t.openBlock(),t.createBlock(s,{key:3,class:"nested-collapse","model-value":o.collapseStates[`group-${d}-nested`]??!0,"trigger-alignment":"leading","trigger-label":o.collapseStates[`group-${d}-nested`]??!0?c.collapsible.nestedCollapsible.triggerLabel.expand:c.collapsible.nestedCollapsible.triggerLabel.collapse,"onUpdate:modelValue":C=>o.collapseStates[`group-${d}-nested`]=C},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{class:t.normalizeClass(e.getFieldRowClasses(c))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.collapsible.nestedCollapsible.fields,C=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:C.model},[r.fieldVisible(C)?(t.openBlock(),t.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:C,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))]),_:2},1032,["model-value","trigger-label","onUpdate:modelValue"])):t.createCommentVNode("",!0)]}),_:2},[c.collapsible.description?{name:"visible-content",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(c.collapsible.description),1)]),key:"0"}:void 0]),1032,["title"])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:1,class:t.normalizeClass(e.getFieldRowClasses(c))},{default:t.withCtx(()=>[c.legend?(t.openBlock(),t.createElementBlock("legend",a0,t.toDisplayString(c.legend),1)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.fields,u=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:u.model},[r.fieldVisible(u)?(t.openBlock(),t.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:u,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))],64))),128))])):t.createCommentVNode("",!0)}const Ye=Q(n0,[["render",o0]]),r0={fields:[{inputType:"text",label:"Config.Client Id",model:"config-client_id",type:"input"},{inputType:"text",label:"Config.Client Secret",model:"config-client_secret",type:"input"},{inputType:"text",label:"Config.Issuer",model:"config-issuer",required:!0,type:"input"},{inputType:"text",label:"Config.Auth Methods",model:"config-auth_methods",type:"input"}]},l0={fields:[{inputType:"text",label:"Config.Scopes Claim",model:"config-scopes_claim",type:"input"},{inputType:"text",label:"Config.Scopes Required",model:"config-scopes_required",type:"input"},{inputType:"text",label:"Config.Audience Claim",model:"config-audience_claim",type:"input"},{inputType:"text",label:"Config.Audience Required",model:"config-audience_required",type:"input"},{inputType:"text",label:"Config.Roles Claim",model:"config-roles_claim",type:"input"},{inputType:"text",label:"Config.Roles Required",model:"config-roles_required",type:"input"},{inputType:"text",label:"Config.Groups Claim",model:"config-groups_claim",type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"auth-array-item-container",fieldItemsClasses:"auth-array-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",newElementButtonLabelClasses:"auth-array-item-new",newElementButtonLabel:"+ Add"},{inputType:"text",label:"Config.Groups Required",model:"config-groups_required",type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"auth-array-item-container",fieldItemsClasses:"auth-array-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",newElementButtonLabelClasses:"auth-array-item-new",newElementButtonLabel:"+ Add"},{inputType:"text",label:"Config.Authenticated Groups Claim",model:"config-authenticated_groups_claim",type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"auth-array-item-container",fieldItemsClasses:"auth-array-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",newElementButtonLabelClasses:"auth-array-item-new",newElementButtonLabel:"+ Add"}]},s0={fields:[{type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper",newElementButtonLabel:"+ Add Client JWK",items:{type:"object",schema:{fields:[{model:"kid",label:"kid",type:"input",inputType:"string"},{model:"issuer",label:"issuer",type:"input",inputType:"string"},{model:"kty",label:"kty",type:"input",inputType:"string"},{model:"use",label:"use",type:"input",inputType:"string"},{model:"key_ops",label:"key_ops",type:"array",fieldItemsClasses:"jwk-array-input-wrapper",showRemoveButton:!0,removeElementButtonLabel:"Remove",items:{type:"input",inputType:"string"}},{model:"alg",label:"alg",type:"input",inputType:"string"},{model:"x5u",label:"x5u",type:"input",inputType:"string"},{model:"x5c",label:"x5c",type:"array",fieldItemsClasses:"jwk-array-input-wrapper",showRemoveButton:!0,removeElementButtonLabel:"Remove",items:{type:"input",inputType:"string"}},{model:"x5t",label:"x5t",type:"input",inputType:"string"},{model:"x5t#S256",label:"x5t#S256",type:"input",inputType:"string"},{model:"k",label:"k",type:"input",inputType:"string"},{model:"x",label:"x",type:"input",inputType:"string"},{model:"y",label:"y",type:"input",inputType:"string"},{model:"crv",label:"crv",type:"input",inputType:"string"},{model:"n",label:"n",type:"input",inputType:"string"},{model:"e",label:"e",type:"input",inputType:"string"},{model:"d",label:"d",type:"input",inputType:"string"},{model:"p",label:"p",type:"input",inputType:"string"},{model:"q",label:"q",type:"input",inputType:"string"},{model:"dp",label:"dp",type:"input",inputType:"string"},{model:"dq",label:"dq",type:"input",inputType:"string"},{model:"qi",label:"qi",type:"input",inputType:"string"},{model:"oth",label:"oth",type:"input",inputType:"string"},{model:"r",label:"r",type:"input",inputType:"string"},{model:"t",label:"t",type:"input",inputType:"string"}]}},model:"config-client_jwk",label:"Config.Client Jwk",order:0,disabled:!1,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#jwk-record"},{type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper",newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}},model:"config-session_redis_cluster_nodes",label:"Config.Session Redis Cluster Nodes",order:0,disabled:!1,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#host-record"}]},c0={name:"OIDCForm",components:{VueFormGenerator:Ye},props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},data(){return{init:!1,authMethods:[],sessionManagement:!1,globalFields:null,commonFieldsSchema:null,authFieldsSchema:null,advancedFieldsSchema:{fields:[]},advancedFields:null,tabs:[{hash:"#common",title:"Common"},{hash:"#authorization",title:"Authorization"},{hash:"#advanced",title:"Advanced"}]}},computed:{displayForm(){return this.formModel.id&&this.isEditing||!this.isEditing}},watch:{formModel:{handler:function(){this.oidcSetup()}}},mounted(){this.oidcSetup()},methods:{oidcSetup(){var e;this.init||(this.init=!0,this.globalFields={fields:this.formSchema.fields.filter(i=>!i.model.startsWith("config")&&i.model!=="tags")},this.commonFieldsSchema={...r0},this.authFieldsSchema={...l0},this.advancedFieldsSchema.fields=this.formSchema.fields.filter(i=>i.model.startsWith("config")&&!this.commonFieldsSchema.fields.filter(a=>a.model===i.model).length&&!this.authFieldsSchema.fields.filter(a=>a.model===i.model).length||i.model==="tags"),this.advancedFieldsSchema.fields=this.advancedFieldsSchema.fields.map(i=>s0.fields.find(o=>o.model===i.model)||i),this.commonFieldsSchema.fields=this.commonFieldsSchema.fields.filter(i=>i.model!=="config-auth_methods"),this.sessionManagement=this.isEditing?this.formModel["config-auth_methods"].includes("session"):!1,this.authMethods=[{label:"Authorization Code Flow",value:"authorization_code",hint:"authorization code flow",prop:this.isEditing?this.formModel["config-auth_methods"].includes("authorization_code"):!1},{label:"Bearer Access Token",value:"bearer",hint:"JWT access token verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("bearer"):!1},{label:"Client Credentials Grant",value:"client_credentials",hint:"OAuth client credentials grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("client_credentials"):!1},{label:"Passwords Grant",value:"password",hint:"OAuth legacy password grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("password"):!1},{label:"Introspection",value:"introspection",hint:"OAuth introspection",prop:this.isEditing?this.formModel["config-auth_methods"].includes("introspection"):!1},{label:"UserInfo",value:"userinfo",hint:"OpenID Connect user info endpoint authentication",prop:this.isEditing?this.formModel["config-auth_methods"].includes("userinfo"):!1},{label:"Kong OAuth",value:"kong_oauth2",hint:"Kong OAuth plugin issued tokens verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("kong_oauth2"):!1},{label:"Refresh Token",value:"refresh_token",hint:"OAuth refresh token grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("refresh_token"):!1}]);const n={};for(const i of this.formSchema.fields)n[i.model]=i;for(const i of[this.commonFieldsSchema,this.authFieldsSchema,this.advancedFieldsSchema])for(const a of i.fields){const o=(e=n[a.model])==null?void 0:e.help;a.help===void 0&&typeof o=="string"&&(a.help=o)}},getAuthMethodsValue(e,n){const i=[];for(let a=0;a<this.authMethods.length;a++)this.authMethods[a].prop&&this.authMethods[a].value!==e&&i.push(this.authMethods[a].value);return this.sessionManagement&&e&&i.push("session"),n&&(e?i.push(e):i.push("session")),i},handleUpdate(e,n){this.formModel["config-auth_methods"]=this.getAuthMethodsValue(n,e),this.onModelUpdated()}}},_t=e=>(t.pushScopeId("data-v-e7395ff0"),e=e(),t.popScopeId(),e),d0={class:"general-settings"},p0={class:"link-wrapper"},u0=_t(()=>t.createElementVNode("span",{class:"section-header"},"Common Configuration Settings",-1)),m0=_t(()=>t.createElementVNode("div",{class:"description"}," Parameters for enabling the OpenID Connect plugin. Set these parameters before adding authorization, authentication, or other advanced configuration details. ",-1)),g0={class:"auth-method-container"},f0={class:"general-settings"},A0={class:"link-wrapper"},h0=_t(()=>t.createElementVNode("span",{class:"section-header"},"Authorization Configuration Settings",-1)),y0=_t(()=>t.createElementVNode("div",{class:"description"}," Parameters for setting up claims-based authorization. ",-1)),b0={class:"general-settings"},w0={class:"link-wrapper"},C0=_t(()=>t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings",-1)),k0=_t(()=>t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the OpenID Connect plugin. ",-1));function E0(e,n,i,a,o,r){const l=t.resolveComponent("VueFormGenerator"),s=t.resolveComponent("KExternalLink"),c=t.resolveComponent("KLabel"),d=t.resolveComponent("KCheckbox"),u=t.resolveComponent("KInputSwitch"),m=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[i.formModel.id&&i.isEditing||!i.isEditing?(t.openBlock(),t.createBlock(l,{key:0,class:"global-fields",model:i.formModel,options:i.formOptions,schema:o.globalFields,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(m,{tabs:o.tabs},{common:t.withCtx(()=>[t.createElementVNode("div",d0,[t.createElementVNode("div",p0,[t.createVNode(s,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#important-configuration-parameters"},{default:t.withCtx(()=>[u0]),_:1})]),m0,r.displayForm?(t.openBlock(),t.createBlock(l,{key:0,model:i.formModel,options:i.formOptions,schema:o.commonFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(c,null,{default:t.withCtx(()=>[t.createTextVNode("Auth Methods")]),_:1}),t.createElementVNode("div",g0,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.authMethods,f=>(t.openBlock(),t.createElementBlock("div",{key:f.value,class:"auth-method"},[t.createVNode(d,{modelValue:f.prop,"onUpdate:modelValue":h=>f.prop=h,onChange:h=>r.handleUpdate(h,f.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(f.label),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]))),128))]),t.createVNode(u,{modelValue:o.sessionManagement,"onUpdate:modelValue":n[0]||(n[0]=f=>o.sessionManagement=f),label:"Enable Session Management",onChange:r.handleUpdate},null,8,["modelValue","onChange"])])]),authorization:t.withCtx(()=>[t.createElementVNode("div",f0,[t.createElementVNode("div",A0,[t.createVNode(s,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#authorization"},{default:t.withCtx(()=>[h0]),_:1})]),y0,r.displayForm?(t.openBlock(),t.createBlock(l,{key:0,model:i.formModel,options:i.formOptions,schema:o.authFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),advanced:t.withCtx(()=>[t.createElementVNode("div",b0,[t.createElementVNode("div",w0,[t.createVNode(s,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/"},{default:t.withCtx(()=>[C0]),_:1})]),k0,r.displayForm?(t.openBlock(),t.createBlock(l,{key:0,model:i.formModel,options:i.formOptions,schema:o.advancedFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:1},8,["tabs"])])}const B0=Q(c0,[["render",E0],["__scopeId","data-v-e7395ff0"]]),O0={packageName:"forms"},Kl={general:O0,"post-function":{tags:{hint:"e.g. tag1, tag2, tag3",newElementButtonLabel:"+ Add"},enabled:{newElementButtonLabel:"+ Add"},selectionGroup:{newElementButtonLabel:"+ Add"},instance_name:{newElementButtonLabel:"+ Add"},name:{newElementButtonLabel:"+ Add"},"config-certificate":{help:"Array of stringified Lua code to be cached and run in sequence during the certificate phase.",newElementButtonLabel:"+ Add"},"config-access":{help:"Array of stringified Lua code to be cached and run in sequence during the access phase.",newElementButtonLabel:"+ Add"},"config-body_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the body_filter phase.",newElementButtonLabel:"+ Add"},"config-header_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the header_filter phase.",newElementButtonLabel:"+ Add"},"config-functions":{newElementButtonLabel:"+ Add"},"config-log":{newElementButtonLabel:"+ Add"},"config-rewrite":{newElementButtonLabel:"+ Add"},"config-ws_client_frame":{newElementButtonLabel:"+ Add"},"config-ws_close":{newElementButtonLabel:"+ Add"},"config-ws_handshake":{newElementButtonLabel:"+ Add"},"config-ws_upstream_frame":{newElementButtonLabel:"+ Add"}},"exit-transformer":{"config-functions":{newElementButtonLabel:"+ Add"}}},x0=t.defineComponent({__name:"PostFunction",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){const{t:n,te:i}=jt.createI18n("en-us",Kl),a=e,o=t.computed(()=>a.formModel.id&&a.isEditing||!a.isEditing),r=t.computed(()=>{const l=a.formSchema;return l.fields.map(s=>{const c=`post-function.${s.model}`;return s.hint=i(`${c}.hint`)&&n(`${c}.hint`)||s.hint,s.help=i(`${c}.help`)&&n(`${c}.help`)||s.help,s.newElementButtonLabel=i(`${c}.newElementButtonLabel`)&&n(`${c}.newElementButtonLabel`)||s.newElementButtonLabel,s.model!=="tags"&&(s.valueType==="array"||s.type==="array")&&(s.type="array",s.valueArrayType="array",s.itemContainerComponent="FieldArrayItem",s.fieldClasses="post-function-array-item-container",s.fieldItemsClasses="post-function-array-item",s.inputAttributes={...s.inputAttributes,type:"textarea"}),s}),l});return(l,s)=>o.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:r.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),I0=Q(x0,[["__scopeId","data-v-6706c68b"]]),S0=t.defineComponent({__name:"ExitTransformer",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){const{t:n,te:i}=jt.createI18n("en-us",Kl),a=e,o=t.computed(()=>a.formModel.id&&a.isEditing||!a.isEditing),r=t.computed(()=>{const l=a.formSchema;return l.fields.map(s=>{const c=`exit-transformer.${s.model}`;return s.hint=i(`${c}.hint`)&&n(`${c}.hint`)||s.hint,s.help=i(`${c}.help`)&&n(`${c}.help`)||s.help,s.newElementButtonLabel=i(`${c}.newElementButtonLabel`)&&n(`${c}.newElementButtonLabel`)||s.newElementButtonLabel,s.model!=="tags"&&(s.valueType==="array"||s.type==="array")&&(s.type="array",s.valueArrayType="array",s.itemContainerComponent="FieldArrayItem",s.fieldClasses="exit-transformer-array-item-container",s.fieldItemsClasses="exit-transformer-array-item",s.inputAttributes={...s.inputAttributes,type:"textarea"}),s}),l});return(l,s)=>o.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:r.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),M0=Q(S0,[["__scopeId","data-v-0fc8ef29"]]),v0={fields:[{inputType:"text",label:"Config.Account Email",model:"config-account_email",required:!0,type:"input"},{inputType:"text",label:"Config.Account Key.Key Id",model:"config-account_key-key_id",required:!0,type:"input"},{type:"input",inputType:"text",valueType:"string",label:"Config.Account Key.Key Set",model:"config-account_key-key_set",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",label:"Config.Allow Any Domain",model:"config-allow_any_domain",order:0,disabled:!1}]},T0={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",model:"config-tos_accepted",label:"Config.Tos Accepted",order:0,disabled:!1}]},R0={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_hmac_key",label:"Config.Eab Hmac Key",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_kid",label:"Config.Eab Kid",order:0,disabled:!1}]},Vt=e=>(t.pushScopeId("data-v-b9df1c3f"),e=e(),t.popScopeId(),e),N0={class:"general-settings"},V0=Vt(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"General Configuration Settings")],-1)),L0=Vt(()=>t.createElementVNode("div",{class:"description"}," Parameters for enabling the ACME plugin. ",-1)),D0=Vt(()=>t.createElementVNode("hr",null,null,-1)),j0={class:"sub-form"},P0={class:"general-settings"},U0=Vt(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Storage Configuration Settings")],-1)),Y0=Vt(()=>t.createElementVNode("div",{class:"description"}," Parameters for setting up storage. ",-1)),G0={class:"sub-form"},F0={class:"general-settings"},H0=Vt(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings")],-1)),z0=Vt(()=>t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the ACME plugin. ",-1)),K0=t.defineComponent({__name:"ACMEForm",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){const n=e,i=t.ref("zeroSsl"),a=t.ref("shm"),o=t.computed(()=>{var A;const g={};if((A=n.formSchema)!=null&&A.fields)for(const E of n.formSchema.fields)g[E.model]=E;return g}),r=t.computed(()=>{var A;const g=$i(v0);for(const E of g.fields){const k=(A=o.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof k=="string"&&(E.help=k)}return g}),l=t.computed(()=>{var A;const g=$i(T0);for(const E of g.fields){const k=(A=o.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof k=="string"&&(E.help=k)}return g}),s=t.computed(()=>{var A;const g=$i(R0);for(const E of g.fields){const k=(A=o.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof k=="string"&&(E.help=k)}return g}),c=t.computed(()=>({fields:n.formSchema.fields.filter(A=>!A.model.startsWith("config")&&A.model!=="tags")})),d=t.computed(()=>({fields:r.value.fields.filter(A=>!l.value.fields.some(g=>g.model===A.model)&&!s.value.fields.some(g=>g.model===A.model))})),u=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage")&&!A.model.startsWith("config-storage_config-consul")&&!A.model.startsWith("config-storage_config-redis")&&!A.model.startsWith("config-storage_config-shm")&&!A.model.startsWith("config-storage_config-vault"))})),m=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-consul"))})),f=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-redis"))})),h=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-shm"))})),C=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-vault"))})),b=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config")&&!d.value.fields.filter(g=>g.model===A.model).length&&!u.value.fields.filter(g=>g.model===A.model).length||A.model==="tags")})),y=t.computed(()=>n.formModel.id&&n.isEditing||!n.isEditing),B=[{hash:"#general",title:"General"},{hash:"#storage",title:"Storage"},{hash:"#advanced",title:"Advanced"}],x=[{label:"Lets Encrypt",value:"letsEncrypt"},{label:"Zero SSL",value:"zeroSsl",selected:!0},{label:"Other",value:"other"}];t.onMounted(()=>{i.value==="zeroSsl"&&(n.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90")});const S=A=>{i.value=A.value,(A.value==="zeroSsl"||A.value==="other")&&(A.value==="zeroSsl"?n.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90":n.formModel["config-api_uri"]="https://acme.example.com/",n.formModel["config-tos_accepted"]=!1),A.value==="letsEncrypt"&&(n.formModel["config-api_uri"]="https://acme-v02.api.letsencrypt.org/directory",n.formModel["config-eab_hmac_key"]="",n.formModel["config-eab_kid"]=""),n.onModelUpdated()},w=(A,g)=>{g==="config-storage"&&(a.value=A),n.onModelUpdated()};return(A,g)=>{const E=t.resolveComponent("KSelect"),k=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[e.formModel.id&&e.isEditing||!e.isEditing?(t.openBlock(),t.createBlock(Ye,{key:0,class:"global-fields",model:e.formModel,options:e.formOptions,schema:c.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(k,{tabs:B},{general:t.withCtx(()=>[t.createElementVNode("div",N0,[V0,L0,y.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:d.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),D0,t.createVNode(E,{class:"issuer-select",items:x,label:"Issuer",onChange:S}),t.createElementVNode("div",j0,[i.value==="letsEncrypt"?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:l.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),i.value==="zeroSsl"||i.value==="other"?(t.openBlock(),t.createBlock(Ye,{key:1,model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),storage:t.withCtx(()=>[t.createElementVNode("div",P0,[U0,Y0,y.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:u.value,onModelUpdated:w},null,8,["model","options","schema"])):t.createCommentVNode("",!0),t.createElementVNode("div",G0,[a.value==="consul"?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:m.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),a.value==="redis"?(t.openBlock(),t.createBlock(Ye,{key:1,model:e.formModel,options:e.formOptions,schema:f.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),a.value==="shm"?(t.openBlock(),t.createBlock(Ye,{key:2,model:e.formModel,options:e.formOptions,schema:h.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),a.value==="vault"?(t.openBlock(),t.createBlock(Ye,{key:3,model:e.formModel,options:e.formOptions,schema:C.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),advanced:t.withCtx(()=>[t.createElementVNode("div",F0,[H0,z0,y.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:b.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:1})])}}}),q0=Q(K0,[["__scopeId","data-v-b9df1c3f"]]),X0=Object.freeze(Object.defineProperty({__proto__:null,ACMEForm:q0,ExitTransformer:M0,OIDCForm:B0,PostFunction:I0},Symbol.toStringTag,{value:"Module"})),ca=["array","metric","advanced","selectionGroup","object-advanced"],ql=(e,n=!1)=>({...n&&{acme:"ACMEForm"},"openid-connect":"OIDCForm","post-function":"PostFunction","pre-function":"PostFunction","exit-transformer":"ExitTransformer"})[e],Lt={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},J0={"config-prompts-prepend":{...Lt,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...Lt,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",help:"LLM message content",inputType:"text"}]}}}},Z0={"config-templates":{...Lt,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",inputType:"text"}]}}}},W0={"config-llm_providers":{...Lt,newElementButtonLabel:"+ Add Provider",items:{type:"object",schema:{fields:[{label:"Window Size",model:"window_size",help:"Window size to apply a limit to (defined in seconds)",type:"input",inputType:"number"},{label:"Name",model:"name",help:"The llm providers.",type:"select",values:["anthropic","azure","cohere","llama2","mistral","openai","requestPrompt"]},{label:"Limit",model:"limit",help:"Limit applied to the llm provider.",type:"input",inputType:"number"}]}}}},Q0={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:pn.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",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"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},kn={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},En={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},_0={"config-metrics":{...En,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"tags",label:"Tags",type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},inputType:"text"}]}}}},$0={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Xl={"config-bootstrap_servers":{...Lt,newElementButtonLabel:"+ Add Bootstrap Server",label:"Bootstrap Server(s)",placeholder:"Enter a Bootstrap Server",help:"Set of bootstrap brokers.",items:{type:"object",schema:{fields:[{label:"Host",model:"host",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},eB={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10}},tB={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Jl=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:pn.fields.arrayItems({newElementButtonLabel:"Add"})}),tB),oi={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},nB={"config-remove-headers":{},"config-remove.querystring":{},"config-remove-body":{},"config-replace-headers":{},"config-replace-querystring":{},"config-replace-body":{},"config-rename-headers":{},"config-rename-querystring":{},"config-rename-body":{},"config-add-headers":{},"config-add-querystring":{},"config-add-body":{},"config-append-headers":{},"config-append-querystring":{},"config-append-body":{},"config-allow-body":{}},iB=["config-remove-headers","config-remove.querystring","config-remove-body","config-replace-headers","config-replace-querystring","config-replace-body","config-rename-headers","config-rename-querystring","config-rename-body","config-add-headers","config-add-querystring","config-add-body","config-append-headers","config-append-querystring","config-append-body","config-allow-body"].reduce((e,n)=>({...e,[n]:pn.fields.arrayItems({newElementButtonLabel:"Add"})}),nB),aB={"config-parameter_schema":{...En,items:{type:"object",default:()=>({required:!1,explode:!1}),schema:{fields:[{model:"in",label:"in",type:"select",values:["query","header","path"]},{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"required",label:"required",type:"switch",id:"schema_required"},{model:"style",label:"style",type:"select",values:["label","form","matrix","simple","spaceDelimited","pipeDelimited","deepObject"]},{model:"explode",label:"explode",type:"switch",id:"schema_explode"},{model:"schema",label:"schema",type:"input",inputType:"string",id:"schema_schema"}]}}}},oB={"config-rules":{...Lt,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},rB={"config-session_redis_cluster_nodes":{...Lt,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},lB={"config-metrics":{...En,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},sB={"config-allow_status_codes":{type:"input",inputType:"text",valueArrayType:"string",valueType:"array",label:"config.allow_status_codes",help:"A list of status code ranges, separated by commas. e.g. 200-204, 500-505"},"config-metrics":{...En,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage","cache_datastore_hits_total","cache_datastore_misses_total"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},cB={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}},dB={"config-static_tags":{...En,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"value",label:"value",type:"input",inputType:"string",id:"schema_value"}]}}}},pB=(e,n)=>{const i=e.model.startsWith("config-"),a=n.model.startsWith("config-");return i&&!a?1:!i&&a?-1:0},Zl=(e,n)=>(e.order??0)-(n.order??0),Wl=(e,n)=>pB(e,n)||Zl(e,n)||e.model.localeCompare(n.model),be={useI18n:Hn,usePluginMetaData:ff,usePluginHelpers:nr,useSchemas:(e,n)=>{const{capitalize:i}=Mi(),{convertToDotNotation:a}=nr(),{i18n:{t:o}}=Hn(),r={"application-registration":{overwriteDefault:!0,formSchema:{...Q0}},datadog:{..._0},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},jwt:{...cf},"kafka-upstream":{...Xl},"kafka-log":{...Xl},statsd:{...lB},"statsd-advanced":{...sB},"route-by-header":{...oB},"ai-prompt-decorator":{...J0},"ai-prompt-template":{...Z0},"ai-rate-limiting-advanced":{...W0},"vault-auth":{...cB},"oas-validation":{"config-api_spec":{type:"textArea",rows:15}},mocking:{...eB},"rate-limiting":{...oi},"rate-limiting-advanced":(n==null?void 0:n.app)==="kongManager"?{"config-consumer_groups":oi["config-consumer_groups"]}:{...oi},"graphql-rate-limiting-advanced":{...$0},"response-ratelimiting":{...oi},"pre-function":{...Jl},"post-function":{...Jl},"request-transformer-advanced":{...iB},"request-validator":{...aB},zipkin:{...dB},saml:{...rB}},l=()=>["created_at","updated_at","id"],s=(g,E,k)=>{let v={};(E||g)&&(v=E||(g.fields?g.fields:g));const G=l().concat(g.blacklist?g.blacklist:[]),j=Object.keys(v).filter(z=>!G.includes(z)),F=j.indexOf("comparator");F>-1&&j.splice(F,1);let R={fields:[]};const V={};j.forEach(z=>{d(v[z],z,v,V,R,k)});const K=V.name,H=Je[K];if(!ql(K)&&(n!=null&&n.groupFields)&&!(H!=null&&H.useLegacyForm)){const z=[],W=[],L=[],D={};if(H!=null&&H.fieldRules){const te=[...H.fieldRules.atLeastOneOf??[],...H.fieldRules.onlyOneOf??[],...H.fieldRules.mutuallyRequired??[]];if(H.fieldRules.onlyOneOfMutuallyRequired)for(const se of H.fieldRules.onlyOneOfMutuallyRequired)te.push(...se);for(const se of te)for(const Se of se)D[Se.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const te of R.fields){if(te.pinned){z.push(te);continue}if(te.required||D[te.model]!==void 0){D[te.model]===!1&&(D[te.model]=!0),W.push(te);continue}L.push(te)}const J=Object.entries(D).filter(([,te])=>!te).map(([te])=>te.replace(/-/g,".").replace(/_/g,"-"));J.length>0&&console.warn(`Unknown checked fields for plugin ${K}: ${J.join(", ")}`);const U=[];z.length>0&&U.push({fields:z.sort(Zl)}),(W.length>0||L.length>0)&&U.push({fields:W.sort(Wl),collapsible:{title:o("plugins.form.grouping.plugin_configuration.title"),description:o("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:L.sort(Wl),triggerLabel:{expand:o("plugins.form.grouping.advanced_parameters.view"),collapse:o("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),R={groups:U}}else R.fields.sort((z,W)=>(z.order=z.order||0,W.order=W.order||0,z.order-W.order));return{schema:R,model:V,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=g=>Array.isArray(g.default)||g.default!=null&&typeof g.default!="object"&&g.default!=="function",d=(g,E,k,v,G,j)=>{const F=c(g);return v[E]=F?g.default:null,g.id=E,g.model=E,g.fields&&g.type==="record"?m(g,E,k,v,G,j):(k[E]=g,A(g,v),j&&j[E]&&u(k[E],j[E]),G.fields.push(g)),k},u=(g,E)=>(E&&(Object.assign(g,E),E.label&&(g.label=E.label)),g),m=(g,E,k,v,G,j)=>{g.fields.forEach(F=>{Object.keys(F).forEach(R=>{const V=F[R];k=d(V,E+"-"+R,k,v,G,j)})})},f=(g,E)=>{g.type="input",g.inputType="hidden",g.styleClasses="kong-form-hidden-field-wrapper";const k=e;E[g.model]=k?{id:k}:null},h=g=>{g.type="input",g.inputType="number",g.between&&g.between.length===2&&(g.min=g.between[0],g.max=g.between[1])},C=g=>{Object.prototype.hasOwnProperty.call(g,"one_of")?(g.type="select",g.values=g.one_of,g.selectOptions={hideNoneSelectedText:!0}):(g.type="input",g.inputType="text")},b=g=>{g.type="input",g.inputType="text",g.valueType="array",g.valueArrayType="string"},y=g=>{g.type="checkbox",g.default=!0,g.required=!1},B=g=>{if(g.type="object-advanced",g.values.type==="array"){const{type:E}=g.values.elements||{};g.schema={fields:[{schema:{fields:[{...kn,model:g.model,valueArrayType:E==="integer"?"number":E||"string",inputAttributes:{...kn.inputAttributes,type:E==="integer"?"number":"text",inputMode:E==="integer"?"numeric":"text"}}]}}]}}else g.values.fields&&(g.schema={fields:[{type:"object",model:"object",schema:{fields:g.values.fields.map(E=>{const k=Object.keys(E)[0];return{model:k,type:"input",label:i(k),placeholder:k,inputType:E[k].type}})}}]})},x=g=>g.fields.reduce((E,k)=>(k.fields&&k.fields.forEach(v=>{E[v.model]=v}),k.model&&(E[k.model]=k),E),{}),S=(g,E)=>{if(!ca.includes(g.model))return;const k=x(g);ca.forEach(v=>{Object.keys(k).forEach(G=>{const j=c(k[G]);E[G]=j?k[G].default:null}),delete E[v]})},w=(g,E)=>g.inputType==="hidden"?"":a(i(g.label||E.replace(/_/g," "))),A=(g,E)=>{switch(S(g,E),g.type){case"foreign":f(g,E);break;case"number":h(g),g.attributes={step:"any"};break;case"integer":h(g);break;case"string":C(g);break;case"set":b(g);break;case"boolean":y(g);break;case"map":B(g);break}g.inputType==="foreign"&&f(g,E),g.label=w(g,g.model)};return{buildFormSchema:d,parseSchema:s,customSchemas:r,typedefs:pn}}},Ge="/v2/control-planes/{controlPlaneId}/core-entities",Te="/{workspace}",Oe={list:{konnect:{all:`${Ge}/plugins`,forEntity:`${Ge}/{entityType}/{entityId}/plugins`},kongManager:{all:`${Te}/plugins`,forEntity:`${Te}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${Ge}/v1/available-plugins`},kongManager:{availablePlugins:`${Te}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${Ge}/plugins`,forEntity:`${Ge}/{entityType}/{entityId}/plugins`},edit:{all:`${Ge}/plugins/{id}`,forEntity:`${Ge}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${Ge}/{resourceEndpoint}`,edit:`${Ge}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${Ge}/v1/schemas/json/plugin/validate`,entityGetOne:`${Ge}/{entity}/{id}`,entityGetAll:`${Ge}/{entity}?size=1000`},kongManager:{create:{all:`${Te}/plugins`,forEntity:`${Te}/{entityType}/{entityId}/plugins`},edit:{all:`${Te}/plugins/{id}`,forEntity:`${Te}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${Te}/schemas/plugins/{plugin}`,credential:{create:`${Te}/{resourceEndpoint}`,edit:`${Te}/{resourceEndpoint}/{id}`},credentialSchema:`${Te}/schemas/{plugin}`,validate:`${Te}/schemas/plugins/validate`,entityGetOne:`${Te}/{entity}/{id}`,entityGetAll:`${Te}/{entity}`}},item:{konnect:{all:`${Ge}/plugins/{id}`,forEntity:`${Ge}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${Te}/plugins/{id}`,forEntity:`${Te}/{entityType}/{entityId}/plugins/{id}`}}},uB={key:0},mB=t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:i}=be.usePluginHelpers(),{i18n:{t:a}}=be.useI18n(),o=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>i(d)).join(".")).join(", "),r=(s,c)=>a(s,{parameters:o(c)}),l=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(r("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(r("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(r("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(u,m)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${m}`},t.toDisplayString(u),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",uB,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(u,m)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${m}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u,(f,h)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${m}-combination-${h}`},t.toDisplayString(o(f)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),Ze=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},gB=Ze(mB,[["__scopeId","data-v-17c1f232"]]),fB={class:"kong-ui-entities-plugin-form"},AB={key:1,class:"entity-form"},hB={class:"plugin-config-empty-state"},yB=t.defineComponent({components:{...X0}}),bB=t.defineComponent({...yB,__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0: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:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1}},emits:["loading","model-updated"],setup(e,{emit:n}){var j,F;const i=n,a=e,{axiosInstance:o}=Kt((j=a.config)==null?void 0:j.axiosRequestConfig),{parseSchema:r}=be.useSchemas(((F=a.entityMap.focusedEntity)==null?void 0:F.id)||void 0,{groupFields:a.config.groupFields}),{convertToDotNotation:l,unFlattenObject:s,isObjectEmpty:c,unsetNullForeignKey:d}=be.usePluginHelpers(),{objectsAreEqual:u}=Dn(),{i18n:{t:m}}=Hn(),f=(R,V)=>{let K=`${a.config.apiBaseUrl}${Oe.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?K=K.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),K=K.replace(/{entity}/gi,R),K=K.replace(/{id}/gi,V),K},h=R=>{let V=`${a.config.apiBaseUrl}${Oe.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?V=V.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(V=V.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),V=V.replace(/{entity}/gi,R),V},C=(R,V)=>{const K=f(R,V);return o.get(K)},b=(R,V)=>{const K=h(R);return a.config.app==="konnect"?o.get(K).then(H=>{const{data:{data:z}}=H;if(delete V.size,delete V.offset,z.length&&Object.keys(V).length===1){const W=Object.keys(V)[0],L=z.filter(D=>D[W]?!!D[W].toLowerCase().includes(V[W].toLowerCase()):!1);H.data.data=L}return H}):o.get(K,{params:V})};t.provide(yt,{getOne:C,getAll:b});const y=t.ref(""),B=t.ref(null),x=t.ref({}),S=t.reactive({}),w=t.reactive({}),A=t.computed(()=>{var R;return(R=B.value)==null?void 0:R.options}),g=()=>{var W,L;const R={...a.schema},V=w,K=S,H=Object.keys(V),z={};if(!c(x.value))for(let D=0;D<((L=(W=x.value)==null?void 0:W.fields)==null?void 0:L.length);D++)R[x.value.fields[D].model]=x.value.fields[D];return ca.forEach(D=>{R[D]&&(R[D].fields.forEach(J=>{J.fields&&J.fields.forEach(U=>{R[U.model]=U}),J.model&&(R[J.model]=J)}),delete R[D])}),H.forEach(D=>{if(!R[D])return;const J=R[D];let U=V[D];const te=K[D],se=Array.isArray(U)?"array":typeof U,Se=J?J.valueType:null,ye=J?J.valueArrayType:null,Dt=J?J.transform:null;if(U==null&&te==null&&!J.submitWhenNull)return;if(J){if(Se&&se!==Se)switch(Se){case"array":se==="string"&&U.length&&(U=U.split(",").map(re=>{if(re=re.trim(),ye==="string")return String(re);if(ye==="number")return Number(re);if(ye==="boolean"){if(typeof re=="string")return re.toLowerCase()==="true"||re==="1";if(typeof re=="number")return re===1}return re})),(!U||!U.length)&&(U=J.submitWhenNull?null:[]);break;case"number":U=Number(U);break;case"boolean":se==="string"&&(U=U.toLowerCase()==="true"||U==="1"),se==="number"&&(U=U===1);break;case"string":U=U==null?"":String(U);break}else Se==="array"&&(!U||!U.length)&&(U=J.submitWhenNull?null:[]);J.type==="object-advanced"&&J.fields&&U!==null&&(Object.entries(U).length===0?U=null:Object.keys(U).forEach(re=>{Array.isArray(U[re])||(U[re]=U[re].split(","))}))}let Re=l(D);if(J.fieldNameHasDashes){const[re,...Xe]=Re.split(".").reverse();Re=[re.replace(/_/g,"-"),...Xe].reverse().join(".")}if(Se==="object-expand"){let re;[Re,re]=Re.split(".");let Xe={};z[Re]&&(Xe=z[Re]),Xe[re]=U,U=Xe}te!==void 0&&U===""&&U!==te?z[Re]=Se==="object"?{}:null:J.type==="checklist"&&U===""?z[Re]=[]:U!==""&&(z[Re]=U),z[Re]=Dt?Dt(U):z[Re],d(Re,z)}),s(z)},E=(R,V)=>{var z;const K={[V]:R};typeof((z=a.schema[V])==null?void 0:z.modelTransformer)=="function"&&(K[V]=a.schema[V].modelTransformer(R));const H=Object.assign({},w,K);Object.assign(w,H),i("model-updated",{model:w,originalModel:S,data:g()})},k=(R,V)=>{Object.keys(R).forEach(K=>{var D,J;let H=V?`${V}-${K}`:K,z=a.schema[H];if(!z){const U=V?`${V}-${K.replace(/-/g,"_")}`:K.replace(/-/g,"_");(D=a.schema[U])!=null&&D.fieldNameHasDashes&&(H=U,z=a.schema[H]),V&&((J=a.schema[V])==null?void 0:J.keyFromObject)===K&&(H=V,z=a.schema[H])}const W=R[K],L=typeof W;if(z&&z.type==="object-advanced"&&!W){w[H]={},S[H]={};return}if(Array.isArray(W)){w[H]=JSON.parse(JSON.stringify(W)),S[H]=JSON.parse(JSON.stringify(W));return}if(L==="object"&&W&&!W.length)return k(W,H);if(L==="object"&&W&&W.length&&z.type==="input"){w[H]=W.join(", "),S[H]=W.join(", ");return}w[H]=W,S[H]=W}),i("model-updated",{model:w,originalModel:S,data:g()})},v=t.ref(!0),G=()=>{var R;if(a.record&&a.schema&&(k({enabled:a.record.enabled??!0,...a.record.instance_name&&{instance_name:a.record.instance_name||""},...a.record.protocols&&{protocols:a.record.protocols},...a.record.tags&&{tags:a.record.tags}}),a.credential?((a.record.consumer_id||a.record.consumer)&&k({consumer_id:a.record.consumer_id||a.record.consumer}),k(a.record)):a.record.config&&((a.record.consumer_id||a.record.consumer||a.record.service_id||a.record.service||a.record.route_id||a.record.route||a.record.consumer_group_id||a.record.consumer_group)&&k({service_id:a.record.service_id||a.record.service,route_id:a.record.route_id||a.record.route,consumer_id:a.record.consumer_id||a.record.consumer,consumer_group_id:a.record.consumer_group_id||a.record.consumer_group}),k(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const V={};for(const K in a.entityMap){const H=a.entityMap[K].id,z=a.entityMap[K].idField,W=z==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(z).replace("_","-"));Object.prototype.hasOwnProperty.call(w,W)&&(V[W]=H)}k(V)}if((R=a.entityMap.consumer)!=null&&R.id&&a.schema&&a.credential){const V={};Object.prototype.hasOwnProperty.call(w,"consumer")&&(V.consumer=a.entityMap.consumer.id),k(V)}v.value=!1};return t.watch(v,R=>{i("loading",R)}),t.watch(()=>a.schema,(R,V)=>{var H,z;if(u(R||{},V||{}))return;const K=r(R);Object.assign(w,K.model),x.value={fields:(z=(H=x.value)==null?void 0:H.fields)==null?void 0:z.map(W=>({...W,disabled:W.disabled||!1}))},Object.assign(S,JSON.parse(JSON.stringify(K.model))),y.value=ql(K.model.name),G()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var R,V;B.value=r(a.schema),Object.assign(w,((R=B.value)==null?void 0:R.model)||{}),x.value=((V=B.value)==null?void 0:V.schema)||{},G()}),(R,V)=>{const K=t.resolveComponent("KSkeleton"),H=t.resolveComponent("VueFormGenerator");return t.openBlock(),t.createElementBlock("div",fB,[v.value?(t.openBlock(),t.createBlock(K,{key:0,type:"form"})):(t.openBlock(),t.createElementBlock("div",AB,[y.value&&(w.id&&e.editing||!e.editing)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y.value),{key:0,"form-model":w,"form-options":A.value,"form-schema":x.value,"is-editing":e.editing,"on-model-updated":E},null,40,["form-model","form-options","form-schema","is-editing"])):t.createCommentVNode("",!0),!y.value&&(w.id&&e.editing||!e.editing)?(t.openBlock(),t.createBlock(H,{key:1,model:w,options:A.value,schema:x.value,onModelUpdated:E},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",hB,t.toDisplayString(t.unref(m)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[t.unref(Je)[w.name]&&t.unref(Je)[w.name].fieldRules?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(gB,{rules:t.unref(Je)[w.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0]),1032,["model","options","schema"])):t.createCommentVNode("",!0)]))])}}}),wB=Ze(bB,[["__scopeId","data-v-7e3ff015"]]),CB={class:"kong-ui-entities-plugin-form-container"},kB={key:0},EB={key:1,class:"plugin-form-actions"},BB=Ze(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.cancelRoute)},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},useCustomNamesForPlugin:{type:Boolean,default:!1}},emits:["error:fetch-schema","error","loading","update","model-updated"],setup(e,{emit:n}){var On;const i=n,a=e,o=Pt.useRouter(),{i18n:{t:r}}=be.useI18n(),{customSchemas:l,typedefs:s}=be.useSchemas(void 0,{app:a.config.app}),{formatPluginFieldLabel:c}=be.usePluginHelpers(),{getMessageFromError:d}=Ln(),{capitalize:u}=Mi(),{objectsAreEqual:m}=Dn(),{axiosInstance:f}=Kt((On=a.config)==null?void 0:On.axiosRequestConfig),h=t.ref(!1),C=t.computed(()=>a.pluginId?rt.Edit:rt.Create),b=t.ref(null),y=t.computed(()=>!!(a.credential&&a.config.entityId)),B=t.ref(null),x=t.ref({}),S=t.ref(!1),w=t.reactive({enabled:!0,protocols:[],tags:[]}),A=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,errorMessage:""}),g=t.ref([{title:r("view_configuration.yaml"),hash:"#yaml"},{title:r("view_configuration.json"),hash:"#json"}]),E=t.computed(()=>{if(y.value){let Y=Oe.form[a.config.app].credential[C.value];return Y=Y.replace(/{resourceEndpoint}/gi,j.value),Y}return a.config.entityType&&a.config.entityId?Oe.form[a.config.app].edit.forEntity.replace(/{entityType}/gi,a.config.entityType).replace(/{entityId}/gi,a.config.entityId):Oe.form[a.config.app].edit.all}),k=()=>{h.value=!h.value},v=t.computed(()=>{var ie,fe,ne,de,I,N,Ae,De;const Y=a.config.entityType==="consumers"&&a.config.entityId||((fe=(ie=B.value)==null?void 0:ie.consumer)==null?void 0:fe.id),M=a.config.entityType==="consumer_groups"&&a.config.entityId||((de=(ne=B.value)==null?void 0:ne.consumer_group)==null?void 0:de.id),O=a.config.entityType==="services"&&a.config.entityId||((N=(I=B.value)==null?void 0:I.service)==null?void 0:N.id),P=a.config.entityType==="routes"&&a.config.entityId||((De=(Ae=B.value)==null?void 0:Ae.route)==null?void 0:De.id);if(!(Y||M||O||P))return{global:{entity:p.GLOBAL,entityEndpoint:"plugins"}};const q={};return O&&(q.service={entity:p.SERVICE,entityEndpoint:"services",id:O,idField:Bt.SERVICE}),P&&(q.route={entity:p.ROUTE,entityEndpoint:"routes",id:P,idField:Bt.ROUTE}),Y&&(q.consumer={entity:p.CONSUMER,entityEndpoint:"consumers",id:Y,idField:Bt.CONSUMER}),M&&(q.consumer_group={entity:p.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:M,idField:Bt.CONSUMER_GROUP}),a.config.entityType&&(q.focusedEntity={entity:p[a.config.entityType.substring(0,a.config.entityType.length-1).toUpperCase()],entityEndpoint:a.config.entityType,id:a.config.entityId,idField:Bt[a.config.entityType.substring(0,a.config.entityType.length-1).toUpperCase()]}),q}),G=t.reactive({name:{default:a.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:r("plugins.form.fields.enabled.label"),textOn:r("plugins.form.fields.enabled.on_text"),textOff:r("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:a.hideScopeSelection&&(a.hideScopeSelection||C.value===rt.Create&&a.config.entityId)?"foreign":"selectionGroup",inputType:"hidden",styleClasses:"hide-label",fields:[{label:r("plugins.form.scoping.global.label"),description:r("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:r("plugins.form.fields.protocols.help"),label:r("plugins.form.fields.protocols.label"),placeholder:r("plugins.form.fields.protocols.placeholder"),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"}]},...(a.config.app==="kongManager"||a.useCustomNamesForPlugin)&&{instance_name:{default:"",type:"input",label:r("plugins.form.fields.instance_name.label"),inputType:"text",help:r("plugins.form.fields.instance_name.help")}},tags:s.tags}),j=t.computed(()=>{var O;const Y=a.developer?"developers":"consumers",M=((O=qt[a.pluginType])==null?void 0:O.endpoint)||"/plugins";return`${Y}/${a.config.entityId}${a.developer?"/credentials":""}${M}`}),F=Y=>{const M=[...new Set(Y.map(O=>typeof O))];return M.length>1?"string":M[0]},R=(Y,M,O)=>{var fe,ne;let P=M&&M.fields||[];const q=l[a.pluginType],ie=(ne=(fe=qt[a.pluginType])==null?void 0:fe.schema)==null?void 0:ne.fields;return Array.isArray(P)&&(P=P.reduce((de,I)=>{const N=Object.keys(I)[0];return N.match(/-/g)?de[N.replace(/-/g,"_")]={...I[N],fieldNameHasDashes:!0}:de[N]=I[N],de},{})),Object.keys(P).sort().forEach(de=>{var De,dt,$l,es,ts,ns;const I=P[de],N=Y?`${Y}-${de}`:`${de}`;if(Object.prototype.hasOwnProperty.call(I,"overwrite")||I.hidden)return;if(I.type==="table")return R(N,I.schema,O);if(I.fields)return R(N,I,O);if(O[N]={id:N},O[N].type=I.type==="boolean"?"checkbox":"input",O[N].required=I.required,N.startsWith("config-")&&(O[N].label=c(N)),(Y==="config"||Y.startsWith("config-"))&&(De=P[de])!=null&&De.description&&(O[N].help=ae.parse(P[de].description,{mangle:!1,headerIds:!1})),I.type==="map"){if(O[N].type="object-advanced",I.values.type==="array"){const{type:ue}=I.values.elements||{};O[N].schema={fields:[{schema:{fields:[{...kn,model:N,valueArrayType:ue==="integer"?"number":ue||"string",inputAttributes:{...kn.inputAttributes,type:ue==="integer"?"number":"text",inputMode:ue==="integer"?"numeric":"text"}}]}}]}}else I.values.fields&&(O[N].schema={fields:[{type:"object",model:"object",schema:{fields:I.values.fields.map(ue=>{const We=Object.keys(ue)[0];return{model:We,type:"input",label:u(We),placeholder:We,inputType:ue[We].type}})}}]});return O}if(I.enum&&I.type==="array"&&(O[N].type="checklist",O[N].values=I.enum,O[N].multi=!0,O[N].multiSelect=!0),I.one_of&&I.type!=="array"&&(O[N].type="select",O[N].values=I.one_of,O[N].selectOptions={noneSelectedText:r("plugins.form.no_selection")}),I.elements&&I.type==="array"){const ue=I.elements;if(ue.type==="string"&&!ue.one_of){const{help:We,label:Ne,hint:Fe}=O[N],{help:Qe,...xn}=JSON.parse(JSON.stringify(kn));O[N]={help:We,label:Ne,hint:Fe,...xn},O[N].help===void 0&&typeof Qe=="string"&&(O[N].help=ae.parse(Qe,{mangle:!1,headerIds:!1}))}}if(I.hint&&(O[N].hint=I.hint),q&&!q.overwriteDefault&&Object.keys(q).forEach(ue=>{if(ue===N){const{help:We,label:Ne,hint:Fe}=O[N],{help:Qe,...xn}=q[ue];O[N]={help:We,label:Ne,hint:Fe,...xn},typeof Qe=="string"&&(O[N].help=ae.parse(Qe,{mangle:!1,headerIds:!1}))}}),I.type==="array"&&((dt=I.elements)==null?void 0:dt.type)==="record"&&Array.isArray(I.elements.fields)){let ue={};for(const Ne of I.elements.fields)ue={...ue,...Ne};const We=(ts=(es=($l=O[N])==null?void 0:$l.items)==null?void 0:es.schema)==null?void 0:ts.fields;if(Array.isArray(We))for(const Ne of O[N].items.schema.fields){const Fe=(ns=ue[Ne.model])==null?void 0:ns.description;Ne.help===void 0&&typeof Fe=="string"&&(Ne.help=ae.parse(Fe,{mangle:!1,headerIds:!1}))}We||(O[N].fieldClasses="array-card-container-wrapper",O[N].itemContainerComponent="FieldArrayCardContainer",O[N].items={type:"object",schema:{fields:Object.values(R(N,I.elements,{}))}},O[N].type="array",O[N].newElementButtonLabelClasses="kong-form-new-element-button-label",O[N].items.schema.fields.forEach(Ne=>{var Fe,Qe;for(const xn of I.elements.fields){const ua=Object.keys(xn)[0],is=((Qe=(Fe=Ne.id)==null?void 0:Fe.split)==null?void 0:Qe.call(Fe,"-"))??[];if(is[is.length-1]===ua){Ne.model=ua,Ne.label=c(ua);break}}})),O[N].items.default=()=>I.elements.fields.reduce((Ne,Fe)=>{const Qe=Object.keys(Fe)[0];return Ne[Qe]=Fe[Qe].default,Ne},{})}if(y.value&&a.config.app==="kongManager"&&ie){for(let ue=0;ue<ie.length;ue++)if(ie[ue][N]){O[N]={...O[N],...ie[ue][N]};break}}if(I.required&&I.type!=="boolean"&&(O[N].required=!0,O[N].selectOptions={hideNoneSelectedText:!0}),I.default!=null&&typeof I.default!="object"&&I.default!=="function"&&(O[N].default=I.default),O[N].type==="input"){const{type:ue}=I.elements||{};ue&&(O[N].valueArrayType=ue==="integer"?"number":ue),O[N].inputType=I.type==="array"||I.type==="string"?"text":I.type}let Ae="string";I.enum?Ae=F(I.enum):I.type==="boolean"?Ae="boolean":I.type==="number"||I.type==="integer"?(Ae="number",O[N].inputType="number"):I.type==="array"||I.type==="set"?(Ae="array",O[N].default=I.default,I.len_min>0&&(O[N].submitWhenNull=!0)):I.type==="foreign"?Ae="object":I.default&&Array.isArray(I.default)?(Ae="array",O[N].valueArrayType=F(I.default)):I.default&&(Ae=typeof I.default),O[N].valueType=Ae,I.fieldNameHasDashes&&(O[N].fieldNameHasDashes=!0)}),O},V=()=>{var ie,fe,ne,de;const Y=((ie=Je[a.pluginType])==null?void 0:ie.scope.includes(p.SERVICE))??!0,M=((fe=Je[a.pluginType])==null?void 0:fe.scope.includes(p.ROUTE))??!0,O=((ne=Je[a.pluginType])==null?void 0:ne.scope.includes(p.CONSUMER))??!0,P=a.config.disableConsumerGroupScope?!1:((de=Je[a.pluginType])==null?void 0:de.scope.includes(p.CONSUMER_GROUP))??!0,q=[];if(Y&&q.push({id:"service-id",model:"service-id",label:r("plugins.form.scoping.gateway_service.label"),placeholder:r("plugins.form.scoping.gateway_service.placeholder"),type:"AutoSuggest",entity:"services",inputValues:{fields:["name","id"]},help:r("plugins.form.scoping.gateway_service.help")}),M&&q.push({id:"route-id",model:"route-id",label:r("plugins.form.scoping.route.label"),placeholder:r("plugins.form.scoping.route.placeholder"),type:"AutoSuggest",entity:"routes",inputValues:{fields:["name","id"],primaryField:"id"},help:r("plugins.form.scoping.route.help")}),O&&q.push({model:"consumer-id",label:r("plugins.form.scoping.consumer.label"),placeholder:r("plugins.form.scoping.consumer.placeholder"),type:"AutoSuggest",entity:"consumers",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:r("plugins.form.scoping.consumer.help")}),P&&q.push({model:"consumer_group-id",label:r("plugins.form.scoping.consumer_group.label"),placeholder:r("plugins.form.scoping.consumer_group.placeholder"),type:"AutoSuggest",entity:"consumer_groups",entityDataKey:"consumer_group",inputValues:{fields:["name","id"],primaryField:"name"},help:r("plugins.form.scoping.consumer_group.help")}),q.length){const I=[...Y?["service"]:[],...M?["route"]:[],...O?["consumer"]:[],...P?["consumer_group"]:[]],Ae=I.splice(I.length-2,2).map(dt=>r(dt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${dt}.plural`)).join(`${I.length>0?",":""} and/or `),De=["Specific",[...I.length>0?[I.map(dt=>r(dt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${dt}.plural`)).join(", ")]:[],Ae].join(", ")].join(" ");G.selectionGroup.fields.push({label:r("plugins.form.scoping.label"),description:De,fields:[]}),G.selectionGroup.fields[1].fields=q}l[a.pluginType]&&l[a.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[a.pluginType],"formSchema")&&Object.assign(G,l[a.pluginType].formSchema)},K=t.computed(()=>!m(A.fields,w,!0)),H=t.computed(()=>!re.value&&!S.value&&(C.value===rt.Create||K.value)),z=t.ref(!1),W=Y=>{A.fields.id=(Y==null?void 0:Y.id)||void 0,Object.assign(w,A.fields),B.value=Y,z.value=!0},L=t.ref({}),D=Y=>{var M;A.fields=Y.model,A.fields.id=((M=B.value)==null?void 0:M.id)||void 0,Object.assign(w,Y.originalModel),L.value=Y.data,a.isWizardStep&&i("model-updated",{model:A.fields,data:Y.data,resourceEndpoint:j.value})};t.watch([v,z],(Y,M)=>{const O=Y[0]!==M[0],P=Y[1],q=M[1];!y.value&&C.value===rt.Edit&&(O||P&&P!==q)&&(re.value=!0,b.value=R("config",x.value,G),re.value=!1)},{deep:!0});const J=()=>{a.config.cancelRoute&&o.push(a.config.cancelRoute)},U=()=>{a.config.backRoute&&o.push(a.config.backRoute)},te=t.computed(()=>{let Y=`${a.config.apiBaseUrl}${Oe.form[a.config.app].validate}`;return a.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),Y=Y.replace(/{id}/gi,a.pluginId),Y}),se=t.computed(()=>{const Y=a.config.entityType&&a.config.entityId&&!a.developer,M=y.value?Oe.form[a.config.app].credential[C.value]:Oe.form[a.config.app][C.value][Y?"forEntity":"all"];let O=`${a.config.apiBaseUrl}${M}`;return a.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),O=O.replace(/{resourceEndpoint}/gi,j.value),O=O.replace(/{id}/gi,a.pluginId),O=O.replace(/{entityType}/gi,a.config.entityType||""),O=O.replace(/{entityId}/gi,a.config.entityId||""),O}),Se=t.computed(()=>!Object.keys(Je).includes(a.pluginType)),ye=t.computed(()=>{const Y=L.value;if(y.value){for(const M in p){const O=p[M];Y[O]&&!Y[O].id&&(Y[O]={id:a.config.entityId})}delete Y.created_at}return Y}),Dt=async()=>{if(!a.isWizardStep)try{A.isReadonly=!0;let Y;!y.value&&!Se.value&&await f.post(te.value,ye.value),C.value==="create"?Y=await f.post(se.value,ye.value):C.value==="edit"&&(Y=a.config.app==="konnect"?await f.put(se.value,ye.value):await f.patch(se.value,ye.value)),Object.assign(w,A.fields),i("update",Y==null?void 0:Y.data)}catch(Y){A.errorMessage=d(Y),i("error",Y)}finally{A.isReadonly=!1}},Re=t.computed(()=>{var P;const Y=y.value?(P=qt[a.pluginType])==null?void 0:P.schemaEndpoint:a.pluginType,M=y.value?Oe.form[a.config.app].credentialSchema:Oe.form[a.config.app].pluginSchema;let O=`${a.config.apiBaseUrl}${M}`;return a.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),O=O.replace(/{plugin}/gi,Y),O}),re=t.ref(!1),Xe=t.ref("");return t.onBeforeMount(async()=>{var Y,M,O;re.value=!0;try{if(y.value&&a.config.app==="konnect"){const P=(Y=qt[a.pluginType])==null?void 0:Y.schemaEndpoint,q=gf[P];b.value=R("",q,{}),re.value=!1}else{const P=await f.get(Re.value),{data:q}=P;if(q)if(y.value)b.value=R("",q,{}),re.value=!1;else{const ie=q.fields.find(ne=>ne.config);x.value=ie?ie.config:P,V();const fe=(M=q.fields.find(ne=>ne.protocols))==null?void 0:M.protocols;if(fe){const{default:ne=[],elements:de={}}=fe;G.protocols.default=ne,(O=de.one_of)!=null&&O.length&&(G.protocols.values=de.one_of.map(I=>({label:I,value:I})))}(z.value||C.value===rt.Create)&&(b.value=R("config",x.value,G))}}}catch(P){Xe.value=d(P),i("error:fetch-schema",P)}finally{re.value=!1}}),(Y,M)=>{const O=t.resolveComponent("KSkeleton"),P=t.resolveComponent("KEmptyState"),q=t.resolveComponent("KButton"),ie=t.resolveComponent("KTabs"),fe=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",CB,[re.value?(t.openBlock(),t.createBlock(O,{key:0,type:"form"})):Xe.value?(t.openBlock(),t.createBlock(P,{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(r)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(du),{key:2,"can-submit":H.value,config:e.config,"edit-id":e.pluginId,"error-message":A.errorMessage,"fetch-url":E.value,"form-fields":ye.value,"is-readonly":A.isReadonly,"no-validate":"",onCancel:J,"onFetch:error":M[2]||(M[2]=ne=>Y.$emit("error",ne)),"onFetch:success":W,onLoading:M[3]||(M[3]=ne=>Y.$emit("loading",ne))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",kB)):(t.openBlock(),t.createElementBlock("div",EB,[t.createVNode(q,{appearance:"tertiary","data-testid":"form-view-configuration",onClick:M[1]||(M[1]=ne=>k())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.view_configuration")),1)]),_:1}),t.createVNode(q,{appearance:"secondary",class:"form-action-button","data-testid":"form-cancel",disabled:A.isReadonly,type:"reset",onClick:J},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.cancel")),1)]),_:1},8,["disabled"]),C.value===t.unref(rt).Create&&e.config.backRoute?(t.openBlock(),t.createBlock(q,{key:0,appearance:"secondary",class:"form-action-button","data-testid":"form-back",disabled:A.isReadonly,onClick:U},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.back")),1)]),_:1},8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(q,{appearance:"primary","data-testid":"form-submit",disabled:!H.value||A.isReadonly,type:"submit",onClick:Dt},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.save")),1)]),_:1},8,["disabled"])]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:Dt},null,32),t.createVNode(wB,{config:e.config,credential:y.value,editing:C.value===t.unref(rt).Edit,"entity-map":v.value,record:B.value||void 0,schema:b.value||{},onLoading:M[0]||(M[0]=ne=>S.value=ne),onModelUpdated:D},null,8,["config","credential","editing","entity-map","record","schema"])]),_:1},8,["can-submit","config","edit-id","error-message","fetch-url","form-fields","is-readonly"])),t.createVNode(fe,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(r)("view_configuration.title"),visible:h.value,onClose:k},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("view_configuration.message")),1),t.createVNode(ie,{"data-testid":"form-view-configuration-slideout-tabs",tabs:g.value},{json:t.withCtx(()=>[t.createVNode(t.unref(mi),{config:e.config,"fetcher-url":se.value,"json-record":A.fields,"request-method":a.pluginId?"put":"post"},null,8,["config","fetcher-url","json-record","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(Si),{"yaml-record":A.fields},null,8,["yaml-record"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-6d6aad4b"]]),OB=["alt","src","width"],ri=t.defineComponent({__name:"PluginIcon",props:{name:{type:String,required:!0},size:{type:Number,default:32,required:!1},alt:{type:String,default:"",required:!1}},setup(e){const n=e,i=t.ref(),a=tr(n.name),o=()=>{const r=new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAMAAABKCk6nAAAAhFBMVEUAAADs+fnr8PTo7fLm7PDl6e7j6+7j6O3i6Ozh5+vp9PTm7PDj6e319fXn7PHj6O739/fn7PDi6e3////o7fLj6Ozt8fbj6u7r7vPi6ezo7fL////n7PHm6/Dl6+/q8PTs8vbu9Pjv9frw9vri6ezv9fnp7/Pt8vfk6u6cpar////e4ePLpSv+AAAAHnRSTlMAKIq93/T6/f7/W8z3GbL4Hr/9AZ39OPFo/Z4FzOeuk05oAAAFJklEQVR4Ae3ThZLjyhWA4SNdWJ9BMy/KA3n/twoXBafWWYb2QPi6Vd9XKGz4q5t4QPNZHDP2n8W/4uT0bJBUZHB2ehL/pPOLy6wQlxfn8bThaJxUajwaxuMm01lSsdl0Eo+YL5LKLebxoOUqqd5qGQ9YD7IHGKzjPptt9gTbzT19n2dv8Pyw8DZ7hG0U1tkrrOM7y0H2CoNlfGO+yp5hNY8vJovsHRaT+GyaPcQ03mkiYvjnNu4za94Ljtn+vd/Efc7+/sf4YJT32L286qjE1ctd3mMUH5yP89D1m46KvLnOQ+PzeO8iD+xuOipzs8sDF/HeZZZuX3dU5/Vtli7jnZMs7fSts/AuSycRcZqlm44q3WTpNCLOsnDdUanrLJxF29zF9zZ3QaXuNuWNJtosvOyo1ssstG0ThZ+Dah3Ea+LHIvmLjoq9KHL+2DYHyanYQc6jDYzACCxwZKGjallog177DwIjMAIjMAIjsMAIjMAIjMAIjMAILDACIzACIzACI7DACIzACIzACIzAAiMwAiMwAiMwAiOwwAiMwAiMwAiMwAIjMAIjMAIjMAILjMAIjMAIjMAIjMACIzACIzACIzACC4zACIzACIzACIzAAiMwAiMwAiMwAguMwAiMwAiMwAgsMAIjMAIjMAIjMAILjMAIjMAIjMAILDACIzACI/DP/6GjGENgBEZgBBYYgREYgREYgRGYJwMjMAIjMAI3TziCMQTmaAIjMAIjMAIjMAILjMAIjMAIjMAITBa6X9CveqD7hWWhDXpNYIERGIERGIERGIEFRmAERmAERuBKCdw2R68VGIERGIERWGAERmAERmAERmCBERiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIEFRmAERmAERuB+EPjt/ui9FRiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgWshcNscvVZgBEZgBEZggREYgREYgREYgQVGYARGYARGYARGYIERGIERGIERGIEFRmAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBBYYgREYgREYgftB4Lf7o/dWYARGYARGYIERGIERGIERGIEFRmAE5kj9GEfkb/EfwwkWGIERGIERGIERWGAERmAERmAERmAEFhiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIERWGAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBEZggREYgREYgREYgQVGYARGYARGYAQWGIERGIERGIERGIEFRmAERmAERmAEFhiBERiBERiBEZh2r3iflPn2B4HvgordPRl4H1RsL7DAfSJw/JCFq45qXWXhh3Yfhb8F1TqIt2/3ZeGf9kGl9j/F997XPcvCdUelrrNwFhGnWbrpqNJNlk4j4iRLu9cdFXq9y9JJvHOZpVuFa+x7m6XLeO8iD+xuOipzs8sDF/He+TgPXb/pqMib6zw0Po8PRnmP3curjkpcvdzlPUYR0UTE8M9t3GfWvBfHjP17v4n7nP39j/HRNOmhaXw2WSS9s5jEF/NV0jOreXxjOUh6ZbCM76yTXllHYZv0yDZKm+dJbzzfxGHhbdIT203cZz1IemCwjgcsV0n1Vst40HyRVG4xj0dMprOkYrPpJB43HI2TSo1Hw3ja+cVlUqHLi/P4J52cng2SigzOTk/iPk08oPksjhn7z+J+/wBSUhUZLUGZBgAAAABJRU5ErkJggg==",typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Ut&&Ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;i.value&&(i.value.src=r)};return(r,l)=>(t.openBlock(),t.createElementBlock("img",{ref_key:"img",ref:i,alt:e.alt,src:t.unref(a),width:e.size,onError:o},null,40,OB))}}),xB={class:"kong-ui-entities-plugins-list"},IB={class:"name-cell-wrapper"},SB={class:"info-wrapper"},MB={key:0,class:"info-name"},vB={key:1,class:"info-name"},TB={key:2,class:"info-type"},RB={key:1},NB={key:1},VB=Ze(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0: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","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var On,Y;const i=be.usePluginMetaData(),a=n,o=e,{i18n:{t:r}}=be.useI18n(),l=Pt.useRouter(),{axiosInstance:s}=Kt((On=o.config)==null?void 0:On.axiosRequestConfig),c=t.computed(()=>{var M;return((M=o.config)==null?void 0:M.entityType)==="consumers"}),d=o.config.app==="konnect"||Fu({gatewayInfo:o.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),u=t.computed(()=>o.config.app!=="kongManager"||!!o.config.disableSorting),m={name:{label:r("plugins.list.table_headers.name"),searchable:!0,sortable:!0}};(Y=o.config)!=null&&Y.entityId||(m.appliedTo={label:r("plugins.list.table_headers.applied_to"),sortable:!1}),m.enabled={label:r("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},d&&(m.ordering={label:r("plugins.list.table_headers.ordering"),sortable:!0}),m.tags={label:r("plugins.list.table_headers.tags"),sortable:!1};const f=m,h=t.computed(()=>{var O,P,q,ie;let M=o.config.entityType?`${o.config.apiBaseUrl}${Oe.list[o.config.app].forEntity}`:`${o.config.apiBaseUrl}${Oe.list[o.config.app].all}`;return o.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,((O=o.config)==null?void 0:O.controlPlaneId)||""):o.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,(P=o.config)!=null&&P.workspace?`/${o.config.workspace}`:"")),M.replace(/{entityType}/gi,((q=o.config)==null?void 0:q.entityType)||"").replace(/{entityId}/gi,((ie=o.config)==null?void 0:ie.entityId)||"")}),C=t.ref(""),b=t.computed(()=>o.config.app==="konnect"||o.config.isExactMatch?{isExactMatch:!0,fields:{name:m.name,id:{label:r("plugins.list.table_headers.id"),sortable:!0}},placeholder:r(`search.placeholder.${o.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...m.enabled,label:r("search.filter.field.enabled")},name:m.name,instance_name:{label:r("plugins.list.table_headers.instance_name"),searchable:!0}},schema:o.config.filterSchema}),y=t.ref(1),{fetcher:B,fetcherState:x}=Gu(o.config,h.value),S=()=>{C.value=""},w=()=>{y.value++},A=t.ref(null),g=M=>{var P,q,ie,fe;const O=[];return(P=M.route)!=null&&P.id&&O.push({type:"route",badgeText:r("plugins.list.table_headers.applied_to_badges.route")}),(q=M.service)!=null&&q.id&&O.push({type:"service",badgeText:r("plugins.list.table_headers.applied_to_badges.service")}),(ie=M.consumer)!=null&&ie.id&&O.push({type:"consumer",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer")}),(fe=M.consumer_group)!=null&&fe.id&&O.push({type:"consumer_group",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer_group")}),O.length?O:[{type:null,badgeText:r("plugins.list.table_headers.applied_to_badges.global")}]},E=async(M,O)=>{var P;return M===null?!1:await((P=o.canRetrieveScopedEntity)==null?void 0:P.call(o,M,O.id))},k=(M,O)=>{var q,ie,fe,ne,de;let P=null;switch(M){case"route":P=(q=O.route)==null?void 0:q.id;break;case"service":P=(ie=O.service)==null?void 0:ie.id;break;case"consumer":P=(fe=O.consumer)==null?void 0:fe.id;break;case"consumer_group":P=(ne=O.consumer_group)==null?void 0:ne.id;break}P&&((de=o.config)!=null&&de.getScopedEntityViewRoute)&&l.push(o.config.getScopedEntityViewRoute(M,P))},v=t.ref(!1),G=t.ref(null),j=t.computed(()=>{const M={action:"disable",id:"",name:""};if(G.value){const{enabled:O,id:P,name:q}=G.value;M.action=O?"disable":"enable",M.id=P,M.name=i.getDisplayName(q)||P}return M}),F=M=>{v.value=!0,G.value=M},R=()=>{v.value=!1,G.value=null},V=async()=>{var q,ie,fe,ne,de,I,N,Ae;if(!await((q=o.canEdit)==null?void 0:q.call(o,G.value))||!G.value)return;let O=`${o.config.apiBaseUrl}${(de=Oe.item[o.config.app])==null?void 0:de[(ie=o.config)!=null&&ie.entityType?"forEntity":"all"].replace(/{entityType}/gi,((fe=o.config)==null?void 0:fe.entityType)||"").replace(/{entityId}/gi,((ne=o.config)==null?void 0:ne.entityId)||"")}`.replace(/{id}/gi,G.value.id||"");o.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,((I=o.config)==null?void 0:I.controlPlaneId)||""):o.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,(N=o.config)!=null&&N.workspace?`/${o.config.workspace}`:""));const P=!G.value.enabled;try{const{data:De}=((Ae=o.config)==null?void 0:Ae.app)==="konnect"?await s.put(O,{...G.value,enabled:P}):await s.patch(O,{...G.value,enabled:P});a("toggle-enabled",P,De)}catch(De){a("error",De)}G.value.enabled=P},K=(M,O)=>{const P=M.id;if(!O(P)){a("copy:error",{entity:M,field:"id",message:r("errors.copy")});return}a("copy:success",{entity:M,field:"id",message:r("copy.success",{val:P})})},H=(M,O)=>{const P=JSON.stringify(M);if(!O(P)){a("copy:error",{entity:M,message:r("errors.copy")});return}a("copy:success",{entity:M,message:r("copy.success_brief")})},z=async M=>{var P;await((P=o.canRetrieve)==null?void 0:P.call(o,M))&&l.push(o.config.getViewRoute(M))},W=M=>({label:r("actions.view"),to:o.config.getViewRoute(M)}),L=M=>({label:r("actions.edit"),to:o.config.getEditRoute(M)}),D=M=>({label:r("actions.configure_dynamic_ordering"),to:o.config.getConfigureDynamicOrderingRoute(M)}),J=t.ref(void 0),U=t.ref(!1),te=t.ref(!1),se=t.ref(""),Se=Yu(o.config,h.value),ye=M=>{J.value=M,U.value=!0},Dt=()=>{U.value=!1},Re=async()=>{var M,O,P;if((M=J.value)!=null&&M.id){te.value=!0;try{await s.delete(Se(J.value.id)),te.value=!1,U.value=!1,y.value++,a("delete:success",J.value)}catch(q){se.value=((P=(O=q.response)==null?void 0:O.data)==null?void 0:P.message)||q.message||r("errors.delete"),a("error",q)}finally{te.value=!1}}},re=t.ref(!0);t.watch(x,M=>{var O,P,q,ie;if(Array.isArray((O=M==null?void 0:M.response)==null?void 0:O.data)&&(re.value=M.response.data.length>0),M.status===bt.Error){A.value={title:r("errors.general")},(ie=(q=(P=M.error)==null?void 0:P.response)==null?void 0:q.data)!=null&&ie.message&&(A.value.message=M.error.response.data.message),a("error",M.error);return}A.value=null});const Xe=t.ref({ctaPath:o.config.createRoute,ctaText:void 0,message:`${r("plugins.list.empty_state.description")}${o.config.additionMessageForEmptyState?` ${o.config.additionMessageForEmptyState}`:""}`,title:r("plugins.title")});return t.onBeforeMount(async()=>{await o.canCreate()&&(Xe.value.title=r("plugins.list.empty_state.title"),Xe.value.ctaText=r("actions.create"))}),(M,O)=>{const P=t.resolveComponent("KButton"),q=t.resolveComponent("KBadge"),ie=t.resolveComponent("KTruncate"),fe=t.resolveComponent("KInputSwitch"),ne=t.resolveComponent("KDropdownItem"),de=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",xB,[t.createVNode(t.unref(yu),{"cache-identifier":e.cacheIdentifier,"disable-pagination-page-jump":"","disable-sorting":u.value,"dropdown-menu-width":"270","empty-state-options":Xe.value,"enable-entity-actions":"","error-message":A.value,fetcher:t.unref(B),"fetcher-cache-key":y.value,"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:C.value,"table-headers":t.unref(f),title:e.title,"title-tag":e.titleTag,"use-action-outside":e.useActionOutside,onClearSearchInput:S,"onClick:row":O[3]||(O[3]=I=>z(I)),onSort:w},{"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ju),{modelValue:C.value,"onUpdate:modelValue":O[0]||(O[0]=I=>C.value=I),config:b.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.useActionOutside?"Teleport":"div"),{to:e.useActionOutside?"#kong-ui-app-page-header-action-button":void 0},{default:t.withCtx(()=>[t.createVNode(t.unref(Ct),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.withDirectives(t.createVNode(P,{appearance:"primary","data-testid":"toolbar-add-plugin",icon:"plus",size:"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["to"]),[[t.vShow,re.value]])]),_:1},8,["auth-function"])]),_:1},8,["to"]))]),name:t.withCtx(({row:I})=>[t.createElementVNode("div",IB,[t.createVNode(ri,{class:"plugin-icon",name:I.name,width:24},null,8,["name"]),t.createElementVNode("div",SB,[I.instance_name?(t.openBlock(),t.createElementBlock("span",MB,t.toDisplayString(I.instance_name),1)):(t.openBlock(),t.createElementBlock("span",vB,t.toDisplayString(t.unref(i).getDisplayName(I.name)),1)),I.instance_name?(t.openBlock(),t.createElementBlock("span",TB,t.toDisplayString(t.unref(i).getDisplayName(I.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:I})=>[g(I).length>0?(t.openBlock(),t.createBlock(ie,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g(I),N=>(t.openBlock(),t.createBlock(t.unref(Ct),{key:N.badgeText,"auth-function":()=>E(N.type,I),"force-show":""},{default:t.withCtx(({isAllowed:Ae})=>[t.createVNode(q,{class:t.normalizeClass(Ae||"disabled"),onClick:t.withModifiers(De=>Ae&&N.type&&k(N.type,I),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(N.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",RB,"-"))]),enabled:t.withCtx(({row:I})=>[t.createVNode(t.unref(Ct),{"auth-function":async()=>!!(await e.canEdit(I)&&await e.canToggle(I)),"force-show":""},{default:t.withCtx(({isAllowed:N})=>{var Ae,De;return[t.createElementVNode("div",{onClick:O[1]||(O[1]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(fe,{disabled:!N,"disabled-tooltip-text":!N&&((De=(Ae=e.config).getToggleDisabledTooltip)==null?void 0:De.call(Ae,I))||void 0,"model-value":I.enabled,onClick:t.withModifiers(dt=>N&&F(I),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:I})=>[t.createVNode(q,{appearance:I?"warning":"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(I?t.unref(r)("plugins.list.table_headers.ordering_badge.dynamic"):t.unref(r)("plugins.list.table_headers.ordering_badge.static")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:I})=>[(I==null?void 0:I.length)>0?(t.openBlock(),t.createBlock(ie,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(I,N=>(t.openBlock(),t.createBlock(q,{key:N,onClick:O[2]||(O[2]=t.withModifiers(()=>{},["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(N),1)]),_:2},1024))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",NB,"-"))]),actions:t.withCtx(({row:I})=>[t.createVNode(de,null,{default:t.withCtx(({copyToClipboard:N})=>[t.createVNode(ne,{"data-testid":"action-entity-copy-id",onClick:Ae=>K(I,N)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(de,null,{default:t.withCtx(({copyToClipboard:N})=>[t.createVNode(ne,{"data-testid":"action-entity-copy-json",onClick:Ae=>H(I,N)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(Ct),{"auth-function":()=>e.canRetrieve(I)},{default:t.withCtx(()=>[t.createVNode(ne,{"data-testid":"action-entity-view","has-divider":"",item:W(I)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(Ct),{"auth-function":()=>e.canEdit(I)},{default:t.withCtx(()=>[t.createVNode(ne,{"data-testid":"action-entity-edit",item:L(I)},null,8,["item"])]),_:2},1032,["auth-function"]),!c.value&&t.unref(d)?(t.openBlock(),t.createBlock(t.unref(Ct),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(I)},{default:t.withCtx(()=>[D(I)?(t.openBlock(),t.createBlock(ne,{key:0,"data-testid":"action-entity-config-dyn-order",item:D(I)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(Ct),{"auth-function":()=>e.canDelete(I)},{default:t.withCtx(()=>[t.createVNode(ne,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:N=>ye(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:1},8,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","use-action-outside"]),t.createVNode(t.unref(Pu),{action:j.value.action,"entity-id":j.value.id,"entity-name":j.value.name,"entity-type":t.unref(r)("glossary.plugin"),"on-confirm":V,visible:v.value,onCancel:R,onProceed:R},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(vo),{"action-pending":te.value,description:t.unref(r)("delete.description"),"entity-name":J.value&&(J.value.instance_name||J.value.name||J.value.id),"entity-type":t.unref(di).Plugin,error:se.value,title:t.unref(r)("delete.title"),visible:U.value,onCancel:Dt,onProceed:Re},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-6bbe2d27"]]),LB=e=>(t.pushScopeId("data-v-14bc032f"),e=e(),t.popScopeId(),e),DB={class:"plugin-card-header"},jB={class:"plugin-card-footer"},PB=LB(()=>t.createElementVNode("hr",{class:"plugin-card-footer-divider"},null,-1)),UB={class:"footer-skeleton"},YB=Ze(t.defineComponent({__name:"PluginCardSkeleton",props:{cardCount:{type:Number,default:1}},setup(e){return(n,i)=>{const a=t.resolveComponent("KSkeletonBox"),o=t.resolveComponent("KSkeleton");return t.openBlock(),t.createBlock(o,{"card-count":e.cardCount,class:"plugin-card-skeleton",type:"card"},{"card-header":t.withCtx(()=>[t.createElementVNode("div",DB,[t.createVNode(a,{width:"5"})])]),"card-content":t.withCtx(()=>[t.createTextVNode(" ")]),"card-footer":t.withCtx(()=>[t.createElementVNode("div",jB,[PB,t.createElementVNode("div",UB,[t.createVNode(a,{width:"5"})])])]),_:1},8,["card-count"])}}}),[["__scopeId","data-v-14bc032f"]]),GB="16px",Ql="24px",FB=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},HB=e=>(t.pushScopeId("data-v-03fa7aa3"),e=e(),t.popScopeId(),e),zB=["aria-hidden"],KB={key:0,"data-testid":"kui-icon-svg-title"},qB=HB(()=>t.createElementVNode("path",{d:"M12 20C11.45 20 10.9792 19.8042 10.5875 19.4125C10.1958 19.0208 10 18.55 10 18C10 17.45 10.1958 16.9792 10.5875 16.5875C10.9792 16.1958 11.45 16 12 16C12.55 16 13.0208 16.1958 13.4125 16.5875C13.8042 16.9792 14 17.45 14 18C14 18.55 13.8042 19.0208 13.4125 19.4125C13.0208 19.8042 12.55 20 12 20ZM12 14C11.45 14 10.9792 13.8042 10.5875 13.4125C10.1958 13.0208 10 12.55 10 12C10 11.45 10.1958 10.9792 10.5875 10.5875C10.9792 10.1958 11.45 10 12 10C12.55 10 13.0208 10.1958 13.4125 10.5875C13.8042 10.9792 14 11.45 14 12C14 12.55 13.8042 13.0208 13.4125 13.4125C13.0208 13.8042 12.55 14 12 14ZM12 8C11.45 8 10.9792 7.80417 10.5875 7.4125C10.1958 7.02083 10 6.55 10 6C10 5.45 10.1958 4.97917 10.5875 4.5875C10.9792 4.19583 11.45 4 12 4C12.55 4 13.0208 4.19583 13.4125 4.5875C13.8042 4.97917 14 5.45 14 6C14 6.55 13.8042 7.02083 13.4125 7.4125C13.0208 7.80417 12.55 8 12 8Z",fill:"currentColor"},null,-1)),XB=t.defineComponent({__name:"MoreIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:Ql,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return Ql}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon more-icon","data-testid":"kui-icon-wrapper-more-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-more-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",KB,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),qB],8,zB))]),_:1},8,["aria-hidden","style"]))}}),JB=FB(XB,[["__scopeId","data-v-03fa7aa3"]]),ZB=["data-testid"],WB={class:"plugin-card-header"},QB={class:"plugin-card-title"},_B={key:0,class:"plugin-card-actions"},$B=["data-testid","title"],eO={key:0,class:"plugin-card-text"},tO={key:0},nO=["title"],li=Ze(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{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 i=n,a=e,o=Pt.useRouter(),{i18n:{t:r}}=be.useI18n(),l=t.computed(()=>a.config.app==="konnect"?a.config.controlPlaneId:""),s=t.computed(()=>!!(!a.plugin.available||a.plugin.disabledMessage)),c=t.computed(()=>!!(h.value&&!f.value&&a.navigateOnClick&&l.value&&(a.canDeleteCustomPlugin||a.canEditCustomPlugin))),d=()=>{o.push(a.config.getCreateRoute(a.plugin.id))},u=()=>{a.navigateOnClick?d():m()},m=()=>{i("plugin-clicked",a.plugin)},f=t.computed(()=>a.plugin.id==="custom-plugin-create"),h=t.computed(()=>a.config.app==="konnect"&&a.plugin.group===T.CUSTOM_PLUGINS),C=()=>{a.config.app==="konnect"&&i("custom-plugin-delete")},b=B=>{const x=a.config;a.config.app==="konnect"&&typeof x.getCustomEditRoute=="function"&&x.getCustomEditRoute&&o.push(x.getCustomEditRoute(B))},y=()=>{if(!s.value&&a.config.app==="konnect"){const B=a.config;f.value&&B.createCustomRoute?o.push(B.createCustomRoute):h.value&&d()}};return(B,x)=>{const S=t.resolveComponent("KButton"),w=t.resolveComponent("KDropdownItem"),A=t.resolveComponent("KDropdownMenu"),g=t.resolveComponent("KTooltip");return t.openBlock(),t.createBlock(g,{"position-fixed":"",text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:x[1]||(x[1]=E=>s.value||h.value?void 0:u())},[t.createElementVNode("div",WB,[t.createElementVNode("div",QB,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!h.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",_B,[t.createVNode(A,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottomEnd"},width:"150"},{default:t.withCtx(()=>[t.createVNode(S,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:t.withCtx(()=>[t.createVNode(t.unref(JB),{size:t.unref(GB)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(w,{key:0,"data-testid":"edit-plugin-schema",onClick:x[0]||(x[0]=t.withModifiers(E=>b(e.plugin.name),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(w,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(C,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":h.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(r)("plugins.select.unavailable_tooltip"),onClick:y},[t.createVNode(ri,{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.imageName||e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||h.value&&!f.value?(t.openBlock(),t.createElementBlock("div",eO,[h.value&&!f.value?(t.openBlock(),t.createElementBlock("p",tO,t.toDisplayString(t.unref(r)("plugins.select.custom_badge_text")),1)):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,nO)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,$B),t.createElementVNode("div",{class:"plugin-card-footer",onClick:y},t.toDisplayString(f.value?t.unref(r)("actions.create_custom"):e.plugin.exists?t.unref(r)("actions.enabled"):t.unref(r)("actions.enable")),1)],10,ZB)]),_:1},8,["text"])}}}),[["__scopeId","data-v-3e933d10"]]),iO=Ze(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var h;const i=e,a=n,{i18nT:o,i18n:{t:r}}=be.useI18n(),{getMessageFromError:l}=Ln(),{axiosInstance:s}=Kt((h=i.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var C;return m.value?r("delete.plugin_schema_in_use_title"):r("delete.title",{name:((C=i.plugin)==null?void 0:C.name)||r("delete.custom_plugin")})}),d=t.ref(!1),u=t.ref(""),m=t.ref(!1),f=async()=>{var C,b,y,B,x;if(d.value=!0,u.value="",!(!((C=i.plugin)!=null&&C.name)||((b=i.config)==null?void 0:b.app)!=="konnect"))try{const S=`${i.config.apiBaseUrl}/v2/control-planes/${i.config.controlPlaneId}/core-entities/plugin-schemas/${(y=i.plugin)==null?void 0:y.name}`;await s.delete(S),a("proceed")}catch(S){const{response:w}=S;(w==null?void 0:w.status)===400&&((x=(B=w.data)==null?void 0:B.message)!=null&&x.includes("plugin schema is currently in use"))?m.value=!0:u.value=l(S)}finally{d.value=!1}};return(C,b)=>{const y=t.resolveComponent("KButton"),B=t.resolveComponent("KModal");return!m.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(vo),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(r)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(di).Plugin,error:u.value,"need-confirm":"",title:c.value,visible:"",onCancel:b[0]||(b[0]=x=>C.$emit("closed")),onProceed:f},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(B,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:b[2]||(b[2]=x=>C.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(o),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(y,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:b[1]||(b[1]=x=>C.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-4148beb9"]]),aO={class:"custom-plugins-grid"},oO={class:"empty-state-title"},rO={class:"empty-state-description"},lO={class:"plugin-card-container"},sO={class:"plugin-card-container"},cO=Ze(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},pluginsPerRow:{type:Number,default:4}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=be.useI18n(),{getPluginCards:r}=be.usePluginHelpers(),l=t.ref(!0),s=C=>{a("plugin-clicked",C)},c=t.computed(()=>{if(i.config.app==="kongManager")return[];const C=JSON.parse(JSON.stringify(i.pluginList))[T.CUSTOM_PLUGINS]||[];return i.canCreateCustomPlugin&&i.navigateOnClick&&i.config.createCustomRoute?[{id:"custom-plugin-create",name:o("plugins.select.tabs.custom.create.name"),available:!0,group:T.CUSTOM_PLUGINS,description:o("plugins.select.tabs.custom.create.description")}].concat(C):C}),d=t.computed(()=>{var y,B;const C=(y=r("all",c.value,i.pluginsPerRow))==null?void 0:y.length,b=(B=r("hidden",c.value,i.pluginsPerRow))==null?void 0:B.length;return C>i.pluginsPerRow?o("plugins.select.view_more",{count:b}):o("plugins.select.view_less")}),u=t.ref(!1),m=t.ref(null),f=C=>{u.value=!0,m.value={id:C.id,name:C.name}},h=C=>{var b;C&&(a("revalidate"),a("delete:success",((b=m.value)==null?void 0:b.name)||"")),u.value=!1,m.value=null};return(C,b)=>{const y=t.resolveComponent("KEmptyState"),B=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",aO,[c.value.length?(t.openBlock(),t.createBlock(B,{key:1,modelValue:l.value,"onUpdate:modelValue":b[0]||(b[0]=x=>l.value=x),class:"custom-plugins-collapse","data-testid":`${t.unref(T).CUSTOM_PLUGINS}-collapse`,title:t.unref(T).CUSTOM_PLUGINS,"trigger-label":d.value},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",lO,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(r)("visible",c.value,e.pluginsPerRow),(x,S)=>(t.openBlock(),t.createBlock(li,{key:`plugin-card-${S}`,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:x,onCustomPluginDelete:w=>f(x),onPluginClicked:s},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))])]),default:t.withCtx(()=>[t.createElementVNode("div",sO,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(r)("hidden",c.value,e.pluginsPerRow),(x,S)=>(t.openBlock(),t.createBlock(li,{key:`plugin-card-${S}`,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:x,onPluginClicked:s},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin"]))),128))])]),_:2},[c.value.length<=e.pluginsPerRow?{name:"trigger",fn:t.withCtx(()=>[t.createTextVNode(" ")]),key:"0"}:void 0]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(y,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",oO,t.toDisplayString(t.unref(o)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",rO,t.toDisplayString(t.unref(o)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),u.value&&m.value?(t.openBlock(),t.createBlock(iO,{key:2,config:e.config,plugin:m.value,onClosed:h,onProceed:b[1]||(b[1]=x=>h(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-acd8a972"]]),dO={class:"plugin-card-container"},pO={class:"plugin-card-container"},_l=Ze(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0},pluginsPerRow:{type:Number,default:4}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const i=t.useModel(e,"modelValue"),a=e,o=n,{i18n:{t:r}}=be.useI18n(),{getPluginCards:l}=be.usePluginHelpers(),s=t.computed(()=>{var u,m;const c=((u=l("all",a.plugins,a.pluginsPerRow))==null?void 0:u.length)||0,d=((m=l("hidden",a.plugins||[],a.pluginsPerRow))==null?void 0:m.length)||0;return c>a.pluginsPerRow?r("plugins.select.view_more",{count:d}):void 0});return(c,d)=>{const u=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(u,{modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=m=>i.value=m),class:"plugins-collapse","data-testid":`${a.name}-collapse`,title:a.name,"trigger-label":i.value?s.value:t.unref(r)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",dO,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l)("visible",a.plugins,a.pluginsPerRow),m=>(t.openBlock(),t.createBlock(li,{key:`plugin-card-${m.id}`,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:m,onPluginClicked:f=>o("plugin-clicked",m)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))])]),default:t.withCtx(()=>[t.createElementVNode("div",pO,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l)("hidden",a.plugins,a.pluginsPerRow),m=>(t.openBlock(),t.createBlock(li,{key:`plugin-card-${m.id}`,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:m,onPluginClicked:f=>o("plugin-clicked",m)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))])]),_:2},[a.plugins.length<=e.pluginsPerRow?{name:"trigger",fn:t.withCtx(()=>[t.createTextVNode(" ")]),key:"0"}:void 0]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-12700243"]]),uO={class:"plugin-select-grid"},mO={class:"empty-state-title"},gO={class:"empty-state-description"},da=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},pluginsPerRow:{type:Number,default:4},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=be.useI18n(),r=t.ref(!1),l=t.ref(Jo),s=d=>{a("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(i.pluginList));return i.config.app==="konnect"&&delete d[T.CUSTOM_PLUGINS],d});return(d,u)=>{const m=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",uO,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(m,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",mO,t.toDisplayString(t.unref(o)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",gO,t.toDisplayString(t.unref(o)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!i.hideHighlightedPlugins&&i.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(_l,{key:1,modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=f=>r.value=f),config:e.config,name:i.highlightedPluginsTitle||t.unref(o)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:i.highlightedPlugins,"plugins-per-row":e.pluginsPerRow,onPluginClicked:u[1]||(u[1]=f=>s(f))},null,8,["modelValue","config","name","navigate-on-click","plugins","plugins-per-row"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Xo),f=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[f]?(t.openBlock(),t.createElementBlock("div",{key:f},[t.createVNode(_l,{modelValue:l.value[f],"onUpdate:modelValue":h=>l.value[f]=h,config:e.config,name:f,"navigate-on-click":e.navigateOnClick,plugins:c.value[f]||[],"plugins-per-row":e.pluginsPerRow,onPluginClicked:u[2]||(u[2]=h=>s(h))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins","plugins-per-row"])])):t.createCommentVNode("",!0)],64))),256))])}}}),fO={class:"kong-ui-entities-plugin-select-form"},AO={class:"plugins-filter-input-container"},hO={key:0},yO={key:3,"aria-live":"polite",class:"plugins-results-container"},bO={"data-testid":"kong-tab"},wO={class:"tab-description"},CO={"data-testid":"custom-tab"},kO={class:"tab-description"},EO=Ze(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},disableCustomPlugins:{type:Boolean,default:!1},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},pluginsPerRow:{type:Number,default:4},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var z,W;const i=e,a=n,o=Pt.useRoute(),r=Pt.useRouter(),{i18n:{t:l}}=be.useI18n(),{pluginMetaData:s}=be.usePluginMetaData(),{getMessageFromError:c}=Ln(),{sortAlpha:d,objectsAreEqual:u}=Dn(),m=t.ref(""),f=t.ref(!0),h=t.ref(!1),C=t.ref(""),b=t.ref([]),y=t.ref({}),B=t.ref([]),{axiosInstance:x}=Kt((z=i.config)==null?void 0:z.axiosRequestConfig),S=t.computed(()=>y.value?Object.entries(y.value).filter(([L])=>L!==T.CUSTOM_PLUGINS).reduce((L,[,D])=>{for(const J of D)L[J.id]=J;return L},{}):{}),w=t.computed(()=>{var J;if(!y.value)return{};const L=m.value.toLowerCase(),D=JSON.parse(JSON.stringify(y.value));for(const U in y.value){const te=((J=y.value[U])==null?void 0:J.filter(se=>se.name.toLowerCase().includes(L)||se.id.toLowerCase().includes(L)||se.group.toLowerCase().includes(L)))||[];te.length?D[U]=te:delete D[U]}return D}),A=t.computed(()=>i.highlightedPluginIds.reduce((L,D)=>{const J=S.value[D];return J&&L.push(J),L},[])),g=t.computed(()=>Object.keys(w.value).length>0),E=t.computed(()=>Object.keys(y.value).length>0&&!g.value),k=i.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title")}]:[],v=t.ref(k.length&&((o==null?void 0:o.hash)||((W=k[0])==null?void 0:W.hash))||""),G=()=>[...new Set([...Object.keys({...i.availableOnServer?{}:s}),...b.value])].filter(L=>!i.ignoredPlugins.includes(L)).filter(L=>i.config.entityType&&(i.config.entityType==="services"&&s[L]&&!s[L].scope.includes(p.SERVICE)||i.config.entityType==="routes"&&s[L]&&!s[L].scope.includes(p.ROUTE)||i.config.entityType==="consumer_groups"&&s[L]&&!s[L].scope.includes(p.CONSUMER_GROUP)||i.config.entityType==="consumers"&&s[L]&&!s[L].scope.includes(p.CONSUMER))?!1:L).reduce((L,D)=>{var Se;const J=s[D]&&s[D].name||D,U={...s[D],id:D,name:J,available:b.value.includes(D),disabledMessage:"",group:((Se=s[D])==null?void 0:Se.group)||T.CUSTOM_PLUGINS};i.disabledPlugins&&(U.disabledMessage=i.disabledPlugins[D]);const te=U.group||l("plugins.select.misc_plugins");let se=L[te];return se||(se=[]),se.push(U),se.sort(d("name")),L[te]=se,L},{}),j=t.computed(()=>{var D;let L=`${i.config.apiBaseUrl}${Oe.select[i.config.app].availablePlugins}`;return i.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&(L=((D=i.config.gatewayInfo)==null?void 0:D.edition)==="community"?`${i.config.apiBaseUrl}${Oe.select[i.config.app].availablePluginsForOss}`:L.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),L}),F=t.computed(()=>{if(i.config.entityType&&i.config.entityId){let L=`${i.config.apiBaseUrl}${Oe.list[i.config.app].forEntity}`;return i.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),L.replace(/{entityType}/gi,i.config.entityType||"").replace(/{entityId}/gi,i.config.entityId||"")}return""}),R=L=>{r.replace({hash:L,query:o.query})};t.watch(()=>i.disabledPlugins,(L,D)=>{!u(L,D)&&!f.value&&(y.value=G())}),t.watch(()=>i.ignoredPlugins,(L,D)=>{!u(L,D)&&!f.value&&(y.value=G())}),t.watch(f,L=>{a("loading",L)});const V=t.ref(!1),K=t.ref(!1),H=t.ref(!1);return t.onBeforeMount(async()=>{V.value=await i.canCreateCustomPlugin(),K.value=await i.canEditCustomPlugin(),H.value=await i.canDeleteCustomPlugin()}),t.onMounted(async()=>{try{const{data:L}=await x.get(j.value);if(i.config.app==="konnect"){const{names:D}=L;b.value=D||[]}else if(i.config.app==="kongManager"){const{plugins:{available_on_server:D}}=L;b.value=D?Object.keys(D):[]}}catch(L){h.value=!0,C.value=c(L)}if(F.value)try{const{data:{data:L}}=await x.get(F.value);if(L!=null&&L.length){const D=L.reduce((J,U)=>(U.name&&J.push(U.name),J),[]);B.value=B.value.concat(D)}}catch{}h.value||(y.value=G()),f.value=!1}),(L,D)=>{const J=t.resolveComponent("KInput"),U=t.resolveComponent("KSkeletonBox"),te=t.resolveComponent("KSkeleton"),se=t.resolveComponent("KEmptyState"),Se=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",fO,[t.createElementVNode("div",AO,[t.createVNode(J,{modelValue:m.value,"onUpdate:modelValue":D[0]||(D[0]=ye=>m.value=ye),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),f.value?(t.openBlock(),t.createElementBlock("section",hO,[t.createVNode(te,{"table-rows":1,type:"table"},{default:t.withCtx(()=>[t.createVNode(U,{width:"6"}),t.createVNode(U,{class:"title-loading-skeleton",width:"6"})]),_:1}),t.createVNode(YB,{"card-count":8,type:"card"})])):h.value?(t.openBlock(),t.createBlock(se,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(C.value),1)]),_:1})):E.value&&m.value?(t.openBlock(),t.createBlock(se,{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(l)("search.no_results",{filter:m.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",yO,[t.unref(k).length&&!e.disableCustomPlugins?(t.openBlock(),t.createBlock(Se,{key:0,modelValue:v.value,"onUpdate:modelValue":D[5]||(D[5]=ye=>v.value=ye),"data-testid":"plugins-tabs",tabs:t.unref(k),onChange:R},{kong:t.withCtx(()=>[t.createElementVNode("div",bO,[t.createElementVNode("p",wO,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(da,{config:e.config,"hide-highlighted-plugins":m.value.length>0,"highlighted-plugins":A.value,"highlighted-plugins-title":i.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":w.value,"plugins-per-row":e.pluginsPerRow,onPluginClicked:D[1]||(D[1]=ye=>L.$emit("plugin-clicked",ye))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list","plugins-per-row"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",CO,[t.createElementVNode("p",kO,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(cO,{"can-create-custom-plugin":V.value,"can-delete-custom-plugin":H.value,"can-edit-custom-plugin":K.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":w.value,"plugins-per-row":e.pluginsPerRow,"onDelete:success":D[2]||(D[2]=ye=>L.$emit("delete-custom:success",ye)),onPluginClicked:D[3]||(D[3]=ye=>L.$emit("plugin-clicked",ye)),onRevalidate:D[4]||(D[4]=()=>y.value=G())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list","plugins-per-row"])])]),_:1},8,["modelValue","tabs"])):(t.openBlock(),t.createBlock(da,{key:1,config:e.config,"hide-highlighted-plugins":m.value.length>0,"highlighted-plugins":A.value,"highlighted-plugins-title":i.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":w.value,"plugins-per-row":e.pluginsPerRow,onPluginClicked:D[6]||(D[6]=ye=>L.$emit("plugin-clicked",ye))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list","plugins-per-row"]))]))])}}}),[["__scopeId","data-v-32dfb7b0"]]),BO={class:"kong-ui-entity-plugin-config-card"},OO={class:"name-cell-wrapper"},xO={class:"info-name"},IO={key:0},SO={key:0},MO={key:0},vO={key:0},pa="config",TO=Ze(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var x;const i=n,a=e,{i18n:{t:o}}=be.useI18n(),r=be.usePluginMetaData(),{setFieldType:l}=be.usePluginHelpers(),{getPropValue:s}=Dn(),c=t.computed(()=>{var S;return(S=Oe.item[a.config.app])==null?void 0:S[a.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,a.scopedEntityType).replace(/{entityId}/gi,a.scopedEntityId)}),d=t.computed(()=>{var A,g;const S={},w=((A=b.value)==null?void 0:A.fields)||[];for(let E=0;E<w.length;E++){const k=b.value.fields[E],v=(g=Object.keys(k))==null?void 0:g[0];l(S,v,k[v])}return{...S,instance_name:{section:xe.Basic,order:1.5},consumer:{label:o("plugins.fields.consumer"),section:xe.Basic,order:6},route:{label:o("plugins.fields.route"),section:xe.Basic,order:6},service:{label:o("plugins.fields.service"),section:xe.Basic,order:6},consumer_group:{label:o("plugins.fields.consumer_group"),section:xe.Basic,order:6},protocols:{type:_.BadgeTag,section:xe.Basic,order:7}}}),u=t.computed(()=>{var w,A,g;if(!((w=b.value)!=null&&w.fields))return[];const S=(A=b.value.fields)==null?void 0:A.find(E=>{var v;return((v=Object.keys(E))==null?void 0:v[0])===pa});return((g=S==null?void 0:S[pa])==null?void 0:g.fields)||[]}),m=t.computed(()=>{var w,A;const S={};if(!u.value)return S;for(let g=0;g<((w=u.value)==null?void 0:w.length);g++){const E=u.value[g],k=(A=Object.keys(E))==null?void 0:A[0],v=E[k];v.required&&(S[k]={order:1}),l(S,k,v)}return S}),{getMessageFromError:f}=Ln(),{axiosInstance:h}=Kt((x=a.config)==null?void 0:x.axiosRequestConfig),C=t.computed(()=>{var w,A;let S=`${a.config.apiBaseUrl}${Oe.form[a.config.app].pluginSchema}`;return a.config.app==="konnect"?S=S.replace(/{controlPlaneId}/gi,((w=a.config)==null?void 0:w.controlPlaneId)||""):a.config.app==="kongManager"&&(S=S.replace(/\/{workspace}/gi,(A=a.config)!=null&&A.workspace?`/${a.config.workspace}`:"")),S=S.replace(/{plugin}/gi,a.config.pluginType),S}),b=t.ref({}),y=t.ref(!1),B=t.ref("");return t.onBeforeMount(async()=>{y.value=!0;try{const{data:S}=await h.get(C.value);b.value=S}catch(S){B.value=f(S),i("error:fetch-schema",S)}finally{y.value=!1}}),(S,w)=>{const A=t.resolveComponent("KSkeleton"),g=t.resolveComponent("KEmptyState"),E=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",BO,[y.value?(t.openBlock(),t.createBlock(A,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):B.value?(t.openBlock(),t.createBlock(g,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(B.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ru),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":pa,"plugin-config-schema":m.value,"onFetch:error":w[0]||(w[0]=k=>S.$emit("fetch:error",k)),"onFetch:success":w[1]||(w[1]=k=>S.$emit("fetch:success",k)),onLoading:w[2]||(w[2]=k=>S.$emit("loading",k))},{name:t.withCtx(k=>[t.createElementVNode("div",OO,[t.createVNode(ri,{class:"plugin-icon",name:t.unref(s)("rowValue",k),width:24},null,8,["name"]),t.createElementVNode("span",xO,t.toDisplayString(t.unref(r).getDisplayName(t.unref(s)("rowValue",k))),1)])]),consumer:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref($t),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(_).LinkInternal},onNavigationClick:()=>S.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(E,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",IO,"–"))]),route:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref($t),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(_).LinkInternal},onNavigationClick:()=>S.$emit("navigation-click",t.unref(s)("rowValue",k).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(E,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",SO,"–"))]),service:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref($t),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(_).LinkInternal},onNavigationClick:()=>S.$emit("navigation-click",t.unref(s)("rowValue",k).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(E,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",MO,"–"))]),consumer_group:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref($t),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(_).LinkInternal},onNavigationClick:()=>S.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(E,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",vO,"–"))]),_:1},8,["config","config-card-doc","config-schema","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-3e4f66ec"]]),{usePluginMetaData:RO}=be;Z.EntityTypeIdField=Bt,Z.PLUGIN_GROUPS_COLLAPSE_STATUS=Jo,Z.PluginConfigCard=TO,Z.PluginForm=BB,Z.PluginGroup=T,Z.PluginGroupArray=Xo,Z.PluginIcon=ri,Z.PluginList=VB,Z.PluginScope=p,Z.PluginSelect=EO,Z.PluginSelectGrid=da,Z.VueFormGenerator=Ye,Z.getPluginIconURL=tr,Z.pluginEndpoints=Oe,Z.usePluginMetaData=RO,Object.defineProperty(Z,Symbol.toStringTag,{value:"Module"})});
|
|
86
|
+
client. If missing, it will be generated for you.`,inputType:"text",encrypted:!0}}]},mf={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}}]},Je={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},jwt:{descriptionKey:"plugins.meta.jwt.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.jwt.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",group:T.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},cors:{descriptionKey:"plugins.meta.cors.description",group:T.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.cors.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",group:T.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP],fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]}},opa:{descriptionKey:"plugins.meta.opa.description",group:T.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.opa.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",group:T.DEPLOYMENT,isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",scope:[p.GLOBAL]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]}},acl:{descriptionKey:"plugins.meta.acl.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.acl.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],fieldRules:{onlyOneOf:[["config.allow","config.deny"]]}},canary:{descriptionKey:"plugins.meta.canary.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.canary.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]}},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]}},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP],imageName:"proxy-cache"},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],imageName:"graphql"},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP],fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]}},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},mocking:{descriptionKey:"plugins.meta.mocking.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.mocking.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]}},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",group:T.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",group:T.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",scope:[p.ROUTE],useLegacyForm:!0},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],useLegacyForm:!0},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],useLegacyForm:!0},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],useLegacyForm:!0},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],useLegacyForm:!0},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],useLegacyForm:!0},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP],useLegacyForm:!0},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",group:T.SERVERLESS,isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",group:T.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",group:T.SERVERLESS,isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",group:T.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],imageName:"kong-function"},"post-function":{descriptionKey:"plugins.meta.post-function.description",group:T.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.post-function.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE],imageName:"kong-function"},datadog:{descriptionKey:"plugins.meta.datadog.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.datadog.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},prometheus:{descriptionKey:"plugins.meta.prometheus.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},zipkin:{descriptionKey:"plugins.meta.zipkin.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},collector:{descriptionKey:"plugins.meta.collector.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.collector.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER,p.CONSUMER_GROUP]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]}},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],imageName:"exit-transformer"},jq:{descriptionKey:"plugins.meta.jq.description",group:T.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.jq.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],imageName:"jq",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]}},"file-log":{descriptionKey:"plugins.meta.file-log.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.file-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"http-log":{descriptionKey:"plugins.meta.http-log.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.http-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},loggly:{descriptionKey:"plugins.meta.loggly.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.loggly.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},statsd:{descriptionKey:"plugins.meta.statsd.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.statsd.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},syslog:{descriptionKey:"plugins.meta.syslog.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.syslog.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",group:T.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",group:T.LOGGING,isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},session:{descriptionKey:"plugins.meta.session.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.session.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",scope:[p.SERVICE]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",group:T.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",scope:[p.GLOBAL,p.SERVICE],imageName:"application-registration"},acme:{descriptionKey:"plugins.meta.acme.description",group:T.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.acme.name",scope:[p.GLOBAL]},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",group:T.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER],fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]}},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",group:T.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",group:T.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",group:T.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",group:T.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]},saml:{descriptionKey:"plugins.meta.saml.description",group:T.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.saml.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE]},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",group:T.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",scope:[p.GLOBAL,p.SERVICE,p.ROUTE,p.CONSUMER]}},qt={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Zo,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Ot(Zo),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Wo,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Ot(Wo)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Qo,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Ot(Qo)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:er,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Ot(er)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:$o,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Ot($o)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:_o,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Ot(_o)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:df,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},gf={acls:of,basicauth_credentials:rf,keyauth_credentials:lf,keyauth_enc_credentials:mf,oauth2_credentials:uf,hmacauth_credentials:sf,jwt_secrets:pf},tr=e=>{var a;const n=((a=Je[e])==null?void 0:a.imageName)||e||"missing",i=new URL(Object.assign({"../assets/images/plugin-icons/acl.png":Em,"../assets/images/plugin-icons/acme.png":Bm,"../assets/images/plugin-icons/ai-data-sanitization.png":Om,"../assets/images/plugin-icons/ai-prompt-decorator.png":xm,"../assets/images/plugin-icons/ai-prompt-guard.png":Im,"../assets/images/plugin-icons/ai-prompt-template.png":Sm,"../assets/images/plugin-icons/ai-proxy.png":Mm,"../assets/images/plugin-icons/ai-rate-limiting-advanced.png":vm,"../assets/images/plugin-icons/ai-request-transformer.png":Tm,"../assets/images/plugin-icons/ai-response-transformer.png":Rm,"../assets/images/plugin-icons/app-dynamics.png":Nm,"../assets/images/plugin-icons/application-registration.png":Vm,"../assets/images/plugin-icons/aws-lambda.png":Lm,"../assets/images/plugin-icons/azure-functions.png":Dm,"../assets/images/plugin-icons/basic-auth.png":jm,"../assets/images/plugin-icons/bot-detection.png":Pm,"../assets/images/plugin-icons/canary.png":Um,"../assets/images/plugin-icons/collector.png":Ym,"../assets/images/plugin-icons/correlation-id.png":Gm,"../assets/images/plugin-icons/cors.png":Fm,"../assets/images/plugin-icons/datadog.png":Hm,"../assets/images/plugin-icons/degraphql.png":zm,"../assets/images/plugin-icons/dynamic-ssl.png":Km,"../assets/images/plugin-icons/exit-transformer.png":qm,"../assets/images/plugin-icons/file-log.png":Xm,"../assets/images/plugin-icons/forward-proxy.png":Jm,"../assets/images/plugin-icons/graphql-rate-limiting-advanced.png":Zm,"../assets/images/plugin-icons/graphql.png":Wm,"../assets/images/plugin-icons/grpc-gateway.png":Qm,"../assets/images/plugin-icons/grpc-web.png":_m,"../assets/images/plugin-icons/hmac-auth.png":$m,"../assets/images/plugin-icons/http-log.png":eg,"../assets/images/plugin-icons/ip-restriction.png":tg,"../assets/images/plugin-icons/jq.png":ng,"../assets/images/plugin-icons/jwe-decrypt.png":ig,"../assets/images/plugin-icons/jwt-signer.png":ag,"../assets/images/plugin-icons/jwt.png":og,"../assets/images/plugin-icons/kafka-log.png":rg,"../assets/images/plugin-icons/kafka-upstream.png":lg,"../assets/images/plugin-icons/key-auth-enc.png":sg,"../assets/images/plugin-icons/key-auth.png":cg,"../assets/images/plugin-icons/kong-function.png":dg,"../assets/images/plugin-icons/kubernetes-sidecar-injector.png":pg,"../assets/images/plugin-icons/ldap-auth-advanced.png":ug,"../assets/images/plugin-icons/ldap-auth.png":mg,"../assets/images/plugin-icons/loggly.png":gg,"../assets/images/plugin-icons/missing.png":fg,"../assets/images/plugin-icons/mocking.png":Ag,"../assets/images/plugin-icons/mtls-auth.png":hg,"../assets/images/plugin-icons/new.png":yg,"../assets/images/plugin-icons/oas-validation.png":bg,"../assets/images/plugin-icons/oauth2-introspection.png":wg,"../assets/images/plugin-icons/oauth2.png":Cg,"../assets/images/plugin-icons/opa.png":kg,"../assets/images/plugin-icons/openid-connect.png":Eg,"../assets/images/plugin-icons/opentelemetry.png":Bg,"../assets/images/plugin-icons/openwhisk.png":Og,"../assets/images/plugin-icons/prometheus.png":xg,"../assets/images/plugin-icons/proxy-cache.png":Ig,"../assets/images/plugin-icons/rate-limiting-advanced.png":Sg,"../assets/images/plugin-icons/rate-limiting.png":Mg,"../assets/images/plugin-icons/request-size-limiting.png":vg,"../assets/images/plugin-icons/request-termination.png":Tg,"../assets/images/plugin-icons/request-transformer-advanced.png":Rg,"../assets/images/plugin-icons/request-transformer.png":Ng,"../assets/images/plugin-icons/request-validator.png":Vg,"../assets/images/plugin-icons/response-ratelimiting.png":Lg,"../assets/images/plugin-icons/response-transformer-advanced.png":Dg,"../assets/images/plugin-icons/response-transformer.png":jg,"../assets/images/plugin-icons/route-by-header.png":Pg,"../assets/images/plugin-icons/route-transformer-advanced.png":Ug,"../assets/images/plugin-icons/runscope.png":Yg,"../assets/images/plugin-icons/saml.png":Gg,"../assets/images/plugin-icons/session.png":Fg,"../assets/images/plugin-icons/statsd-advanced.png":Hg,"../assets/images/plugin-icons/statsd.png":zg,"../assets/images/plugin-icons/syslog.png":Kg,"../assets/images/plugin-icons/tcp-log.png":qg,"../assets/images/plugin-icons/tls-handshake-modifier.png":Xg,"../assets/images/plugin-icons/tls-metadata-headers.png":Jg,"../assets/images/plugin-icons/udp-log.png":Zg,"../assets/images/plugin-icons/upstream-timeout.png":Wg,"../assets/images/plugin-icons/upstream-tls.png":Qg,"../assets/images/plugin-icons/vault-auth.png":_g,"../assets/images/plugin-icons/websocket-size-limit.png":$g,"../assets/images/plugin-icons/websocket-validator.png":ef,"../assets/images/plugin-icons/xml-threat-protection.png":tf,"../assets/images/plugin-icons/zipkin.png":nf})[`../assets/images/plugin-icons/${n}.png`],typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Ut&&Ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;return i.includes("undefined")?new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAMAAABKCk6nAAAAhFBMVEUAAADs+fnr8PTo7fLm7PDl6e7j6+7j6O3i6Ozh5+vp9PTm7PDj6e319fXn7PHj6O739/fn7PDi6e3////o7fLj6Ozt8fbj6u7r7vPi6ezo7fL////n7PHm6/Dl6+/q8PTs8vbu9Pjv9frw9vri6ezv9fnp7/Pt8vfk6u6cpar////e4ePLpSv+AAAAHnRSTlMAKIq93/T6/f7/W8z3GbL4Hr/9AZ39OPFo/Z4FzOeuk05oAAAFJklEQVR4Ae3ThZLjyhWA4SNdWJ9BMy/KA3n/twoXBafWWYb2QPi6Vd9XKGz4q5t4QPNZHDP2n8W/4uT0bJBUZHB2ehL/pPOLy6wQlxfn8bThaJxUajwaxuMm01lSsdl0Eo+YL5LKLebxoOUqqd5qGQ9YD7IHGKzjPptt9gTbzT19n2dv8Pyw8DZ7hG0U1tkrrOM7y0H2CoNlfGO+yp5hNY8vJovsHRaT+GyaPcQ03mkiYvjnNu4za94Ljtn+vd/Efc7+/sf4YJT32L286qjE1ctd3mMUH5yP89D1m46KvLnOQ+PzeO8iD+xuOipzs8sDF/HeZZZuX3dU5/Vtli7jnZMs7fSts/AuSycRcZqlm44q3WTpNCLOsnDdUanrLJxF29zF9zZ3QaXuNuWNJtosvOyo1ssstG0ThZ+Dah3Ea+LHIvmLjoq9KHL+2DYHyanYQc6jDYzACCxwZKGjallog177DwIjMAIjMAIjsMAIjMAIjMAIjMAILDACIzACIzACI7DACIzACIzACIzAAiMwAiMwAiMwAiOwwAiMwAiMwAiMwAIjMAIjMAIjMAILjMAIjMAIjMAIjMACIzACIzACIzACC4zACIzACIzACIzAAiMwAiMwAiMwAguMwAiMwAiMwAgsMAIjMAIjMAIjMAILjMAIjMAIjMAILDACIzACI/DP/6GjGENgBEZgBBYYgREYgREYgRGYJwMjMAIjMAI3TziCMQTmaAIjMAIjMAIjMAILjMAIjMAIjMAITBa6X9CveqD7hWWhDXpNYIERGIERGIERGIEFRmAERmAERuBKCdw2R68VGIERGIERWGAERmAERmAERmCBERiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIEFRmAERmAERuB+EPjt/ui9FRiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgWshcNscvVZgBEZgBEZggREYgREYgREYgQVGYARGYARGYARGYIERGIERGIERGIEFRmAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBBYYgREYgREYgftB4Lf7o/dWYARGYARGYIERGIERGIERGIEFRmAE5kj9GEfkb/EfwwkWGIERGIERGIERWGAERmAERmAERmAEFhiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIERWGAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBEZggREYgREYgREYgQVGYARGYARGYAQWGIERGIERGIERGIEFRmAERmAERmAEFhiBERiBERiBEZh2r3iflPn2B4HvgordPRl4H1RsL7DAfSJw/JCFq45qXWXhh3Yfhb8F1TqIt2/3ZeGf9kGl9j/F997XPcvCdUelrrNwFhGnWbrpqNJNlk4j4iRLu9cdFXq9y9JJvHOZpVuFa+x7m6XLeO8iD+xuOipzs8sDF/He+TgPXb/pqMib6zw0Po8PRnmP3curjkpcvdzlPUYR0UTE8M9t3GfWvBfHjP17v4n7nP39j/HRNOmhaXw2WSS9s5jEF/NV0jOreXxjOUh6ZbCM76yTXllHYZv0yDZKm+dJbzzfxGHhbdIT203cZz1IemCwjgcsV0n1Vst40HyRVG4xj0dMprOkYrPpJB43HI2TSo1Hw3ja+cVlUqHLi/P4J52cng2SigzOTk/iPk08oPksjhn7z+J+/wBSUhUZLUGZBgAAAABJRU5ErkJggg==",typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Ut&&Ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href:i};function nr(){const{capitalize:e}=Mi(),n=["methods","logout_methods"];return{setFieldType:(d,u,m)=>{var f,h,C;if(!(!d||!u||!m))switch(m.type){case"boolean":d[u]={type:_.BadgeStatus,...d[u]};break;case"string":m.encrypted?d[u]={type:_.Redacted,...d[u]}:d[u]={type:_.Text,...d[u]};break;case"set":((f=m.elements)==null?void 0:f.type)==="string"&&(d[u]={type:_.BadgeTag,...d[u]});break;case"array":n.includes(u)?d[u]={type:_.BadgeMethod,...d[u]}:((h=m.elements)==null?void 0:h.type)==="string"?m.encrypted?d[u]={type:_.RedactedArray,...d[u]}:d[u]={type:_.BadgeTag,...d[u]}:((C=m.elements)==null?void 0:C.type)==="record"&&(d[u]={type:_.Json,...d[u]});break;case"record":d[u]={type:_.Json,...d[u]};break;default:d[u]={type:_.Text,...d[u]};break}},getPluginCards:(d,u,m)=>d==="all"?u:d==="visible"?u.slice(0,m):u.slice(m),convertToDotNotation:d=>d.replace(/-/g,"."),unFlattenObject:d=>{const u={};for(const m in d){const f=m.split(".");f.reduce((h,C,b)=>h[C]||(h[C]=isNaN(f[b+1])?f.length-1===b?d[m]:{}:[]),u)}return u},isObjectEmpty:d=>Object.keys(d).length===0,unsetNullForeignKey:(d,u)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(d)>-1&&u[d]===null&&(delete u[d],u[d.replace(".id","")]=null)},formatPluginFieldLabel:d=>e(d.replace(/_/g," "))}}const ff=()=>{const{i18n:{t:e}}=Hn(),n={},i={};for(const[o,r]of Object.entries(Je))n[o]={...r,name:e(r.nameKey),description:e(r.descriptionKey)};for(const[o,r]of Object.entries(qt))i[o]={...r,name:e(r.nameKey),title:e(r.titleKey)};return{pluginMetaData:n,credentialMetaData:i,credentialSchemas:qt,getDisplayName:o=>{var r;return((r=n[o])==null?void 0:r.name)||o}}};function ir(e,n){for(var i=-1,a=e==null?0:e.length;++i<a&&n(e[i],i,e)!==!1;);return e}function Af(e){return function(n,i,a){for(var o=-1,r=Object(n),l=a(n),s=l.length;s--;){var c=l[e?s:++o];if(i(r[c],c,r)===!1)break}return n}}var hf=Af();const yf=hf;function bf(e,n){for(var i=-1,a=Array(e);++i<e;)a[i]=n(i);return a}var ar=typeof global=="object"&&global&&global.Object===Object&&global,wf=typeof self=="object"&&self&&self.Object===Object&&self,Ke=ar||wf||Function("return this")(),nt=Ke.Symbol,or=Object.prototype,Cf=or.hasOwnProperty,kf=or.toString,un=nt?nt.toStringTag:void 0;function Ef(e){var n=Cf.call(e,un),i=e[un];try{e[un]=void 0;var a=!0}catch{}var o=kf.call(e);return a&&(n?e[un]=i:delete e[un]),o}var Bf=Object.prototype,Of=Bf.toString;function xf(e){return Of.call(e)}var If="[object Null]",Sf="[object Undefined]",rr=nt?nt.toStringTag:void 0;function gt(e){return e==null?e===void 0?Sf:If:rr&&rr in Object(e)?Ef(e):xf(e)}function it(e){return e!=null&&typeof e=="object"}var Mf="[object Arguments]";function lr(e){return it(e)&>(e)==Mf}var sr=Object.prototype,vf=sr.hasOwnProperty,Tf=sr.propertyIsEnumerable,Pi=lr(function(){return arguments}())?lr:function(e){return it(e)&&vf.call(e,"callee")&&!Tf.call(e,"callee")},ze=Array.isArray;function Rf(){return!1}var cr=typeof Z=="object"&&Z&&!Z.nodeType&&Z,dr=cr&&typeof module=="object"&&module&&!module.nodeType&&module,Nf=dr&&dr.exports===cr,pr=Nf?Ke.Buffer:void 0,Vf=pr?pr.isBuffer:void 0,mn=Vf||Rf,Lf=9007199254740991,Df=/^(?:0|[1-9]\d*)$/;function Ui(e,n){var i=typeof e;return n=n??Lf,!!n&&(i=="number"||i!="symbol"&&Df.test(e))&&e>-1&&e%1==0&&e<n}var jf=9007199254740991;function Yi(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=jf}var Pf="[object Arguments]",Uf="[object Array]",Yf="[object Boolean]",Gf="[object Date]",Ff="[object Error]",Hf="[object Function]",zf="[object Map]",Kf="[object Number]",qf="[object Object]",Xf="[object RegExp]",Jf="[object Set]",Zf="[object String]",Wf="[object WeakMap]",Qf="[object ArrayBuffer]",_f="[object DataView]",$f="[object Float32Array]",eA="[object Float64Array]",tA="[object Int8Array]",nA="[object Int16Array]",iA="[object Int32Array]",aA="[object Uint8Array]",oA="[object Uint8ClampedArray]",rA="[object Uint16Array]",lA="[object Uint32Array]",me={};me[$f]=me[eA]=me[tA]=me[nA]=me[iA]=me[aA]=me[oA]=me[rA]=me[lA]=!0,me[Pf]=me[Uf]=me[Qf]=me[Yf]=me[_f]=me[Gf]=me[Ff]=me[Hf]=me[zf]=me[Kf]=me[qf]=me[Xf]=me[Jf]=me[Zf]=me[Wf]=!1;function sA(e){return it(e)&&Yi(e.length)&&!!me[gt(e)]}function Gi(e){return function(n){return e(n)}}var ur=typeof Z=="object"&&Z&&!Z.nodeType&&Z,gn=ur&&typeof module=="object"&&module&&!module.nodeType&&module,cA=gn&&gn.exports===ur,Fi=cA&&ar.process,Xt=function(){try{var e=gn&&gn.require&&gn.require("util").types;return e||Fi&&Fi.binding&&Fi.binding("util")}catch{}}(),mr=Xt&&Xt.isTypedArray,Hi=mr?Gi(mr):sA,dA=Object.prototype,pA=dA.hasOwnProperty;function gr(e,n){var i=ze(e),a=!i&&Pi(e),o=!i&&!a&&mn(e),r=!i&&!a&&!o&&Hi(e),l=i||a||o||r,s=l?bf(e.length,String):[],c=s.length;for(var d in e)(n||pA.call(e,d))&&!(l&&(d=="length"||o&&(d=="offset"||d=="parent")||r&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Ui(d,c)))&&s.push(d);return s}var uA=Object.prototype;function zn(e){var n=e&&e.constructor,i=typeof n=="function"&&n.prototype||uA;return e===i}function fr(e,n){return function(i){return e(n(i))}}var mA=fr(Object.keys,Object),gA=Object.prototype,fA=gA.hasOwnProperty;function Ar(e){if(!zn(e))return mA(e);var n=[];for(var i in Object(e))fA.call(e,i)&&i!="constructor"&&n.push(i);return n}function Be(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var AA="[object AsyncFunction]",hA="[object Function]",yA="[object GeneratorFunction]",bA="[object Proxy]";function oe(e){if(!Be(e))return!1;var n=gt(e);return n==hA||n==yA||n==AA||n==bA}function Jt(e){return e!=null&&Yi(e.length)&&!oe(e)}function Zt(e){return Jt(e)?gr(e):Ar(e)}function wA(e,n){return e&&yf(e,n,Zt)}function CA(e,n){return function(i,a){if(i==null)return i;if(!Jt(i))return e(i,a);for(var o=i.length,r=n?o:-1,l=Object(i);(n?r--:++r<o)&&a(l[r],r,l)!==!1;);return i}}var kA=CA(wA);const EA=kA;function Kn(e){return e}function BA(e){return typeof e=="function"?e:Kn}function Le(e,n){var i=ze(e)?ir:EA;return i(e,BA(n))}var OA="[object Symbol]";function qn(e){return typeof e=="symbol"||it(e)&>(e)==OA}var xA=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,IA=/^\w*$/;function zi(e,n){if(ze(e))return!1;var i=typeof e;return i=="number"||i=="symbol"||i=="boolean"||e==null||qn(e)?!0:IA.test(e)||!xA.test(e)||n!=null&&e in Object(n)}var Ki=Ke["__core-js_shared__"],hr=function(){var e=/[^.]+$/.exec(Ki&&Ki.keys&&Ki.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function SA(e){return!!hr&&hr in e}var MA=Function.prototype,vA=MA.toString;function xt(e){if(e!=null){try{return vA.call(e)}catch{}try{return e+""}catch{}}return""}var TA=/[\\^$.*+?()[\]{}|]/g,RA=/^\[object .+?Constructor\]$/,NA=Function.prototype,VA=Object.prototype,LA=NA.toString,DA=VA.hasOwnProperty,jA=RegExp("^"+LA.call(DA).replace(TA,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function PA(e){if(!Be(e)||SA(e))return!1;var n=oe(e)?jA:RA;return n.test(xt(e))}function UA(e,n){return e==null?void 0:e[n]}function It(e,n){var i=UA(e,n);return PA(i)?i:void 0}var fn=It(Object,"create");function YA(){this.__data__=fn?fn(null):{},this.size=0}function GA(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var FA="__lodash_hash_undefined__",HA=Object.prototype,zA=HA.hasOwnProperty;function KA(e){var n=this.__data__;if(fn){var i=n[e];return i===FA?void 0:i}return zA.call(n,e)?n[e]:void 0}var qA=Object.prototype,XA=qA.hasOwnProperty;function JA(e){var n=this.__data__;return fn?n[e]!==void 0:XA.call(n,e)}var ZA="__lodash_hash_undefined__";function WA(e,n){var i=this.__data__;return this.size+=this.has(e)?0:1,i[e]=fn&&n===void 0?ZA:n,this}function St(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}St.prototype.clear=YA,St.prototype.delete=GA,St.prototype.get=KA,St.prototype.has=JA,St.prototype.set=WA;function QA(){this.__data__=[],this.size=0}function An(e,n){return e===n||e!==e&&n!==n}function Xn(e,n){for(var i=e.length;i--;)if(An(e[i][0],n))return i;return-1}var _A=Array.prototype,$A=_A.splice;function eh(e){var n=this.__data__,i=Xn(n,e);if(i<0)return!1;var a=n.length-1;return i==a?n.pop():$A.call(n,i,1),--this.size,!0}function th(e){var n=this.__data__,i=Xn(n,e);return i<0?void 0:n[i][1]}function nh(e){return Xn(this.__data__,e)>-1}function ih(e,n){var i=this.__data__,a=Xn(i,e);return a<0?(++this.size,i.push([e,n])):i[a][1]=n,this}function st(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}st.prototype.clear=QA,st.prototype.delete=eh,st.prototype.get=th,st.prototype.has=nh,st.prototype.set=ih;var hn=It(Ke,"Map");function ah(){this.size=0,this.__data__={hash:new St,map:new(hn||st),string:new St}}function oh(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Jn(e,n){var i=e.__data__;return oh(n)?i[typeof n=="string"?"string":"hash"]:i.map}function rh(e){var n=Jn(this,e).delete(e);return this.size-=n?1:0,n}function lh(e){return Jn(this,e).get(e)}function sh(e){return Jn(this,e).has(e)}function ch(e,n){var i=Jn(this,e),a=i.size;return i.set(e,n),this.size+=i.size==a?0:1,this}function ct(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}ct.prototype.clear=ah,ct.prototype.delete=rh,ct.prototype.get=lh,ct.prototype.has=sh,ct.prototype.set=ch;var dh="Expected a function";function qi(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(dh);var i=function(){var a=arguments,o=n?n.apply(this,a):a[0],r=i.cache;if(r.has(o))return r.get(o);var l=e.apply(this,a);return i.cache=r.set(o,l)||r,l};return i.cache=new(qi.Cache||ct),i}qi.Cache=ct;var ph=500;function uh(e){var n=qi(e,function(a){return i.size===ph&&i.clear(),a}),i=n.cache;return n}var mh=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,gh=/\\(\\)?/g,fh=uh(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(mh,function(i,a,o,r){n.push(o?r.replace(gh,"$1"):a||i)}),n});function Ah(e,n){for(var i=-1,a=e==null?0:e.length,o=Array(a);++i<a;)o[i]=n(e[i],i,e);return o}var hh=1/0,yr=nt?nt.prototype:void 0,br=yr?yr.toString:void 0;function wr(e){if(typeof e=="string")return e;if(ze(e))return Ah(e,wr)+"";if(qn(e))return br?br.call(e):"";var n=e+"";return n=="0"&&1/e==-hh?"-0":n}function Cr(e){return e==null?"":wr(e)}function kr(e,n){return ze(e)?e:zi(e,n)?[e]:fh(Cr(e))}var yh=1/0;function Zn(e){if(typeof e=="string"||qn(e))return e;var n=e+"";return n=="0"&&1/e==-yh?"-0":n}function Er(e,n){n=kr(n,e);for(var i=0,a=n.length;e!=null&&i<a;)e=e[Zn(n[i++])];return i&&i==a?e:void 0}function ee(e,n,i){var a=e==null?void 0:Er(e,n);return a===void 0?i:a}function Ce(e){return e==null}var bh="[object String]";function Mt(e){return typeof e=="string"||!ze(e)&&it(e)&>(e)==bh}const Br={methods:{getFieldRowClasses(e){const n=this.fieldErrors(e).length>0,i={[ee(this.options,"validationErrorClass","error")]:n,[ee(this.options,"validationSuccessClass","valid")]:!n,disabled:this.fieldDisabled(e),readonly:this.fieldReadonly(e),featured:this.fieldFeatured(e),required:this.fieldRequired(e)};return Array.isArray(e.styleClasses)?Le(e.styleClasses,a=>i[a]=!0):Mt(e.styleClasses)&&(i[e.styleClasses]=!0),Ce(e.type)||(i["field-"+e.type]=!0),i},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},fieldDisabled(e){return oe(e.disabled)?e.disabled.call(this,this.model,e,this):Ce(e.disabled)?!1:e.disabled},fieldReadonly(e){return oe(e.readonly)?e.readonly.call(this,this.model,e,this):Ce(e.readonly)?!1:e.readonly},fieldFeatured(e){return oe(e.featured)?e.featured.call(this,this.model,e,this):Ce(e.featured)?!1:e.featured},fieldRequired(e){return oe(e.required)?e.required.call(this,this.model,e,this):Ce(e.required)?!1:e.required}}};function wh(){this.__data__=new st,this.size=0}function Ch(e){var n=this.__data__,i=n.delete(e);return this.size=n.size,i}function kh(e){return this.__data__.get(e)}function Eh(e){return this.__data__.has(e)}var Bh=200;function Oh(e,n){var i=this.__data__;if(i instanceof st){var a=i.__data__;if(!hn||a.length<Bh-1)return a.push([e,n]),this.size=++i.size,this;i=this.__data__=new ct(a)}return i.set(e,n),this.size=i.size,this}function at(e){var n=this.__data__=new st(e);this.size=n.size}at.prototype.clear=wh,at.prototype.delete=Ch,at.prototype.get=kh,at.prototype.has=Eh,at.prototype.set=Oh;var Wn=function(){try{var e=It(Object,"defineProperty");return e({},"",{}),e}catch{}}();function Or(e,n,i){n=="__proto__"&&Wn?Wn(e,n,{configurable:!0,enumerable:!0,value:i,writable:!0}):e[n]=i}var xh=Object.prototype,Ih=xh.hasOwnProperty;function xr(e,n,i){var a=e[n];(!(Ih.call(e,n)&&An(a,i))||i===void 0&&!(n in e))&&Or(e,n,i)}function Qn(e,n,i,a){var o=!i;i||(i={});for(var r=-1,l=n.length;++r<l;){var s=n[r],c=a?a(i[s],e[s],s,i,e):void 0;c===void 0&&(c=e[s]),o?Or(i,s,c):xr(i,s,c)}return i}function Sh(e,n){return e&&Qn(n,Zt(n),e)}function Mh(e){var n=[];if(e!=null)for(var i in Object(e))n.push(i);return n}var vh=Object.prototype,Th=vh.hasOwnProperty;function Rh(e){if(!Be(e))return Mh(e);var n=zn(e),i=[];for(var a in e)a=="constructor"&&(n||!Th.call(e,a))||i.push(a);return i}function _n(e){return Jt(e)?gr(e,!0):Rh(e)}function Nh(e,n){return e&&Qn(n,_n(n),e)}var Ir=typeof Z=="object"&&Z&&!Z.nodeType&&Z,Sr=Ir&&typeof module=="object"&&module&&!module.nodeType&&module,Vh=Sr&&Sr.exports===Ir,Mr=Vh?Ke.Buffer:void 0,vr=Mr?Mr.allocUnsafe:void 0;function Lh(e,n){if(n)return e.slice();var i=e.length,a=vr?vr(i):new e.constructor(i);return e.copy(a),a}function Dh(e,n){var i=-1,a=e.length;for(n||(n=Array(a));++i<a;)n[i]=e[i];return n}function jh(e,n){for(var i=-1,a=e==null?0:e.length,o=0,r=[];++i<a;){var l=e[i];n(l,i,e)&&(r[o++]=l)}return r}function Tr(){return[]}var Ph=Object.prototype,Uh=Ph.propertyIsEnumerable,Rr=Object.getOwnPropertySymbols,Xi=Rr?function(e){return e==null?[]:(e=Object(e),jh(Rr(e),function(n){return Uh.call(e,n)}))}:Tr;function Yh(e,n){return Qn(e,Xi(e),n)}function Nr(e,n){for(var i=-1,a=n.length,o=e.length;++i<a;)e[o+i]=n[i];return e}var Gh=fr(Object.getPrototypeOf,Object);const Vr=Gh;var Fh=Object.getOwnPropertySymbols,Lr=Fh?function(e){for(var n=[];e;)Nr(n,Xi(e)),e=Vr(e);return n}:Tr;function Hh(e,n){return Qn(e,Lr(e),n)}function Dr(e,n,i){var a=n(e);return ze(e)?a:Nr(a,i(e))}function Ji(e){return Dr(e,Zt,Xi)}function zh(e){return Dr(e,_n,Lr)}var Zi=It(Ke,"DataView"),Wi=It(Ke,"Promise"),Wt=It(Ke,"Set"),Qi=It(Ke,"WeakMap"),jr="[object Map]",Kh="[object Object]",Pr="[object Promise]",Ur="[object Set]",Yr="[object WeakMap]",Gr="[object DataView]",qh=xt(Zi),Xh=xt(hn),Jh=xt(Wi),Zh=xt(Wt),Wh=xt(Qi),vt=gt;(Zi&&vt(new Zi(new ArrayBuffer(1)))!=Gr||hn&&vt(new hn)!=jr||Wi&&vt(Wi.resolve())!=Pr||Wt&&vt(new Wt)!=Ur||Qi&&vt(new Qi)!=Yr)&&(vt=function(e){var n=gt(e),i=n==Kh?e.constructor:void 0,a=i?xt(i):"";if(a)switch(a){case qh:return Gr;case Xh:return jr;case Jh:return Pr;case Zh:return Ur;case Wh:return Yr}return n});const Qt=vt;var Qh=Object.prototype,_h=Qh.hasOwnProperty;function $h(e){var n=e.length,i=new e.constructor(n);return n&&typeof e[0]=="string"&&_h.call(e,"index")&&(i.index=e.index,i.input=e.input),i}var $n=Ke.Uint8Array;function _i(e){var n=new e.constructor(e.byteLength);return new $n(n).set(new $n(e)),n}function ey(e,n){var i=n?_i(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.byteLength)}var ty=/\w*$/;function ny(e){var n=new e.constructor(e.source,ty.exec(e));return n.lastIndex=e.lastIndex,n}var Fr=nt?nt.prototype:void 0,Hr=Fr?Fr.valueOf:void 0;function iy(e){return Hr?Object(Hr.call(e)):{}}function ay(e,n){var i=n?_i(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.length)}var oy="[object Boolean]",ry="[object Date]",ly="[object Map]",sy="[object Number]",cy="[object RegExp]",dy="[object Set]",py="[object String]",uy="[object Symbol]",my="[object ArrayBuffer]",gy="[object DataView]",fy="[object Float32Array]",Ay="[object Float64Array]",hy="[object Int8Array]",yy="[object Int16Array]",by="[object Int32Array]",wy="[object Uint8Array]",Cy="[object Uint8ClampedArray]",ky="[object Uint16Array]",Ey="[object Uint32Array]";function By(e,n,i){var a=e.constructor;switch(n){case my:return _i(e);case oy:case ry:return new a(+e);case gy:return ey(e,i);case fy:case Ay:case hy:case yy:case by:case wy:case Cy:case ky:case Ey:return ay(e,i);case ly:return new a;case sy:case py:return new a(e);case cy:return ny(e);case dy:return new a;case uy:return iy(e)}}var zr=Object.create,Oy=function(){function e(){}return function(n){if(!Be(n))return{};if(zr)return zr(n);e.prototype=n;var i=new e;return e.prototype=void 0,i}}();function xy(e){return typeof e.constructor=="function"&&!zn(e)?Oy(Vr(e)):{}}var Iy="[object Map]";function Sy(e){return it(e)&&Qt(e)==Iy}var Kr=Xt&&Xt.isMap,My=Kr?Gi(Kr):Sy,vy="[object Set]";function Ty(e){return it(e)&&Qt(e)==vy}var qr=Xt&&Xt.isSet,Ry=qr?Gi(qr):Ty,Ny=1,Vy=2,Ly=4,Xr="[object Arguments]",Dy="[object Array]",jy="[object Boolean]",Py="[object Date]",Uy="[object Error]",Jr="[object Function]",Yy="[object GeneratorFunction]",Gy="[object Map]",Fy="[object Number]",Zr="[object Object]",Hy="[object RegExp]",zy="[object Set]",Ky="[object String]",qy="[object Symbol]",Xy="[object WeakMap]",Jy="[object ArrayBuffer]",Zy="[object DataView]",Wy="[object Float32Array]",Qy="[object Float64Array]",_y="[object Int8Array]",$y="[object Int16Array]",eb="[object Int32Array]",tb="[object Uint8Array]",nb="[object Uint8ClampedArray]",ib="[object Uint16Array]",ab="[object Uint32Array]",pe={};pe[Xr]=pe[Dy]=pe[Jy]=pe[Zy]=pe[jy]=pe[Py]=pe[Wy]=pe[Qy]=pe[_y]=pe[$y]=pe[eb]=pe[Gy]=pe[Fy]=pe[Zr]=pe[Hy]=pe[zy]=pe[Ky]=pe[qy]=pe[tb]=pe[nb]=pe[ib]=pe[ab]=!0,pe[Uy]=pe[Jr]=pe[Xy]=!1;function yn(e,n,i,a,o,r){var l,s=n&Ny,c=n&Vy,d=n&Ly;if(i&&(l=o?i(e,a,o,r):i(e)),l!==void 0)return l;if(!Be(e))return e;var u=ze(e);if(u){if(l=$h(e),!s)return Dh(e,l)}else{var m=Qt(e),f=m==Jr||m==Yy;if(mn(e))return Lh(e,s);if(m==Zr||m==Xr||f&&!o){if(l=c||f?{}:xy(e),!s)return c?Hh(e,Nh(l,e)):Yh(e,Sh(l,e))}else{if(!pe[m])return o?e:{};l=By(e,m,s)}}r||(r=new at);var h=r.get(e);if(h)return h;r.set(e,l),Ry(e)?e.forEach(function(y){l.add(yn(y,n,i,y,e,r))}):My(e)&&e.forEach(function(y,B){l.set(B,yn(y,n,i,B,e,r))});var C=d?c?zh:Ji:c?_n:Zt,b=u?void 0:C(e);return ir(b||e,function(y,B){b&&(B=y,y=e[B]),xr(l,B,yn(y,n,i,B,e,r))}),l}var ob=1,rb=4;function $i(e){return yn(e,ob|rb)}const ea=(e,n="")=>typeof e.id<"u"?n+e.id:n+(e.inputName||e.label||e.model||"").toString().trim().toLowerCase().replace(/ |_/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-]+)/g,""),Wr=(e="")=>e.toString().trim().replace(/ /g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-_/./:]+)/g,"");var ta=function(){return Ke.Date.now()},lb=/\s/;function sb(e){for(var n=e.length;n--&&lb.test(e.charAt(n)););return n}var cb=/^\s+/;function db(e){return e&&e.slice(0,sb(e)+1).replace(cb,"")}var Qr=NaN,pb=/^[-+]0x[0-9a-f]+$/i,ub=/^0b[01]+$/i,mb=/^0o[0-7]+$/i,gb=parseInt;function na(e){if(typeof e=="number")return e;if(qn(e))return Qr;if(Be(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=Be(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=db(e);var i=ub.test(e);return i||mb.test(e)?gb(e.slice(2),i?2:8):pb.test(e)?Qr:+e}var fb="Expected a function",Ab=Math.max,hb=Math.min;function bn(e,n,i){var a,o,r,l,s,c,d=0,u=!1,m=!1,f=!0;if(typeof e!="function")throw new TypeError(fb);n=na(n)||0,Be(i)&&(u=!!i.leading,m="maxWait"in i,r=m?Ab(na(i.maxWait)||0,n):r,f="trailing"in i?!!i.trailing:f);function h(g){var E=a,k=o;return a=o=void 0,d=g,l=e.apply(k,E),l}function C(g){return d=g,s=setTimeout(B,n),u?h(g):l}function b(g){var E=g-c,k=g-d,v=n-E;return m?hb(v,r-k):v}function y(g){var E=g-c,k=g-d;return c===void 0||E>=n||E<0||m&&k>=r}function B(){var g=ta();if(y(g))return x(g);s=setTimeout(B,b(g))}function x(g){return s=void 0,f&&a?h(g):(a=o=void 0,l)}function S(){s!==void 0&&clearTimeout(s),d=0,a=c=o=s=void 0}function w(){return s===void 0?l:x(ta())}function A(){var g=ta(),E=y(g);if(a=arguments,o=this,c=g,E){if(s===void 0)return C(c);if(m)return clearTimeout(s),s=setTimeout(B,n),h(c)}return s===void 0&&(s=setTimeout(B,n)),l}return A.cancel=S,A.flush=w,A}var yb="__lodash_hash_undefined__";function bb(e){return this.__data__.set(e,yb),this}function wb(e){return this.__data__.has(e)}function wn(e){var n=-1,i=e==null?0:e.length;for(this.__data__=new ct;++n<i;)this.add(e[n])}wn.prototype.add=wn.prototype.push=bb,wn.prototype.has=wb;function _r(e,n,i,a){for(var o=e.length,r=i+(a?1:-1);a?r--:++r<o;)if(n(e[r],r,e))return r;return-1}function Cb(e){return e!==e}function kb(e,n,i){for(var a=i-1,o=e.length;++a<o;)if(e[a]===n)return a;return-1}function Eb(e,n,i){return n===n?kb(e,n,i):_r(e,Cb,i)}function Bb(e,n){var i=e==null?0:e.length;return!!i&&Eb(e,n,0)>-1}function Ob(e,n,i){for(var a=-1,o=e==null?0:e.length;++a<o;)if(i(n,e[a]))return!0;return!1}function $r(e,n){return e.has(n)}function xb(){}function ia(e){var n=-1,i=Array(e.size);return e.forEach(function(a){i[++n]=a}),i}var Ib=1/0,Sb=Wt&&1/ia(new Wt([,-0]))[1]==Ib?function(e){return new Wt(e)}:xb,Mb=200;function vb(e,n,i){var a=-1,o=Bb,r=e.length,l=!0,s=[],c=s;if(i)l=!1,o=Ob;else if(r>=Mb){var d=n?null:Sb(e);if(d)return ia(d);l=!1,o=$r,c=new wn}else c=n?[]:s;e:for(;++a<r;){var u=e[a],m=n?n(u):u;if(u=i||u!==0?u:0,l&&m===m){for(var f=c.length;f--;)if(c[f]===m)continue e;n&&c.push(m),s.push(u)}else o(c,m,i)||(c!==s&&c.push(m),s.push(u))}return s}function el(e){return e&&e.length?vb(e):[]}var Tb=0;function tl(e){var n=++Tb;return Cr(e)+n}function Rb(e,n,i){switch(i.length){case 0:return e.call(n);case 1:return e.call(n,i[0]);case 2:return e.call(n,i[0],i[1]);case 3:return e.call(n,i[0],i[1],i[2])}return e.apply(n,i)}var nl=Math.max;function Nb(e,n,i){return n=nl(n===void 0?e.length-1:n,0),function(){for(var a=arguments,o=-1,r=nl(a.length-n,0),l=Array(r);++o<r;)l[o]=a[n+o];o=-1;for(var s=Array(n+1);++o<n;)s[o]=a[o];return s[n]=i(l),Rb(e,this,s)}}function Vb(e){return function(){return e}}var Lb=Wn?function(e,n){return Wn(e,"toString",{configurable:!0,enumerable:!1,value:Vb(n),writable:!0})}:Kn;const Db=Lb;var jb=800,Pb=16,Ub=Date.now;function Yb(e){var n=0,i=0;return function(){var a=Ub(),o=Pb-(a-i);if(i=a,o>0){if(++n>=jb)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}var Gb=Yb(Db);function Fb(e,n){return Gb(Nb(e,n,Kn),e+"")}function Hb(e,n,i){if(!Be(i))return!1;var a=typeof n;return(a=="number"?Jt(i)&&Ui(n,i.length):a=="string"&&n in i)?An(i[n],e):!1}var il=Object.prototype,zb=il.hasOwnProperty,ft=Fb(function(e,n){e=Object(e);var i=-1,a=n.length,o=a>2?n[2]:void 0;for(o&&Hb(n[0],n[1],o)&&(a=1);++i<a;)for(var r=n[i],l=_n(r),s=-1,c=l.length;++s<c;){var d=l[s],u=e[d];(u===void 0||An(u,il[d])&&!zb.call(e,d))&&(e[d]=r[d])}return e}),Kb=Ke.isFinite;function qb(e){return typeof e=="number"&&Kb(e)}var al=1/0,Xb=17976931348623157e292;function Jb(e){if(!e)return e===0?e:0;if(e=na(e),e===al||e===-al){var n=e<0?-1:1;return n*Xb}return e===e?e:0}function ol(e){var n=Jb(e),i=n%1;return n===n?i?n-i:n:0}function Zb(e){return typeof e=="number"&&e==ol(e)}var Wb="[object Number]";function aa(e){return typeof e=="number"||it(e)&>(e)==Wb}var rl=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,At="\\d\\d?",ht="\\d\\d",Qb="\\d{3}",_b="\\d{4}",Cn="[^\\s]+",ll=/\[([^]*?)\]/gm;function sl(e,n){for(var i=[],a=0,o=e.length;a<o;a++)i.push(e[a].substr(0,n));return i}var cl=function(e){return function(n,i){var a=i[e].map(function(r){return r.toLowerCase()}),o=a.indexOf(n.toLowerCase());return o>-1?o:null}};function Tt(e){for(var n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];for(var a=0,o=n;a<o.length;a++){var r=o[a];for(var l in r)e[l]=r[l]}return e}var dl=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],pl=["January","February","March","April","May","June","July","August","September","October","November","December"],$b=sl(pl,3),e1=sl(dl,3),ul={dayNamesShort:e1,dayNames:dl,monthNamesShort:$b,monthNames:pl,amPm:["am","pm"],DoFn:function(e){return e+["th","st","nd","rd"][e%10>3?0:(e-e%10!==10?1:0)*e%10]}},ei=Tt({},ul),t1=function(e){return ei=Tt(ei,e)},ml=function(e){return e.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},Ue=function(e,n){for(n===void 0&&(n=2),e=String(e);e.length<n;)e="0"+e;return e},n1={D:function(e){return String(e.getDate())},DD:function(e){return Ue(e.getDate())},Do:function(e,n){return n.DoFn(e.getDate())},d:function(e){return String(e.getDay())},dd:function(e){return Ue(e.getDay())},ddd:function(e,n){return n.dayNamesShort[e.getDay()]},dddd:function(e,n){return n.dayNames[e.getDay()]},M:function(e){return String(e.getMonth()+1)},MM:function(e){return Ue(e.getMonth()+1)},MMM:function(e,n){return n.monthNamesShort[e.getMonth()]},MMMM:function(e,n){return n.monthNames[e.getMonth()]},YY:function(e){return Ue(String(e.getFullYear()),4).substr(2)},YYYY:function(e){return Ue(e.getFullYear(),4)},h:function(e){return String(e.getHours()%12||12)},hh:function(e){return Ue(e.getHours()%12||12)},H:function(e){return String(e.getHours())},HH:function(e){return Ue(e.getHours())},m:function(e){return String(e.getMinutes())},mm:function(e){return Ue(e.getMinutes())},s:function(e){return String(e.getSeconds())},ss:function(e){return Ue(e.getSeconds())},S:function(e){return String(Math.round(e.getMilliseconds()/100))},SS:function(e){return Ue(Math.round(e.getMilliseconds()/10),2)},SSS:function(e){return Ue(e.getMilliseconds(),3)},a:function(e,n){return e.getHours()<12?n.amPm[0]:n.amPm[1]},A:function(e,n){return e.getHours()<12?n.amPm[0].toUpperCase():n.amPm[1].toUpperCase()},ZZ:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Ue(Math.floor(Math.abs(n)/60)*100+Math.abs(n)%60,4)},Z:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Ue(Math.floor(Math.abs(n)/60),2)+":"+Ue(Math.abs(n)%60,2)}},gl=function(e){return+e-1},fl=[null,At],Al=[null,Cn],hl=["isPm",Cn,function(e,n){var i=e.toLowerCase();return i===n.amPm[0]?0:i===n.amPm[1]?1:null}],yl=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(e){var n=(e+"").match(/([+-]|\d\d)/gi);if(n){var i=+n[1]*60+parseInt(n[2],10);return n[0]==="+"?i:-i}return 0}],i1={D:["day",At],DD:["day",ht],Do:["day",At+Cn,function(e){return parseInt(e,10)}],M:["month",At,gl],MM:["month",ht,gl],YY:["year",ht,function(e){var n=new Date,i=+(""+n.getFullYear()).substr(0,2);return+(""+(+e>68?i-1:i)+e)}],h:["hour",At,void 0,"isPm"],hh:["hour",ht,void 0,"isPm"],H:["hour",At],HH:["hour",ht],m:["minute",At],mm:["minute",ht],s:["second",At],ss:["second",ht],YYYY:["year",_b],S:["millisecond","\\d",function(e){return+e*100}],SS:["millisecond",ht,function(e){return+e*10}],SSS:["millisecond",Qb],d:fl,dd:fl,ddd:Al,dddd:Al,MMM:["month",Cn,cl("monthNamesShort")],MMMM:["month",Cn,cl("monthNames")],a:hl,A:hl,ZZ:yl,Z:yl},ti={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},a1=function(e){return Tt(ti,e)},o1=function(e,n,i){if(n===void 0&&(n=ti.default),i===void 0&&(i={}),typeof e=="number"&&(e=new Date(e)),Object.prototype.toString.call(e)!=="[object Date]"||isNaN(e.getTime()))throw new Error("Invalid Date pass to format");n=ti[n]||n;var a=[];n=n.replace(ll,function(r,l){return a.push(l),"@@@"});var o=Tt(Tt({},ei),i);return n=n.replace(rl,function(r){return n1[r](e,o)}),n.replace(/@@@/g,function(){return a.shift()})};function r1(e,n,i){if(i===void 0&&(i={}),typeof n!="string")throw new Error("Invalid format in fecha parse");if(n=ti[n]||n,e.length>1e3)return null;var a=new Date,o={year:a.getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},r=[],l=[],s=n.replace(ll,function(w,A){return l.push(ml(A)),"@@@"}),c={},d={};s=ml(s).replace(rl,function(w){var A=i1[w],g=A[0],E=A[1],k=A[3];if(c[g])throw new Error("Invalid format. "+g+" specified twice in format");return c[g]=!0,k&&(d[k]=!0),r.push(A),"("+E+")"}),Object.keys(d).forEach(function(w){if(!c[w])throw new Error("Invalid format. "+w+" is required in specified format")}),s=s.replace(/@@@/g,function(){return l.shift()});var u=e.match(new RegExp(s,"i"));if(!u)return null;for(var m=Tt(Tt({},ei),i),f=1;f<u.length;f++){var h=r[f-1],C=h[0],b=h[2],y=b?b(u[f],m):+u[f];if(y==null)return null;o[C]=y}o.isPm===1&&o.hour!=null&&+o.hour!=12?o.hour=+o.hour+12:o.isPm===0&&+o.hour==12&&(o.hour=0);var B;if(o.timezoneOffset==null){B=new Date(o.year,o.month,o.day,o.hour,o.minute,o.second,o.millisecond);for(var x=[["month","getMonth"],["day","getDate"],["hour","getHours"],["minute","getMinutes"],["second","getSeconds"]],f=0,S=x.length;f<S;f++)if(c[x[f][0]]&&o[x[f][0]]!==B[x[f][1]]())return null}else if(B=new Date(Date.UTC(o.year,o.month,o.day,o.hour,o.minute-o.timezoneOffset,o.second,o.millisecond)),o.month>11||o.month<0||o.day>31||o.day<1||o.hour>23||o.hour<0||o.minute>59||o.minute<0||o.second>59||o.second<0)return null;return B}var ot={format:o1,parse:r1,defaultI18n:ul,setGlobalDateI18n:t1,setGlobalDateMasks:a1};const ve={fieldIsRequired:"This field is required!",invalidFormat:"Invalid format!",numberTooSmall:"The number is too small! Minimum: {0}",numberTooBig:"The number is too big! Maximum: {0}",invalidNumber:"Invalid number",invalidInteger:"The value is not an integer",textTooSmall:"The length of text is too small! Current: {0}, Minimum: {1}",textTooBig:"The length of text is too big! Current: {0}, Maximum: {1}",thisNotText:"This is not a text!",thisNotArray:"This is not an array!",selectMinItems:"Select minimum {0} items!",selectMaxItems:"Select maximum {0} items!",invalidDate:"Invalid date!",dateIsEarly:"The date is too early! Current: {0}, Minimum: {1}",dateIsLate:"The date is too late! Current: {0}, Maximum: {1}",invalidEmail:"Invalid e-mail address!",invalidURL:"Invalid URL!",invalidCard:"Invalid card format!",invalidCardNumber:"Invalid card number!",invalidTextContainNumber:"Invalid text! Cannot contains numbers or special characters",invalidTextContainSpec:"Invalid text! Cannot contains special characters"};function qe(e,n,i=ve){return Ce(e)||e===""?n?[he(i.fieldIsRequired)]:[]:null}function he(e,...n){if(e!=null&&n.length>0)for(let i=0;i<n.length;i++)e=e.replace("{"+(i-1)+"}",n[i]);return e}const Rt={resources:ve,required(e,n,i,a=ve){return qe(e,n.required,a)},number(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=[];return qb(e)?(!Ce(n.min)&&e<n.min&&r.push(he(a.numberTooSmall,n.min)),!Ce(n.max)&&e>n.max&&r.push(he(a.numberTooBig,n.max))):r.push(he(a.invalidNumber)),r},integer(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=Rt.number(e,n,i,a);return Zb(e)||r.push(he(a.invalidInteger)),r},double(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!aa(e)||isNaN(e))return[he(a.invalidNumber)]},string(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=[];return Mt(e)?(!Ce(n.min)&&e.length<n.min&&r.push(he(a.textTooSmall,e.length,n.min)),!Ce(n.max)&&e.length>n.max&&r.push(he(a.textTooBig,e.length,n.max))):r.push(he(a.thisNotText)),r},array(e,n,i,a=ve){if(n.required){if(!Array.isArray(e))return[he(a.thisNotArray)];if(e.length===0)return[he(a.fieldIsRequired)]}if(!Ce(e)){if(!Ce(n.min)&&e.length<n.min)return[he(a.selectMinItems,n.min)];if(!Ce(n.max)&&e.length>n.max)return[he(a.selectMaxItems,n.max)]}},date(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=new Date(e);if(isNaN(r.getDate()))return[he(a.invalidDate)];const l=[];if(!Ce(n.min)){const s=new Date(n.min);r.valueOf()<s.valueOf()&&l.push(he(a.dateIsEarly,ot.format(r),ot.format(s)))}if(!Ce(n.max)){const s=new Date(n.max);r.valueOf()>s.valueOf()&&l.push(he(a.dateIsLate,ot.format(r),ot.format(s)))}return l},regexp(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!Ce(n.pattern)&&!new RegExp(n.pattern).test(e))return[he(a.invalidFormat)]},email(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e))return[he(a.invalidEmail)]},url(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g.test(e))return[he(a.invalidURL)]},creditCard(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;const r=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,l=e.replace(/[^0-9]+/g,"");if(!r.test(l))return[he(a.invalidCard)];let s=0,c,d,u;for(let m=l.length-1;m>=0;m--)c=l.substring(m,m+1),d=parseInt(c,10),u?(d*=2,d>=10?s+=d%10+1:s+=d):s+=d,u=!u;if(!(s%10===0&&l))return[he(a.invalidCardNumber)]},alpha(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!/^[a-zA-Z]*$/.test(e))return[he(a.invalidTextContainNumber)]},alphaNumeric(e,n,i,a=ve){const o=qe(e,n.required,a);if(o!=null)return o;if(!/^[a-zA-Z0-9]*$/.test(e))return[he(a.invalidTextContainSpec)]}};Object.keys(Rt).forEach(e=>{const n=Rt[e];oe(n)&&(n.locale=i=>(a,o,r)=>n(a,o,r,ft(i,ve)))});function bl(e){return Mt(e)?Rt[e]!=null?Rt[e]:(console.warn(`'${e}' is not a validator function!`),null):e}function oa(e,n,i){let a=ee(i.context,"schema.attributes",{});const o=n.value||"input";Mt(o)&&(a=ee(a,o)||a),Le(a,(r,l)=>{e.setAttribute(l,r)})}const le={name:"abstractField",props:["vfg","model","schema","formOptions","disabled"],emits:["validated","modelUpdated"],data(){return{errors:[],debouncedValidateFunc:null,debouncedFormatFunc:null}},directives:{attributes:{beforeMount:oa,updated:oa,componentUpdated:oa}},computed:{value:{cache:!1,get(){let e;return oe(ee(this.schema,"get"))?e=this.schema.get(this.model):e=ee(this.model,this.schema.model),this.formatValueToField(e)},set(e){const n=this.value;e=this.formatValueToModel(e),oe(e)?e(e,n):this.updateModelValue(e,n)}}},methods:{validate(e){this.clearValidationErrors();const n=ee(this.formOptions,"validateAsync",!1);let i=[];if(this.schema.validator&&this.schema.readonly!==!0&&this.disabled!==!0){const o=[];Array.isArray(this.schema.validator)?Le(this.schema.validator,r=>{o.push(bl(r).bind(this))}):o.push(bl(this.schema.validator).bind(this)),Le(o,r=>{if(n)i.push(r(this.value,this.schema,this.model));else{const l=r(this.value,this.schema,this.model);l&&oe(l.then)?l.then(s=>{s&&(this.errors=this.errors.concat(s));const c=this.errors.length===0;this.$emit("validated",c,this.errors,this)}):l&&(i=i.concat(l))}})}const a=o=>{let r=[];Le(el(o),s=>{Array.isArray(s)&&s.length>0?r=r.concat(s):Mt(s)&&r.push(s)}),oe(this.schema.onValidated)&&this.schema.onValidated.call(this,this.model,r,this.schema);const l=r.length===0;return e||this.$emit("validated",l,r,this),this.errors=r,r};return n?Promise.all(i).then(a):a(i)},debouncedValidate(){oe(this.debouncedValidateFunc)||(this.debouncedValidateFunc=bn(this.validate.bind(this),ee(this.schema,"validateDebounceTime",ee(this.formOptions,"validateDebounceTime",500)))),this.debouncedValidateFunc()},updateModelValue(e,n){let i=!1;oe(this.schema.set)?(this.schema.set(this.model,e),i=!0):this.schema.model&&(this.setModelValueByPath(this.schema.model,e),i=!0),i&&(this.$emit("modelUpdated",e,this.schema.model),oe(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,e,n,this.schema),ee(this.formOptions,"validateAfterChanged",!1)===!0&&(ee(this.schema,"validateDebounceTime",ee(this.formOptions,"validateDebounceTime",0))>0?this.debouncedValidate():this.validate()))},clearValidationErrors(){this.errors.splice(0)},setModelValueByPath(e,n){let i=e.replace(/\[(\w+)\]/g,".$1");i=i.replace(/^\./,"");let a=this.model;const o=i.split(".");let r=0;const l=o.length;for(;r<l;){const s=o[r];if(r<l-1)a[s]!==void 0||(a[s]={}),a=a[s];else{a[s]=n;return}++r}},getFieldID(e,n=!1){const i=ee(this.formOptions,"fieldIdPrefix","");return ea(e,i)+(n?"-"+tl():"")},getLabelId(e){return`${this.getFieldID(e)}-label`},getFieldClasses(){return ee(this.schema,"fieldClasses",[])},formatValueToField(e){return e},formatValueToModel(e){return e}}},l1={mixins:[le]},s1=["id","autocomplete","disabled","name","required"];function c1(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("input",{id:e.getFieldID(e.schema),type:"checkbox","onUpdate:modelValue":n[0]||(n[0]=s=>e.value=s),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,name:e.schema.inputName,class:t.normalizeClass(e.schema.fieldClasses),required:e.schema.required},null,10,s1)),[[t.vModelCheckbox,e.value],[l,"input"]])}const Q=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},d1=Q(l1,[["render",c1]]);var p1=4;function wl(e){return yn(e,p1)}const u1={class:"wrapper"},m1=["disabled"],g1=["id","checked","disabled","onChange","name"],f1=["disabled"],A1={class:"info"},h1=t.createElementVNode("div",{class:"arrow"},null,-1),y1={class:"dropList"},b1=["id","checked","disabled","onChange","name"];function w1(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",u1,[e.schema.listBox?(t.openBlock(),t.createElementBlock("div",{key:0,class:"listbox form-control",disabled:e.disabled||null},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,s=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":r.isItemChecked(s)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:r.isItemChecked(s)||null,disabled:e.disabled||null,onChange:c=>r.onChanged(c,s),name:r.getInputName(s)},null,40,g1),[[l,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(s)),1)])],2))),256))],8,m1)):t.createCommentVNode("",!0),e.schema.listBox?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:1,class:"combobox form-control",disabled:e.disabled||null},[t.createElementVNode("div",{class:t.normalizeClass(["mainRow",{expanded:o.comboExpanded}]),onClick:n[0]||(n[0]=(...s)=>r.onExpandCombo&&r.onExpandCombo(...s))},[t.createElementVNode("div",A1,t.toDisplayString(r.selectedCount)+" selected",1),h1],2),t.createElementVNode("div",y1,[o.comboExpanded?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(r.items,s=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":r.isItemChecked(s)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:r.isItemChecked(s)||null,disabled:e.disabled||null,onChange:c=>r.onChanged(c,s),name:r.getInputName(s)},null,40,b1),[[l,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(s)),1)])],2))),256)):t.createCommentVNode("",!0)])],8,f1))])),[[l,"wrapper"]])}const C1={mixins:[le],data(){return{comboExpanded:!1}},computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e},selectedCount(){return this.value?this.value.length:0}},methods:{getInputName(e){return this.schema&&this.schema.inputName&&this.schema.inputName.length>0?Wr(this.schema.inputName+"_"+this.getItemValue(e)):Wr(this.getItemValue(e))},getItemValue(e){if(Be(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.value<"u")return e[this.schema.checklistOptions.value];if(typeof e.value<"u")return e.value;throw new Error("`value` is not defined. If you want to use another key name, add a `value` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},getItemName(e){if(Be(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.name<"u")return e[this.schema.checklistOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},isItemChecked(e){return this.value&&this.value.indexOf(this.getItemValue(e))!==-1},onChanged(e,n){if((Ce(this.value)||!Array.isArray(this.value))&&(this.value=[]),e.target.checked){const i=wl(this.value);i.push(this.getItemValue(n)),this.value=i}else{const i=wl(this.value);i.splice(this.value.indexOf(this.getItemValue(n)),1),this.value=i}},onExpandCombo(){this.comboExpanded=!this.comboExpanded}}},k1=Q(C1,[["render",w1]]);function E1(e){const n=t.ref([]),i=t.ref(null),a=b=>Mt(b)?Rt[b]!=null?Rt[b]:(console.warn(`'${b}' is not a validator function!`),null):b,o=t.computed({get(){let b;return oe(ee(e.schema,"get"))?b=e.schema.get(e.model):b=ee(e.model,e.schema.model),h(b)},set(b){const y=o;b=C(b),oe(b)?b(b,y):s(b,y)}}),r=b=>{var y;c();const B=(y=e.schema)==null?void 0:y.validator,x=ee(e.formOptions,"validateAsync",!1);let S=[];if(B&&e.schema.readonly!==!0&&e.disabled!==!0){const A=[];Array.isArray(B)?Le(B,g=>{A.push(a(g))}):A.push(a(B)),Le(A,g=>{if(x)S.push(g(o.value,e.schema,e.model));else{const E=g(o.value,e.schema,e.model);E&&oe(E.then)?E.then(k=>{k&&(n.value=n.value.concat(k));const v=n.value.length===0;e.emitValidated&&e.emitValidated({isValid:v,errors:n.value,field:e.schema})}):E&&(S=S.concat(E))}})}const w=A=>{var g;let E=[];if(Le(el(A),k=>{Array.isArray(k)&&k.length>0?E=E.concat(k):Mt(k)&&E.push(k)}),oe((g=e.schema)==null?void 0:g.onValidated)&&e.schema.onValidated(e.model,E,e.schema),!b){const k=E.length===0;e.emitValidated&&e.emitValidated({isValid:k,errors:E,field:e.schema})}return A=E,E};return x?Promise.all(S).then(w):w(S)},l=()=>{oe(i.value)?i.value():i.value=bn(r,ee(e.schema,"validateDebounceTime",ee(e.formOptions,"validateDebounceTime",500)))},s=(b,y)=>{let B=!1;oe(e.schema.set)?(e.schema.set(e.model,b),B=!0):e.schema.model&&(d(e.schema.model,b),B=!0),B&&(e.emitModelUpdated&&e.model&&e.emitModelUpdated({value:b,model:e.schema.model}),oe(e.schema.onChanged)&&e.schema.onChanged(e.model,b,y,e.schema),ee(e.formOptions,"validateAfterChanged",!1)===!0&&(ee(e.schema,"validateDebounceTime",ee(e.formOptions,"validateDebounceTime",0))>0?l():r()))},c=()=>{n.value.splice(0)},d=(b,y)=>{let B=b.replace(/\[(\w+)\]/g,".$1");B=B.replace(/^\./,"");let x=e.model||{},S=0;const w=B.split("."),A=w.length;for(;S<A;){const g=w[S];if(S<A-1)x[g]!==void 0||(x[g]={}),x=x[g];else{x[g]=y;return}++S}},u=(b,y=!1)=>{const B=ee(e.formOptions,"fieldIdPrefix","");return ea(b,B)+(y?"-"+tl():"")},m=b=>`${u(b)}-label`,f=()=>ee(e.schema,"fieldClasses",[]),h=b=>b,C=b=>b;return{value:o,clearValidationErrors:c,getFieldID:u,getLabelId:m,getFieldClasses:f,updateModelValue:s}}const Cl={useAbstractFields:E1},B1={class:"form-field-wrapper"},O1=t.defineComponent({__name:"FieldInput",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,{updateModelValue:r,getFieldID:l,clearValidationErrors:s,value:c}=Cl.useAbstractFields({model:a.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:y=>{o("modelUpdated",y.value,y.model)}});n({clearValidationErrors:s});const d=t.computed(()=>{var y;const B=(y=a.schema)==null?void 0:y.inputType.toLowerCase();return B==="string"?"text":B==="datetime"?"datetime-local":B||"text"}),u={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss","datetime-local":"YYYY-MM-DDTHH:mm:ss"},m=(y,B)=>{var x,S;let w=y;const A=u[d.value]||"",g=ot.parse(y,A);g&&((x=a.schema)!=null&&x.format?w=ot.format(g,(S=a.schema)==null?void 0:S.format):w=g.valueOf()),r(w,B)},f=(y,B)=>{aa(y)||(y=NaN),r(y,B)},h=y=>{let B=y;switch(d.value){case"number":case"range":aa(parseFloat(y))&&(B=parseFloat(y));break}c.value=B,r(B,y)},C=t.ref(null),b=()=>{var y;oe(C.value)&&((y=C.value)==null||y.flush())};return t.onMounted(()=>{switch(d.value){case"number":case"range":C.value=bn((y,B)=>{f(y,B)},parseInt(ee(a.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break;case"date":case"datetime":case"datetime-local":C.value=bn((y,B)=>{m(y,B)},parseInt(ee(a.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break}}),t.onBeforeMount(()=>{d.value==="checkbox"?console.warn("The use of 'checkbox' inputType with 'input' type fields is deprecated. Use 'checkbox' type instead."):d.value==="radio"?console.warn("The use of 'radio' inputType with 'input' type fields is deprecated. Use 'radio' type instead."):d.value==="file"&&console.warn("The 'file' type in input field is deprecated. Use 'file' field instead.")}),(y,B)=>{const x=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock("div",B1,[t.createVNode(x,t.mergeProps(y.$attrs,{id:t.unref(l)(e.schema),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||null,help:e.hint?e.hint:d.value==="color"||d.value==="range"?t.unref(c):void 0,max:e.schema.max,maxlength:e.schema.maxlength,min:e.schema.min,minlength:e.schema.minlength,"model-value":t.unref(c),name:e.schema.inputName,pattern:e.schema.pattern,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,type:d.value,width:e.schema.width,onBlur:b,onInput:h}),null,16,["id","autocomplete","class","disabled","help","max","maxlength","min","minlength","model-value","name","pattern","placeholder","readonly","required","type","width"])])}}}),kl=Q(O1,[["__scopeId","data-v-a27819bb"]]),x1=t.defineComponent({__name:"FieldLabel",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0}},setup(e){const n=e,{getFieldID:i,value:a}=Cl.useAbstractFields({model:n.model,schema:n.schema,formOptions:n.formOptions});return(o,r)=>{const l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["field-label",e.schema.fieldClasses])},[t.createVNode(l,{id:t.unref(i)(e.schema)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)),1)]),_:1},8,["id"])],2)}}}),I1=Q(x1,[["__scopeId","data-v-158563b8"]]),S1=["disabled"],M1=["id","disabled","name","onClick","value","checked","required"];function v1(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:"radio-list",disabled:e.disabled||null},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,s=>t.withDirectives((t.openBlock(),t.createElementBlock("label",{class:t.normalizeClass(r.getItemCssClasses(s))},[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"radio",disabled:r.isItemDisabled(s)||null,name:r.id,onClick:c=>r.onSelection(s),value:r.getItemValue(s),checked:r.isItemChecked(s)||null,class:t.normalizeClass(e.schema.fieldClasses),required:e.schema.required},null,10,M1),[[l,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(s)),1)],2)),[[l,"label"]])),256))],8,S1)),[[l,"wrapper"]])}const T1={mixins:[le],computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e},id(){return this.schema.model}},methods:{getItemValue(e){if(Be(e)){if(typeof this.schema.radiosOptions<"u"&&typeof this.schema.radiosOptions.value<"u")return e[this.schema.radiosOptions.value];if(typeof e.value<"u")return e.value;throw new Error("`value` is not defined. If you want to use another key name, add a `value` property under `radiosOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/radios.html#radios-field-with-object-values")}else return e},getItemName(e){if(Be(e)){if(typeof this.schema.radiosOptions<"u"&&typeof this.schema.radiosOptions.name<"u")return e[this.schema.radiosOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `radiosOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/radios.html#radios-field-with-object-values")}else return e},getItemCssClasses(e){return{"is-checked":this.isItemChecked(e),"is-disabled":this.isItemDisabled(e)}},onSelection(e){this.value=this.getItemValue(e)},isItemChecked(e){return this.getItemValue(e)===this.value},isItemDisabled(e){if(this.disabled)return!0;const n=ee(e,"disabled",!1);return oe(n)?n(this.model):n}}},R1=Q(T1,[["render",v1]]);function N1(e,n){for(var i=-1,a=e==null?0:e.length;++i<a;)if(n(e[i],i,e))return!0;return!1}var V1=1,L1=2;function El(e,n,i,a,o,r){var l=i&V1,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=r.get(e),u=r.get(n);if(d&&u)return d==n&&u==e;var m=-1,f=!0,h=i&L1?new wn:void 0;for(r.set(e,n),r.set(n,e);++m<s;){var C=e[m],b=n[m];if(a)var y=l?a(b,C,m,n,e,r):a(C,b,m,e,n,r);if(y!==void 0){if(y)continue;f=!1;break}if(h){if(!N1(n,function(B,x){if(!$r(h,x)&&(C===B||o(C,B,i,a,r)))return h.push(x)})){f=!1;break}}else if(!(C===b||o(C,b,i,a,r))){f=!1;break}}return r.delete(e),r.delete(n),f}function D1(e){var n=-1,i=Array(e.size);return e.forEach(function(a,o){i[++n]=[o,a]}),i}var j1=1,P1=2,U1="[object Boolean]",Y1="[object Date]",G1="[object Error]",F1="[object Map]",H1="[object Number]",z1="[object RegExp]",K1="[object Set]",q1="[object String]",X1="[object Symbol]",J1="[object ArrayBuffer]",Z1="[object DataView]",Bl=nt?nt.prototype:void 0,ra=Bl?Bl.valueOf:void 0;function W1(e,n,i,a,o,r,l){switch(i){case Z1:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case J1:return!(e.byteLength!=n.byteLength||!r(new $n(e),new $n(n)));case U1:case Y1:case H1:return An(+e,+n);case G1:return e.name==n.name&&e.message==n.message;case z1:case q1:return e==n+"";case F1:var s=D1;case K1:var c=a&j1;if(s||(s=ia),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;a|=P1,l.set(e,n);var u=El(s(e),s(n),a,o,r,l);return l.delete(e),u;case X1:if(ra)return ra.call(e)==ra.call(n)}return!1}var Q1=1,_1=Object.prototype,$1=_1.hasOwnProperty;function ew(e,n,i,a,o,r){var l=i&Q1,s=Ji(e),c=s.length,d=Ji(n),u=d.length;if(c!=u&&!l)return!1;for(var m=c;m--;){var f=s[m];if(!(l?f in n:$1.call(n,f)))return!1}var h=r.get(e),C=r.get(n);if(h&&C)return h==n&&C==e;var b=!0;r.set(e,n),r.set(n,e);for(var y=l;++m<c;){f=s[m];var B=e[f],x=n[f];if(a)var S=l?a(x,B,f,n,e,r):a(B,x,f,e,n,r);if(!(S===void 0?B===x||o(B,x,i,a,r):S)){b=!1;break}y||(y=f=="constructor")}if(b&&!y){var w=e.constructor,A=n.constructor;w!=A&&"constructor"in e&&"constructor"in n&&!(typeof w=="function"&&w instanceof w&&typeof A=="function"&&A instanceof A)&&(b=!1)}return r.delete(e),r.delete(n),b}var tw=1,Ol="[object Arguments]",xl="[object Array]",ni="[object Object]",nw=Object.prototype,Il=nw.hasOwnProperty;function iw(e,n,i,a,o,r){var l=ze(e),s=ze(n),c=l?xl:Qt(e),d=s?xl:Qt(n);c=c==Ol?ni:c,d=d==Ol?ni:d;var u=c==ni,m=d==ni,f=c==d;if(f&&mn(e)){if(!mn(n))return!1;l=!0,u=!1}if(f&&!u)return r||(r=new at),l||Hi(e)?El(e,n,i,a,o,r):W1(e,n,c,i,a,o,r);if(!(i&tw)){var h=u&&Il.call(e,"__wrapped__"),C=m&&Il.call(n,"__wrapped__");if(h||C){var b=h?e.value():e,y=C?n.value():n;return r||(r=new at),o(b,y,i,a,r)}}return f?(r||(r=new at),ew(e,n,i,a,o,r)):!1}function la(e,n,i,a,o){return e===n?!0:e==null||n==null||!it(e)&&!it(n)?e!==e&&n!==n:iw(e,n,i,a,la,o)}var aw=1,ow=2;function rw(e,n,i,a){var o=i.length,r=o,l=!a;if(e==null)return!r;for(e=Object(e);o--;){var s=i[o];if(l&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++o<r;){s=i[o];var c=s[0],d=e[c],u=s[1];if(l&&s[2]){if(d===void 0&&!(c in e))return!1}else{var m=new at;if(a)var f=a(d,u,c,e,n,m);if(!(f===void 0?la(u,d,aw|ow,a,m):f))return!1}}return!0}function Sl(e){return e===e&&!Be(e)}function lw(e){for(var n=Zt(e),i=n.length;i--;){var a=n[i],o=e[a];n[i]=[a,o,Sl(o)]}return n}function Ml(e,n){return function(i){return i==null?!1:i[e]===n&&(n!==void 0||e in Object(i))}}function sw(e){var n=lw(e);return n.length==1&&n[0][2]?Ml(n[0][0],n[0][1]):function(i){return i===e||rw(i,e,n)}}function cw(e,n){return e!=null&&n in Object(e)}function dw(e,n,i){n=kr(n,e);for(var a=-1,o=n.length,r=!1;++a<o;){var l=Zn(n[a]);if(!(r=e!=null&&i(e,l)))break;e=e[l]}return r||++a!=o?r:(o=e==null?0:e.length,!!o&&Yi(o)&&Ui(l,o)&&(ze(e)||Pi(e)))}function pw(e,n){return e!=null&&dw(e,n,cw)}var uw=1,mw=2;function gw(e,n){return zi(e)&&Sl(n)?Ml(Zn(e),n):function(i){var a=ee(i,e);return a===void 0&&a===n?pw(i,e):la(n,a,uw|mw)}}function fw(e){return function(n){return n==null?void 0:n[e]}}function Aw(e){return function(n){return Er(n,e)}}function hw(e){return zi(e)?fw(Zn(e)):Aw(e)}function vl(e){return typeof e=="function"?e:e==null?Kn:typeof e=="object"?ze(e)?gw(e[0],e[1]):sw(e):hw(e)}function yw(e){return function(n,i,a){var o=Object(n);if(!Jt(n)){var r=vl(i);n=Zt(n),i=function(s){return r(o[s],s,o)}}var l=e(n,i,a);return l>-1?o[r?n[l]:l]:void 0}}var bw=Math.max;function ww(e,n,i){var a=e==null?0:e.length;if(!a)return-1;var o=i==null?0:ol(i);return o<0&&(o=bw(a+o,0)),_r(e,vl(n),o)}var Cw=yw(ww);const kw=["disabled","name","id"],Ew=["disabled"],Bw=["label"],Ow=["value"],xw=["value"];function Iw(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("select",{class:t.normalizeClass(["form-control",e.schema.fieldClasses]),"onUpdate:modelValue":n[0]||(n[0]=s=>e.value=s),disabled:e.disabled||null,name:e.schema.inputName,id:e.getFieldID(e.schema)},[r.selectOptions.hideNoneSelectedText?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("option",{key:0,disabled:e.schema.required||null,value:null},t.toDisplayString(r.selectOptions.noneSelectedText||"<Nothing selected>"),9,Ew)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,s=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[s.group?(t.openBlock(),t.createElementBlock("optgroup",{key:0,label:r.getGroupName(s)},[s.ops?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(s.ops,c=>(t.openBlock(),t.createElementBlock("option",{value:r.getItemValue(c)},t.toDisplayString(r.getItemName(c)),9,Ow))),256)):t.createCommentVNode("",!0)],8,Bw)):t.createCommentVNode("",!0),s.group?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("option",{key:1,value:r.getItemValue(s)},t.toDisplayString(r.getItemName(s)),9,xw))],64))),256))],10,kw)),[[t.vModelSelect,e.value],[l,"input"]])}const Sw={mixins:[le],computed:{selectOptions(){return this.schema.selectOptions||{}},items(){const e=this.schema.values;return typeof e=="function"?this.groupValues(e.apply(this,[this.model,this.schema])):this.groupValues(e)}},methods:{formatValueToField(e){return Ce(e)?null:e},groupValues(e){const n=[];let i={};return e.forEach(a=>{i=null,a.group&&Be(a)?(i=Cw(n,o=>o.group===a.group),i?i.ops.push({id:a.id,name:a.name}):(i={group:"",ops:[]},i.group=a.group,i.ops.push({id:a.id,name:a.name}),n.push(i))):n.push(a)}),n},getGroupName(e){if(e&&e.group)return e.group;throw new Error("Group name is missing! https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")},getItemValue(e){if(Be(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.value<"u")return e[this.schema.selectOptions.value];if(typeof e.id<"u")return e.id;throw new Error("`id` is not defined. If you want to use another key name, add a `value` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e},getItemName(e){if(Be(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.name<"u")return e[this.schema.selectOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e}}},Tl=Q(Sw,[["render",Iw]]);var Mw="[object Map]",vw="[object Set]",Tw=Object.prototype,Rw=Tw.hasOwnProperty;function Nw(e){if(e==null)return!0;if(Jt(e)&&(ze(e)||typeof e=="string"||typeof e.splice=="function"||mn(e)||Hi(e)||Pi(e)))return!e.length;var n=Qt(e);if(n==Mw||n==vw)return!e.size;if(zn(e))return!Ar(e).length;for(var i in e)if(Rw.call(e,i))return!1;return!0}const Vw=["id","value","name","disabled"];function Lw(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("input",{id:e.getFieldID(e.schema),type:"submit",value:e.schema.buttonText,onClick:n[0]||(n[0]=(...l)=>r.onClick&&r.onClick(...l)),name:e.schema.inputName,disabled:e.disabled||null,class:t.normalizeClass(e.schema.fieldClasses)},null,10,Vw)}const Dw={mixins:[le],methods:{onClick(e){if(this.schema.validateBeforeSubmit===!0){e.preventDefault();const n=ee(this.formOptions,"validateAsync",!1),i=this.vfg.validate(),a=o=>{n&&!Nw(o)||!n&&!o?oe(this.schema.onValidationError)&&this.schema.onValidationError(this.model,this.schema,o,e):oe(this.schema.onSubmit)&&this.schema.onSubmit(this.model,this.schema,e)};i&&oe(i.then)?i.then(a):a(i)}else oe(this.schema.onSubmit)&&this.schema.onSubmit(this.model,this.schema,e)}}},jw=Q(Dw,[["render",Lw]]),Pw=["id","disabled","maxlength","minlength","placeholder","readonly","required","rows","name"];function Uw(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("textarea",{class:t.normalizeClass(["form-control",e.schema.fieldClasses]),"onUpdate:modelValue":n[0]||(n[0]=s=>e.value=s),id:e.getFieldID(e.schema),disabled:e.disabled||null,maxlength:e.schema.max,minlength:e.schema.min,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,rows:e.schema.rows||2,name:e.schema.inputName},null,10,Pw)),[[t.vModelText,e.value],[l,"input"]])}const Yw={mixins:[le]},Rl=Q(Yw,[["render",Uw]]),Gw={class:"wrapper"},Fw=["id","name","accept","multiple","placeholder","readonly","required","disabled"];function Hw(e,n,i,a,o,r){const l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",Gw,[t.withDirectives(t.createElementVNode("input",{class:"form-control",id:e.getFieldID(e.schema),type:"file",name:e.schema.inputName,onChange:n[0]||(n[0]=(...s)=>r.onChange&&r.onChange(...s)),accept:e.schema.accept,multiple:e.schema.multiple,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,disabled:e.disabled||null},null,40,Fw),[[l,"input"]])])),[[l,"wrapper"]])}const zw={mixins:[le],methods:{onChange(e){oe(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,this.schema,e,this)}}},Kw=Q(zw,[["render",Hw]]),qw=["value","autocomplete","disabled","placeholder","readonly","name","id"];function Xw(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("input",{class:"form-control",type:"text",value:e.value,autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,qw)}const Jw={mixins:[le],data(){return{cleave:null}},mounted(){this.$nextTick(function(){window.Cleave?(this.cleave=new window.Cleave(this.$el,ft(this.schema.cleaveOptions||{},{creditCard:!1,phone:!1,phoneRegionCode:"AU",date:!1,datePattern:["d","m","Y"],numeral:!1,numeralThousandsGroupStyle:"thousand",numeralDecimalScale:2,numeralDecimalMark:".",blocks:[],delimiter:" ",prefix:null,numericOnly:!1,uppercase:!1,lowercase:!1,maxLength:0})),this.cleave.properties&&this.cleave.properties.hasOwnProperty.call("result")?this.$watch("cleave.properties.result",()=>{this.value=this.cleave.properties.result}):this.$el.addEventListener("input",this.inputChange)):console.warn("Cleave is missing. Please download from https://github.com/nosir/cleave.js/ and load the script in the HTML head section!")})},beforeUnmount(){this.cleave&&(this.cleave.destroy(),this.$el.removeEventListener("input",this.inputChange))},methods:{inputChange(){this.value=this.$el.value}}},Zw=Q(Jw,[["render",Xw]]),Nl={formatValueToField(e){if(e!=null){const n=this.schema.format?ot.parse(e,this.schema.format):new Date(e);return ot.format(n,this.getDateFormat())}return e},formatValueToModel(e){if(e!=null){const n=ot.parse(e,this.getDateFormat());this.schema.format?e=ot.format(n,this.schema.format):e=n.valueOf()}return e}},Ww={class:"input-group date"},Qw=["autocomplete","disabled","placeholder","readonly","name","id"],_w=t.createElementVNode("span",{class:"input-group-addon"},[t.createElementVNode("span",{class:"glyphicon glyphicon-calendar"})],-1);function $w(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("div",Ww,[t.withDirectives(t.createElementVNode("input",{class:"form-control",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,Qw),[[t.vModelText,e.value]]),_w])}const Vl="YYYY-MM-DD HH:mm:ss",eC={mixins:[le],mounted(){this.$nextTick(function(){if(window.$&&window.$.fn.datetimepicker){const e=this.$el.querySelector(".form-control");$(this.$el).datetimepicker(ft(this.schema.dateTimePickerOptions||{},{format:Vl})).on("dp.change",()=>{this.value=e.value})}else console.warn("Bootstrap datetimepicker library is missing. Please download from https://eonasdan.github.io/bootstrap-datetimepicker/ and load the script and CSS in the HTML head section!")})},beforeUnmount(){window.$&&window.$.fn.datetimepicker&&$(this.$el).data("DateTimePicker").destroy()},methods:{getDateFormat(){return this.schema.dateTimePickerOptions&&this.schema.dateTimePickerOptions.format?this.schema.dateTimePickerOptions.format:Vl},...Nl}},tC=Q(eC,[["render",$w]]),nC=["autocomplete","disabled","placeholder","readonly","name","id"];function iC(e,n,i,a,o,r){return t.withDirectives((t.openBlock(),t.createElementBlock("input",{class:"form-control",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,debounce:"500",onFocus:n[1]||(n[1]=l=>r.geolocate()),id:e.getFieldID(e.schema)},null,40,nC)),[[t.vModelText,e.value]])}const aC={mixins:[le],data(){return{autocomplete:"",inputs:{street_number:"long_name",route:"long_name",country:"long_name",administrative_area_level_1:"long_name",administrative_area_level_2:"long_name",locality:"long_name",postal_code:"short_name"}}},mounted(){this.$nextTick(()=>{window.google&&window.google.maps&&window.google.maps.places&&window.google.maps.places.Autocomplete?(this.autocomplete=new google.maps.places.Autocomplete(this.$el,{types:["geocode"]}),this.autocomplete.addListener("place_changed",this.pipeAddress)):console.warn("Google Maps API is missing. Please add https://maps.googleapis.com/maps/api/js?key=YOUR_KEY&libraries=places script in the HTML head section!")})},methods:{pipeAddress(){const e=this.autocomplete.getPlace();if(e){this.value=e.formatted_address;const n={};if(e.address_components!==void 0)for(let i=0;i<e.address_components.length;i++){const a=e.address_components[i].types[0];this.inputs[a]&&(n[a]=e.address_components[i][this.inputs[a]])}oe(this.schema.onPlaceChanged)&&this.schema.onPlaceChanged(this.value,n,e,this.model,this.schema)}},geolocate(){navigator.geolocation&&navigator.geolocation.getCurrentPosition(e=>{const n={lat:e.coords.latitude,lng:e.coords.longitude},i=new window.google.maps.Circle({center:n,radius:e.coords.accuracy});this.autocomplete.setBounds(i.getBounds())})}}},oC=Q(aC,[["render",iC]]),rC={class:"wrapper"},lC=["autocomplete","disabled","placeholder","readonly"],sC=["disabled","name"];function cC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("div",rC,[t.withDirectives(t.createElementVNode("input",{class:"form-control link",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>r.wrappedValue=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly},null,8,lC),[[t.vShow,e.schema.hideInput!==!0],[t.vModelText,r.wrappedValue]]),e.schema.browse!==!1?(t.openBlock(),t.createElementBlock("input",{key:0,class:"form-control file",type:"file",disabled:e.disabled||null,onChange:n[1]||(n[1]=(...l)=>r.fileChanged&&r.fileChanged(...l)),name:e.schema.inputName},null,40,sC)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"preview",style:t.normalizeStyle(r.previewStyle)},[t.createElementVNode("div",{class:"remove",title:"Remove image",onClick:n[2]||(n[2]=(...l)=>r.remove&&r.remove(...l))})],4)])}const dC={mixins:[le],computed:{previewStyle(){return this.schema.preview!==!1?{display:"block","background-image":this.value!=null?"url("+this.value+")":"none"}:{display:"none"}},wrappedValue:{get(){return this.value&&this.value.indexOf("data")===0?"<inline base64 image>":this.value},set(e){e&&e.indexOf("http")===0&&(this.value=e)}}},watch:{model:{deep:!0,handler(){const e=this.$el.querySelector("input.file");e&&(e.value="")}}},methods:{remove(){this.value=""},fileChanged(e){const n=new FileReader;n.onload=i=>{this.value=i.target.result},e.target.files&&e.target.files.length>0&&n.readAsDataURL(e.target.files[0])}}},pC=Q(dC,[["render",cC]]),uC=["autocomplete","disabled","placeholder","readonly","name","id"];function mC(e,n,i,a,o,r){return t.withDirectives((t.openBlock(),t.createElementBlock("input",{class:"form-control",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,uC)),[[t.vModelText,e.value]])}const gC={mixins:[le],mounted(){this.$nextTick(function(){window.$&&window.$.fn.mask?$(this.$el).unmask().mask(this.schema.mask,this.schema.maskOptions):console.warn("JQuery MaskedInput library is missing. Please download from https://github.com/digitalBush/jquery.maskedinput and load the script in the HTML head section!")})},beforeUnmount(){window.$&&window.$.fn.mask&&$(this.$el).unmask()}},fC=Q(gC,[["render",mC]]),AC={mixins:[le],data(){return{slider:null}},computed:{containPips(){return this.schema.noUiSliderOptions&&typeof this.schema.noUiSliderOptions.pips<"u"},containTooltip(){return this.schema.noUiSliderOptions&&this.schema.noUiSliderOptions.tooltips}},watch:{model:{handler(){window.noUiSlider&&this.slider&&this.slider.noUiSlider&&this.slider.noUiSlider.set(this.value)},deep:!0}},mounted(){this.$nextTick(()=>{window.noUiSlider?(this.slider=this.$el,window.noUiSlider.create(this.slider,ft(this.schema.noUiSliderOptions||{},{start:this.getStartValue(),range:{min:this.schema.min,max:this.schema.max}})),this.slider.noUiSlider.on("change",this.onChange.bind(this))):console.warn("noUiSlider is missing. Please download from https://github.com/leongersen/noUiSlider and load the script and CSS in the HTML head section!")})},beforeUnmount(){this.slider&&this.slider.noUiSlider.off("change")},methods:{onChange(e){Array.isArray(e)?this.value=[parseFloat(e[0]),parseFloat(e[1])]:this.value=parseFloat(e)},formatValueToField(e){this.slider!==null&&typeof this.slider.noUiSlider<"u"&&this.slider.noUiSlider.set(e)},formatValueToModel(e){if(typeof this.slider.noUiSlider<"u")return e instanceof Array?[Number(e[0]),Number(e[1])]:Number(e)},getStartValue(){return this.value!=null?this.value:typeof this.schema.noUiSliderOptions<"u"&&this.schema.noUiSliderOptions.double?[this.schema.min,this.schema.min]:this.schema.min}}},hC=["disabled"];function yC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["slider",{"contain-pips":r.containPips,"contain-tooltip":r.containTooltip}]),disabled:e.disabled||null},null,10,hC)}const bC=Q(AC,[["render",yC]]),wC=["autocomplete","disabled","placeholder","readonly","name"];function CC(e,n,i,a,o,r){return t.withDirectives((t.openBlock(),t.createElementBlock("input",{class:"form-control",type:"text","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName},null,8,wC)),[[t.vModelText,e.value]])}const kC="YYYY-MM-DD",EC={mixins:[le],data(){return{picker:null,options:null}},mounted(){this.initialize(ee(this.schema,"pikadayOptions",{}))},beforeUnmount(){this.picker&&this.picker.destroy()},methods:{getDateFormat(){return ee(this.schema,"pikadayOptions.format",kC)},...Nl,initialize(e){this.picker&&this.picker.destroy&&this.picker.destroy(),this.$nextTick(()=>{window.Pikaday?(this.options=ft({},e,{field:this.$el,onSelect:()=>{this.value=this.picker.toString()}}),this.picker=new window.Pikaday(this.options)):console.warn("Pikaday is missing. Please download from https://github.com/dbushell/Pikaday/ and load the script and CSS in the HTML head section!")})}}},BC=Q(EC,[["render",CC]]),OC=["autocomplete","data-disable","data-max","data-min","data-step","placeholder","readonly","name"];function xC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("input",{type:"text",autocomplete:e.schema.autocomplete,"data-disable":e.disabled,"data-max":e.schema.max,"data-min":e.schema.min,"data-step":e.schema.step,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName},null,8,OC)}const IC={mixins:[le],data(){return{slider:null}},watch:{model:{deep:!0,handler(){if(window.$&&window.$.fn.ionRangeSlider){let e,n;Array.isArray(this.value)?[e,n]=this.value:e=this.value,this.slider&&this.slider.update({from:e,to:n})}}}},mounted(){this.$nextTick(function(){if(window.$&&window.$.fn.ionRangeSlider){let e,n;Array.isArray(this.value)?[e,n]=this.value:e=this.value;const i=this;$(this.$el).ionRangeSlider(ft(this.schema.rangeSliderOptions||{},{type:"single",grid:!0,hide_min_max:!0,from:e,to:n,onChange(a){i.slider.options.type==="double"?i.value=[a.from,a.to]:i.value=a.from}})),this.slider=$(this.$el).data("ionRangeSlider")}else console.warn("ion.rangeSlider library is missing. Please download from https://github.com/IonDen/ion.rangeSlider and load the script and CSS in the HTML head section!")})},beforeUnmount(){this.slider&&this.slider.destroy()}},SC=Q(IC,[["render",xC]]),MC=["disabled","multiple","title","name"],vC=["disabled","selected"],TC=["value"];function RC(e,n,i,a,o,r){return t.withDirectives((t.openBlock(),t.createElementBlock("select",{class:"selectpicker","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),disabled:e.disabled||null,multiple:e.schema.multiSelect,title:e.schema.placeholder,"data-width":"100%",name:e.schema.inputName},[e.schema.multiSelect!==!0?(t.openBlock(),t.createElementBlock("option",{key:0,disabled:e.schema.required||null,value:null,selected:e.value==null},null,8,vC)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,l=>(t.openBlock(),t.createElementBlock("option",{value:r.getItemValue(l)},t.toDisplayString(r.getItemName(l)),9,TC))),256))],8,MC)),[[t.vModelSelect,e.value]])}const NC={mixins:[le],computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e}},watch:{model:{deep:!0,handler(){$.fn.selectpicker&&$(this.$el).selectpicker("refresh")}}},mounted(){this.$nextTick(function(){$.fn.selectpicker?$(this.$el).selectpicker("destroy").selectpicker(this.schema.selectOptions):console.warn("Bootstrap-select library is missing. Please download from https://silviomoreto.github.io/bootstrap-select/ and load the script and CSS in the HTML head section!")})},beforeUnmount(){$.fn.selectpicker&&$(this.$el).selectpicker("destroy")},methods:{getItemValue(e){if(Be(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.value<"u")return e[this.schema.selectOptions.value];if(typeof e.id<"u")return e.id;throw new Error("`id` is not defined. If you want to use another key name, add a `value` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e},getItemName(e){if(Be(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.name<"u")return e[this.schema.selectOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e}}},VC=Q(NC,[["render",RC]]),LC=["autocomplete","disabled","placeholder","readonly","name","id"];function DC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("input",{type:"text",autocomplete:e.schema.autocomplete,disabled:e.disabled||null,placeholder:e.schema.placeholder,readonly:e.schema.readonly,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,LC)}const jC={mixins:[le],data(){return{picker:null}},watch:{model:{deep:!0,handler(){window.$&&window.$.fn.spectrum&&this.picker.spectrum("set",this.value)}},disabled(e){e?this.picker.spectrum("disable"):this.picker.spectrum("enable")}},mounted(){this.$nextTick(function(){window.$&&window.$.fn.spectrum?(this.picker=$(this.$el).spectrum("destroy").spectrum(ft(this.schema.colorOptions||{},{showInput:!0,showAlpha:!0,disabled:this.schema.disabled,allowEmpty:!this.schema.required,preferredFormat:"hex",change:e=>{this.value=e?e.toString():null}})),this.picker.spectrum("set",this.value)):console.warn("Spectrum color library is missing. Please download from http://bgrins.github.io/spectrum/ and load the script and CSS in the HTML head section!")})},beforeUnmount(){this.picker&&this.picker.spectrum("destroy")}},PC=Q(jC,[["render",DC]]),UC=["src"];function YC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("img",{src:r.mapLink},null,8,UC)}const GC={mixins:[le],computed:{mapLink(){let e,n,i;if(this.value){const a=ft(this.schema.staticMapOptions||{},{lat:"lat",lng:"lng",zoom:8,sizeX:640,sizeY:640});e=this.value[a.lat],n=this.value[a.lng],i=`http://maps.googleapis.com/maps/api/staticmap?center=${e},${n}&zoom=${a.zoom}&size=${a.sizeX}x${a.sizeY}`;const o=["scale","format","maptype","language","region","markers","path","visible","style","key","signature"];for(const r of o)typeof a[r]<"u"&&(i+=`&${r}=${a[r]}`)}return i}}},FC=Q(GC,[["render",YC]]),HC=["autocomplete","disabled","name","id"],zC=["data-on","data-off","for"],KC=t.createElementVNode("span",{class:"handle"},null,-1);function qC(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("label",null,[t.withDirectives(t.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),autocomplete:e.schema.autocomplete,disabled:e.disabled||null,name:e.schema.inputName,id:e.getFieldID(e.schema)},null,8,HC),[[t.vModelCheckbox,e.value]]),t.createElementVNode("span",{class:"label","data-on":e.schema.textOn||"On","data-off":e.schema.textOff||"Off",for:e.getFieldID(e.schema)},null,8,zC),KC])}const XC={mixins:[le],methods:{formatValueToField(e){return e!=null&&this.schema.valueOn?e===this.schema.valueOn:e},formatValueToModel(e){return e!=null&&this.schema.valueOn?e?this.schema.valueOn:this.schema.valueOff:e}}},JC=Q(XC,[["render",qC]]),ZC={mixins:[le],data(){return{attributes:this.schema?this.schema.attributes:void 0,newKeyType:"string",newKeyName:"",keyTypes:{}}},created(){this.value||(this.value={})},mounted(){if(!this.value)return;const e=Object.keys(this.value),n={};for(let i=0;i<e.length;i++){const a=e[i];n[a]=typeof this.value[a]}this.keyTypes=n},methods:{removeElement(e){const n=this.value;delete n[e],this.value=JSON.parse(JSON.stringify(n));const i=this.keyTypes;delete i[e],this.keyTypes=JSON.parse(JSON.stringify(i))},addKey(){this.value[this.newKeyName]=void 0,this.value={...this.value},this.keyTypes[this.newKeyName]=this.newKeyType,this.keyTypes={...this.keyTypes},this.newKeyName=""}}},WC={key:0},QC={key:1},_C=["id"],$C={key:0},ek=["onUpdate:modelValue"],tk={key:1},nk=["onUpdate:modelValue"],ik={key:2},ak=["onUpdate:modelValue"],ok=["onClick"],rk=t.createElementVNode("option",{value:"string"}," String ",-1),lk=t.createElementVNode("option",{value:"number"}," Number ",-1),sk=t.createElementVNode("option",{value:"boolean"}," Boolean ",-1),ck=[rk,lk,sk];function dk(e,n,i,a,o,r){const l=t.resolveComponent("vue-form-generator"),s=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",null,[e.schema.schema?(t.openBlock(),t.createElementBlock("div",WC,[t.createVNode(l,{model:e.value,options:e.formOptions,schema:e.schema.schema},null,8,["model","options","schema"])])):(t.openBlock(),t.createElementBlock("div",QC,[t.createElementVNode("table",{id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(c,d)=>(t.openBlock(),t.createElementBlock("tr",{key:d},[t.createElementVNode("td",null,t.toDisplayString(d),1),o.keyTypes[d]==="string"?(t.openBlock(),t.createElementBlock("td",$C,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[d]=u,type:"text"},null,8,ek),[[t.vModelText,e.value[d]]])])):t.createCommentVNode("",!0),o.keyTypes[d]==="boolean"?(t.openBlock(),t.createElementBlock("td",tk,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[d]=u,type:"checkbox"},null,8,nk),[[t.vModelCheckbox,e.value[d]]])])):t.createCommentVNode("",!0),o.keyTypes[d]==="number"?(t.openBlock(),t.createElementBlock("td",ik,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[d]=u,type:"number"},null,8,ak),[[t.vModelText,e.value[d]]])])):t.createCommentVNode("",!0),t.createElementVNode("td",null,[t.createElementVNode("input",{type:"button",value:"x",onClick:u=>r.removeElement(d)},null,8,ok)])]))),128))],10,_C),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":n[0]||(n[0]=c=>o.newKeyType=c)},ck,512),[[t.vModelSelect,o.newKeyType]]),t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[1]||(n[1]=c=>o.newKeyName=c),type:"text"},null,512),[[t.vModelText,o.newKeyName]]),t.createElementVNode("input",{type:"button",value:"Add key",onClick:n[2]||(n[2]=(...c)=>r.addKey&&r.addKey(...c))})]))])),[[s,o.attributes]])}const Ll=Q(ZC,[["render",dk]]),pk={mixins:[le],emits:["model-updated"],data(){return{newKeyName:""}},computed:{subSchema(){return this.schema.schema&&this.schema.schema.fields[0].schema},subFields(){return!this.subSchema&&this.schema.fields},hasObjectKeys(){return this.value&&Object.keys(this.value).length>0},transformedModel(){return this.subSchema&&this.subSchema.fields.length>=1&&this.subSchema.fields[0].type==="array"?new Proxy(this.model[this.schema.model],{get:(e,n)=>({[this.schema.model]:e[n]}),set:(e,n,i)=>e[n]=i[this.schema.model]}):this.model[this.schema.model]}},mounted(){this.value||(this.value={});let e=[];this.subSchema?e=this.subSchema.fields:this.subFields&&(e=this.schema.fields[0].schema),this.value=this.transformMapModelValuesToObject(this.model,e,this.schema.model)},methods:{removeElement(e){const n=this.value;delete n[e],this.value={...n}},transformMapModelValuesToObject(e,n,i){const a={};return Object.keys(e).map(o=>{const r=o.indexOf(i+"-");if(r>-1&&Array.isArray(n))if(n.length>0){const l=o.split("-").filter(c=>n.find(d=>d.model===c)),s=o.split(`-${l}`)[0].split(`${i}-`)[1];l.length?a[s]={...a[s],[l]:e[o]}:a[o.substring(r+`${i}-`.length)]=e[o]}else a[o.substring(`${i}-`.length)]=e[o];else{const l=o.split("-").filter(c=>c===this.schema.model),s=o.split(`-${l}`)[0].split(`${i}-`)[1];s&&(a[s]=e[o])}return o}),a},addKey(){const e=this.subSchema&&Array.isArray(this.subSchema.fields)&&this.subSchema.fields.length===1&&this.subSchema.fields[0].type==="array",n=this.subSchema?e?[""]:{}:"";this.value[this.newKeyName]=n,this.newKeyName=""},updateModel(e,n){this.$emit("model-updated",this.model[this.schema.model],n)}}},Dl=e=>(t.pushScopeId("data-v-22600a29"),e=e(),t.popScopeId(),e),uk=["id"],mk=["data-testid"],gk={class:"item-wrapper"},fk={class:"index-wrapper"},Ak=Dl(()=>t.createElementVNode("hr",{class:"divider"},null,-1)),hk={key:0},yk={key:1},bk=["onUpdate:modelValue","placeholder","onInput"],wk={key:0,class:"hint"},Ck=Dl(()=>t.createElementVNode("hr",{class:"wide-divider"},null,-1)),kk={class:"input-item"},Ek=["placeholder"],Bk={key:0,class:"hint"};function Ok(e,n,i,a,o,r){const l=t.resolveComponent("KIcon"),s=t.resolveComponent("KButton"),c=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",{id:e.getFieldID(e.schema),class:t.normalizeClass(["object-advanced-wrapper",e.schema.fieldClasses])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(d,u)=>(t.openBlock(),t.createElementBlock("div",{key:u,"data-testid":`field-object-key-${u}`},[t.createElementVNode("div",null,[t.createElementVNode("div",gk,[t.createElementVNode("div",fk,[t.createElementVNode("strong",null,t.toDisplayString(u),1),t.createElementVNode("div",null,[t.createVNode(s,{appearance:"tertiary",class:"delete",type:"button",onClick:m=>r.removeElement(u)},{default:t.withCtx(()=>[t.createVNode(l,{icon:"trash",size:"18"})]),_:2},1032,["onClick"])])]),Ak,r.subSchema?(t.openBlock(),t.createElementBlock("div",hk,[t.createVNode(c,{model:r.transformedModel[u],options:{helpAsHtml:!0},schema:r.subSchema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])):(t.openBlock(),t.createElementBlock("div",yk,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":m=>e.value[u]=m,class:"form-control",placeholder:e.schema.fields&&e.schema.fields[0].schema.placeholder,type:"text",onInput:m=>r.updateModel(e.value[u],e.model[e.schema.model])},null,40,bk),[[t.vModelText,e.value[u]]]),e.schema.fields&&e.schema.fields[0].schema.hint?(t.openBlock(),t.createElementBlock("p",wk,t.toDisplayString(e.schema.fields[0].schema.hint),1)):t.createCommentVNode("",!0)])),Ck])])],8,mk))),128)),t.createElementVNode("div",{class:t.normalizeClass(["input-wrapper",{indent:r.hasObjectKeys}])},[t.createElementVNode("div",kk,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=d=>o.newKeyName=d),class:"form-control","data-testid":"keyname-input",placeholder:e.schema.placeholder,type:"text"},null,8,Ek),[[t.vModelText,o.newKeyName]]),t.createVNode(s,{appearance:"tertiary","data-testid":"add-key",disabled:!o.newKeyName,onClick:r.addKey},{default:t.withCtx(()=>[t.createTextVNode(" + Add "+t.toDisplayString(e.schema.buttonLabel||e.schema.label),1)]),_:1},8,["disabled","onClick"])]),e.schema.hintText?(t.openBlock(),t.createElementBlock("p",Bk,t.toDisplayString(e.schema.hintText),1)):t.createCommentVNode("",!0)],2)],10,uk)}const jl=Q(pk,[["render",Ok],["__scopeId","data-v-22600a29"]]),ii="24px",Pl=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},xk=e=>(t.pushScopeId("data-v-1d2a8d30"),e=e(),t.popScopeId(),e),Ik=["aria-hidden"],Sk={key:0,"data-testid":"kui-icon-svg-title"},Mk=xk(()=>t.createElementVNode("path",{d:"M11 19V13H5V11H11V5H13V11H19V13H13V19H11Z",fill:"currentColor"},null,-1)),vk=t.defineComponent({__name:"AddIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:ii,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return ii}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon add-icon","data-testid":"kui-icon-wrapper-add-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-add-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Sk,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Mk],8,Ik))]),_:1},8,["aria-hidden","style"]))}}),Tk=Pl(vk,[["__scopeId","data-v-1d2a8d30"]]),Rk=e=>(t.pushScopeId("data-v-b199fa56"),e=e(),t.popScopeId(),e),Nk=["aria-hidden"],Vk={key:0,"data-testid":"kui-icon-svg-title"},Lk=Rk(()=>t.createElementVNode("path",{d:"M7 21C6.45 21 5.97917 20.8042 5.5875 20.4125C5.19583 20.0208 5 19.55 5 19V6H4V4H9V3H15V4H20V6H19V19C19 19.55 18.8042 20.0208 18.4125 20.4125C18.0208 20.8042 17.55 21 17 21H7ZM17 6H7V19H17V6ZM9 17H11V8H9V17ZM13 17H15V8H13V17Z",fill:"currentColor"},null,-1)),Dk=t.defineComponent({__name:"TrashIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:ii,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return ii}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trash-icon","data-testid":"kui-icon-wrapper-trash-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trash-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Vk,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Lk],8,Nk))]),_:1},8,["aria-hidden","style"]))}}),ai=Pl(Dk,[["__scopeId","data-v-b199fa56"]]),jk={class:"array-item"},Pk=t.defineComponent({__name:"FieldArrayItem",props:{model:{type:String,default:""}},emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",jk,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(a,{appearance:"tertiary",class:"delete",onClick:i[0]||(i[0]=o=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ai))]),_:1})])}}}),Ul=Q(Pk,[["__scopeId","data-v-ec926551"]]),Uk=e=>(t.pushScopeId("data-v-27d212bd"),e=e(),t.popScopeId(),e),Yk={class:"multi-item-wrapper"},Gk=Uk(()=>t.createElementVNode("hr",null,null,-1)),Fk=t.defineComponent({__name:"FieldArrayMultiItem",emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",Yk,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(a,{appearance:"danger",class:"delete",onClick:i[0]||(i[0]=o=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createTextVNode(" - Remove Field ")]),_:1}),Gk])}}}),Yl=Q(Fk,[["__scopeId","data-v-27d212bd"]]),Hk={name:"FieldMetric",components:{AddIcon:Tk,TrashIcon:ai},mixins:[le],emits:["remove-item"],data(){return{contentVisible:!1}}},zk={key:0,class:"content"};function Kk(e,n,i,a,o,r){const l=t.resolveComponent("AddIcon"),s=t.resolveComponent("TrashIcon"),c=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["field-dropdown",{active:o.contentVisible}])},[t.createElementVNode("div",{class:"title",onClick:n[0]||(n[0]=d=>o.contentVisible=!o.contentVisible)},[t.createTextVNode(t.toDisplayString(e.model.name?e.model.name:"New Item")+" ",1),t.createVNode(l,{class:"metric-add-icon"})]),t.createVNode(t.Transition,{name:"slide-fade"},{default:t.withCtx(()=>[o.contentVisible?(t.openBlock(),t.createElementBlock("div",zk,[t.renderSlot(e.$slots,"default"),t.createVNode(c,{appearance:"tertiary",class:"metric-remove-button",onClick:n[1]||(n[1]=d=>e.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(s)]),_:1})])):t.createCommentVNode("",!0)]),_:3})],2)}const Gl=Q(Hk,[["render",Kk]]),yt="kong-ui-forms-api",qk="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}";function Xk(e){return e?e.length===36&&new RegExp(`^${qk}$`).test(e):!1}const sa=50,Nt={CREATE_NOT_FROM_ENTITY:"CREATE_NOT_FROM_ENTITY",CREATE_FROM_ENTITY:"CREATE_FROM_ENTITY",UPDATE_ENTITY:"UPDATE_ENTITY",SET_REFERRAL_VALUE:"SET_REFERRAL_VALUE"};function Jk(e,n,i){return i?Nt.SET_REFERRAL_VALUE:e&&!n||!e&&n?Nt.UPDATE_ENTITY:e&&n?Nt.CREATE_FROM_ENTITY:Nt.CREATE_NOT_FROM_ENTITY}const Zk={mixins:[le],inject:[yt],emits:["model-updated"],data(){return{suggestions:[],idValue:"",message:"Type something to search",items:[],initialItems:[],loading:!1}},computed:{fieldState(){return Jk(this.model[this.schema.model],this.associatedEntity||this.entityId,this.bypassSearch)},associatedEntity(){return this.$route&&this.$route.params[this.entity]},entity(){return this.schema.entity},bypassSearch(){return this.$route&&this.$route.query&&this.$route.query.no_search}},watch:{idValue:{handler(e,n){e!==n&&this.updateModel(e)}}},async created(){await this.$nextTick();let e,n;switch(this.fieldState){case Nt.UPDATE_ENTITY:if(!this[yt]){console.warn("[@kong-ui-public/forms] No API service provided");break}n=(await this[yt].getOne(this.entity,this.model[this.schema.model])).data,e=this.getItem(this.schema.entityDataKey?n[this.schema.entityDataKey]:n),this.idValue=e.id;break;case Nt.CREATE_FROM_ENTITY:this.idValue=this.associatedEntity.id;break;case Nt.SET_REFERRAL_VALUE:this.idValue=this.value}try{e&&(this.initialItems=[{...e,label:this.getSuggestionLabel(e),value:e.id}]),this.items=this.initialItems}catch(i){this.message=`There was an error loading ${this.schema.entity}`,console.error("err!",i)}},methods:{onQueryChange(e){e.trim().length===0&&(this.items=[],this.message="Type something to search"),typeof this.performSearch!="function"&&(this.performSearch=bn(this.search,500)),this.performSearch(e)},async search(e){if(e.trim().length===0)return;this.loading=!0;const n=[],i=[],a=this.getInputFields(),o=new Set;Xk(e)&&a.includes("id")?i.push((async()=>{const r=await this.fetchExact(e);n.push({...r,label:this.getSuggestionLabel(r),value:r.id})})()):i.push(...a.filter(r=>r!=="id").map(async r=>{(await this.fetchSuggestions(e,r)).forEach(l=>{o.has(l.id)||(o.add(l.id),n.push({...l,label:this.getSuggestionLabel(l),value:l.id}))})})),await Promise.all(i),this.items=n,this.items.length===0&&(this.message="No results"),this.loading=!1},getItem(e){return e.data?e.data.length>0?e.data[0]:[]:e},async fetchUntilLimit(e){const n=[];let i=null;if(!this[yt])return console.warn("[@kong-ui-public/forms] No API service provided"),[];for(;n.length<sa;){const a=await this[yt].getAll(this.entity,{size:sa,offset:i,...e});if(n.push(...a.data.data),i=a.data.offset,!i)break}return n.slice(0,sa)},async fetchSuggestions(e,n){return this.fetchUntilLimit({[n]:e})},async fetchExact(e){return this[yt]?(await this[yt].getOne(this.entity,e)).data:(console.warn("[@kong-ui-public/forms] No API service provided"),{})},getInputFields(){var e,n;return((n=(e=this.schema)==null?void 0:e.inputValues)==null?void 0:n.fields)||[]},getSuggestionLabel(e){const n=this.getInputFields();return n.length&&e?n.map(i=>e[i]).filter(Boolean).join(" - "):""},updateModel(e){this.$emit("model-updated",e!=null&&e.length?e:null,this.schema.model)},onSelected(e){this.idValue=e&&e.id,this.updateModel(this.getReturnValue(e||{}))},getReturnValue(e){var n;const i=(n=this.schema)==null?void 0:n.returnKey;return i?e[i]:e.id}}},Wk={class:"field-wrap autosuggest"},Qk=["data-testid","data-testlabel"],_k=["data-testid"],$k={class:"autosuggest__results_message"};function eE(e,n,i,a,o,r){const l=t.resolveComponent("KSelect");return t.openBlock(),t.createElementBlock("div",Wk,[t.createVNode(l,{id:e.schema.model,ref:"suggestion",modelValue:o.idValue,"onUpdate:modelValue":n[0]||(n[0]=s=>o.idValue=s),clearable:"","enable-filtering":"","filter-function":()=>!0,items:o.items,loading:o.loading,placeholder:e.schema.placeholder,width:"100%",onChange:r.onSelected,onQueryChange:r.onQueryChange},{"item-template":t.withCtx(({item:s})=>[t.createElementVNode("span",{class:"first-part","data-testid":s.id&&`${s.id}-0`,"data-testlabel":s.label},t.toDisplayString(r.getSuggestionLabel(s).split(" - ")[0]),9,Qk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.getSuggestionLabel(s).split(" - ").slice(1),(c,d)=>(t.openBlock(),t.createElementBlock("span",{key:d,class:"field-span","data-testid":s.id&&`${s.id}-${d+1}`||d+1},t.toDisplayString(c),9,_k))),128))]),empty:t.withCtx(()=>[t.createElementVNode("div",$k,[t.createElementVNode("span",null,t.toDisplayString(o.message),1)])]),_:1},8,["id","modelValue","items","loading","placeholder","onChange","onQueryChange"])])}const Fl=Q(Zk,[["render",eE],["__scopeId","data-v-d0c3e2aa"]]),tE={class:"array-card-container"},nE=t.defineComponent({__name:"FieldArrayCardContainer",props:{model:{type:Object,default:()=>null},schema:{type:Object,default:()=>null}},emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KCard"),o=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",tE,[t.createVNode(a,{class:"card"},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default",{},void 0,!0)]),_:3}),t.createVNode(o,{appearance:"tertiary",class:"array-card-remove-button",onClick:i[0]||(i[0]=r=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ai))]),_:1})])}}}),Hl=Q(nE,[["__scopeId","data-v-5fa27cb4"]]),iE={mixins:[le],emits:["model-updated"],methods:{updateModel(e){this.$emit("model-updated",e,this.schema.model)},checkOption(e){return this.model[this.schema.model]?e.value.toString()===this.model[this.schema.model].toString():e.checked},onChange(e){let n=e.target.value.split(",");this.schema.array||(n=n.toString()),this.updateModel(n)}}},aE={class:"selection-group"},oE={class:"form-group"},rE=["id","checked","name","value"];function lE(e,n,i,a,o,r){return t.openBlock(),t.createElementBlock("div",aE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.values,(l,s)=>(t.openBlock(),t.createElementBlock("div",{key:s,class:"option-group"},[t.createElementVNode("div",oE,[t.createElementVNode("label",{class:t.normalizeClass(["k-label",l.name])},[t.createElementVNode("input",{id:e.schema.name+"-"+s,checked:r.checkOption(l),class:"k-input",name:e.schema.name,type:"radio",value:l.value,onChange:n[0]||(n[0]=(...c)=>r.onChange&&r.onChange(...c))},null,40,rE),t.createTextVNode(" "+t.toDisplayString(l.name),1)],2)])]))),128))])}const zl=Q(iE,[["render",lE],["__scopeId","data-v-7e49acd6"]]),sE={name:"FieldArray",components:{FieldArrayItem:Ul,FieldArrayMultiItem:Yl,FieldSelect:Tl,FieldMetric:Gl,FieldObject:Ll,FieldObjectAdvanced:jl,FieldAutoSuggest:Fl,FieldRadio:zl,FieldArrayCardContainer:Hl,FieldTextArea:Rl,FieldInput:kl},mixins:[le],props:{newElementButtonLabel:{type:String,default:"New Item"},removeElementButtonLabel:{type:String,default:"x"}},methods:{generateSchema(e,n,i){var a,o,r;let l;return n&&(l=JSON.parse(JSON.stringify(n)),(r=(o=(a=l.schema)==null?void 0:a.fields)==null?void 0:o.map)==null||r.call(o,s=>(s.id=`${s.id||s.model}-${i}`,s))),{...l,set(s,c){e[i]=c},get(){return e[i]}}},newElement(){let e=this.value,n;(!e||!e.push)&&(e=[]),this.schema.items&&this.schema.items.default&&(typeof this.schema.items.default=="function"?n=this.schema.items.default():n=this.schema.items.default),e.push(n),this.value=[...e]},removeElement(e){this.value.splice(e,1)},getFieldType(e){return"field-"+e.type},modelUpdated(){}}},cE=["id"],dE={key:1},pE=["onUpdate:modelValue","aria-labelledby","type"],uE=["value","onClick"],mE=["onUpdate:modelValue","aria-labelledby"],gE=["value","onClick"];function fE(e,n,i,a,o,r){const l=t.resolveComponent("FieldTextArea"),s=t.resolveComponent("KButton");return e.schema?(t.openBlock(),t.createElementBlock("div",{key:0,id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(c,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:t.normalizeClass(e.schema.fieldItemsClasses)},[e.schema.items&&e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:0,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onRemoveItem:u=>r.removeElement(d)},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))]),_:2},1064,["model","schema","onRemoveItem"])):e.schema.items?(t.openBlock(),t.createElementBlock("span",dE,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))])):e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:2,"data-testid":`${e.getFieldID(e.schema)}-item-${d}`,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onRemoveItem:u=>r.removeElement(d)},{default:t.withCtx(()=>{var u,m;return[((u=e.schema.inputAttributes)==null?void 0:u.type)==="textarea"?(t.openBlock(),t.createBlock(l,{key:0,"aria-labelledby":e.getLabelId(e.schema),class:"k-input","form-options":e.formOptions,model:c,schema:r.generateSchema(e.value,e.schema.items,d),onModelUpdated:r.modelUpdated},null,8,["aria-labelledby","form-options","model","schema","onModelUpdated"])):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:1,"onUpdate:modelValue":f=>e.value[d]=f,"aria-labelledby":e.getLabelId(e.schema)},e.schema.inputAttributes,{type:((m=e.schema.inputAttributes)==null?void 0:m.type)||"text"}),null,16,pE)),[[t.vModelDynamic,e.value[d]]]),e.schema.showRemoveButton?(t.openBlock(),t.createElementBlock("input",t.mergeProps({key:2},e.schema.removeElementButtonAttributes,{type:"button",value:e.schema.removeElementButtonLabel||i.removeElementButtonLabel,onClick:f=>r.removeElement(d)}),null,16,uE)):t.createCommentVNode("",!0)]}),_:2},1064,["data-testid","model","schema","onRemoveItem"])):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:3},e.schema.inputAttributes,{"onUpdate:modelValue":u=>e.value[d]=u,"aria-labelledby":e.getLabelId(e.schema),type:"text"}),null,16,mE)),[[t.vModelText,e.value[d]]]),e.schema.showRemoveButton?(t.openBlock(),t.createElementBlock("input",t.mergeProps({key:4},e.schema.removeElementButtonAttributes,{type:"button",value:e.schema.removeElementButtonLabel||i.removeElementButtonLabel,onClick:u=>r.removeElement(d)}),null,16,gE)):t.createCommentVNode("",!0)],2))),128)),t.createVNode(s,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`add-${e.getFieldID(e.schema)}`,type:"button",onClick:r.newElement},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel||i.newElementButtonLabel),1)]),_:1},8,["class","data-testid","onClick"])],10,cE)):t.createCommentVNode("",!0)}const AE=Q(sE,[["render",fE],["__scopeId","data-v-c42fe627"]]),hE={mixins:[le],emits:["model-updated"],data(){return{isOpen:!1}},computed:{openClass(){return this.isOpen?"open":"closed"},fieldCount(){return this.schema.fields.length},titleText(){return`${this.isOpen?"Hide":"View"} ${this.fieldCount} Advanced Fields`}},methods:{handleOpen(){this.isOpen=!this.isOpen},updateModel(e,n){this.$emit("model-updated",e,n)}}},yE={class:"advanced-field-dropdown-wrapper","data-testid":"advanced-field-dropdown-wrapper"},bE={class:"material-icons"};function wE(e,n,i,a,o,r){const l=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",yE,[t.createElementVNode("button",{class:"advanced-field-title",type:"button",onClick:n[0]||(n[0]=(...s)=>r.handleOpen&&r.handleOpen(...s))},[t.createElementVNode("i",bE,t.toDisplayString(o.isOpen?"keyboard_arrow_up":"keyboard_arrow_right"),1),t.createElementVNode("span",null,t.toDisplayString(r.titleText),1)]),t.createElementVNode("div",{class:t.normalizeClass(["advanced-field-dropdown",r.openClass])},[t.createVNode(l,{model:e.model,options:{helpAsHtml:!0},schema:e.schema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])],2)])}const CE=Q(hE,[["render",wE],["__scopeId","data-v-2d8e71e1"]]),kE={mixins:[le],emits:["model-updated"],data(){return{checkedGroup:null,fieldModel:{...this.model},fieldSchema:[]}},watch:{checkedGroup:{handler(e,n){if(n===null){this.fieldModel={...this.model};return}const i=this.schema.fields[e].fields,a=this.schema.fields[n].fields;a&&a.forEach(o=>this.updateModel("",o.model)),i&&i.forEach(o=>this.updateModel(this.fieldModel[o.model],o.model))}}},async created(){await this.$nextTick(),this.schema.fields.forEach((e,n)=>{e.fields&&e.fields.forEach(i=>{this.model[i.model]&&(this.checkedGroup=n,this.fieldSchema.push(i.model))})}),this.checkedGroup===null&&(this.checkedGroup=0)},methods:{updateModel(e,n){this.$emit("model-updated",e,n)}}},EE={class:"selection-group"},BE={class:"form-group"},OE=["value"],xE={class:"control-help"},IE={class:"option-field"},SE={class:"option-field-container"};function ME(e,n,i,a,o,r){const l=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",EE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(s,c)=>(t.openBlock(),t.createElementBlock("div",{key:c,class:"option-group"},[t.createElementVNode("div",BE,[t.createElementVNode("label",{class:t.normalizeClass(["k-label",`${s.label}-check`])},[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=d=>o.checkedGroup=d),class:"k-input",type:"radio",value:c},null,8,OE),[[t.vModelRadio,o.checkedGroup]]),t.createTextVNode(" "+t.toDisplayString(s.label)+" ",1),t.createElementVNode("div",xE,t.toDisplayString(s.description),1)],2)]),t.withDirectives(t.createElementVNode("div",IE,[t.createElementVNode("div",SE,[t.createVNode(l,{model:e.model,options:{helpAsHtml:!0},schema:{fields:s.fields},onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])],512),[[t.vShow,s.fields&&o.checkedGroup===c]])]))),128))])}const vE=Q(kE,[["render",ME],["__scopeId","data-v-25fe24da"]]),TE={mixins:[le],emits:["model-updated"],methods:{onUpdate(e){this.$emit("model-updated",e,this.schema.model)}}};function RE(e,n,i,a,o,r){const l=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(l,{"aria-labelledby":e.getLabelId(e.schema),"data-testid":"field-multiselect",items:e.schema.values,"label-attributes":{info:e.schema.help},"model-value":e.value,placeholder:e.schema.placeholder,required:e.schema.required||void 0,width:"100%","onUpdate:modelValue":r.onUpdate},null,8,["aria-labelledby","items","label-attributes","model-value","placeholder","required","onUpdate:modelValue"])}const NE=Q(TE,[["render",RE]]),VE={name:"FieldKeyValuePairs",components:{TrashIcon:ai},mixins:[le],data(){return{pairs:[]}},watch:{pairs:{handler(){this.updateValue()},deep:!0}},created(){var e,n;this.value||(this.value={});const i=((n=this.model)==null?void 0:n[(e=this.schema)==null?void 0:e.model])??{};Object.keys(i).forEach(a=>{this.pairs.push({key:a,value:i[a]})})},methods:{onInput(e,n,i){this.pairs[n][i]=e.target.value},updateValue(){this.value=this.pairs.reduce((e,{key:n,value:i})=>({...e,...n&&i?{[n]:i}:null}),{})},addPair(){this.pairs.push({key:"",value:""})},removePair(e){this.pairs.splice(e,1)}}},LE={class:"key-value-pairs-editor"},DE=["data-testid","placeholder","value","onInput"],jE=["data-testid","placeholder","value","onInput"];function PE(e,n,i,a,o,r){const l=t.resolveComponent("TrashIcon"),s=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",LE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.pairs,(c,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:"pair-item"},[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-key-${d}`,placeholder:e.schema.keyInputPlaceholder??"Key",type:"text",value:c.key,onInput:u=>{r.onInput(u,d,"key")}},null,40,DE),t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-value-${d}`,placeholder:e.schema.valueInputPlaceholder??"Value",type:"text",value:c.value,onInput:u=>{r.onInput(u,d,"value")}},null,40,jE),t.createVNode(s,{appearance:"tertiary","data-testid":`${e.getFieldID(e.schema)}-remove-pair-${d}`,onClick:()=>{r.removePair(d)}},{default:t.withCtx(()=>[t.createVNode(l)]),_:2},1032,["data-testid","onClick"])]))),128)),t.createVNode(s,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`${e.getFieldID(e.schema)}-add-pair`,type:"button",onClick:r.addPair},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel??"+ Add Pair"),1)]),_:1},8,["class","data-testid","onClick"])])}const UE=Q(VE,[["render",PE],["__scopeId","data-v-29d15375"]]),YE=Object.freeze(Object.defineProperty({__proto__:null,FieldAdvanced:CE,FieldArray:AE,FieldArrayCardContainer:Hl,FieldArrayItem:Ul,FieldArrayMultiItem:Yl,FieldAutoSuggest:Fl,FieldCheckbox:d1,FieldChecklist:k1,FieldCleave:Zw,FieldDateTimePicker:tC,FieldGoogleAddress:oC,FieldImage:pC,FieldInput:kl,FieldKeyValuePairs:UE,FieldLabel:I1,FieldMasked:fC,FieldMetric:Gl,FieldMultiselect:NE,FieldNoUiSlider:bC,FieldObject:Ll,FieldObjectAdvanced:jl,FieldPikaday:BC,FieldRadio:zl,FieldRadios:R1,FieldRangeSlider:SC,FieldSelect:Tl,FieldSelectEx:VC,FieldSelectionGroup:vE,FieldSpectrum:PC,FieldStaticMap:FC,FieldSubmit:jw,FieldTextArea:Rl,FieldUpload:Kw,fieldSwitch:JC},Symbol.toStringTag,{value:"Module"})),GE={name:"FormGroup",components:YE,mixins:[Br],props:{vfg:{type:Object,required:!0},model:{type:Object,default:()=>{}},options:{type:Object,default:()=>{}},field:{type:Object,required:!0},errors:{type:Array,default(){return[]}}},emits:["validated","modelUpdated"],data(){return{child:t.ref()}},methods:{fieldTypeHasLabel(e){if(Ce(e.label))return!1;let n="";switch(e.type==="input"?n=e.inputType:n=e.type,n){case"button":case"submit":case"reset":return!1;default:return!0}},getFieldID(e){const n=ee(this.options,"fieldIdPrefix","");return ea(e,n)},getTooltipId(e){return`${this.getFieldID(e)}-tooltip`},getFieldType(e){return"field-"+e.type},getButtonType(e){return ee(e,"type","button")},onFieldValidated(e,n,i){this.$emit("validated",e,n,i)},buttonVisibility(e){return e.buttons&&e.buttons.length>0},buttonClickHandler(e,n,i){return e.onclick.call(this,this.model,n,i,this)},fieldHint(e){return oe(e.hint)?e.hint.call(this,this.model,e,this):e.hint},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e){return this.$refs.child.validate(e)},clearValidationErrors(){if(this.$refs.child)return this.$refs.child.clearValidationErrors()},formattedLabel(e){return e?e.replace(/^[cC]onfig\./,""):""}}},FE=e=>(t.pushScopeId("data-v-b1f6f432"),e=e(),t.popScopeId(),e),HE=["innerHTML"],zE={class:"icon-wrapper"},KE=["innerHTML"],qE={key:0,class:"link-wrapper"},XE=FE(()=>t.createElementVNode("span",{class:"section-header"},"More info",-1)),JE={class:"field-wrap"},ZE={key:0,class:"buttons"},WE=["type","onClick","textContent"],QE=["innerHTML"],_E={key:2,class:"errors help-block"},$E=["innerHTML"];function e0(e,n,i,a,o,r){const l=t.resolveComponent("KExternalLink"),s=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["form-group",e.getFieldRowClasses(i.field)])},[r.fieldTypeHasLabel(i.field)?(t.openBlock(),t.createBlock(s,{key:0,"aria-describedby":i.field.help?r.getTooltipId(i.field):void 0,class:t.normalizeClass(i.field.labelClasses),for:r.getFieldID(i.field),info:!i.options.helpAsHtml&&i.field.help?i.field.help:void 0,"tooltip-attributes":i.field.help?{maxWidth:"300",placement:"top",tooltipId:r.getTooltipId(i.field)}:void 0},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",zE,[t.createElementVNode("span",{innerHTML:r.formattedLabel(i.field.label)},null,8,KE)]),i.field.link?(t.openBlock(),t.createElementBlock("div",qE,[t.createVNode(l,{href:i.field.link},{default:t.withCtx(()=>[XE]),_:1},8,["href"])])):t.createCommentVNode("",!0)]),_:2},[i.options.helpAsHtml?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:i.field.help},null,8,HE)]),key:"0"}:void 0]),1032,["aria-describedby","class","for","info","tooltip-attributes"])):t.createCommentVNode("",!0),t.createElementVNode("div",JE,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(i.field)),t.mergeProps(e.$attrs,{ref:"child",disabled:e.fieldDisabled(i.field)||null,"form-options":i.options,hint:i.field.hint&&r.getFieldType(i.field)==="field-input"?r.fieldHint(i.field):void 0,model:i.model,schema:i.field,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated}),null,16,["disabled","form-options","hint","model","schema","vfg","onModelUpdated","onValidated"])),r.buttonVisibility(i.field)?(t.openBlock(),t.createElementBlock("div",ZE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.field.buttons,(c,d)=>(t.openBlock(),t.createElementBlock("button",{key:d,class:t.normalizeClass(c.classes),type:r.getButtonType(c),onClick:u=>r.buttonClickHandler(c,i.field,u),textContent:t.toDisplayString(c.label)},null,10,WE))),128))])):t.createCommentVNode("",!0)]),i.field.hint&&r.getFieldType(i.field)!=="field-input"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"hint",innerHTML:r.fieldHint(i.field)},null,8,QE)):t.createCommentVNode("",!0),r.fieldErrors(i.field).length>0?(t.openBlock(),t.createElementBlock("div",_E,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.fieldErrors(i.field),(c,d)=>(t.openBlock(),t.createElementBlock("span",{key:d,innerHTML:c},null,8,$E))),128))])):t.createCommentVNode("",!0)],2)}const t0=Q(GE,[["render",e0],["__scopeId","data-v-b1f6f432"]]),n0={name:"FormGenerator",components:{formGroup:t0},mixins:[Br],props:{schema:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},options:{type:Object,default(){return{validateAfterLoad:!1,validateAfterChanged:!1,child:t.ref([]),fieldIdPrefix:"",validateAsync:!1,validationErrorClass:"error",validationSuccessClass:"",helpAsHtml:!1}}},multiple:{type:Boolean,default:!1},isNewModel:{type:Boolean,default:!1},tag:{type:String,default:"fieldset",validator:function(e){return e.length>0}}},emits:["validated","modelUpdated"],data(){return{vfg:this,errors:[],children:t.ref([]),collapseStates:{}}},computed:{fields(){const e=[];return this.schema&&this.schema.fields&&Le(this.schema.fields,n=>{(!this.multiple||n.multi===!0)&&e.push(n)}),e},groups(){const e=[];return this.schema&&this.schema.groups&&Le(this.schema.groups.slice(0),n=>{e.push(n)}),e}},watch:{model:{deep:!0,handler(e,n){n!==e&&e!=null&&this.$nextTick(()=>{this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors()})}}},mounted(){this.$nextTick(()=>{this.model&&(this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors())})},methods:{fieldVisible(e){return oe(e.visible)?e.visible.call(this,this.model,e,this):Ce(e.visible)?!0:e.visible},onFieldValidated(e,n,i){this.errors=this.errors.filter(o=>o.field.fieldName!==i.schema.fieldName),!e&&n&&n.length>0&&Le(n,o=>{this.errors.push({field:i.schema,error:o})});const a=this.errors.length===0;this.$emit("validated",a,this.errors,this)},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e=null){e===null&&(e=ee(this.options,"validateAsync",!1)),this.clearValidationErrors();const n=[],i=[];Le(this.$refs.children,o=>{oe(o.validate)&&(n.push(o.$refs.child),i.push(o.$refs.child.validate(!0)))});const a=o=>{const r=[];Le(o,(s,c)=>{Array.isArray(s)&&s.length>0&&Le(s,d=>{r.push({field:n[c].schema,error:d})})}),this.errors=r;const l=r.length===0;return this.$emit("validated",l,r,this),e?r:l};return e?Promise.all(i).then(a):a(i)},clearValidationErrors(){this.errors.splice(0),Le(this.$refs.children,e=>{e.clearValidationErrors()})}}},i0={key:0,class:"vue-form-generator"},a0={key:0};function o0(e,n,i,a,o,r){const l=t.resolveComponent("form-group"),s=t.resolveComponent("KCollapse");return i.schema!=null?(t.openBlock(),t.createElementBlock("div",i0,[i.schema.fields?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.fields,c=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:c.model},[r.fieldVisible(c)?(t.openBlock(),t.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:c,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:1})):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.groups,(c,d)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`group-${d}`},[c.collapsible!==void 0&&c.collapsible!==!1?(t.openBlock(),t.createBlock(s,{key:0,class:"root-level-collapse","model-value":!1,title:c.collapsible.title},t.createSlots({default:t.withCtx(()=>{var u,m,f,h;return[(u=c.slots)!=null&&u.beforeContent?t.renderSlot(e.$slots,(m=c.slots)==null?void 0:m.beforeContent,{key:0}):t.createCommentVNode("",!0),c.fields.length===0&&(f=c.slots)!=null&&f.emptyState?t.renderSlot(e.$slots,(h=c.slots)==null?void 0:h.emptyState,{key:1}):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:2,class:t.normalizeClass(e.getFieldRowClasses(c))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.fields,C=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:C.model},[r.fieldVisible(C)?(t.openBlock(),t.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:C,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"])),c.collapsible!==!0&&c.collapsible.nestedCollapsible&&c.collapsible.nestedCollapsible.fields.length>0?(t.openBlock(),t.createBlock(s,{key:3,class:"nested-collapse","model-value":o.collapseStates[`group-${d}-nested`]??!0,"trigger-alignment":"leading","trigger-label":o.collapseStates[`group-${d}-nested`]??!0?c.collapsible.nestedCollapsible.triggerLabel.expand:c.collapsible.nestedCollapsible.triggerLabel.collapse,"onUpdate:modelValue":C=>o.collapseStates[`group-${d}-nested`]=C},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{class:t.normalizeClass(e.getFieldRowClasses(c))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.collapsible.nestedCollapsible.fields,C=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:C.model},[r.fieldVisible(C)?(t.openBlock(),t.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:C,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))]),_:2},1032,["model-value","trigger-label","onUpdate:modelValue"])):t.createCommentVNode("",!0)]}),_:2},[c.collapsible.description?{name:"visible-content",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(c.collapsible.description),1)]),key:"0"}:void 0]),1032,["title"])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:1,class:t.normalizeClass(e.getFieldRowClasses(c))},{default:t.withCtx(()=>[c.legend?(t.openBlock(),t.createElementBlock("legend",a0,t.toDisplayString(c.legend),1)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.fields,u=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:u.model},[r.fieldVisible(u)?(t.openBlock(),t.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:u,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))],64))),128))])):t.createCommentVNode("",!0)}const Ye=Q(n0,[["render",o0]]),r0={fields:[{inputType:"text",label:"Config.Client Id",model:"config-client_id",type:"input"},{inputType:"text",label:"Config.Client Secret",model:"config-client_secret",type:"input"},{inputType:"text",label:"Config.Issuer",model:"config-issuer",required:!0,type:"input"},{inputType:"text",label:"Config.Auth Methods",model:"config-auth_methods",type:"input"}]},l0={fields:[{inputType:"text",label:"Config.Scopes Claim",model:"config-scopes_claim",type:"input"},{inputType:"text",label:"Config.Scopes Required",model:"config-scopes_required",type:"input"},{inputType:"text",label:"Config.Audience Claim",model:"config-audience_claim",type:"input"},{inputType:"text",label:"Config.Audience Required",model:"config-audience_required",type:"input"},{inputType:"text",label:"Config.Roles Claim",model:"config-roles_claim",type:"input"},{inputType:"text",label:"Config.Roles Required",model:"config-roles_required",type:"input"},{inputType:"text",label:"Config.Groups Claim",model:"config-groups_claim",type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"auth-array-item-container",fieldItemsClasses:"auth-array-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",newElementButtonLabelClasses:"auth-array-item-new",newElementButtonLabel:"+ Add"},{inputType:"text",label:"Config.Groups Required",model:"config-groups_required",type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"auth-array-item-container",fieldItemsClasses:"auth-array-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",newElementButtonLabelClasses:"auth-array-item-new",newElementButtonLabel:"+ Add"},{inputType:"text",label:"Config.Authenticated Groups Claim",model:"config-authenticated_groups_claim",type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"auth-array-item-container",fieldItemsClasses:"auth-array-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",newElementButtonLabelClasses:"auth-array-item-new",newElementButtonLabel:"+ Add"}]},s0={fields:[{type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper",newElementButtonLabel:"+ Add Client JWK",items:{type:"object",schema:{fields:[{model:"kid",label:"kid",type:"input",inputType:"string"},{model:"issuer",label:"issuer",type:"input",inputType:"string"},{model:"kty",label:"kty",type:"input",inputType:"string"},{model:"use",label:"use",type:"input",inputType:"string"},{model:"key_ops",label:"key_ops",type:"array",fieldItemsClasses:"jwk-array-input-wrapper",showRemoveButton:!0,removeElementButtonLabel:"Remove",items:{type:"input",inputType:"string"}},{model:"alg",label:"alg",type:"input",inputType:"string"},{model:"x5u",label:"x5u",type:"input",inputType:"string"},{model:"x5c",label:"x5c",type:"array",fieldItemsClasses:"jwk-array-input-wrapper",showRemoveButton:!0,removeElementButtonLabel:"Remove",items:{type:"input",inputType:"string"}},{model:"x5t",label:"x5t",type:"input",inputType:"string"},{model:"x5t#S256",label:"x5t#S256",type:"input",inputType:"string"},{model:"k",label:"k",type:"input",inputType:"string"},{model:"x",label:"x",type:"input",inputType:"string"},{model:"y",label:"y",type:"input",inputType:"string"},{model:"crv",label:"crv",type:"input",inputType:"string"},{model:"n",label:"n",type:"input",inputType:"string"},{model:"e",label:"e",type:"input",inputType:"string"},{model:"d",label:"d",type:"input",inputType:"string"},{model:"p",label:"p",type:"input",inputType:"string"},{model:"q",label:"q",type:"input",inputType:"string"},{model:"dp",label:"dp",type:"input",inputType:"string"},{model:"dq",label:"dq",type:"input",inputType:"string"},{model:"qi",label:"qi",type:"input",inputType:"string"},{model:"oth",label:"oth",type:"input",inputType:"string"},{model:"r",label:"r",type:"input",inputType:"string"},{model:"t",label:"t",type:"input",inputType:"string"}]}},model:"config-client_jwk",label:"Config.Client Jwk",order:0,disabled:!1,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#jwk-record"},{type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper",newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}},model:"config-session_redis_cluster_nodes",label:"Config.Session Redis Cluster Nodes",order:0,disabled:!1,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#host-record"}]},c0={name:"OIDCForm",components:{VueFormGenerator:Ye},props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},data(){return{init:!1,authMethods:[],sessionManagement:!1,globalFields:null,commonFieldsSchema:null,authFieldsSchema:null,advancedFieldsSchema:{fields:[]},advancedFields:null,tabs:[{hash:"#common",title:"Common"},{hash:"#authorization",title:"Authorization"},{hash:"#advanced",title:"Advanced"}]}},computed:{displayForm(){return this.formModel.id&&this.isEditing||!this.isEditing}},watch:{formModel:{handler:function(){this.oidcSetup()}}},mounted(){this.oidcSetup()},methods:{oidcSetup(){var e;this.init||(this.init=!0,this.globalFields={fields:this.formSchema.fields.filter(i=>!i.model.startsWith("config")&&i.model!=="tags")},this.commonFieldsSchema={...r0},this.authFieldsSchema={...l0},this.advancedFieldsSchema.fields=this.formSchema.fields.filter(i=>i.model.startsWith("config")&&!this.commonFieldsSchema.fields.filter(a=>a.model===i.model).length&&!this.authFieldsSchema.fields.filter(a=>a.model===i.model).length||i.model==="tags"),this.advancedFieldsSchema.fields=this.advancedFieldsSchema.fields.map(i=>s0.fields.find(o=>o.model===i.model)||i),this.commonFieldsSchema.fields=this.commonFieldsSchema.fields.filter(i=>i.model!=="config-auth_methods"),this.sessionManagement=this.isEditing?this.formModel["config-auth_methods"].includes("session"):!1,this.authMethods=[{label:"Authorization Code Flow",value:"authorization_code",hint:"authorization code flow",prop:this.isEditing?this.formModel["config-auth_methods"].includes("authorization_code"):!1},{label:"Bearer Access Token",value:"bearer",hint:"JWT access token verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("bearer"):!1},{label:"Client Credentials Grant",value:"client_credentials",hint:"OAuth client credentials grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("client_credentials"):!1},{label:"Passwords Grant",value:"password",hint:"OAuth legacy password grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("password"):!1},{label:"Introspection",value:"introspection",hint:"OAuth introspection",prop:this.isEditing?this.formModel["config-auth_methods"].includes("introspection"):!1},{label:"UserInfo",value:"userinfo",hint:"OpenID Connect user info endpoint authentication",prop:this.isEditing?this.formModel["config-auth_methods"].includes("userinfo"):!1},{label:"Kong OAuth",value:"kong_oauth2",hint:"Kong OAuth plugin issued tokens verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("kong_oauth2"):!1},{label:"Refresh Token",value:"refresh_token",hint:"OAuth refresh token grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("refresh_token"):!1}]);const n={};for(const i of this.formSchema.fields)n[i.model]=i;for(const i of[this.commonFieldsSchema,this.authFieldsSchema,this.advancedFieldsSchema])for(const a of i.fields){const o=(e=n[a.model])==null?void 0:e.help;a.help===void 0&&typeof o=="string"&&(a.help=o)}},getAuthMethodsValue(e,n){const i=[];for(let a=0;a<this.authMethods.length;a++)this.authMethods[a].prop&&this.authMethods[a].value!==e&&i.push(this.authMethods[a].value);return this.sessionManagement&&e&&i.push("session"),n&&(e?i.push(e):i.push("session")),i},handleUpdate(e,n){this.formModel["config-auth_methods"]=this.getAuthMethodsValue(n,e),this.onModelUpdated()}}},_t=e=>(t.pushScopeId("data-v-e7395ff0"),e=e(),t.popScopeId(),e),d0={class:"general-settings"},p0={class:"link-wrapper"},u0=_t(()=>t.createElementVNode("span",{class:"section-header"},"Common Configuration Settings",-1)),m0=_t(()=>t.createElementVNode("div",{class:"description"}," Parameters for enabling the OpenID Connect plugin. Set these parameters before adding authorization, authentication, or other advanced configuration details. ",-1)),g0={class:"auth-method-container"},f0={class:"general-settings"},A0={class:"link-wrapper"},h0=_t(()=>t.createElementVNode("span",{class:"section-header"},"Authorization Configuration Settings",-1)),y0=_t(()=>t.createElementVNode("div",{class:"description"}," Parameters for setting up claims-based authorization. ",-1)),b0={class:"general-settings"},w0={class:"link-wrapper"},C0=_t(()=>t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings",-1)),k0=_t(()=>t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the OpenID Connect plugin. ",-1));function E0(e,n,i,a,o,r){const l=t.resolveComponent("VueFormGenerator"),s=t.resolveComponent("KExternalLink"),c=t.resolveComponent("KLabel"),d=t.resolveComponent("KCheckbox"),u=t.resolveComponent("KInputSwitch"),m=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[i.formModel.id&&i.isEditing||!i.isEditing?(t.openBlock(),t.createBlock(l,{key:0,class:"global-fields",model:i.formModel,options:i.formOptions,schema:o.globalFields,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(m,{tabs:o.tabs},{common:t.withCtx(()=>[t.createElementVNode("div",d0,[t.createElementVNode("div",p0,[t.createVNode(s,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#important-configuration-parameters"},{default:t.withCtx(()=>[u0]),_:1})]),m0,r.displayForm?(t.openBlock(),t.createBlock(l,{key:0,model:i.formModel,options:i.formOptions,schema:o.commonFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(c,null,{default:t.withCtx(()=>[t.createTextVNode("Auth Methods")]),_:1}),t.createElementVNode("div",g0,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.authMethods,f=>(t.openBlock(),t.createElementBlock("div",{key:f.value,class:"auth-method"},[t.createVNode(d,{modelValue:f.prop,"onUpdate:modelValue":h=>f.prop=h,onChange:h=>r.handleUpdate(h,f.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(f.label),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]))),128))]),t.createVNode(u,{modelValue:o.sessionManagement,"onUpdate:modelValue":n[0]||(n[0]=f=>o.sessionManagement=f),label:"Enable Session Management",onChange:r.handleUpdate},null,8,["modelValue","onChange"])])]),authorization:t.withCtx(()=>[t.createElementVNode("div",f0,[t.createElementVNode("div",A0,[t.createVNode(s,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#authorization"},{default:t.withCtx(()=>[h0]),_:1})]),y0,r.displayForm?(t.openBlock(),t.createBlock(l,{key:0,model:i.formModel,options:i.formOptions,schema:o.authFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),advanced:t.withCtx(()=>[t.createElementVNode("div",b0,[t.createElementVNode("div",w0,[t.createVNode(s,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/"},{default:t.withCtx(()=>[C0]),_:1})]),k0,r.displayForm?(t.openBlock(),t.createBlock(l,{key:0,model:i.formModel,options:i.formOptions,schema:o.advancedFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:1},8,["tabs"])])}const B0=Q(c0,[["render",E0],["__scopeId","data-v-e7395ff0"]]),O0={packageName:"forms"},Kl={general:O0,"post-function":{tags:{hint:"e.g. tag1, tag2, tag3",newElementButtonLabel:"+ Add"},enabled:{newElementButtonLabel:"+ Add"},selectionGroup:{newElementButtonLabel:"+ Add"},instance_name:{newElementButtonLabel:"+ Add"},name:{newElementButtonLabel:"+ Add"},"config-certificate":{help:"Array of stringified Lua code to be cached and run in sequence during the certificate phase.",newElementButtonLabel:"+ Add"},"config-access":{help:"Array of stringified Lua code to be cached and run in sequence during the access phase.",newElementButtonLabel:"+ Add"},"config-body_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the body_filter phase.",newElementButtonLabel:"+ Add"},"config-header_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the header_filter phase.",newElementButtonLabel:"+ Add"},"config-functions":{newElementButtonLabel:"+ Add"},"config-log":{newElementButtonLabel:"+ Add"},"config-rewrite":{newElementButtonLabel:"+ Add"},"config-ws_client_frame":{newElementButtonLabel:"+ Add"},"config-ws_close":{newElementButtonLabel:"+ Add"},"config-ws_handshake":{newElementButtonLabel:"+ Add"},"config-ws_upstream_frame":{newElementButtonLabel:"+ Add"}},"exit-transformer":{"config-functions":{newElementButtonLabel:"+ Add"}}},x0=t.defineComponent({__name:"PostFunction",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){const{t:n,te:i}=jt.createI18n("en-us",Kl),a=e,o=t.computed(()=>a.formModel.id&&a.isEditing||!a.isEditing),r=t.computed(()=>{const l=a.formSchema;return l.fields.map(s=>{const c=`post-function.${s.model}`;return s.hint=i(`${c}.hint`)&&n(`${c}.hint`)||s.hint,s.help=i(`${c}.help`)&&n(`${c}.help`)||s.help,s.newElementButtonLabel=i(`${c}.newElementButtonLabel`)&&n(`${c}.newElementButtonLabel`)||s.newElementButtonLabel,s.model!=="tags"&&(s.valueType==="array"||s.type==="array")&&(s.type="array",s.valueArrayType="array",s.itemContainerComponent="FieldArrayItem",s.fieldClasses="post-function-array-item-container",s.fieldItemsClasses="post-function-array-item",s.inputAttributes={...s.inputAttributes,type:"textarea"}),s}),l});return(l,s)=>o.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:r.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),I0=Q(x0,[["__scopeId","data-v-6706c68b"]]),S0=t.defineComponent({__name:"ExitTransformer",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){const{t:n,te:i}=jt.createI18n("en-us",Kl),a=e,o=t.computed(()=>a.formModel.id&&a.isEditing||!a.isEditing),r=t.computed(()=>{const l=a.formSchema;return l.fields.map(s=>{const c=`exit-transformer.${s.model}`;return s.hint=i(`${c}.hint`)&&n(`${c}.hint`)||s.hint,s.help=i(`${c}.help`)&&n(`${c}.help`)||s.help,s.newElementButtonLabel=i(`${c}.newElementButtonLabel`)&&n(`${c}.newElementButtonLabel`)||s.newElementButtonLabel,s.model!=="tags"&&(s.valueType==="array"||s.type==="array")&&(s.type="array",s.valueArrayType="array",s.itemContainerComponent="FieldArrayItem",s.fieldClasses="exit-transformer-array-item-container",s.fieldItemsClasses="exit-transformer-array-item",s.inputAttributes={...s.inputAttributes,type:"textarea"}),s}),l});return(l,s)=>o.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:r.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),M0=Q(S0,[["__scopeId","data-v-0fc8ef29"]]),v0={fields:[{inputType:"text",label:"Config.Account Email",model:"config-account_email",required:!0,type:"input"},{inputType:"text",label:"Config.Account Key.Key Id",model:"config-account_key-key_id",required:!0,type:"input"},{type:"input",inputType:"text",valueType:"string",label:"Config.Account Key.Key Set",model:"config-account_key-key_set",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",label:"Config.Allow Any Domain",model:"config-allow_any_domain",order:0,disabled:!1}]},T0={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",model:"config-tos_accepted",label:"Config.Tos Accepted",order:0,disabled:!1}]},R0={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_hmac_key",label:"Config.Eab Hmac Key",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_kid",label:"Config.Eab Kid",order:0,disabled:!1}]},Vt=e=>(t.pushScopeId("data-v-b9df1c3f"),e=e(),t.popScopeId(),e),N0={class:"general-settings"},V0=Vt(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"General Configuration Settings")],-1)),L0=Vt(()=>t.createElementVNode("div",{class:"description"}," Parameters for enabling the ACME plugin. ",-1)),D0=Vt(()=>t.createElementVNode("hr",null,null,-1)),j0={class:"sub-form"},P0={class:"general-settings"},U0=Vt(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Storage Configuration Settings")],-1)),Y0=Vt(()=>t.createElementVNode("div",{class:"description"}," Parameters for setting up storage. ",-1)),G0={class:"sub-form"},F0={class:"general-settings"},H0=Vt(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings")],-1)),z0=Vt(()=>t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the ACME plugin. ",-1)),K0=t.defineComponent({__name:"ACMEForm",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){const n=e,i=t.ref("zeroSsl"),a=t.ref("shm"),o=t.computed(()=>{var A;const g={};if((A=n.formSchema)!=null&&A.fields)for(const E of n.formSchema.fields)g[E.model]=E;return g}),r=t.computed(()=>{var A;const g=$i(v0);for(const E of g.fields){const k=(A=o.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof k=="string"&&(E.help=k)}return g}),l=t.computed(()=>{var A;const g=$i(T0);for(const E of g.fields){const k=(A=o.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof k=="string"&&(E.help=k)}return g}),s=t.computed(()=>{var A;const g=$i(R0);for(const E of g.fields){const k=(A=o.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof k=="string"&&(E.help=k)}return g}),c=t.computed(()=>({fields:n.formSchema.fields.filter(A=>!A.model.startsWith("config")&&A.model!=="tags")})),d=t.computed(()=>({fields:r.value.fields.filter(A=>!l.value.fields.some(g=>g.model===A.model)&&!s.value.fields.some(g=>g.model===A.model))})),u=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage")&&!A.model.startsWith("config-storage_config-consul")&&!A.model.startsWith("config-storage_config-redis")&&!A.model.startsWith("config-storage_config-shm")&&!A.model.startsWith("config-storage_config-vault"))})),m=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-consul"))})),f=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-redis"))})),h=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-shm"))})),C=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-vault"))})),b=t.computed(()=>({fields:n.formSchema.fields.filter(A=>A.model.startsWith("config")&&!d.value.fields.filter(g=>g.model===A.model).length&&!u.value.fields.filter(g=>g.model===A.model).length||A.model==="tags")})),y=t.computed(()=>n.formModel.id&&n.isEditing||!n.isEditing),B=[{hash:"#general",title:"General"},{hash:"#storage",title:"Storage"},{hash:"#advanced",title:"Advanced"}],x=[{label:"Lets Encrypt",value:"letsEncrypt"},{label:"Zero SSL",value:"zeroSsl",selected:!0},{label:"Other",value:"other"}];t.onMounted(()=>{i.value==="zeroSsl"&&(n.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90")});const S=A=>{i.value=A.value,(A.value==="zeroSsl"||A.value==="other")&&(A.value==="zeroSsl"?n.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90":n.formModel["config-api_uri"]="https://acme.example.com/",n.formModel["config-tos_accepted"]=!1),A.value==="letsEncrypt"&&(n.formModel["config-api_uri"]="https://acme-v02.api.letsencrypt.org/directory",n.formModel["config-eab_hmac_key"]="",n.formModel["config-eab_kid"]=""),n.onModelUpdated()},w=(A,g)=>{g==="config-storage"&&(a.value=A),n.onModelUpdated()};return(A,g)=>{const E=t.resolveComponent("KSelect"),k=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[e.formModel.id&&e.isEditing||!e.isEditing?(t.openBlock(),t.createBlock(Ye,{key:0,class:"global-fields",model:e.formModel,options:e.formOptions,schema:c.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(k,{tabs:B},{general:t.withCtx(()=>[t.createElementVNode("div",N0,[V0,L0,y.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:d.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),D0,t.createVNode(E,{class:"issuer-select",items:x,label:"Issuer",onChange:S}),t.createElementVNode("div",j0,[i.value==="letsEncrypt"?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:l.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),i.value==="zeroSsl"||i.value==="other"?(t.openBlock(),t.createBlock(Ye,{key:1,model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),storage:t.withCtx(()=>[t.createElementVNode("div",P0,[U0,Y0,y.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:u.value,onModelUpdated:w},null,8,["model","options","schema"])):t.createCommentVNode("",!0),t.createElementVNode("div",G0,[a.value==="consul"?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:m.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),a.value==="redis"?(t.openBlock(),t.createBlock(Ye,{key:1,model:e.formModel,options:e.formOptions,schema:f.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),a.value==="shm"?(t.openBlock(),t.createBlock(Ye,{key:2,model:e.formModel,options:e.formOptions,schema:h.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),a.value==="vault"?(t.openBlock(),t.createBlock(Ye,{key:3,model:e.formModel,options:e.formOptions,schema:C.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),advanced:t.withCtx(()=>[t.createElementVNode("div",F0,[H0,z0,y.value?(t.openBlock(),t.createBlock(Ye,{key:0,model:e.formModel,options:e.formOptions,schema:b.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:1})])}}}),q0=Q(K0,[["__scopeId","data-v-b9df1c3f"]]),X0=Object.freeze(Object.defineProperty({__proto__:null,ACMEForm:q0,ExitTransformer:M0,OIDCForm:B0,PostFunction:I0},Symbol.toStringTag,{value:"Module"})),ca=["array","metric","advanced","selectionGroup","object-advanced"],ql=(e,n=!1)=>({...n&&{acme:"ACMEForm"},"openid-connect":"OIDCForm","post-function":"PostFunction","pre-function":"PostFunction","exit-transformer":"ExitTransformer"})[e],Lt={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},J0={"config-prompts-prepend":{...Lt,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...Lt,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",help:"LLM message content",inputType:"text"}]}}}},Z0={"config-templates":{...Lt,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",inputType:"text"}]}}}},W0={"config-llm_providers":{...Lt,newElementButtonLabel:"+ Add Provider",items:{type:"object",schema:{fields:[{label:"Window Size",model:"window_size",help:"Window size to apply a limit to (defined in seconds)",type:"input",inputType:"number"},{label:"Name",model:"name",help:"The llm providers.",type:"select",values:["anthropic","azure","cohere","llama2","mistral","openai","requestPrompt"]},{label:"Limit",model:"limit",help:"Limit applied to the llm provider.",type:"input",inputType:"number"}]}}}},Q0={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:pn.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",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"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},kn={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},En={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},_0={"config-metrics":{...En,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"tags",label:"Tags",type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},inputType:"text"}]}}}},$0={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Xl={"config-bootstrap_servers":{...Lt,newElementButtonLabel:"+ Add Bootstrap Server",label:"Bootstrap Server(s)",placeholder:"Enter a Bootstrap Server",help:"Set of bootstrap brokers.",items:{type:"object",schema:{fields:[{label:"Host",model:"host",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},eB={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10}},tB={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Jl=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:pn.fields.arrayItems({newElementButtonLabel:"Add"})}),tB),oi={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},nB={"config-remove-headers":{},"config-remove.querystring":{},"config-remove-body":{},"config-replace-headers":{},"config-replace-querystring":{},"config-replace-body":{},"config-rename-headers":{},"config-rename-querystring":{},"config-rename-body":{},"config-add-headers":{},"config-add-querystring":{},"config-add-body":{},"config-append-headers":{},"config-append-querystring":{},"config-append-body":{},"config-allow-body":{}},iB=["config-remove-headers","config-remove.querystring","config-remove-body","config-replace-headers","config-replace-querystring","config-replace-body","config-rename-headers","config-rename-querystring","config-rename-body","config-add-headers","config-add-querystring","config-add-body","config-append-headers","config-append-querystring","config-append-body","config-allow-body"].reduce((e,n)=>({...e,[n]:pn.fields.arrayItems({newElementButtonLabel:"Add"})}),nB),aB={"config-parameter_schema":{...En,items:{type:"object",default:()=>({required:!1,explode:!1}),schema:{fields:[{model:"in",label:"in",type:"select",values:["query","header","path"]},{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"required",label:"required",type:"switch",id:"schema_required"},{model:"style",label:"style",type:"select",values:["label","form","matrix","simple","spaceDelimited","pipeDelimited","deepObject"]},{model:"explode",label:"explode",type:"switch",id:"schema_explode"},{model:"schema",label:"schema",type:"input",inputType:"string",id:"schema_schema"}]}}}},oB={"config-rules":{...Lt,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},rB={"config-session_redis_cluster_nodes":{...Lt,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},lB={"config-metrics":{...En,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},sB={"config-allow_status_codes":{type:"input",inputType:"text",valueArrayType:"string",valueType:"array",label:"config.allow_status_codes",help:"A list of status code ranges, separated by commas. e.g. 200-204, 500-505"},"config-metrics":{...En,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage","cache_datastore_hits_total","cache_datastore_misses_total"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},cB={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}},dB={"config-static_tags":{...En,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"value",label:"value",type:"input",inputType:"string",id:"schema_value"}]}}}},pB=(e,n)=>{const i=e.model.startsWith("config-"),a=n.model.startsWith("config-");return i&&!a?1:!i&&a?-1:0},Zl=(e,n)=>(e.order??0)-(n.order??0),Wl=(e,n)=>pB(e,n)||Zl(e,n)||e.model.localeCompare(n.model),be={useI18n:Hn,usePluginMetaData:ff,usePluginHelpers:nr,useSchemas:(e,n)=>{const{capitalize:i}=Mi(),{convertToDotNotation:a}=nr(),{i18n:{t:o}}=Hn(),r={"application-registration":{overwriteDefault:!0,formSchema:{...Q0}},datadog:{..._0},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},jwt:{...cf},"kafka-upstream":{...Xl},"kafka-log":{...Xl},statsd:{...lB},"statsd-advanced":{...sB},"route-by-header":{...oB},"ai-prompt-decorator":{...J0},"ai-prompt-template":{...Z0},"ai-rate-limiting-advanced":{...W0},"vault-auth":{...cB},"oas-validation":{"config-api_spec":{type:"textArea",rows:15}},mocking:{...eB},"rate-limiting":{...oi},"rate-limiting-advanced":(n==null?void 0:n.app)==="kongManager"?{"config-consumer_groups":oi["config-consumer_groups"]}:{...oi},"graphql-rate-limiting-advanced":{...$0},"response-ratelimiting":{...oi},"pre-function":{...Jl},"post-function":{...Jl},"request-transformer-advanced":{...iB},"request-validator":{...aB},zipkin:{...dB},saml:{...rB}},l=()=>["created_at","updated_at","id"],s=(g,E,k)=>{let v={};(E||g)&&(v=E||(g.fields?g.fields:g));const G=l().concat(g.blacklist?g.blacklist:[]),j=Object.keys(v).filter(z=>!G.includes(z)),F=j.indexOf("comparator");F>-1&&j.splice(F,1);let R={fields:[]};const V={};j.forEach(z=>{d(v[z],z,v,V,R,k)});const K=V.name,H=Je[K];if(!ql(K)&&(n!=null&&n.groupFields)&&!(H!=null&&H.useLegacyForm)){const z=[],W=[],L=[],D={};if(H!=null&&H.fieldRules){const te=[...H.fieldRules.atLeastOneOf??[],...H.fieldRules.onlyOneOf??[],...H.fieldRules.mutuallyRequired??[]];if(H.fieldRules.onlyOneOfMutuallyRequired)for(const se of H.fieldRules.onlyOneOfMutuallyRequired)te.push(...se);for(const se of te)for(const Se of se)D[Se.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const te of R.fields){if(te.pinned){z.push(te);continue}if(te.required||D[te.model]!==void 0){D[te.model]===!1&&(D[te.model]=!0),W.push(te);continue}L.push(te)}const J=Object.entries(D).filter(([,te])=>!te).map(([te])=>te.replace(/-/g,".").replace(/_/g,"-"));J.length>0&&console.warn(`Unknown checked fields for plugin ${K}: ${J.join(", ")}`);const U=[];z.length>0&&U.push({fields:z.sort(Zl)}),(W.length>0||L.length>0)&&U.push({fields:W.sort(Wl),collapsible:{title:o("plugins.form.grouping.plugin_configuration.title"),description:o("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:L.sort(Wl),triggerLabel:{expand:o("plugins.form.grouping.advanced_parameters.view"),collapse:o("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),R={groups:U}}else R.fields.sort((z,W)=>(z.order=z.order||0,W.order=W.order||0,z.order-W.order));return{schema:R,model:V,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=g=>Array.isArray(g.default)||g.default!=null&&typeof g.default!="object"&&g.default!=="function",d=(g,E,k,v,G,j)=>{const F=c(g);return v[E]=F?g.default:null,g.id=E,g.model=E,g.fields&&g.type==="record"?m(g,E,k,v,G,j):(k[E]=g,A(g,v),j&&j[E]&&u(k[E],j[E]),G.fields.push(g)),k},u=(g,E)=>(E&&(Object.assign(g,E),E.label&&(g.label=E.label)),g),m=(g,E,k,v,G,j)=>{g.fields.forEach(F=>{Object.keys(F).forEach(R=>{const V=F[R];k=d(V,E+"-"+R,k,v,G,j)})})},f=(g,E)=>{g.type="input",g.inputType="hidden",g.styleClasses="kong-form-hidden-field-wrapper";const k=e;E[g.model]=k?{id:k}:null},h=g=>{g.type="input",g.inputType="number",g.between&&g.between.length===2&&(g.min=g.between[0],g.max=g.between[1])},C=g=>{Object.prototype.hasOwnProperty.call(g,"one_of")?(g.type="select",g.values=g.one_of,g.selectOptions={hideNoneSelectedText:!0}):(g.type="input",g.inputType="text")},b=g=>{g.type="input",g.inputType="text",g.valueType="array",g.valueArrayType="string"},y=g=>{g.type="checkbox",g.default=!0,g.required=!1},B=g=>{if(g.type="object-advanced",g.values.type==="array"){const{type:E}=g.values.elements||{};g.schema={fields:[{schema:{fields:[{...kn,model:g.model,valueArrayType:E==="integer"?"number":E||"string",inputAttributes:{...kn.inputAttributes,type:E==="integer"?"number":"text",inputMode:E==="integer"?"numeric":"text"}}]}}]}}else g.values.fields&&(g.schema={fields:[{type:"object",model:"object",schema:{fields:g.values.fields.map(E=>{const k=Object.keys(E)[0];return{model:k,type:"input",label:i(k),placeholder:k,inputType:E[k].type}})}}]})},x=g=>g.fields.reduce((E,k)=>(k.fields&&k.fields.forEach(v=>{E[v.model]=v}),k.model&&(E[k.model]=k),E),{}),S=(g,E)=>{if(!ca.includes(g.model))return;const k=x(g);ca.forEach(v=>{Object.keys(k).forEach(G=>{const j=c(k[G]);E[G]=j?k[G].default:null}),delete E[v]})},w=(g,E)=>g.inputType==="hidden"?"":a(i(g.label||E.replace(/_/g," "))),A=(g,E)=>{switch(S(g,E),g.type){case"foreign":f(g,E);break;case"number":h(g),g.attributes={step:"any"};break;case"integer":h(g);break;case"string":C(g);break;case"set":b(g);break;case"boolean":y(g);break;case"map":B(g);break}g.inputType==="foreign"&&f(g,E),g.label=w(g,g.model)};return{buildFormSchema:d,parseSchema:s,customSchemas:r,typedefs:pn}}},Ge="/v2/control-planes/{controlPlaneId}/core-entities",Te="/{workspace}",Oe={list:{konnect:{all:`${Ge}/plugins`,forEntity:`${Ge}/{entityType}/{entityId}/plugins`},kongManager:{all:`${Te}/plugins`,forEntity:`${Te}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${Ge}/v1/available-plugins`},kongManager:{availablePlugins:`${Te}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${Ge}/plugins`,forEntity:`${Ge}/{entityType}/{entityId}/plugins`},edit:{all:`${Ge}/plugins/{id}`,forEntity:`${Ge}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${Ge}/{resourceEndpoint}`,edit:`${Ge}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${Ge}/v1/schemas/json/plugin/validate`,entityGetOne:`${Ge}/{entity}/{id}`,entityGetAll:`${Ge}/{entity}?size=1000`},kongManager:{create:{all:`${Te}/plugins`,forEntity:`${Te}/{entityType}/{entityId}/plugins`},edit:{all:`${Te}/plugins/{id}`,forEntity:`${Te}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${Te}/schemas/plugins/{plugin}`,credential:{create:`${Te}/{resourceEndpoint}`,edit:`${Te}/{resourceEndpoint}/{id}`},credentialSchema:`${Te}/schemas/{plugin}`,validate:`${Te}/schemas/plugins/validate`,entityGetOne:`${Te}/{entity}/{id}`,entityGetAll:`${Te}/{entity}`}},item:{konnect:{all:`${Ge}/plugins/{id}`,forEntity:`${Ge}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${Te}/plugins/{id}`,forEntity:`${Te}/{entityType}/{entityId}/plugins/{id}`}}},uB={key:0},mB=t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:i}=be.usePluginHelpers(),{i18n:{t:a}}=be.useI18n(),o=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>i(d)).join(".")).join(", "),r=(s,c)=>a(s,{parameters:o(c)}),l=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(r("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(r("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(r("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(u,m)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${m}`},t.toDisplayString(u),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",uB,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(u,m)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${m}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u,(f,h)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${m}-combination-${h}`},t.toDisplayString(o(f)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),Ze=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},gB=Ze(mB,[["__scopeId","data-v-17c1f232"]]),fB={class:"kong-ui-entities-plugin-form"},AB={key:1,class:"entity-form"},hB={class:"plugin-config-empty-state"},yB=t.defineComponent({components:{...X0}}),bB=t.defineComponent({...yB,__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0: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:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1}},emits:["loading","model-updated"],setup(e,{emit:n}){var j,F;const i=n,a=e,{axiosInstance:o}=Kt((j=a.config)==null?void 0:j.axiosRequestConfig),{parseSchema:r}=be.useSchemas(((F=a.entityMap.focusedEntity)==null?void 0:F.id)||void 0,{groupFields:a.config.groupFields}),{convertToDotNotation:l,unFlattenObject:s,isObjectEmpty:c,unsetNullForeignKey:d}=be.usePluginHelpers(),{objectsAreEqual:u}=Dn(),{i18n:{t:m}}=Hn(),f=(R,V)=>{let K=`${a.config.apiBaseUrl}${Oe.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?K=K.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),K=K.replace(/{entity}/gi,R),K=K.replace(/{id}/gi,V),K},h=R=>{let V=`${a.config.apiBaseUrl}${Oe.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?V=V.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(V=V.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),V=V.replace(/{entity}/gi,R),V},C=(R,V)=>{const K=f(R,V);return o.get(K)},b=(R,V)=>{const K=h(R);return a.config.app==="konnect"?o.get(K).then(H=>{const{data:{data:z}}=H;if(delete V.size,delete V.offset,z.length&&Object.keys(V).length===1){const W=Object.keys(V)[0],L=z.filter(D=>D[W]?!!D[W].toLowerCase().includes(V[W].toLowerCase()):!1);H.data.data=L}return H}):o.get(K,{params:V})};t.provide(yt,{getOne:C,getAll:b});const y=t.ref(""),B=t.ref(null),x=t.ref({}),S=t.reactive({}),w=t.reactive({}),A=t.computed(()=>{var R;return(R=B.value)==null?void 0:R.options}),g=()=>{var W,L;const R={...a.schema},V=w,K=S,H=Object.keys(V),z={};if(!c(x.value))for(let D=0;D<((L=(W=x.value)==null?void 0:W.fields)==null?void 0:L.length);D++)R[x.value.fields[D].model]=x.value.fields[D];return ca.forEach(D=>{R[D]&&(R[D].fields.forEach(J=>{J.fields&&J.fields.forEach(U=>{R[U.model]=U}),J.model&&(R[J.model]=J)}),delete R[D])}),H.forEach(D=>{if(!R[D])return;const J=R[D];let U=V[D];const te=K[D],se=Array.isArray(U)?"array":typeof U,Se=J?J.valueType:null,ye=J?J.valueArrayType:null,Dt=J?J.transform:null;if(U==null&&te==null&&!J.submitWhenNull)return;if(J){if(Se&&se!==Se)switch(Se){case"array":se==="string"&&U.length&&(U=U.split(",").map(re=>{if(re=re.trim(),ye==="string")return String(re);if(ye==="number")return Number(re);if(ye==="boolean"){if(typeof re=="string")return re.toLowerCase()==="true"||re==="1";if(typeof re=="number")return re===1}return re})),(!U||!U.length)&&(U=J.submitWhenNull?null:[]);break;case"number":U=Number(U);break;case"boolean":se==="string"&&(U=U.toLowerCase()==="true"||U==="1"),se==="number"&&(U=U===1);break;case"string":U=U==null?"":String(U);break}else Se==="array"&&(!U||!U.length)&&(U=J.submitWhenNull?null:[]);J.type==="object-advanced"&&J.fields&&U!==null&&(Object.entries(U).length===0?U=null:Object.keys(U).forEach(re=>{Array.isArray(U[re])||(U[re]=U[re].split(","))}))}let Re=l(D);if(J.fieldNameHasDashes){const[re,...Xe]=Re.split(".").reverse();Re=[re.replace(/_/g,"-"),...Xe].reverse().join(".")}if(Se==="object-expand"){let re;[Re,re]=Re.split(".");let Xe={};z[Re]&&(Xe=z[Re]),Xe[re]=U,U=Xe}te!==void 0&&U===""&&U!==te?z[Re]=Se==="object"?{}:null:J.type==="checklist"&&U===""?z[Re]=[]:U!==""&&(z[Re]=U),z[Re]=Dt?Dt(U):z[Re],d(Re,z)}),s(z)},E=(R,V)=>{var z;const K={[V]:R};typeof((z=a.schema[V])==null?void 0:z.modelTransformer)=="function"&&(K[V]=a.schema[V].modelTransformer(R));const H=Object.assign({},w,K);Object.assign(w,H),i("model-updated",{model:w,originalModel:S,data:g()})},k=(R,V)=>{Object.keys(R).forEach(K=>{var D,J;let H=V?`${V}-${K}`:K,z=a.schema[H];if(!z){const U=V?`${V}-${K.replace(/-/g,"_")}`:K.replace(/-/g,"_");(D=a.schema[U])!=null&&D.fieldNameHasDashes&&(H=U,z=a.schema[H]),V&&((J=a.schema[V])==null?void 0:J.keyFromObject)===K&&(H=V,z=a.schema[H])}const W=R[K],L=typeof W;if(z&&z.type==="object-advanced"&&!W){w[H]={},S[H]={};return}if(Array.isArray(W)){w[H]=JSON.parse(JSON.stringify(W)),S[H]=JSON.parse(JSON.stringify(W));return}if(L==="object"&&W&&!W.length)return k(W,H);if(L==="object"&&W&&W.length&&z.type==="input"){w[H]=W.join(", "),S[H]=W.join(", ");return}w[H]=W,S[H]=W}),i("model-updated",{model:w,originalModel:S,data:g()})},v=t.ref(!0),G=()=>{var R;if(a.record&&a.schema&&(k({enabled:a.record.enabled??!0,...a.record.instance_name&&{instance_name:a.record.instance_name||""},...a.record.protocols&&{protocols:a.record.protocols},...a.record.tags&&{tags:a.record.tags}}),a.credential?((a.record.consumer_id||a.record.consumer)&&k({consumer_id:a.record.consumer_id||a.record.consumer}),k(a.record)):a.record.config&&((a.record.consumer_id||a.record.consumer||a.record.service_id||a.record.service||a.record.route_id||a.record.route||a.record.consumer_group_id||a.record.consumer_group)&&k({service_id:a.record.service_id||a.record.service,route_id:a.record.route_id||a.record.route,consumer_id:a.record.consumer_id||a.record.consumer,consumer_group_id:a.record.consumer_group_id||a.record.consumer_group}),k(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const V={};for(const K in a.entityMap){const H=a.entityMap[K].id,z=a.entityMap[K].idField,W=z==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(z).replace("_","-"));Object.prototype.hasOwnProperty.call(w,W)&&(V[W]=H)}k(V)}if((R=a.entityMap.consumer)!=null&&R.id&&a.schema&&a.credential){const V={};Object.prototype.hasOwnProperty.call(w,"consumer")&&(V.consumer=a.entityMap.consumer.id),k(V)}v.value=!1};return t.watch(v,R=>{i("loading",R)}),t.watch(()=>a.schema,(R,V)=>{var H,z;if(u(R||{},V||{}))return;const K=r(R);Object.assign(w,K.model),x.value={fields:(z=(H=x.value)==null?void 0:H.fields)==null?void 0:z.map(W=>({...W,disabled:W.disabled||!1}))},Object.assign(S,JSON.parse(JSON.stringify(K.model))),y.value=ql(K.model.name),G()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var R,V;B.value=r(a.schema),Object.assign(w,((R=B.value)==null?void 0:R.model)||{}),x.value=((V=B.value)==null?void 0:V.schema)||{},G()}),(R,V)=>{const K=t.resolveComponent("KSkeleton"),H=t.resolveComponent("VueFormGenerator");return t.openBlock(),t.createElementBlock("div",fB,[v.value?(t.openBlock(),t.createBlock(K,{key:0,type:"form"})):(t.openBlock(),t.createElementBlock("div",AB,[y.value&&(w.id&&e.editing||!e.editing)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y.value),{key:0,"form-model":w,"form-options":A.value,"form-schema":x.value,"is-editing":e.editing,"on-model-updated":E},null,40,["form-model","form-options","form-schema","is-editing"])):t.createCommentVNode("",!0),!y.value&&(w.id&&e.editing||!e.editing)?(t.openBlock(),t.createBlock(H,{key:1,model:w,options:A.value,schema:x.value,onModelUpdated:E},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",hB,t.toDisplayString(t.unref(m)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[t.unref(Je)[w.name]&&t.unref(Je)[w.name].fieldRules?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(gB,{rules:t.unref(Je)[w.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0]),1032,["model","options","schema"])):t.createCommentVNode("",!0)]))])}}}),wB=Ze(bB,[["__scopeId","data-v-7e3ff015"]]),CB={class:"kong-ui-entities-plugin-form-container"},kB={key:0},EB={key:1,class:"plugin-form-actions"},BB=Ze(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.cancelRoute)},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},useCustomNamesForPlugin:{type:Boolean,default:!1}},emits:["error:fetch-schema","error","loading","update","model-updated"],setup(e,{emit:n}){var On;const i=n,a=e,o=Pt.useRouter(),{i18n:{t:r}}=be.useI18n(),{customSchemas:l,typedefs:s}=be.useSchemas(void 0,{app:a.config.app}),{formatPluginFieldLabel:c}=be.usePluginHelpers(),{getMessageFromError:d}=Ln(),{capitalize:u}=Mi(),{objectsAreEqual:m}=Dn(),{axiosInstance:f}=Kt((On=a.config)==null?void 0:On.axiosRequestConfig),h=t.ref(!1),C=t.computed(()=>a.pluginId?rt.Edit:rt.Create),b=t.ref(null),y=t.computed(()=>!!(a.credential&&a.config.entityId)),B=t.ref(null),x=t.ref({}),S=t.ref(!1),w=t.reactive({enabled:!0,protocols:[],tags:[]}),A=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,errorMessage:""}),g=t.ref([{title:r("view_configuration.yaml"),hash:"#yaml"},{title:r("view_configuration.json"),hash:"#json"}]),E=t.computed(()=>{if(y.value){let Y=Oe.form[a.config.app].credential[C.value];return Y=Y.replace(/{resourceEndpoint}/gi,j.value),Y}return a.config.entityType&&a.config.entityId?Oe.form[a.config.app].edit.forEntity.replace(/{entityType}/gi,a.config.entityType).replace(/{entityId}/gi,a.config.entityId):Oe.form[a.config.app].edit.all}),k=()=>{h.value=!h.value},v=t.computed(()=>{var ie,fe,ne,de,I,N,Ae,De;const Y=a.config.entityType==="consumers"&&a.config.entityId||((fe=(ie=B.value)==null?void 0:ie.consumer)==null?void 0:fe.id),M=a.config.entityType==="consumer_groups"&&a.config.entityId||((de=(ne=B.value)==null?void 0:ne.consumer_group)==null?void 0:de.id),O=a.config.entityType==="services"&&a.config.entityId||((N=(I=B.value)==null?void 0:I.service)==null?void 0:N.id),P=a.config.entityType==="routes"&&a.config.entityId||((De=(Ae=B.value)==null?void 0:Ae.route)==null?void 0:De.id);if(!(Y||M||O||P))return{global:{entity:p.GLOBAL,entityEndpoint:"plugins"}};const q={};return O&&(q.service={entity:p.SERVICE,entityEndpoint:"services",id:O,idField:Bt.SERVICE}),P&&(q.route={entity:p.ROUTE,entityEndpoint:"routes",id:P,idField:Bt.ROUTE}),Y&&(q.consumer={entity:p.CONSUMER,entityEndpoint:"consumers",id:Y,idField:Bt.CONSUMER}),M&&(q.consumer_group={entity:p.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:M,idField:Bt.CONSUMER_GROUP}),a.config.entityType&&(q.focusedEntity={entity:p[a.config.entityType.substring(0,a.config.entityType.length-1).toUpperCase()],entityEndpoint:a.config.entityType,id:a.config.entityId,idField:Bt[a.config.entityType.substring(0,a.config.entityType.length-1).toUpperCase()]}),q}),G=t.reactive({name:{default:a.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:r("plugins.form.fields.enabled.label"),textOn:r("plugins.form.fields.enabled.on_text"),textOff:r("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:a.hideScopeSelection&&(a.hideScopeSelection||C.value===rt.Create&&a.config.entityId)?"foreign":"selectionGroup",inputType:"hidden",styleClasses:"hide-label",fields:[{label:r("plugins.form.scoping.global.label"),description:r("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:r("plugins.form.fields.protocols.help"),label:r("plugins.form.fields.protocols.label"),placeholder:r("plugins.form.fields.protocols.placeholder"),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"}]},...(a.config.app==="kongManager"||a.useCustomNamesForPlugin)&&{instance_name:{default:"",type:"input",label:r("plugins.form.fields.instance_name.label"),inputType:"text",help:r("plugins.form.fields.instance_name.help")}},tags:s.tags}),j=t.computed(()=>{var O;const Y=a.developer?"developers":"consumers",M=((O=qt[a.pluginType])==null?void 0:O.endpoint)||"/plugins";return`${Y}/${a.config.entityId}${a.developer?"/credentials":""}${M}`}),F=Y=>{const M=[...new Set(Y.map(O=>typeof O))];return M.length>1?"string":M[0]},R=(Y,M,O)=>{var fe,ne;let P=M&&M.fields||[];const q=l[a.pluginType],ie=(ne=(fe=qt[a.pluginType])==null?void 0:fe.schema)==null?void 0:ne.fields;return Array.isArray(P)&&(P=P.reduce((de,I)=>{const N=Object.keys(I)[0];return N.match(/-/g)?de[N.replace(/-/g,"_")]={...I[N],fieldNameHasDashes:!0}:de[N]=I[N],de},{})),Object.keys(P).sort().forEach(de=>{var De,dt,$l,es,ts,ns;const I=P[de],N=Y?`${Y}-${de}`:`${de}`;if(Object.prototype.hasOwnProperty.call(I,"overwrite")||I.hidden)return;if(I.type==="table")return R(N,I.schema,O);if(I.fields)return R(N,I,O);if(O[N]={id:N},O[N].type=I.type==="boolean"?"checkbox":"input",O[N].required=I.required,N.startsWith("config-")&&(O[N].label=c(N)),(Y==="config"||Y.startsWith("config-"))&&(De=P[de])!=null&&De.description&&(O[N].help=ae.parse(P[de].description,{mangle:!1,headerIds:!1})),I.type==="map"){if(O[N].type="object-advanced",I.values.type==="array"){const{type:ue}=I.values.elements||{};O[N].schema={fields:[{schema:{fields:[{...kn,model:N,valueArrayType:ue==="integer"?"number":ue||"string",inputAttributes:{...kn.inputAttributes,type:ue==="integer"?"number":"text",inputMode:ue==="integer"?"numeric":"text"}}]}}]}}else I.values.fields&&(O[N].schema={fields:[{type:"object",model:"object",schema:{fields:I.values.fields.map(ue=>{const We=Object.keys(ue)[0];return{model:We,type:"input",label:u(We),placeholder:We,inputType:ue[We].type}})}}]});return O}if(I.enum&&I.type==="array"&&(O[N].type="checklist",O[N].values=I.enum,O[N].multi=!0,O[N].multiSelect=!0),I.one_of&&I.type!=="array"&&(O[N].type="select",O[N].values=I.one_of,O[N].selectOptions={noneSelectedText:r("plugins.form.no_selection")}),I.elements&&I.type==="array"){const ue=I.elements;if(ue.type==="string"&&!ue.one_of){const{help:We,label:Ne,hint:Fe}=O[N],{help:Qe,...xn}=JSON.parse(JSON.stringify(kn));O[N]={help:We,label:Ne,hint:Fe,...xn},O[N].help===void 0&&typeof Qe=="string"&&(O[N].help=ae.parse(Qe,{mangle:!1,headerIds:!1}))}}if(I.hint&&(O[N].hint=I.hint),q&&!q.overwriteDefault&&Object.keys(q).forEach(ue=>{if(ue===N){const{help:We,label:Ne,hint:Fe}=O[N],{help:Qe,...xn}=q[ue];O[N]={help:We,label:Ne,hint:Fe,...xn},typeof Qe=="string"&&(O[N].help=ae.parse(Qe,{mangle:!1,headerIds:!1}))}}),I.type==="array"&&((dt=I.elements)==null?void 0:dt.type)==="record"&&Array.isArray(I.elements.fields)){let ue={};for(const Ne of I.elements.fields)ue={...ue,...Ne};const We=(ts=(es=($l=O[N])==null?void 0:$l.items)==null?void 0:es.schema)==null?void 0:ts.fields;if(Array.isArray(We))for(const Ne of O[N].items.schema.fields){const Fe=(ns=ue[Ne.model])==null?void 0:ns.description;Ne.help===void 0&&typeof Fe=="string"&&(Ne.help=ae.parse(Fe,{mangle:!1,headerIds:!1}))}We||(O[N].fieldClasses="array-card-container-wrapper",O[N].itemContainerComponent="FieldArrayCardContainer",O[N].items={type:"object",schema:{fields:Object.values(R(N,I.elements,{}))}},O[N].type="array",O[N].newElementButtonLabelClasses="kong-form-new-element-button-label",O[N].items.schema.fields.forEach(Ne=>{var Fe,Qe;for(const xn of I.elements.fields){const ua=Object.keys(xn)[0],is=((Qe=(Fe=Ne.id)==null?void 0:Fe.split)==null?void 0:Qe.call(Fe,"-"))??[];if(is[is.length-1]===ua){Ne.model=ua,Ne.label=c(ua);break}}})),O[N].items.default=()=>I.elements.fields.reduce((Ne,Fe)=>{const Qe=Object.keys(Fe)[0];return Ne[Qe]=Fe[Qe].default,Ne},{})}if(y.value&&a.config.app==="kongManager"&&ie){for(let ue=0;ue<ie.length;ue++)if(ie[ue][N]){O[N]={...O[N],...ie[ue][N]};break}}if(I.required&&I.type!=="boolean"&&(O[N].required=!0,O[N].selectOptions={hideNoneSelectedText:!0}),I.default!=null&&typeof I.default!="object"&&I.default!=="function"&&(O[N].default=I.default),O[N].type==="input"){const{type:ue}=I.elements||{};ue&&(O[N].valueArrayType=ue==="integer"?"number":ue),O[N].inputType=I.type==="array"||I.type==="string"?"text":I.type}let Ae="string";I.enum?Ae=F(I.enum):I.type==="boolean"?Ae="boolean":I.type==="number"||I.type==="integer"?(Ae="number",O[N].inputType="number"):I.type==="array"||I.type==="set"?(Ae="array",O[N].default=I.default,I.len_min>0&&(O[N].submitWhenNull=!0)):I.type==="foreign"?Ae="object":I.default&&Array.isArray(I.default)?(Ae="array",O[N].valueArrayType=F(I.default)):I.default&&(Ae=typeof I.default),O[N].valueType=Ae,I.fieldNameHasDashes&&(O[N].fieldNameHasDashes=!0)}),O},V=()=>{var ie,fe,ne,de;const Y=((ie=Je[a.pluginType])==null?void 0:ie.scope.includes(p.SERVICE))??!0,M=((fe=Je[a.pluginType])==null?void 0:fe.scope.includes(p.ROUTE))??!0,O=((ne=Je[a.pluginType])==null?void 0:ne.scope.includes(p.CONSUMER))??!0,P=a.config.disableConsumerGroupScope?!1:((de=Je[a.pluginType])==null?void 0:de.scope.includes(p.CONSUMER_GROUP))??!0,q=[];if(Y&&q.push({id:"service-id",model:"service-id",label:r("plugins.form.scoping.gateway_service.label"),placeholder:r("plugins.form.scoping.gateway_service.placeholder"),type:"AutoSuggest",entity:"services",inputValues:{fields:["name","id"]},help:r("plugins.form.scoping.gateway_service.help")}),M&&q.push({id:"route-id",model:"route-id",label:r("plugins.form.scoping.route.label"),placeholder:r("plugins.form.scoping.route.placeholder"),type:"AutoSuggest",entity:"routes",inputValues:{fields:["name","id"],primaryField:"id"},help:r("plugins.form.scoping.route.help")}),O&&q.push({model:"consumer-id",label:r("plugins.form.scoping.consumer.label"),placeholder:r("plugins.form.scoping.consumer.placeholder"),type:"AutoSuggest",entity:"consumers",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:r("plugins.form.scoping.consumer.help")}),P&&q.push({model:"consumer_group-id",label:r("plugins.form.scoping.consumer_group.label"),placeholder:r("plugins.form.scoping.consumer_group.placeholder"),type:"AutoSuggest",entity:"consumer_groups",entityDataKey:"consumer_group",inputValues:{fields:["name","id"],primaryField:"name"},help:r("plugins.form.scoping.consumer_group.help")}),q.length){const I=[...Y?["service"]:[],...M?["route"]:[],...O?["consumer"]:[],...P?["consumer_group"]:[]],Ae=I.splice(I.length-2,2).map(dt=>r(dt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${dt}.plural`)).join(`${I.length>0?",":""} and/or `),De=["Specific",[...I.length>0?[I.map(dt=>r(dt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${dt}.plural`)).join(", ")]:[],Ae].join(", ")].join(" ");G.selectionGroup.fields.push({label:r("plugins.form.scoping.label"),description:De,fields:[]}),G.selectionGroup.fields[1].fields=q}l[a.pluginType]&&l[a.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[a.pluginType],"formSchema")&&Object.assign(G,l[a.pluginType].formSchema)},K=t.computed(()=>!m(A.fields,w,!0)),H=t.computed(()=>!re.value&&!S.value&&(C.value===rt.Create||K.value)),z=t.ref(!1),W=Y=>{A.fields.id=(Y==null?void 0:Y.id)||void 0,Object.assign(w,A.fields),B.value=Y,z.value=!0},L=t.ref({}),D=Y=>{var M;A.fields=Y.model,A.fields.id=((M=B.value)==null?void 0:M.id)||void 0,Object.assign(w,Y.originalModel),L.value=Y.data,a.isWizardStep&&i("model-updated",{model:A.fields,data:Y.data,resourceEndpoint:j.value})};t.watch([v,z],(Y,M)=>{const O=Y[0]!==M[0],P=Y[1],q=M[1];!y.value&&C.value===rt.Edit&&(O||P&&P!==q)&&(re.value=!0,b.value=R("config",x.value,G),re.value=!1)},{deep:!0});const J=()=>{a.config.cancelRoute&&o.push(a.config.cancelRoute)},U=()=>{a.config.backRoute&&o.push(a.config.backRoute)},te=t.computed(()=>{let Y=`${a.config.apiBaseUrl}${Oe.form[a.config.app].validate}`;return a.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),Y=Y.replace(/{id}/gi,a.pluginId),Y}),se=t.computed(()=>{const Y=a.config.entityType&&a.config.entityId&&!a.developer,M=y.value?Oe.form[a.config.app].credential[C.value]:Oe.form[a.config.app][C.value][Y?"forEntity":"all"];let O=`${a.config.apiBaseUrl}${M}`;return a.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),O=O.replace(/{resourceEndpoint}/gi,j.value),O=O.replace(/{id}/gi,a.pluginId),O=O.replace(/{entityType}/gi,a.config.entityType||""),O=O.replace(/{entityId}/gi,a.config.entityId||""),O}),Se=t.computed(()=>!Object.keys(Je).includes(a.pluginType)),ye=t.computed(()=>{const Y=L.value;if(y.value){for(const M in p){const O=p[M];Y[O]&&!Y[O].id&&(Y[O]={id:a.config.entityId})}delete Y.created_at}return Y}),Dt=async()=>{if(!a.isWizardStep)try{A.isReadonly=!0;let Y;!y.value&&!Se.value&&await f.post(te.value,ye.value),C.value==="create"?Y=await f.post(se.value,ye.value):C.value==="edit"&&(Y=a.config.app==="konnect"?await f.put(se.value,ye.value):await f.patch(se.value,ye.value)),Object.assign(w,A.fields),i("update",Y==null?void 0:Y.data)}catch(Y){A.errorMessage=d(Y),i("error",Y)}finally{A.isReadonly=!1}},Re=t.computed(()=>{var P;const Y=y.value?(P=qt[a.pluginType])==null?void 0:P.schemaEndpoint:a.pluginType,M=y.value?Oe.form[a.config.app].credentialSchema:Oe.form[a.config.app].pluginSchema;let O=`${a.config.apiBaseUrl}${M}`;return a.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),O=O.replace(/{plugin}/gi,Y),O}),re=t.ref(!1),Xe=t.ref("");return t.onBeforeMount(async()=>{var Y,M,O;re.value=!0;try{if(y.value&&a.config.app==="konnect"){const P=(Y=qt[a.pluginType])==null?void 0:Y.schemaEndpoint,q=gf[P];b.value=R("",q,{}),re.value=!1}else{const P=await f.get(Re.value),{data:q}=P;if(q)if(y.value)b.value=R("",q,{}),re.value=!1;else{const ie=q.fields.find(ne=>ne.config);x.value=ie?ie.config:P,V();const fe=(M=q.fields.find(ne=>ne.protocols))==null?void 0:M.protocols;if(fe){const{default:ne=[],elements:de={}}=fe;G.protocols.default=ne,(O=de.one_of)!=null&&O.length&&(G.protocols.values=de.one_of.map(I=>({label:I,value:I})))}(z.value||C.value===rt.Create)&&(b.value=R("config",x.value,G))}}}catch(P){Xe.value=d(P),i("error:fetch-schema",P)}finally{re.value=!1}}),(Y,M)=>{const O=t.resolveComponent("KSkeleton"),P=t.resolveComponent("KEmptyState"),q=t.resolveComponent("KButton"),ie=t.resolveComponent("KTabs"),fe=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",CB,[re.value?(t.openBlock(),t.createBlock(O,{key:0,type:"form"})):Xe.value?(t.openBlock(),t.createBlock(P,{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(r)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(du),{key:2,"can-submit":H.value,config:e.config,"edit-id":e.pluginId,"error-message":A.errorMessage,"fetch-url":E.value,"form-fields":ye.value,"is-readonly":A.isReadonly,"no-validate":"",onCancel:J,"onFetch:error":M[2]||(M[2]=ne=>Y.$emit("error",ne)),"onFetch:success":W,onLoading:M[3]||(M[3]=ne=>Y.$emit("loading",ne))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",kB)):(t.openBlock(),t.createElementBlock("div",EB,[t.createVNode(q,{appearance:"tertiary","data-testid":"form-view-configuration",onClick:M[1]||(M[1]=ne=>k())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.view_configuration")),1)]),_:1}),t.createVNode(q,{appearance:"secondary",class:"form-action-button","data-testid":"form-cancel",disabled:A.isReadonly,type:"reset",onClick:J},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.cancel")),1)]),_:1},8,["disabled"]),C.value===t.unref(rt).Create&&e.config.backRoute?(t.openBlock(),t.createBlock(q,{key:0,appearance:"secondary",class:"form-action-button","data-testid":"form-back",disabled:A.isReadonly,onClick:U},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.back")),1)]),_:1},8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(q,{appearance:"primary","data-testid":"form-submit",disabled:!H.value||A.isReadonly,type:"submit",onClick:Dt},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.save")),1)]),_:1},8,["disabled"])]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:Dt},null,32),t.createVNode(wB,{config:e.config,credential:y.value,editing:C.value===t.unref(rt).Edit,"entity-map":v.value,record:B.value||void 0,schema:b.value||{},onLoading:M[0]||(M[0]=ne=>S.value=ne),onModelUpdated:D},null,8,["config","credential","editing","entity-map","record","schema"])]),_:1},8,["can-submit","config","edit-id","error-message","fetch-url","form-fields","is-readonly"])),t.createVNode(fe,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(r)("view_configuration.title"),visible:h.value,onClose:k},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("view_configuration.message")),1),t.createVNode(ie,{"data-testid":"form-view-configuration-slideout-tabs",tabs:g.value},{json:t.withCtx(()=>[t.createVNode(t.unref(mi),{config:e.config,"fetcher-url":se.value,"json-record":A.fields,"request-method":a.pluginId?"put":"post"},null,8,["config","fetcher-url","json-record","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(Si),{"yaml-record":A.fields},null,8,["yaml-record"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-6d6aad4b"]]),OB=["alt","src","width"],ri=t.defineComponent({__name:"PluginIcon",props:{name:{type:String,required:!0},size:{type:Number,default:32,required:!1},alt:{type:String,default:"",required:!1}},setup(e){const n=e,i=t.ref(),a=tr(n.name),o=()=>{const r=new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAMAAABKCk6nAAAAhFBMVEUAAADs+fnr8PTo7fLm7PDl6e7j6+7j6O3i6Ozh5+vp9PTm7PDj6e319fXn7PHj6O739/fn7PDi6e3////o7fLj6Ozt8fbj6u7r7vPi6ezo7fL////n7PHm6/Dl6+/q8PTs8vbu9Pjv9frw9vri6ezv9fnp7/Pt8vfk6u6cpar////e4ePLpSv+AAAAHnRSTlMAKIq93/T6/f7/W8z3GbL4Hr/9AZ39OPFo/Z4FzOeuk05oAAAFJklEQVR4Ae3ThZLjyhWA4SNdWJ9BMy/KA3n/twoXBafWWYb2QPi6Vd9XKGz4q5t4QPNZHDP2n8W/4uT0bJBUZHB2ehL/pPOLy6wQlxfn8bThaJxUajwaxuMm01lSsdl0Eo+YL5LKLebxoOUqqd5qGQ9YD7IHGKzjPptt9gTbzT19n2dv8Pyw8DZ7hG0U1tkrrOM7y0H2CoNlfGO+yp5hNY8vJovsHRaT+GyaPcQ03mkiYvjnNu4za94Ljtn+vd/Efc7+/sf4YJT32L286qjE1ctd3mMUH5yP89D1m46KvLnOQ+PzeO8iD+xuOipzs8sDF/HeZZZuX3dU5/Vtli7jnZMs7fSts/AuSycRcZqlm44q3WTpNCLOsnDdUanrLJxF29zF9zZ3QaXuNuWNJtosvOyo1ssstG0ThZ+Dah3Ea+LHIvmLjoq9KHL+2DYHyanYQc6jDYzACCxwZKGjallog177DwIjMAIjMAIjsMAIjMAIjMAIjMAILDACIzACIzACI7DACIzACIzACIzAAiMwAiMwAiMwAiOwwAiMwAiMwAiMwAIjMAIjMAIjMAILjMAIjMAIjMAIjMACIzACIzACIzACC4zACIzACIzACIzAAiMwAiMwAiMwAguMwAiMwAiMwAgsMAIjMAIjMAIjMAILjMAIjMAIjMAILDACIzACI/DP/6GjGENgBEZgBBYYgREYgREYgRGYJwMjMAIjMAI3TziCMQTmaAIjMAIjMAIjMAILjMAIjMAIjMAITBa6X9CveqD7hWWhDXpNYIERGIERGIERGIEFRmAERmAERuBKCdw2R68VGIERGIERWGAERmAERmAERmCBERiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIEFRmAERmAERuB+EPjt/ui9FRiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgWshcNscvVZgBEZgBEZggREYgREYgREYgQVGYARGYARGYARGYIERGIERGIERGIEFRmAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBBYYgREYgREYgftB4Lf7o/dWYARGYARGYIERGIERGIERGIEFRmAE5kj9GEfkb/EfwwkWGIERGIERGIERWGAERmAERmAERmAEFhiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIERWGAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBEZggREYgREYgREYgQVGYARGYARGYAQWGIERGIERGIERGIEFRmAERmAERmAEFhiBERiBERiBEZh2r3iflPn2B4HvgordPRl4H1RsL7DAfSJw/JCFq45qXWXhh3Yfhb8F1TqIt2/3ZeGf9kGl9j/F997XPcvCdUelrrNwFhGnWbrpqNJNlk4j4iRLu9cdFXq9y9JJvHOZpVuFa+x7m6XLeO8iD+xuOipzs8sDF/He+TgPXb/pqMib6zw0Po8PRnmP3curjkpcvdzlPUYR0UTE8M9t3GfWvBfHjP17v4n7nP39j/HRNOmhaXw2WSS9s5jEF/NV0jOreXxjOUh6ZbCM76yTXllHYZv0yDZKm+dJbzzfxGHhbdIT203cZz1IemCwjgcsV0n1Vst40HyRVG4xj0dMprOkYrPpJB43HI2TSo1Hw3ja+cVlUqHLi/P4J52cng2SigzOTk/iPk08oPksjhn7z+J+/wBSUhUZLUGZBgAAAABJRU5ErkJggg==",typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Ut&&Ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;i.value&&(i.value.src=r)};return(r,l)=>(t.openBlock(),t.createElementBlock("img",{ref_key:"img",ref:i,alt:e.alt,src:t.unref(a),width:e.size,onError:o},null,40,OB))}}),xB={class:"kong-ui-entities-plugins-list"},IB={class:"name-cell-wrapper"},SB={class:"info-wrapper"},MB={key:0,class:"info-name"},vB={key:1,class:"info-name"},TB={key:2,class:"info-type"},RB={key:1},NB={key:1},VB=Ze(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0: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","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var On,Y;const i=be.usePluginMetaData(),a=n,o=e,{i18n:{t:r}}=be.useI18n(),l=Pt.useRouter(),{axiosInstance:s}=Kt((On=o.config)==null?void 0:On.axiosRequestConfig),c=t.computed(()=>{var M;return((M=o.config)==null?void 0:M.entityType)==="consumers"}),d=o.config.app==="konnect"||Fu({gatewayInfo:o.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),u=t.computed(()=>o.config.app!=="kongManager"||!!o.config.disableSorting),m={name:{label:r("plugins.list.table_headers.name"),searchable:!0,sortable:!0}};(Y=o.config)!=null&&Y.entityId||(m.appliedTo={label:r("plugins.list.table_headers.applied_to"),sortable:!1}),m.enabled={label:r("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},d&&(m.ordering={label:r("plugins.list.table_headers.ordering"),sortable:!0}),m.tags={label:r("plugins.list.table_headers.tags"),sortable:!1};const f=m,h=t.computed(()=>{var O,P,q,ie;let M=o.config.entityType?`${o.config.apiBaseUrl}${Oe.list[o.config.app].forEntity}`:`${o.config.apiBaseUrl}${Oe.list[o.config.app].all}`;return o.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,((O=o.config)==null?void 0:O.controlPlaneId)||""):o.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,(P=o.config)!=null&&P.workspace?`/${o.config.workspace}`:"")),M.replace(/{entityType}/gi,((q=o.config)==null?void 0:q.entityType)||"").replace(/{entityId}/gi,((ie=o.config)==null?void 0:ie.entityId)||"")}),C=t.ref(""),b=t.computed(()=>o.config.app==="konnect"||o.config.isExactMatch?{isExactMatch:!0,fields:{name:m.name,id:{label:r("plugins.list.table_headers.id"),sortable:!0}},placeholder:r(`search.placeholder.${o.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...m.enabled,label:r("search.filter.field.enabled")},name:m.name,instance_name:{label:r("plugins.list.table_headers.instance_name"),searchable:!0}},schema:o.config.filterSchema}),y=t.ref(1),{fetcher:B,fetcherState:x}=Gu(o.config,h.value),S=()=>{C.value=""},w=()=>{y.value++},A=t.ref(null),g=M=>{var P,q,ie,fe;const O=[];return(P=M.route)!=null&&P.id&&O.push({type:"route",badgeText:r("plugins.list.table_headers.applied_to_badges.route")}),(q=M.service)!=null&&q.id&&O.push({type:"service",badgeText:r("plugins.list.table_headers.applied_to_badges.service")}),(ie=M.consumer)!=null&&ie.id&&O.push({type:"consumer",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer")}),(fe=M.consumer_group)!=null&&fe.id&&O.push({type:"consumer_group",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer_group")}),O.length?O:[{type:null,badgeText:r("plugins.list.table_headers.applied_to_badges.global")}]},E=async(M,O)=>{var P;return M===null?!1:await((P=o.canRetrieveScopedEntity)==null?void 0:P.call(o,M,O.id))},k=(M,O)=>{var q,ie,fe,ne,de;let P=null;switch(M){case"route":P=(q=O.route)==null?void 0:q.id;break;case"service":P=(ie=O.service)==null?void 0:ie.id;break;case"consumer":P=(fe=O.consumer)==null?void 0:fe.id;break;case"consumer_group":P=(ne=O.consumer_group)==null?void 0:ne.id;break}P&&((de=o.config)!=null&&de.getScopedEntityViewRoute)&&l.push(o.config.getScopedEntityViewRoute(M,P))},v=t.ref(!1),G=t.ref(null),j=t.computed(()=>{const M={action:"disable",id:"",name:""};if(G.value){const{enabled:O,id:P,name:q}=G.value;M.action=O?"disable":"enable",M.id=P,M.name=i.getDisplayName(q)||P}return M}),F=M=>{v.value=!0,G.value=M},R=()=>{v.value=!1,G.value=null},V=async()=>{var q,ie,fe,ne,de,I,N,Ae;if(!await((q=o.canEdit)==null?void 0:q.call(o,G.value))||!G.value)return;let O=`${o.config.apiBaseUrl}${(de=Oe.item[o.config.app])==null?void 0:de[(ie=o.config)!=null&&ie.entityType?"forEntity":"all"].replace(/{entityType}/gi,((fe=o.config)==null?void 0:fe.entityType)||"").replace(/{entityId}/gi,((ne=o.config)==null?void 0:ne.entityId)||"")}`.replace(/{id}/gi,G.value.id||"");o.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,((I=o.config)==null?void 0:I.controlPlaneId)||""):o.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,(N=o.config)!=null&&N.workspace?`/${o.config.workspace}`:""));const P=!G.value.enabled;try{const{data:De}=((Ae=o.config)==null?void 0:Ae.app)==="konnect"?await s.put(O,{...G.value,enabled:P}):await s.patch(O,{...G.value,enabled:P});a("toggle-enabled",P,De)}catch(De){a("error",De)}G.value.enabled=P},K=(M,O)=>{const P=M.id;if(!O(P)){a("copy:error",{entity:M,field:"id",message:r("errors.copy")});return}a("copy:success",{entity:M,field:"id",message:r("copy.success",{val:P})})},H=(M,O)=>{const P=JSON.stringify(M);if(!O(P)){a("copy:error",{entity:M,message:r("errors.copy")});return}a("copy:success",{entity:M,message:r("copy.success_brief")})},z=async M=>{var P;await((P=o.canRetrieve)==null?void 0:P.call(o,M))&&l.push(o.config.getViewRoute(M))},W=M=>({label:r("actions.view"),to:o.config.getViewRoute(M)}),L=M=>({label:r("actions.edit"),to:o.config.getEditRoute(M)}),D=M=>({label:r("actions.configure_dynamic_ordering"),to:o.config.getConfigureDynamicOrderingRoute(M)}),J=t.ref(void 0),U=t.ref(!1),te=t.ref(!1),se=t.ref(""),Se=Yu(o.config,h.value),ye=M=>{J.value=M,U.value=!0},Dt=()=>{U.value=!1},Re=async()=>{var M,O,P;if((M=J.value)!=null&&M.id){te.value=!0;try{await s.delete(Se(J.value.id)),te.value=!1,U.value=!1,y.value++,a("delete:success",J.value)}catch(q){se.value=((P=(O=q.response)==null?void 0:O.data)==null?void 0:P.message)||q.message||r("errors.delete"),a("error",q)}finally{te.value=!1}}},re=t.ref(!0);t.watch(x,M=>{var O,P,q,ie;if(Array.isArray((O=M==null?void 0:M.response)==null?void 0:O.data)&&(re.value=M.response.data.length>0),M.status===bt.Error){A.value={title:r("errors.general")},(ie=(q=(P=M.error)==null?void 0:P.response)==null?void 0:q.data)!=null&&ie.message&&(A.value.message=M.error.response.data.message),a("error",M.error);return}A.value=null});const Xe=t.ref({ctaPath:o.config.createRoute,ctaText:void 0,message:`${r("plugins.list.empty_state.description")}${o.config.additionMessageForEmptyState?` ${o.config.additionMessageForEmptyState}`:""}`,title:r("plugins.title")});return t.onBeforeMount(async()=>{await o.canCreate()&&(Xe.value.title=r("plugins.list.empty_state.title"),Xe.value.ctaText=r("actions.create"))}),(M,O)=>{const P=t.resolveComponent("KButton"),q=t.resolveComponent("KBadge"),ie=t.resolveComponent("KTruncate"),fe=t.resolveComponent("KInputSwitch"),ne=t.resolveComponent("KDropdownItem"),de=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",xB,[t.createVNode(t.unref(yu),{"cache-identifier":e.cacheIdentifier,"disable-pagination-page-jump":"","disable-sorting":u.value,"dropdown-menu-width":"270","empty-state-options":Xe.value,"enable-entity-actions":"","error-message":A.value,fetcher:t.unref(B),"fetcher-cache-key":y.value,"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:C.value,"table-headers":t.unref(f),title:e.title,"title-tag":e.titleTag,"use-action-outside":e.useActionOutside,onClearSearchInput:S,"onClick:row":O[3]||(O[3]=I=>z(I)),onSort:w},{"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ju),{modelValue:C.value,"onUpdate:modelValue":O[0]||(O[0]=I=>C.value=I),config:b.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.useActionOutside?"Teleport":"div"),{to:e.useActionOutside?"#kong-ui-app-page-header-action-button":void 0},{default:t.withCtx(()=>[t.createVNode(t.unref(Ct),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.withDirectives(t.createVNode(P,{appearance:"primary","data-testid":"toolbar-add-plugin",icon:"plus",size:"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["to"]),[[t.vShow,re.value]])]),_:1},8,["auth-function"])]),_:1},8,["to"]))]),name:t.withCtx(({row:I})=>[t.createElementVNode("div",IB,[t.createVNode(ri,{class:"plugin-icon",name:I.name,width:24},null,8,["name"]),t.createElementVNode("div",SB,[I.instance_name?(t.openBlock(),t.createElementBlock("span",MB,t.toDisplayString(I.instance_name),1)):(t.openBlock(),t.createElementBlock("span",vB,t.toDisplayString(t.unref(i).getDisplayName(I.name)),1)),I.instance_name?(t.openBlock(),t.createElementBlock("span",TB,t.toDisplayString(t.unref(i).getDisplayName(I.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:I})=>[g(I).length>0?(t.openBlock(),t.createBlock(ie,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g(I),N=>(t.openBlock(),t.createBlock(t.unref(Ct),{key:N.badgeText,"auth-function":()=>E(N.type,I),"force-show":""},{default:t.withCtx(({isAllowed:Ae})=>[t.createVNode(q,{class:t.normalizeClass(Ae||"disabled"),onClick:t.withModifiers(De=>Ae&&N.type&&k(N.type,I),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(N.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",RB,"-"))]),enabled:t.withCtx(({row:I})=>[t.createVNode(t.unref(Ct),{"auth-function":async()=>!!(await e.canEdit(I)&&await e.canToggle(I)),"force-show":""},{default:t.withCtx(({isAllowed:N})=>{var Ae,De;return[t.createElementVNode("div",{onClick:O[1]||(O[1]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(fe,{disabled:!N,"disabled-tooltip-text":!N&&((De=(Ae=e.config).getToggleDisabledTooltip)==null?void 0:De.call(Ae,I))||void 0,"model-value":I.enabled,onClick:t.withModifiers(dt=>N&&F(I),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:I})=>[t.createVNode(q,{appearance:I?"warning":"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(I?t.unref(r)("plugins.list.table_headers.ordering_badge.dynamic"):t.unref(r)("plugins.list.table_headers.ordering_badge.static")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:I})=>[(I==null?void 0:I.length)>0?(t.openBlock(),t.createBlock(ie,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(I,N=>(t.openBlock(),t.createBlock(q,{key:N,onClick:O[2]||(O[2]=t.withModifiers(()=>{},["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(N),1)]),_:2},1024))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",NB,"-"))]),actions:t.withCtx(({row:I})=>[t.createVNode(de,null,{default:t.withCtx(({copyToClipboard:N})=>[t.createVNode(ne,{"data-testid":"action-entity-copy-id",onClick:Ae=>K(I,N)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(de,null,{default:t.withCtx(({copyToClipboard:N})=>[t.createVNode(ne,{"data-testid":"action-entity-copy-json",onClick:Ae=>H(I,N)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(Ct),{"auth-function":()=>e.canRetrieve(I)},{default:t.withCtx(()=>[t.createVNode(ne,{"data-testid":"action-entity-view","has-divider":"",item:W(I)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(Ct),{"auth-function":()=>e.canEdit(I)},{default:t.withCtx(()=>[t.createVNode(ne,{"data-testid":"action-entity-edit",item:L(I)},null,8,["item"])]),_:2},1032,["auth-function"]),!c.value&&t.unref(d)?(t.openBlock(),t.createBlock(t.unref(Ct),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(I)},{default:t.withCtx(()=>[D(I)?(t.openBlock(),t.createBlock(ne,{key:0,"data-testid":"action-entity-config-dyn-order",item:D(I)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(Ct),{"auth-function":()=>e.canDelete(I)},{default:t.withCtx(()=>[t.createVNode(ne,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:N=>ye(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:1},8,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","use-action-outside"]),t.createVNode(t.unref(Pu),{action:j.value.action,"entity-id":j.value.id,"entity-name":j.value.name,"entity-type":t.unref(r)("glossary.plugin"),"on-confirm":V,visible:v.value,onCancel:R,onProceed:R},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(vo),{"action-pending":te.value,description:t.unref(r)("delete.description"),"entity-name":J.value&&(J.value.instance_name||J.value.name||J.value.id),"entity-type":t.unref(di).Plugin,error:se.value,title:t.unref(r)("delete.title"),visible:U.value,onCancel:Dt,onProceed:Re},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-6bbe2d27"]]),LB=e=>(t.pushScopeId("data-v-14bc032f"),e=e(),t.popScopeId(),e),DB={class:"plugin-card-header"},jB={class:"plugin-card-footer"},PB=LB(()=>t.createElementVNode("hr",{class:"plugin-card-footer-divider"},null,-1)),UB={class:"footer-skeleton"},YB=Ze(t.defineComponent({__name:"PluginCardSkeleton",props:{cardCount:{type:Number,default:1}},setup(e){return(n,i)=>{const a=t.resolveComponent("KSkeletonBox"),o=t.resolveComponent("KSkeleton");return t.openBlock(),t.createBlock(o,{"card-count":e.cardCount,class:"plugin-card-skeleton",type:"card"},{"card-header":t.withCtx(()=>[t.createElementVNode("div",DB,[t.createVNode(a,{width:"5"})])]),"card-content":t.withCtx(()=>[t.createTextVNode(" ")]),"card-footer":t.withCtx(()=>[t.createElementVNode("div",jB,[PB,t.createElementVNode("div",UB,[t.createVNode(a,{width:"5"})])])]),_:1},8,["card-count"])}}}),[["__scopeId","data-v-14bc032f"]]),GB="16px",Ql="24px",FB=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},HB=e=>(t.pushScopeId("data-v-cf4e7d0b"),e=e(),t.popScopeId(),e),zB=["aria-hidden"],KB={key:0,"data-testid":"kui-icon-svg-title"},qB=HB(()=>t.createElementVNode("path",{d:"M12 20C11.45 20 10.9792 19.8042 10.5875 19.4125C10.1958 19.0208 10 18.55 10 18C10 17.45 10.1958 16.9792 10.5875 16.5875C10.9792 16.1958 11.45 16 12 16C12.55 16 13.0208 16.1958 13.4125 16.5875C13.8042 16.9792 14 17.45 14 18C14 18.55 13.8042 19.0208 13.4125 19.4125C13.0208 19.8042 12.55 20 12 20ZM12 14C11.45 14 10.9792 13.8042 10.5875 13.4125C10.1958 13.0208 10 12.55 10 12C10 11.45 10.1958 10.9792 10.5875 10.5875C10.9792 10.1958 11.45 10 12 10C12.55 10 13.0208 10.1958 13.4125 10.5875C13.8042 10.9792 14 11.45 14 12C14 12.55 13.8042 13.0208 13.4125 13.4125C13.0208 13.8042 12.55 14 12 14ZM12 8C11.45 8 10.9792 7.80417 10.5875 7.4125C10.1958 7.02083 10 6.55 10 6C10 5.45 10.1958 4.97917 10.5875 4.5875C10.9792 4.19583 11.45 4 12 4C12.55 4 13.0208 4.19583 13.4125 4.5875C13.8042 4.97917 14 5.45 14 6C14 6.55 13.8042 7.02083 13.4125 7.4125C13.0208 7.80417 12.55 8 12 8Z",fill:"currentColor"},null,-1)),XB=t.defineComponent({__name:"MoreIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:Ql,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),i=Number(n);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,i=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const o=String(n.size).replace(/px/gi,""),r=Number(o);if(r&&!isNaN(r)&&Number.isInteger(r)&&r>0)return`${r}px`}return Ql}),a=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:i.value,lineHeight:"0",width:i.value}));return(o,r)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon more-icon","data-testid":"kui-icon-wrapper-more-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-more-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",KB,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),qB],8,zB))]),_:1},8,["aria-hidden","style"]))}}),JB=FB(XB,[["__scopeId","data-v-cf4e7d0b"]]),ZB=["data-testid"],WB={class:"plugin-card-header"},QB={class:"plugin-card-title"},_B={key:0,class:"plugin-card-actions"},$B=["data-testid","title"],eO={key:0,class:"plugin-card-text"},tO={key:0},nO=["title"],li=Ze(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{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 i=n,a=e,o=Pt.useRouter(),{i18n:{t:r}}=be.useI18n(),l=t.computed(()=>a.config.app==="konnect"?a.config.controlPlaneId:""),s=t.computed(()=>!!(!a.plugin.available||a.plugin.disabledMessage)),c=t.computed(()=>!!(h.value&&!f.value&&a.navigateOnClick&&l.value&&(a.canDeleteCustomPlugin||a.canEditCustomPlugin))),d=()=>{o.push(a.config.getCreateRoute(a.plugin.id))},u=()=>{a.navigateOnClick?d():m()},m=()=>{i("plugin-clicked",a.plugin)},f=t.computed(()=>a.plugin.id==="custom-plugin-create"),h=t.computed(()=>a.config.app==="konnect"&&a.plugin.group===T.CUSTOM_PLUGINS),C=()=>{a.config.app==="konnect"&&i("custom-plugin-delete")},b=B=>{const x=a.config;a.config.app==="konnect"&&typeof x.getCustomEditRoute=="function"&&x.getCustomEditRoute&&o.push(x.getCustomEditRoute(B))},y=()=>{if(!s.value&&a.config.app==="konnect"){const B=a.config;f.value&&B.createCustomRoute?o.push(B.createCustomRoute):h.value&&d()}};return(B,x)=>{const S=t.resolveComponent("KButton"),w=t.resolveComponent("KDropdownItem"),A=t.resolveComponent("KDropdownMenu"),g=t.resolveComponent("KTooltip");return t.openBlock(),t.createBlock(g,{"position-fixed":"",text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:x[1]||(x[1]=E=>s.value||h.value?void 0:u())},[t.createElementVNode("div",WB,[t.createElementVNode("div",QB,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!h.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",_B,[t.createVNode(A,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottomEnd"},width:"150"},{default:t.withCtx(()=>[t.createVNode(S,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:t.withCtx(()=>[t.createVNode(t.unref(JB),{size:t.unref(GB)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(w,{key:0,"data-testid":"edit-plugin-schema",onClick:x[0]||(x[0]=t.withModifiers(E=>b(e.plugin.name),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(w,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(C,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":h.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(r)("plugins.select.unavailable_tooltip"),onClick:y},[t.createVNode(ri,{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.imageName||e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||h.value&&!f.value?(t.openBlock(),t.createElementBlock("div",eO,[h.value&&!f.value?(t.openBlock(),t.createElementBlock("p",tO,t.toDisplayString(t.unref(r)("plugins.select.custom_badge_text")),1)):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,nO)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,$B),t.createElementVNode("div",{class:"plugin-card-footer",onClick:y},t.toDisplayString(f.value?t.unref(r)("actions.create_custom"):e.plugin.exists?t.unref(r)("actions.enabled"):t.unref(r)("actions.enable")),1)],10,ZB)]),_:1},8,["text"])}}}),[["__scopeId","data-v-3e933d10"]]),iO=Ze(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var h;const i=e,a=n,{i18nT:o,i18n:{t:r}}=be.useI18n(),{getMessageFromError:l}=Ln(),{axiosInstance:s}=Kt((h=i.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var C;return m.value?r("delete.plugin_schema_in_use_title"):r("delete.title",{name:((C=i.plugin)==null?void 0:C.name)||r("delete.custom_plugin")})}),d=t.ref(!1),u=t.ref(""),m=t.ref(!1),f=async()=>{var C,b,y,B,x;if(d.value=!0,u.value="",!(!((C=i.plugin)!=null&&C.name)||((b=i.config)==null?void 0:b.app)!=="konnect"))try{const S=`${i.config.apiBaseUrl}/v2/control-planes/${i.config.controlPlaneId}/core-entities/plugin-schemas/${(y=i.plugin)==null?void 0:y.name}`;await s.delete(S),a("proceed")}catch(S){const{response:w}=S;(w==null?void 0:w.status)===400&&((x=(B=w.data)==null?void 0:B.message)!=null&&x.includes("plugin schema is currently in use"))?m.value=!0:u.value=l(S)}finally{d.value=!1}};return(C,b)=>{const y=t.resolveComponent("KButton"),B=t.resolveComponent("KModal");return!m.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(vo),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(r)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(di).Plugin,error:u.value,"need-confirm":"",title:c.value,visible:"",onCancel:b[0]||(b[0]=x=>C.$emit("closed")),onProceed:f},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(B,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:b[2]||(b[2]=x=>C.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(o),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(y,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:b[1]||(b[1]=x=>C.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-4148beb9"]]),aO={class:"custom-plugins-grid"},oO={class:"empty-state-title"},rO={class:"empty-state-description"},lO={class:"plugin-card-container"},sO={class:"plugin-card-container"},cO=Ze(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},pluginsPerRow:{type:Number,default:4}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=be.useI18n(),{getPluginCards:r}=be.usePluginHelpers(),l=t.ref(!0),s=C=>{a("plugin-clicked",C)},c=t.computed(()=>{if(i.config.app==="kongManager")return[];const C=JSON.parse(JSON.stringify(i.pluginList))[T.CUSTOM_PLUGINS]||[];return i.canCreateCustomPlugin&&i.navigateOnClick&&i.config.createCustomRoute?[{id:"custom-plugin-create",name:o("plugins.select.tabs.custom.create.name"),available:!0,group:T.CUSTOM_PLUGINS,description:o("plugins.select.tabs.custom.create.description")}].concat(C):C}),d=t.computed(()=>{var y,B;const C=(y=r("all",c.value,i.pluginsPerRow))==null?void 0:y.length,b=(B=r("hidden",c.value,i.pluginsPerRow))==null?void 0:B.length;return C>i.pluginsPerRow?o("plugins.select.view_more",{count:b}):o("plugins.select.view_less")}),u=t.ref(!1),m=t.ref(null),f=C=>{u.value=!0,m.value={id:C.id,name:C.name}},h=C=>{var b;C&&(a("revalidate"),a("delete:success",((b=m.value)==null?void 0:b.name)||"")),u.value=!1,m.value=null};return(C,b)=>{const y=t.resolveComponent("KEmptyState"),B=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",aO,[c.value.length?(t.openBlock(),t.createBlock(B,{key:1,modelValue:l.value,"onUpdate:modelValue":b[0]||(b[0]=x=>l.value=x),class:"custom-plugins-collapse","data-testid":`${t.unref(T).CUSTOM_PLUGINS}-collapse`,title:t.unref(T).CUSTOM_PLUGINS,"trigger-label":d.value},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",lO,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(r)("visible",c.value,e.pluginsPerRow),(x,S)=>(t.openBlock(),t.createBlock(li,{key:`plugin-card-${S}`,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:x,onCustomPluginDelete:w=>f(x),onPluginClicked:s},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))])]),default:t.withCtx(()=>[t.createElementVNode("div",sO,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(r)("hidden",c.value,e.pluginsPerRow),(x,S)=>(t.openBlock(),t.createBlock(li,{key:`plugin-card-${S}`,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:x,onPluginClicked:s},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin"]))),128))])]),_:2},[c.value.length<=e.pluginsPerRow?{name:"trigger",fn:t.withCtx(()=>[t.createTextVNode(" ")]),key:"0"}:void 0]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(y,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",oO,t.toDisplayString(t.unref(o)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",rO,t.toDisplayString(t.unref(o)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),u.value&&m.value?(t.openBlock(),t.createBlock(iO,{key:2,config:e.config,plugin:m.value,onClosed:h,onProceed:b[1]||(b[1]=x=>h(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-acd8a972"]]),dO={class:"plugin-card-container"},pO={class:"plugin-card-container"},_l=Ze(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0},pluginsPerRow:{type:Number,default:4}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const i=t.useModel(e,"modelValue"),a=e,o=n,{i18n:{t:r}}=be.useI18n(),{getPluginCards:l}=be.usePluginHelpers(),s=t.computed(()=>{var u,m;const c=((u=l("all",a.plugins,a.pluginsPerRow))==null?void 0:u.length)||0,d=((m=l("hidden",a.plugins||[],a.pluginsPerRow))==null?void 0:m.length)||0;return c>a.pluginsPerRow?r("plugins.select.view_more",{count:d}):void 0});return(c,d)=>{const u=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(u,{modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=m=>i.value=m),class:"plugins-collapse","data-testid":`${a.name}-collapse`,title:a.name,"trigger-label":i.value?s.value:t.unref(r)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",dO,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l)("visible",a.plugins,a.pluginsPerRow),m=>(t.openBlock(),t.createBlock(li,{key:`plugin-card-${m.id}`,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:m,onPluginClicked:f=>o("plugin-clicked",m)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))])]),default:t.withCtx(()=>[t.createElementVNode("div",pO,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l)("hidden",a.plugins,a.pluginsPerRow),m=>(t.openBlock(),t.createBlock(li,{key:`plugin-card-${m.id}`,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:m,onPluginClicked:f=>o("plugin-clicked",m)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))])]),_:2},[a.plugins.length<=e.pluginsPerRow?{name:"trigger",fn:t.withCtx(()=>[t.createTextVNode(" ")]),key:"0"}:void 0]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-12700243"]]),uO={class:"plugin-select-grid"},mO={class:"empty-state-title"},gO={class:"empty-state-description"},da=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},pluginsPerRow:{type:Number,default:4},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=be.useI18n(),r=t.ref(!1),l=t.ref(Jo),s=d=>{a("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(i.pluginList));return i.config.app==="konnect"&&delete d[T.CUSTOM_PLUGINS],d});return(d,u)=>{const m=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",uO,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(m,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",mO,t.toDisplayString(t.unref(o)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",gO,t.toDisplayString(t.unref(o)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!i.hideHighlightedPlugins&&i.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(_l,{key:1,modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=f=>r.value=f),config:e.config,name:i.highlightedPluginsTitle||t.unref(o)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:i.highlightedPlugins,"plugins-per-row":e.pluginsPerRow,onPluginClicked:u[1]||(u[1]=f=>s(f))},null,8,["modelValue","config","name","navigate-on-click","plugins","plugins-per-row"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Xo),f=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[f]?(t.openBlock(),t.createElementBlock("div",{key:f},[t.createVNode(_l,{modelValue:l.value[f],"onUpdate:modelValue":h=>l.value[f]=h,config:e.config,name:f,"navigate-on-click":e.navigateOnClick,plugins:c.value[f]||[],"plugins-per-row":e.pluginsPerRow,onPluginClicked:u[2]||(u[2]=h=>s(h))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins","plugins-per-row"])])):t.createCommentVNode("",!0)],64))),256))])}}}),fO={class:"kong-ui-entities-plugin-select-form"},AO={class:"plugins-filter-input-container"},hO={key:0},yO={key:3,"aria-live":"polite",class:"plugins-results-container"},bO={"data-testid":"kong-tab"},wO={class:"tab-description"},CO={"data-testid":"custom-tab"},kO={class:"tab-description"},EO=Ze(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},disableCustomPlugins:{type:Boolean,default:!1},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},pluginsPerRow:{type:Number,default:4},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var z,W;const i=e,a=n,o=Pt.useRoute(),r=Pt.useRouter(),{i18n:{t:l}}=be.useI18n(),{pluginMetaData:s}=be.usePluginMetaData(),{getMessageFromError:c}=Ln(),{sortAlpha:d,objectsAreEqual:u}=Dn(),m=t.ref(""),f=t.ref(!0),h=t.ref(!1),C=t.ref(""),b=t.ref([]),y=t.ref({}),B=t.ref([]),{axiosInstance:x}=Kt((z=i.config)==null?void 0:z.axiosRequestConfig),S=t.computed(()=>y.value?Object.entries(y.value).filter(([L])=>L!==T.CUSTOM_PLUGINS).reduce((L,[,D])=>{for(const J of D)L[J.id]=J;return L},{}):{}),w=t.computed(()=>{var J;if(!y.value)return{};const L=m.value.toLowerCase(),D=JSON.parse(JSON.stringify(y.value));for(const U in y.value){const te=((J=y.value[U])==null?void 0:J.filter(se=>se.name.toLowerCase().includes(L)||se.id.toLowerCase().includes(L)||se.group.toLowerCase().includes(L)))||[];te.length?D[U]=te:delete D[U]}return D}),A=t.computed(()=>i.highlightedPluginIds.reduce((L,D)=>{const J=S.value[D];return J&&L.push(J),L},[])),g=t.computed(()=>Object.keys(w.value).length>0),E=t.computed(()=>Object.keys(y.value).length>0&&!g.value),k=i.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title")}]:[],v=t.ref(k.length&&((o==null?void 0:o.hash)||((W=k[0])==null?void 0:W.hash))||""),G=()=>[...new Set([...Object.keys({...i.availableOnServer?{}:s}),...b.value])].filter(L=>!i.ignoredPlugins.includes(L)).filter(L=>i.config.entityType&&(i.config.entityType==="services"&&s[L]&&!s[L].scope.includes(p.SERVICE)||i.config.entityType==="routes"&&s[L]&&!s[L].scope.includes(p.ROUTE)||i.config.entityType==="consumer_groups"&&s[L]&&!s[L].scope.includes(p.CONSUMER_GROUP)||i.config.entityType==="consumers"&&s[L]&&!s[L].scope.includes(p.CONSUMER))?!1:L).reduce((L,D)=>{var Se;const J=s[D]&&s[D].name||D,U={...s[D],id:D,name:J,available:b.value.includes(D),disabledMessage:"",group:((Se=s[D])==null?void 0:Se.group)||T.CUSTOM_PLUGINS};i.disabledPlugins&&(U.disabledMessage=i.disabledPlugins[D]);const te=U.group||l("plugins.select.misc_plugins");let se=L[te];return se||(se=[]),se.push(U),se.sort(d("name")),L[te]=se,L},{}),j=t.computed(()=>{var D;let L=`${i.config.apiBaseUrl}${Oe.select[i.config.app].availablePlugins}`;return i.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&(L=((D=i.config.gatewayInfo)==null?void 0:D.edition)==="community"?`${i.config.apiBaseUrl}${Oe.select[i.config.app].availablePluginsForOss}`:L.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),L}),F=t.computed(()=>{if(i.config.entityType&&i.config.entityId){let L=`${i.config.apiBaseUrl}${Oe.list[i.config.app].forEntity}`;return i.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),L.replace(/{entityType}/gi,i.config.entityType||"").replace(/{entityId}/gi,i.config.entityId||"")}return""}),R=L=>{r.replace({hash:L,query:o.query})};t.watch(()=>i.disabledPlugins,(L,D)=>{!u(L,D)&&!f.value&&(y.value=G())}),t.watch(()=>i.ignoredPlugins,(L,D)=>{!u(L,D)&&!f.value&&(y.value=G())}),t.watch(f,L=>{a("loading",L)});const V=t.ref(!1),K=t.ref(!1),H=t.ref(!1);return t.onBeforeMount(async()=>{V.value=await i.canCreateCustomPlugin(),K.value=await i.canEditCustomPlugin(),H.value=await i.canDeleteCustomPlugin()}),t.onMounted(async()=>{try{const{data:L}=await x.get(j.value);if(i.config.app==="konnect"){const{names:D}=L;b.value=D||[]}else if(i.config.app==="kongManager"){const{plugins:{available_on_server:D}}=L;b.value=D?Object.keys(D):[]}}catch(L){h.value=!0,C.value=c(L)}if(F.value)try{const{data:{data:L}}=await x.get(F.value);if(L!=null&&L.length){const D=L.reduce((J,U)=>(U.name&&J.push(U.name),J),[]);B.value=B.value.concat(D)}}catch{}h.value||(y.value=G()),f.value=!1}),(L,D)=>{const J=t.resolveComponent("KInput"),U=t.resolveComponent("KSkeletonBox"),te=t.resolveComponent("KSkeleton"),se=t.resolveComponent("KEmptyState"),Se=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",fO,[t.createElementVNode("div",AO,[t.createVNode(J,{modelValue:m.value,"onUpdate:modelValue":D[0]||(D[0]=ye=>m.value=ye),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),f.value?(t.openBlock(),t.createElementBlock("section",hO,[t.createVNode(te,{"table-rows":1,type:"table"},{default:t.withCtx(()=>[t.createVNode(U,{width:"6"}),t.createVNode(U,{class:"title-loading-skeleton",width:"6"})]),_:1}),t.createVNode(YB,{"card-count":8,type:"card"})])):h.value?(t.openBlock(),t.createBlock(se,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(C.value),1)]),_:1})):E.value&&m.value?(t.openBlock(),t.createBlock(se,{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(l)("search.no_results",{filter:m.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",yO,[t.unref(k).length&&!e.disableCustomPlugins?(t.openBlock(),t.createBlock(Se,{key:0,modelValue:v.value,"onUpdate:modelValue":D[5]||(D[5]=ye=>v.value=ye),"data-testid":"plugins-tabs",tabs:t.unref(k),onChange:R},{kong:t.withCtx(()=>[t.createElementVNode("div",bO,[t.createElementVNode("p",wO,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(da,{config:e.config,"hide-highlighted-plugins":m.value.length>0,"highlighted-plugins":A.value,"highlighted-plugins-title":i.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":w.value,"plugins-per-row":e.pluginsPerRow,onPluginClicked:D[1]||(D[1]=ye=>L.$emit("plugin-clicked",ye))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list","plugins-per-row"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",CO,[t.createElementVNode("p",kO,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(cO,{"can-create-custom-plugin":V.value,"can-delete-custom-plugin":H.value,"can-edit-custom-plugin":K.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":w.value,"plugins-per-row":e.pluginsPerRow,"onDelete:success":D[2]||(D[2]=ye=>L.$emit("delete-custom:success",ye)),onPluginClicked:D[3]||(D[3]=ye=>L.$emit("plugin-clicked",ye)),onRevalidate:D[4]||(D[4]=()=>y.value=G())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list","plugins-per-row"])])]),_:1},8,["modelValue","tabs"])):(t.openBlock(),t.createBlock(da,{key:1,config:e.config,"hide-highlighted-plugins":m.value.length>0,"highlighted-plugins":A.value,"highlighted-plugins-title":i.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":w.value,"plugins-per-row":e.pluginsPerRow,onPluginClicked:D[6]||(D[6]=ye=>L.$emit("plugin-clicked",ye))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list","plugins-per-row"]))]))])}}}),[["__scopeId","data-v-32dfb7b0"]]),BO={class:"kong-ui-entity-plugin-config-card"},OO={class:"name-cell-wrapper"},xO={class:"info-name"},IO={key:0},SO={key:0},MO={key:0},vO={key:0},pa="config",TO=Ze(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var x;const i=n,a=e,{i18n:{t:o}}=be.useI18n(),r=be.usePluginMetaData(),{setFieldType:l}=be.usePluginHelpers(),{getPropValue:s}=Dn(),c=t.computed(()=>{var S;return(S=Oe.item[a.config.app])==null?void 0:S[a.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,a.scopedEntityType).replace(/{entityId}/gi,a.scopedEntityId)}),d=t.computed(()=>{var A,g;const S={},w=((A=b.value)==null?void 0:A.fields)||[];for(let E=0;E<w.length;E++){const k=b.value.fields[E],v=(g=Object.keys(k))==null?void 0:g[0];l(S,v,k[v])}return{...S,instance_name:{section:xe.Basic,order:1.5},consumer:{label:o("plugins.fields.consumer"),section:xe.Basic,order:6},route:{label:o("plugins.fields.route"),section:xe.Basic,order:6},service:{label:o("plugins.fields.service"),section:xe.Basic,order:6},consumer_group:{label:o("plugins.fields.consumer_group"),section:xe.Basic,order:6},protocols:{type:_.BadgeTag,section:xe.Basic,order:7}}}),u=t.computed(()=>{var w,A,g;if(!((w=b.value)!=null&&w.fields))return[];const S=(A=b.value.fields)==null?void 0:A.find(E=>{var v;return((v=Object.keys(E))==null?void 0:v[0])===pa});return((g=S==null?void 0:S[pa])==null?void 0:g.fields)||[]}),m=t.computed(()=>{var w,A;const S={};if(!u.value)return S;for(let g=0;g<((w=u.value)==null?void 0:w.length);g++){const E=u.value[g],k=(A=Object.keys(E))==null?void 0:A[0],v=E[k];v.required&&(S[k]={order:1}),l(S,k,v)}return S}),{getMessageFromError:f}=Ln(),{axiosInstance:h}=Kt((x=a.config)==null?void 0:x.axiosRequestConfig),C=t.computed(()=>{var w,A;let S=`${a.config.apiBaseUrl}${Oe.form[a.config.app].pluginSchema}`;return a.config.app==="konnect"?S=S.replace(/{controlPlaneId}/gi,((w=a.config)==null?void 0:w.controlPlaneId)||""):a.config.app==="kongManager"&&(S=S.replace(/\/{workspace}/gi,(A=a.config)!=null&&A.workspace?`/${a.config.workspace}`:"")),S=S.replace(/{plugin}/gi,a.config.pluginType),S}),b=t.ref({}),y=t.ref(!1),B=t.ref("");return t.onBeforeMount(async()=>{y.value=!0;try{const{data:S}=await h.get(C.value);b.value=S}catch(S){B.value=f(S),i("error:fetch-schema",S)}finally{y.value=!1}}),(S,w)=>{const A=t.resolveComponent("KSkeleton"),g=t.resolveComponent("KEmptyState"),E=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",BO,[y.value?(t.openBlock(),t.createBlock(A,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):B.value?(t.openBlock(),t.createBlock(g,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(B.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ru),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":pa,"plugin-config-schema":m.value,"onFetch:error":w[0]||(w[0]=k=>S.$emit("fetch:error",k)),"onFetch:success":w[1]||(w[1]=k=>S.$emit("fetch:success",k)),onLoading:w[2]||(w[2]=k=>S.$emit("loading",k))},{name:t.withCtx(k=>[t.createElementVNode("div",OO,[t.createVNode(ri,{class:"plugin-icon",name:t.unref(s)("rowValue",k),width:24},null,8,["name"]),t.createElementVNode("span",xO,t.toDisplayString(t.unref(r).getDisplayName(t.unref(s)("rowValue",k))),1)])]),consumer:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref($t),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(_).LinkInternal},onNavigationClick:()=>S.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(E,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",IO,"–"))]),route:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref($t),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(_).LinkInternal},onNavigationClick:()=>S.$emit("navigation-click",t.unref(s)("rowValue",k).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(E,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",SO,"–"))]),service:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref($t),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(_).LinkInternal},onNavigationClick:()=>S.$emit("navigation-click",t.unref(s)("rowValue",k).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(E,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",MO,"–"))]),consumer_group:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref($t),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(_).LinkInternal},onNavigationClick:()=>S.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(E,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",vO,"–"))]),_:1},8,["config","config-card-doc","config-schema","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-3e4f66ec"]]),{usePluginMetaData:RO}=be;Z.EntityTypeIdField=Bt,Z.PLUGIN_GROUPS_COLLAPSE_STATUS=Jo,Z.PluginConfigCard=TO,Z.PluginForm=BB,Z.PluginGroup=T,Z.PluginGroupArray=Xo,Z.PluginIcon=ri,Z.PluginList=VB,Z.PluginScope=p,Z.PluginSelect=EO,Z.PluginSelectGrid=da,Z.VueFormGenerator=Ye,Z.getPluginIconURL=tr,Z.pluginEndpoints=Oe,Z.usePluginMetaData=RO,Object.defineProperty(Z,Symbol.toStringTag,{value:"Module"})});
|