@kong-ui-public/entities-plugins 9.21.6 → 9.21.7-pr.2145.3f5d3180b.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/entities-plugins.es.js +5313 -5089
- package/dist/entities-plugins.umd.js +30 -30
- package/dist/style.css +1 -1
- package/dist/types/components/PluginForm.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/ArrayField.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/EnumField.vue.d.ts +6 -2
- package/dist/types/components/free-form/shared/EnumField.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/Field.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/ObjectField.vue.d.ts +6 -2
- package/dist/types/components/free-form/shared/ObjectField.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/StringField.vue.d.ts +6 -2
- package/dist/types/components/free-form/shared/StringField.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/composables.d.ts +14 -8
- package/dist/types/components/free-form/shared/composables.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/types.d.ts +11 -0
- package/dist/types/components/free-form/shared/types.d.ts.map +1 -1
- package/dist/types/composables/usePluginErrors.d.ts +29 -0
- package/dist/types/composables/usePluginErrors.d.ts.map +1 -0
- package/package.json +9 -9
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function($,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong/icons"),require("@kong/kongponents")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","vue-router","@kong-ui-public/i18n","@kong/icons","@kong/kongponents"],e):($=typeof globalThis<"u"?globalThis:$||self,e($["kong-ui-public-entities-plugins"]={},$.Vue,$["kong-ui-public-entities-shared"],$.VueRouter,$["kong-ui-public-i18n"],$.KongIcons,$.Kongponents))})(this,function($,e,U,yn,Ue,Te,Xe){"use strict";var WR=Object.defineProperty;var _R=($,e,U)=>e in $?WR($,e,{enumerable:!0,configurable:!0,writable:!0,value:U}):$[e]=U;var Ce=($,e,U)=>_R($,typeof e!="symbol"?e+"":e,U);var At=typeof document<"u"?document.currentScript:null;function Ma(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let Dt=Ma();function Ko(t){Dt=t}const zo=/[&<>"']/,vl=new RegExp(zo.source,"g"),Qo=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Vl=new RegExp(Qo.source,"g"),Pl={"&":"&","<":"<",">":">",'"':""","'":"'"},Xo=t=>Pl[t];function Je(t,n){if(n){if(zo.test(t))return t.replace(vl,Xo)}else if(Qo.test(t))return t.replace(Vl,Xo);return t}const Nl=/(^|[^\[])\^/g;function ye(t,n){let a=typeof t=="string"?t:t.source;n=n||"";const o={replace:(i,r)=>{let s=typeof r=="string"?r:r.source;return s=s.replace(Nl,"$1"),a=a.replace(i,s),o},getRegex:()=>new RegExp(a,n)};return o}function qo(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}const bn={exec:()=>null};function Jo(t,n){const a=t.replace(/\|/g,(r,s,l)=>{let c=!1,m=s;for(;--m>=0&&l[m]==="\\";)c=!c;return c?"|":" |"}),o=a.split(/ \|/);let i=0;if(o[0].trim()||o.shift(),o.length>0&&!o[o.length-1].trim()&&o.pop(),n)if(o.length>n)o.splice(n);else for(;o.length<n;)o.push("");for(;i<o.length;i++)o[i]=o[i].trim().replace(/\\\|/g,"|");return o}function En(t,n,a){const o=t.length;if(o===0)return"";let i=0;for(;i<o;){const r=t.charAt(o-i-1);if(r===n&&!a)i++;else if(r!==n&&a)i++;else break}return t.slice(0,o-i)}function Dl(t,n){if(t.indexOf(n[1])===-1)return-1;let a=0;for(let o=0;o<t.length;o++)if(t[o]==="\\")o++;else if(t[o]===n[0])a++;else if(t[o]===n[1]&&(a--,a<0))return o;return-1}function Zo(t,n,a,o){const i=n.href,r=n.title?Je(n.title):null,s=t[1].replace(/\\([\[\]])/g,"$1");if(t[0].charAt(0)!=="!"){o.state.inLink=!0;const l={type:"link",raw:a,href:i,title:r,text:s,tokens:o.inlineTokens(s)};return o.state.inLink=!1,l}return{type:"image",raw:a,href:i,title:r,text:Je(s)}}function Ll(t,n){const a=t.match(/^(\s+)(?:```)/);if(a===null)return n;const o=a[1];return n.split(`
|
|
2
2
|
`).map(i=>{const r=i.match(/^\s+/);if(r===null)return i;const[s]=r;return s.length>=o.length?i.slice(o.length):i}).join(`
|
|
3
|
-
`)}class
|
|
4
|
-
`)}}}fences(n){const a=this.rules.block.fences.exec(n);if(a){const o=a[0],i=
|
|
5
|
-
`)}}blockquote(n){const a=this.rules.block.blockquote.exec(n);if(a){let o=
|
|
3
|
+
`)}class Qn{constructor(n){Ce(this,"options");Ce(this,"rules");Ce(this,"lexer");this.options=n||Dt}space(n){const a=this.rules.block.newline.exec(n);if(a&&a[0].length>0)return{type:"space",raw:a[0]}}code(n){const a=this.rules.block.code.exec(n);if(a){const o=a[0].replace(/^(?: {1,4}| {0,3}\t)/gm,"");return{type:"code",raw:a[0],codeBlockStyle:"indented",text:this.options.pedantic?o:En(o,`
|
|
4
|
+
`)}}}fences(n){const a=this.rules.block.fences.exec(n);if(a){const o=a[0],i=Ll(o,a[3]||"");return{type:"code",raw:o,lang:a[2]?a[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):a[2],text:i}}}heading(n){const a=this.rules.block.heading.exec(n);if(a){let o=a[2].trim();if(/#$/.test(o)){const i=En(o,"#");(this.options.pedantic||!i||/ $/.test(i))&&(o=i.trim())}return{type:"heading",raw:a[0],depth:a[1].length,text:o,tokens:this.lexer.inline(o)}}}hr(n){const a=this.rules.block.hr.exec(n);if(a)return{type:"hr",raw:En(a[0],`
|
|
5
|
+
`)}}blockquote(n){const a=this.rules.block.blockquote.exec(n);if(a){let o=En(a[0],`
|
|
6
6
|
`).split(`
|
|
7
|
-
`),i="",r="";const s=[];for(;o.length>0;){let l=!1;const
|
|
7
|
+
`),i="",r="";const s=[];for(;o.length>0;){let l=!1;const c=[];let m;for(m=0;m<o.length;m++)if(/^ {0,3}>/.test(o[m]))c.push(o[m]),l=!0;else if(!l)c.push(o[m]);else break;o=o.slice(m);const p=c.join(`
|
|
8
8
|
`),u=p.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,`
|
|
9
9
|
$1`).replace(/^ {0,3}>[ \t]?/gm,"");i=i?`${i}
|
|
10
10
|
${p}`:p,r=r?`${r}
|
|
11
11
|
${u}`:u;const g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(u,s,!0),this.lexer.state.top=g,o.length===0)break;const h=s[s.length-1];if((h==null?void 0:h.type)==="code")break;if((h==null?void 0:h.type)==="blockquote"){const C=h,f=C.raw+`
|
|
12
12
|
`+o.join(`
|
|
13
|
-
`),
|
|
13
|
+
`),b=this.blockquote(f);s[s.length-1]=b,i=i.substring(0,i.length-C.raw.length)+b.raw,r=r.substring(0,r.length-C.text.length)+b.text;break}else if((h==null?void 0:h.type)==="list"){const C=h,f=C.raw+`
|
|
14
14
|
`+o.join(`
|
|
15
|
-
`),
|
|
16
|
-
`);continue}}return{type:"blockquote",raw:i,tokens:s,text:r}}}list(n){let a=this.rules.block.list.exec(n);if(a){let o=a[1].trim();const i=o.length>1,r={type:"list",raw:"",ordered:i,start:i?+o.slice(0,-1):"",loose:!1,items:[]};o=i?`\\d{1,9}\\${o.slice(-1)}`:`\\${o}`,this.options.pedantic&&(o=i?o:"[*+-]");const s=new RegExp(`^( {0,3}${o})((?:[ ][^\\n]*)?(?:\\n|$))`);let l=!1;for(;n;){let
|
|
15
|
+
`),b=this.list(f);s[s.length-1]=b,i=i.substring(0,i.length-h.raw.length)+b.raw,r=r.substring(0,r.length-C.raw.length)+b.raw,o=f.substring(s[s.length-1].raw.length).split(`
|
|
16
|
+
`);continue}}return{type:"blockquote",raw:i,tokens:s,text:r}}}list(n){let a=this.rules.block.list.exec(n);if(a){let o=a[1].trim();const i=o.length>1,r={type:"list",raw:"",ordered:i,start:i?+o.slice(0,-1):"",loose:!1,items:[]};o=i?`\\d{1,9}\\${o.slice(-1)}`:`\\${o}`,this.options.pedantic&&(o=i?o:"[*+-]");const s=new RegExp(`^( {0,3}${o})((?:[ ][^\\n]*)?(?:\\n|$))`);let l=!1;for(;n;){let c=!1,m="",p="";if(!(a=s.exec(n))||this.rules.block.hr.test(n))break;m=a[0],n=n.substring(m.length);let u=a[2].split(`
|
|
17
17
|
`,1)[0].replace(/^\t+/,k=>" ".repeat(3*k.length)),g=n.split(`
|
|
18
18
|
`,1)[0],h=!u.trim(),C=0;if(this.options.pedantic?(C=2,p=u.trimStart()):h?C=a[1].length+1:(C=a[2].search(/[^ ]/),C=C>4?1:C,p=u.slice(C),C+=a[1].length),h&&/^[ \t]*$/.test(g)&&(m+=g+`
|
|
19
|
-
`,n=n.substring(g.length+1),
|
|
20
|
-
`,1)[0];let y;if(g=A,this.options.pedantic?(g=g.replace(/^ {1,4}(?=( {4})*[^ ])/g," "),y=g):y=g.replace(/\t/g," "),w.test(g)||
|
|
21
|
-
`+y.slice(C);else{if(h||u.replace(/\t/g," ").search(/[^ ]/)>=4||w.test(u)||
|
|
19
|
+
`,n=n.substring(g.length+1),c=!0),!c){const k=new RegExp(`^ {0,${Math.min(3,C-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),O=new RegExp(`^ {0,${Math.min(3,C-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),w=new RegExp(`^ {0,${Math.min(3,C-1)}}(?:\`\`\`|~~~)`),B=new RegExp(`^ {0,${Math.min(3,C-1)}}#`),S=new RegExp(`^ {0,${Math.min(3,C-1)}}<[a-z].*>`,"i");for(;n;){const A=n.split(`
|
|
20
|
+
`,1)[0];let y;if(g=A,this.options.pedantic?(g=g.replace(/^ {1,4}(?=( {4})*[^ ])/g," "),y=g):y=g.replace(/\t/g," "),w.test(g)||B.test(g)||S.test(g)||k.test(g)||O.test(g))break;if(y.search(/[^ ]/)>=C||!g.trim())p+=`
|
|
21
|
+
`+y.slice(C);else{if(h||u.replace(/\t/g," ").search(/[^ ]/)>=4||w.test(u)||B.test(u)||O.test(u))break;p+=`
|
|
22
22
|
`+g}!h&&!g.trim()&&(h=!0),m+=A+`
|
|
23
|
-
`,n=n.substring(A.length+1),u=y.slice(C)}}r.loose||(l?r.loose=!0:/\n[ \t]*\n[ \t]*$/.test(m)&&(l=!0));let f=null,
|
|
24
|
-
`):[],s={type:"table",raw:a[0],header:[],align:[],rows:[]};if(o.length===i.length){for(const l of i)/^ *-+: *$/.test(l)?s.align.push("right"):/^ *:-+: *$/.test(l)?s.align.push("center"):/^ *:-+ *$/.test(l)?s.align.push("left"):s.align.push(null);for(let l=0;l<o.length;l++)s.header.push({text:o[l],tokens:this.lexer.inline(o[l]),header:!0,align:s.align[l]});for(const l of r)s.rows.push(
|
|
25
|
-
`?a[1].slice(0,-1):a[1];return{type:"paragraph",raw:a[0],text:o,tokens:this.lexer.inline(o)}}}text(n){const a=this.rules.block.text.exec(n);if(a)return{type:"text",raw:a[0],text:a[0],tokens:this.lexer.inline(a[0])}}escape(n){const a=this.rules.inline.escape.exec(n);if(a)return{type:"escape",raw:a[0],text:
|
|
26
|
-
]`).replace("lheading",
|
|
23
|
+
`,n=n.substring(A.length+1),u=y.slice(C)}}r.loose||(l?r.loose=!0:/\n[ \t]*\n[ \t]*$/.test(m)&&(l=!0));let f=null,b;this.options.gfm&&(f=/^\[[ xX]\] /.exec(p),f&&(b=f[0]!=="[ ] ",p=p.replace(/^\[[ xX]\] +/,""))),r.items.push({type:"list_item",raw:m,task:!!f,checked:b,loose:!1,text:p,tokens:[]}),r.raw+=m}r.items[r.items.length-1].raw=r.items[r.items.length-1].raw.trimEnd(),r.items[r.items.length-1].text=r.items[r.items.length-1].text.trimEnd(),r.raw=r.raw.trimEnd();for(let c=0;c<r.items.length;c++)if(this.lexer.state.top=!1,r.items[c].tokens=this.lexer.blockTokens(r.items[c].text,[]),!r.loose){const m=r.items[c].tokens.filter(u=>u.type==="space"),p=m.length>0&&m.some(u=>/\n.*\n/.test(u.raw));r.loose=p}if(r.loose)for(let c=0;c<r.items.length;c++)r.items[c].loose=!0;return r}}html(n){const a=this.rules.block.html.exec(n);if(a)return{type:"html",block:!0,raw:a[0],pre:a[1]==="pre"||a[1]==="script"||a[1]==="style",text:a[0]}}def(n){const a=this.rules.block.def.exec(n);if(a){const o=a[1].toLowerCase().replace(/\s+/g," "),i=a[2]?a[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",r=a[3]?a[3].substring(1,a[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):a[3];return{type:"def",tag:o,raw:a[0],href:i,title:r}}}table(n){const a=this.rules.block.table.exec(n);if(!a||!/[:|]/.test(a[2]))return;const o=Jo(a[1]),i=a[2].replace(/^\||\| *$/g,"").split("|"),r=a[3]&&a[3].trim()?a[3].replace(/\n[ \t]*$/,"").split(`
|
|
24
|
+
`):[],s={type:"table",raw:a[0],header:[],align:[],rows:[]};if(o.length===i.length){for(const l of i)/^ *-+: *$/.test(l)?s.align.push("right"):/^ *:-+: *$/.test(l)?s.align.push("center"):/^ *:-+ *$/.test(l)?s.align.push("left"):s.align.push(null);for(let l=0;l<o.length;l++)s.header.push({text:o[l],tokens:this.lexer.inline(o[l]),header:!0,align:s.align[l]});for(const l of r)s.rows.push(Jo(l,s.header.length).map((c,m)=>({text:c,tokens:this.lexer.inline(c),header:!1,align:s.align[m]})));return s}}lheading(n){const a=this.rules.block.lheading.exec(n);if(a)return{type:"heading",raw:a[0],depth:a[2].charAt(0)==="="?1:2,text:a[1],tokens:this.lexer.inline(a[1])}}paragraph(n){const a=this.rules.block.paragraph.exec(n);if(a){const o=a[1].charAt(a[1].length-1)===`
|
|
25
|
+
`?a[1].slice(0,-1):a[1];return{type:"paragraph",raw:a[0],text:o,tokens:this.lexer.inline(o)}}}text(n){const a=this.rules.block.text.exec(n);if(a)return{type:"text",raw:a[0],text:a[0],tokens:this.lexer.inline(a[0])}}escape(n){const a=this.rules.inline.escape.exec(n);if(a)return{type:"escape",raw:a[0],text:Je(a[1])}}tag(n){const a=this.rules.inline.tag.exec(n);if(a)return!this.lexer.state.inLink&&/^<a /i.test(a[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(a[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(a[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(a[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:a[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:a[0]}}link(n){const a=this.rules.inline.link.exec(n);if(a){const o=a[2].trim();if(!this.options.pedantic&&/^</.test(o)){if(!/>$/.test(o))return;const s=En(o.slice(0,-1),"\\");if((o.length-s.length)%2===0)return}else{const s=Dl(a[2],"()");if(s>-1){const c=(a[0].indexOf("!")===0?5:4)+a[1].length+s;a[2]=a[2].substring(0,s),a[0]=a[0].substring(0,c).trim(),a[3]=""}}let i=a[2],r="";if(this.options.pedantic){const s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(i);s&&(i=s[1],r=s[3])}else r=a[3]?a[3].slice(1,-1):"";return i=i.trim(),/^</.test(i)&&(this.options.pedantic&&!/>$/.test(o)?i=i.slice(1):i=i.slice(1,-1)),Zo(a,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:r&&r.replace(this.rules.inline.anyPunctuation,"$1")},a[0],this.lexer)}}reflink(n,a){let o;if((o=this.rules.inline.reflink.exec(n))||(o=this.rules.inline.nolink.exec(n))){const i=(o[2]||o[1]).replace(/\s+/g," "),r=a[i.toLowerCase()];if(!r){const s=o[0].charAt(0);return{type:"text",raw:s,text:s}}return Zo(o,r,o[0],this.lexer)}}emStrong(n,a,o=""){let i=this.rules.inline.emStrongLDelim.exec(n);if(!i||i[3]&&o.match(/[\p{L}\p{N}]/u))return;if(!(i[1]||i[2]||"")||!o||this.rules.inline.punctuation.exec(o)){const s=[...i[0]].length-1;let l,c,m=s,p=0;const u=i[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(u.lastIndex=0,a=a.slice(-1*n.length+s);(i=u.exec(a))!=null;){if(l=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!l)continue;if(c=[...l].length,i[3]||i[4]){m+=c;continue}else if((i[5]||i[6])&&s%3&&!((s+c)%3)){p+=c;continue}if(m-=c,m>0)continue;c=Math.min(c,c+m+p);const g=[...i[0]][0].length,h=n.slice(0,s+i.index+g+c);if(Math.min(s,c)%2){const f=h.slice(1,-1);return{type:"em",raw:h,text:f,tokens:this.lexer.inlineTokens(f)}}const C=h.slice(2,-2);return{type:"strong",raw:h,text:C,tokens:this.lexer.inlineTokens(C)}}}}codespan(n){const a=this.rules.inline.code.exec(n);if(a){let o=a[2].replace(/\n/g," ");const i=/[^ ]/.test(o),r=/^ /.test(o)&&/ $/.test(o);return i&&r&&(o=o.substring(1,o.length-1)),o=Je(o,!0),{type:"codespan",raw:a[0],text:o}}}br(n){const a=this.rules.inline.br.exec(n);if(a)return{type:"br",raw:a[0]}}del(n){const a=this.rules.inline.del.exec(n);if(a)return{type:"del",raw:a[0],text:a[2],tokens:this.lexer.inlineTokens(a[2])}}autolink(n){const a=this.rules.inline.autolink.exec(n);if(a){let o,i;return a[2]==="@"?(o=Je(a[1]),i="mailto:"+o):(o=Je(a[1]),i=o),{type:"link",raw:a[0],text:o,href:i,tokens:[{type:"text",raw:o,text:o}]}}}url(n){var o;let a;if(a=this.rules.inline.url.exec(n)){let i,r;if(a[2]==="@")i=Je(a[0]),r="mailto:"+i;else{let s;do s=a[0],a[0]=((o=this.rules.inline._backpedal.exec(a[0]))==null?void 0:o[0])??"";while(s!==a[0]);i=Je(a[0]),a[1]==="www."?r="http://"+a[0]:r=a[0]}return{type:"link",raw:a[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}inlineText(n){const a=this.rules.inline.text.exec(n);if(a){let o;return this.lexer.state.inRawBlock?o=a[0]:o=Je(a[0]),{type:"text",raw:a[0],text:o}}}}const Ul=/^(?:[ \t]*(?:\n|$))+/,jl=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Gl=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,wn=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Fl=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Wo=/(?:[*+-]|\d{1,9}[.)])/,_o=ye(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Wo).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),Sa=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Hl=/^[^\n]+/,Ta=/(?!\s*\])(?:\\.|[^\[\]\\])+/,Yl=ye(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Ta).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Kl=ye(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Wo).getRegex(),Xn="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",xa=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,zl=ye("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",xa).replace("tag",Xn).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$o=ye(Sa).replace("hr",wn).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Xn).getRegex(),va={blockquote:ye(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",$o).getRegex(),code:jl,def:Yl,fences:Gl,heading:Fl,hr:wn,html:zl,lheading:_o,list:Kl,newline:Ul,paragraph:$o,table:bn,text:Hl},ei=ye("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",wn).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Xn).getRegex(),Ql={...va,table:ei,paragraph:ye(Sa).replace("hr",wn).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",ei).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Xn).getRegex()},Xl={...va,html:ye(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",xa).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:bn,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ye(Sa).replace("hr",wn).replace("heading",` *#{1,6} *[^
|
|
26
|
+
]`).replace("lheading",_o).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},ti=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,ql=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,ni=/^( {2,}|\\)\n(?!\s*$)/,Jl=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Cn="\\p{P}\\p{S}",Zl=ye(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,Cn).getRegex(),Wl=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,_l=ye(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Cn).getRegex(),$l=ye("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Cn).getRegex(),ec=ye("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Cn).getRegex(),tc=ye(/\\([punct])/,"gu").replace(/punct/g,Cn).getRegex(),nc=ye(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),ac=ye(xa).replace("(?:-->|$)","-->").getRegex(),oc=ye("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",ac).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),qn=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,ic=ye(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",qn).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),ai=ye(/^!?\[(label)\]\[(ref)\]/).replace("label",qn).replace("ref",Ta).getRegex(),oi=ye(/^!?\[(ref)\](?:\[\])?/).replace("ref",Ta).getRegex(),rc=ye("reflink|nolink(?!\\()","g").replace("reflink",ai).replace("nolink",oi).getRegex(),Va={_backpedal:bn,anyPunctuation:tc,autolink:nc,blockSkip:Wl,br:ni,code:ql,del:bn,emStrongLDelim:_l,emStrongRDelimAst:$l,emStrongRDelimUnd:ec,escape:ti,link:ic,nolink:oi,punctuation:Zl,reflink:ai,reflinkSearch:rc,tag:oc,text:Jl,url:bn},sc={...Va,link:ye(/^!?\[(label)\]\((.*?)\)/).replace("label",qn).getRegex(),reflink:ye(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",qn).getRegex()},Pa={...Va,escape:ye(ti).replace("])","~|])").getRegex(),url:ye(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},lc={...Pa,br:ye(ni).replace("{2,}","*").getRegex(),text:ye(Pa.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Jn={normal:va,gfm:Ql,pedantic:Xl},Bn={normal:Va,gfm:Pa,breaks:lc,pedantic:sc};class tt{constructor(n){Ce(this,"tokens");Ce(this,"options");Ce(this,"state");Ce(this,"tokenizer");Ce(this,"inlineQueue");this.tokens=[],this.tokens.links=Object.create(null),this.options=n||Dt,this.options.tokenizer=this.options.tokenizer||new Qn,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};const a={block:Jn.normal,inline:Bn.normal};this.options.pedantic?(a.block=Jn.pedantic,a.inline=Bn.pedantic):this.options.gfm&&(a.block=Jn.gfm,this.options.breaks?a.inline=Bn.breaks:a.inline=Bn.gfm),this.tokenizer.rules=a}static get rules(){return{block:Jn,inline:Bn}}static lex(n,a){return new tt(a).lex(n)}static lexInline(n,a){return new tt(a).inlineTokens(n)}lex(n){n=n.replace(/\r\n|\r/g,`
|
|
27
27
|
`),this.blockTokens(n,this.tokens);for(let a=0;a<this.inlineQueue.length;a++){const o=this.inlineQueue[a];this.inlineTokens(o.src,o.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(n,a=[],o=!1){this.options.pedantic&&(n=n.replace(/\t/g," ").replace(/^ +$/gm,""));let i,r,s;for(;n;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(l=>(i=l.call({lexer:this},n,a))?(n=n.substring(i.raw.length),a.push(i),!0):!1))){if(i=this.tokenizer.space(n)){n=n.substring(i.raw.length),i.raw.length===1&&a.length>0?a[a.length-1].raw+=`
|
|
28
28
|
`:a.push(i);continue}if(i=this.tokenizer.code(n)){n=n.substring(i.raw.length),r=a[a.length-1],r&&(r.type==="paragraph"||r.type==="text")?(r.raw+=`
|
|
29
29
|
`+i.raw,r.text+=`
|
|
30
30
|
`+i.text,this.inlineQueue[this.inlineQueue.length-1].src=r.text):a.push(i);continue}if(i=this.tokenizer.fences(n)){n=n.substring(i.raw.length),a.push(i);continue}if(i=this.tokenizer.heading(n)){n=n.substring(i.raw.length),a.push(i);continue}if(i=this.tokenizer.hr(n)){n=n.substring(i.raw.length),a.push(i);continue}if(i=this.tokenizer.blockquote(n)){n=n.substring(i.raw.length),a.push(i);continue}if(i=this.tokenizer.list(n)){n=n.substring(i.raw.length),a.push(i);continue}if(i=this.tokenizer.html(n)){n=n.substring(i.raw.length),a.push(i);continue}if(i=this.tokenizer.def(n)){n=n.substring(i.raw.length),r=a[a.length-1],r&&(r.type==="paragraph"||r.type==="text")?(r.raw+=`
|
|
31
31
|
`+i.raw,r.text+=`
|
|
32
|
-
`+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=r.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title});continue}if(i=this.tokenizer.table(n)){n=n.substring(i.raw.length),a.push(i);continue}if(i=this.tokenizer.lheading(n)){n=n.substring(i.raw.length),a.push(i);continue}if(s=n,this.options.extensions&&this.options.extensions.startBlock){let l=1/0;const
|
|
32
|
+
`+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=r.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title});continue}if(i=this.tokenizer.table(n)){n=n.substring(i.raw.length),a.push(i);continue}if(i=this.tokenizer.lheading(n)){n=n.substring(i.raw.length),a.push(i);continue}if(s=n,this.options.extensions&&this.options.extensions.startBlock){let l=1/0;const c=n.slice(1);let m;this.options.extensions.startBlock.forEach(p=>{m=p.call({lexer:this},c),typeof m=="number"&&m>=0&&(l=Math.min(l,m))}),l<1/0&&l>=0&&(s=n.substring(0,l+1))}if(this.state.top&&(i=this.tokenizer.paragraph(s))){r=a[a.length-1],o&&(r==null?void 0:r.type)==="paragraph"?(r.raw+=`
|
|
33
33
|
`+i.raw,r.text+=`
|
|
34
34
|
`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):a.push(i),o=s.length!==n.length,n=n.substring(i.raw.length);continue}if(i=this.tokenizer.text(n)){n=n.substring(i.raw.length),r=a[a.length-1],r&&r.type==="text"?(r.raw+=`
|
|
35
35
|
`+i.raw,r.text+=`
|
|
36
|
-
`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):a.push(i);continue}if(n){const l="Infinite loop on byte: "+n.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,a}inline(n,a=[]){return this.inlineQueue.push({src:n,tokens:a}),a}inlineTokens(n,a=[]){let o,i,r,s=n,l,
|
|
37
|
-
`;return i?'<pre><code class="language-'+
|
|
38
|
-
`:"<pre><code>"+(o?r:
|
|
36
|
+
`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):a.push(i);continue}if(n){const l="Infinite loop on byte: "+n.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,a}inline(n,a=[]){return this.inlineQueue.push({src:n,tokens:a}),a}inlineTokens(n,a=[]){let o,i,r,s=n,l,c,m;if(this.tokens.links){const p=Object.keys(this.tokens.links);if(p.length>0)for(;(l=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)p.includes(l[0].slice(l[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,l.index)+"["+"a".repeat(l[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(l=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,l.index)+"["+"a".repeat(l[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(l=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,l.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;n;)if(c||(m=""),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(p=>(o=p.call({lexer:this},n,a))?(n=n.substring(o.raw.length),a.push(o),!0):!1))){if(o=this.tokenizer.escape(n)){n=n.substring(o.raw.length),a.push(o);continue}if(o=this.tokenizer.tag(n)){n=n.substring(o.raw.length),i=a[a.length-1],i&&o.type==="text"&&i.type==="text"?(i.raw+=o.raw,i.text+=o.text):a.push(o);continue}if(o=this.tokenizer.link(n)){n=n.substring(o.raw.length),a.push(o);continue}if(o=this.tokenizer.reflink(n,this.tokens.links)){n=n.substring(o.raw.length),i=a[a.length-1],i&&o.type==="text"&&i.type==="text"?(i.raw+=o.raw,i.text+=o.text):a.push(o);continue}if(o=this.tokenizer.emStrong(n,s,m)){n=n.substring(o.raw.length),a.push(o);continue}if(o=this.tokenizer.codespan(n)){n=n.substring(o.raw.length),a.push(o);continue}if(o=this.tokenizer.br(n)){n=n.substring(o.raw.length),a.push(o);continue}if(o=this.tokenizer.del(n)){n=n.substring(o.raw.length),a.push(o);continue}if(o=this.tokenizer.autolink(n)){n=n.substring(o.raw.length),a.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(n))){n=n.substring(o.raw.length),a.push(o);continue}if(r=n,this.options.extensions&&this.options.extensions.startInline){let p=1/0;const u=n.slice(1);let g;this.options.extensions.startInline.forEach(h=>{g=h.call({lexer:this},u),typeof g=="number"&&g>=0&&(p=Math.min(p,g))}),p<1/0&&p>=0&&(r=n.substring(0,p+1))}if(o=this.tokenizer.inlineText(r)){n=n.substring(o.raw.length),o.raw.slice(-1)!=="_"&&(m=o.raw.slice(-1)),c=!0,i=a[a.length-1],i&&i.type==="text"?(i.raw+=o.raw,i.text+=o.text):a.push(o);continue}if(n){const p="Infinite loop on byte: "+n.charCodeAt(0);if(this.options.silent){console.error(p);break}else throw new Error(p)}}return a}}class Zn{constructor(n){Ce(this,"options");Ce(this,"parser");this.options=n||Dt}space(n){return""}code({text:n,lang:a,escaped:o}){var s;const i=(s=(a||"").match(/^\S*/))==null?void 0:s[0],r=n.replace(/\n$/,"")+`
|
|
37
|
+
`;return i?'<pre><code class="language-'+Je(i)+'">'+(o?r:Je(r,!0))+`</code></pre>
|
|
38
|
+
`:"<pre><code>"+(o?r:Je(r,!0))+`</code></pre>
|
|
39
39
|
`}blockquote({tokens:n}){return`<blockquote>
|
|
40
40
|
${this.parser.parse(n)}</blockquote>
|
|
41
41
|
`}html({text:n}){return n}heading({tokens:n,depth:a}){return`<h${a}>${this.parser.parseInline(n)}</h${a}>
|
|
42
42
|
`}hr(n){return`<hr>
|
|
43
|
-
`}list(n){const a=n.ordered,o=n.start;let i="";for(let l=0;l<n.items.length;l++){const
|
|
43
|
+
`}list(n){const a=n.ordered,o=n.start;let i="";for(let l=0;l<n.items.length;l++){const c=n.items[l];i+=this.listitem(c)}const r=a?"ol":"ul",s=a&&o!==1?' start="'+o+'"':"";return"<"+r+s+`>
|
|
44
44
|
`+i+"</"+r+`>
|
|
45
45
|
`}listitem(n){let a="";if(n.task){const o=this.checkbox({checked:!!n.checked});n.loose?n.tokens.length>0&&n.tokens[0].type==="paragraph"?(n.tokens[0].text=o+" "+n.tokens[0].text,n.tokens[0].tokens&&n.tokens[0].tokens.length>0&&n.tokens[0].tokens[0].type==="text"&&(n.tokens[0].tokens[0].text=o+" "+n.tokens[0].tokens[0].text)):n.tokens.unshift({type:"text",raw:o+" ",text:o+" "}):a+=o+" "}return a+=this.parser.parse(n.tokens,!!n.loose),`<li>${a}</li>
|
|
46
46
|
`}checkbox({checked:n}){return"<input "+(n?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:n}){return`<p>${this.parser.parseInline(n)}</p>
|
|
@@ -51,18 +51,18 @@ ${this.parser.parse(n)}</blockquote>
|
|
|
51
51
|
`}tablerow({text:n}){return`<tr>
|
|
52
52
|
${n}</tr>
|
|
53
53
|
`}tablecell(n){const a=this.parser.parseInline(n.tokens),o=n.header?"th":"td";return(n.align?`<${o} align="${n.align}">`:`<${o}>`)+a+`</${o}>
|
|
54
|
-
`}strong({tokens:n}){return`<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return`<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return`<code>${n}</code>`}br(n){return"<br>"}del({tokens:n}){return`<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:a,tokens:o}){const i=this.parser.parseInline(o),r=
|
|
55
|
-
`+this.renderer.text(l);a?o+=this.renderer.paragraph({type:"paragraph",raw:
|
|
56
|
-
Please report this to https://github.com/markedjs/marked.`,n){const i="<p>An error occurred:</p><pre>"+qe(o.message+"",!0)+"</pre>";return a?Promise.resolve(i):i}if(a)return Promise.reject(o);throw o}}}const xt=new tc;function ue(t,n){return xt.parse(t,n)}ue.options=ue.setOptions=function(t){return xt.setOptions(t),ue.defaults=xt.defaults,Do(ue.defaults),ue},ue.getDefaults=Ca,ue.defaults=Tt,ue.use=function(...t){return xt.use(...t),ue.defaults=xt.defaults,Do(ue.defaults),ue},ue.walkTokens=function(t,n){return xt.walkTokens(t,n)},ue.parseInline=xt.parseInline,ue.Parser=$e,ue.parser=$e.parse,ue.Renderer=zn,ue.TextRenderer=Sa,ue.Lexer=_e,ue.lexer=_e.lex,ue.Tokenizer=Fn,ue.Hooks=En,ue.parse=ue,ue.options,ue.setOptions,ue.use,ue.walkTokens,ue.parseInline,$e.parse,_e.lex;const Qn={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here."}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service. "},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",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."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Gateway Service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Consumer Group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View Advanced Parameters",hide:"Hide Advanced Parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"All of these parameters are required: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"}},"free-form":{"request-callout":{entity_name:"Request Callout",by_lua_placeholder:"Enter Lua script here..."}}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",open_source:"Open Source",enterprise:"Enterprise",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."},type_label:{host_port:"Host/Port",sentinel:"Sentinel",cluster:"Cluster"}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}}};function $t(){const t=De.createI18n("en-us",Qn);return{i18n:t,i18nT:De.i18nTComponent(t)}}function Wo(){const{capitalize:t}=L.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,g,h)=>{var C,f,E;if(!(!u||!g||!h))switch(h.type){case"boolean":u[g]={type:L.ConfigurationSchemaType.BadgeStatus,...u[g]};break;case"string":h.encrypted?u[g]={type:L.ConfigurationSchemaType.Redacted,...u[g]}:u[g]={type:L.ConfigurationSchemaType.Text,...u[g]};break;case"set":((C=h.elements)==null?void 0:C.type)==="string"&&(u[g]={type:L.ConfigurationSchemaType.BadgeTag,...u[g]});break;case"array":n.includes(g)?u[g]={type:L.ConfigurationSchemaType.BadgeMethod,...u[g]}:((f=h.elements)==null?void 0:f.type)==="string"?h.encrypted?u[g]={type:L.ConfigurationSchemaType.RedactedArray,...u[g]}:u[g]={type:L.ConfigurationSchemaType.BadgeTag,...u[g]}:((E=h.elements)==null?void 0:E.type)==="record"&&(u[g]={type:L.ConfigurationSchemaType.Json,...u[g]});break;case"record":u[g]={type:L.ConfigurationSchemaType.Json,...u[g]};break;default:u[g]={type:L.ConfigurationSchemaType.Text,...u[g]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const g={};for(const h in u){const C=h.split(".");C.reduce((f,E,k)=>f[E]||(f[E]=isNaN(C[k+1])?C.length-1===k?u[h]:{}:[]),g)}return g},dismissField:(u,g,h="redis",C=!1)=>{const f=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;h==="redis"?Object.keys(u).forEach(E=>{E.match(f)&&delete u[E]}):C?u[h]=null:delete u[h],Object.assign(u,g)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,g)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&g[u]===null&&(delete g[u],g[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>t(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let g=0;if(u.length)for(let h=0;h<u.length;h++){const C=u[h].$el;g=C.offsetHeight>g?C.offsetHeight:g}return g},getToggleVisibility:(u,g)=>{var h,C;if(u&&g){const f=(C=(h=window==null?void 0:window.getComputedStyle(u))==null?void 0:h.getPropertyValue("grid-template-columns"))==null?void 0:C.split(" ").length;return g>f}return!0}}}const nc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAeFBMVEXZ9vbm7Ozm6+/m6u/m6+/n7e3y+Pzy3eL2n6b6W3H4Qkv3Njn4R1LX7vyQ1PpEsu4sqvoenPr3eYJrx/vyucGx4ftQve34TVwwr/v3i5b5VGdCwfw1tPs2o+u3Zoc8u/uVeaN+j7xbm9VIyPz//v7tWnJPz/xQyvALmlJFAAAABnRSTlMBKpLO/yuda3XGAAAFCElEQVR4AezXwXLCIBCAYQ0aCCsIkKjv/6RV1yaN3UgHOnDZnxxyYOYbHCvb3aN9Jw7VEt1+96o7VK5DVxyqJ+qfdznzEd/6aqF3xAP3VcMjizaw2KFbX2aYYYYZZphhhhlmmGGGGWaYYYYZZviRVIMGOA1K9smMPTvv3dmaYlgGmAsJ2kQ/F00ZPMKq8ZM7+VVTCazgLdVvZv1bNh8e4Vdj8rxLUy4sgUjSe40nMplwAKJA740UHPNgCWSSPjCZyYIVkCn6m0Vms+AByAZq74WGL1nwCchO1F5Hwy4Lho2ovX6j9nD7j7r9l6v9n1OrHxCiAPq+7g+G79s/me75LDkfcy8JPXP3he9665JwHumfyxRcixppRBPXols/fioaBFBGVScGgbVsi0YfDa/15D+PPutPeiod9r5R0Olhb3Gj+YfxNly1voa/jbfx5twtpsZb/k+CYTl+tW4n3I3iQBCA9xTYCziPw9xDTvL//+F2IWoaPUCQxCVZbsGLPvfu3DOEddqU0VUSlU2ahvnut7C4SLKs7aonSdW1WZYU8Xfgf/L6ct1KJPrKzO5PmxH9S3AQEv1vseqlMlU7TgT1pMuKkzBVf8owmNTWh9JO4mM4T68nE9VF5gc1VRb74aA8qQLu+/6p0rHB6aiqxAvn1/P51f+WEbs6URdjiD1w/QX42cIU1NHhpvDA6TXaGTIl3GJ56SmfTOKBLxHDLCjErtP+dYKr88k8cLNqVXkufCPc6XCnMwR+88BldD79FBEQUuq6Ni4MHjha5/09tUX6/r4JE2JQt8Z0Gl7fh4NNGDJcF/6wcLeZWGHNGbjU5kPI1g15zZhS4WGNJMYUqg0sYx9cRqXMRmBUmJDrGi7vCtxEvwi3KzgzJh4Ubo/hHCfj+MsEo4qsPLklrxlzUfgN8LCYrQBvHXdSsyz24VIawis1xhbTqOHWdoe1NCYtCQ/S3zB0iynnJ8PAnTEZy304xKk4HrA6FrY7rBHg5/6GcZvgzh5dFG/DgP/B6NBeA8zSA+NkpAaMgOF/at5Ex7XAvcDs2Aa/ph9laQcN4DmJD0YURviNC7LC2nGiMFqKITlwcgzXvzGF4cp1R8ZHfOmtvIRbqQE9BBYwxXsqhQPf3I5Vbn8A5wrPbgNZ4RywuAIXgFs7xOGOw5iCdbYLp2WDYWFbIro2GIR70BZWB21/A7bnNw3gqeJgYSd+cfY6d9wK3CID5joCs/TATWORwJi5WqC6FbgBjLQx4L0Ajo/hCw2Bqa3Ht+HRA8upiFxpWGtKrvKlD4YJSE1Gh+K4fSMsm7d2Gna6A7dZv/lhntzs9OzCd5xGcWNOt23l6ZjnX1B7gs94u0/jNi5O3tABj/xgh3B6DKc3UfHKAO8HWMbaB18wAc8lBhe+W/hux0Ngnl9rvXpDIbfr2T0DJydgjEszwdwsBosJRkROAI+H8OiFeX6IWjlObtFxiH5BA8a5484EDFY2HnhKM8EgJGS5RWFhm0/AI7JDAx7neGB7fI4aG2qW5gXAOVSkAIx+tl1gBe6j9ndM2JMV7AlgrU/DH/bFxYE/ZfwA/nshEw6OOw6gwo6P4Zi180jKX9+HPyF/E/6Ljx19C/5Wx3zsCC0zH3MC1J7I7eA+B1/36cnyvkp/uY+W1XqwH5a8fB3O3EfLFj0H9tzwDJwL+nq/J2fgxJax0y/yLx8fDGq6BzBk9Az3AKacxXx88F+Y/wNBLXmCTExRhAAAAABJRU5ErkJggg==",ac="data:image/png;base64,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",oc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB5CAMAAAAqJH57AAACu1BMVEVHcEwSFRgTFRgSFRgSFRgSFRgSFBgSFRgUFxoSFRgTFRgSFRgSFRgSFRgSFRgTFRgSFRgSFRgSFRgSFRgSFBYRFBcSEhUQExgQExYSGSISHjIVNCwRT7sTISARSKYiv4USFRkSFxsk15QOEhcVS2MWFxgaHSEhIBkdICYJYa8RVcsk15YbGxkiJS0SGh0MWaIoJRsXGh8NVZwvKRwVGBs0texCR1cmKjNKTmAtMDsMXqkRJDo3MhwZj708QE8VNkYTHiQRJ0Qyr+pGOB8VTWMpl+I6xfISL2AZjL0HZLQMSH82vO4RU8QAeNUtoOUrm+MvpeYyNkJTWGwWTE0PTI0RM1MSIi0ef64RGylLQh8siao4wPAYX1gQO19XXHERNG8dapwCcskQRIgWSj4TJzEOUpdQVGcwquhcYXcROXcVesATKCebiDkdlWwRKU8aeY4fuK83O0gOb8EOUpIVPTQGaLs8zPchxqsUMzV9TizErlKKdy4WYJAk36MVSFoWXHoaeXIYa2oaj58+Lx4UUYH81VEhXXobjowcn6cWOT+plDwSXciPWDDmukRZXnR6ZiyGZiwadl4Vb60YWkkRQ5gRO4Mm7KEYeqEZgrn96H72mU4PO2kdq7IXaHb423EbiXoguJCzgTYi0qjzk0wbnraxoUgRTbVfTCQRQZJVQSIAdc8RRZ5fViQl35r0r0senoLCdTzHoTrfrURvRinQfUBdPCXGjjtWOCPOvmaeeDD25peWbTBzVSdnRSYiy5MULzsVVG798rTyxEkjjdMTZLoSY8cak7IfuKUtndSraTYaa1IbgmReY3ohxJ6DcCsQQXFnXCfay3fp24oRSqwZk7shuYI0sNzojUcRSankylfp0mnawV8fpnxSTCEqmcwhWXAgrHoj0aEwpNcRRqMbRmZgZXyPAA4ADANHcEzvsKH5AAAA6XRSTlMAihX3s3oryQJmJunW4DAyoJ8y////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AFWkMJsAAAt2SURBVGje7JrpXxPXGsdxK7h1+cycjAGXSXEmgZuECRmzkQZiykWRqyYQILLJIqAgXECrLC6AiCKbrTvuiIjiLu7Wvdetrm29bW/be/3c+3/cc2YSNglMVKAv+PECAnnmm/PMmed3zuHx8nLJZ8L4z7wnkthgiZzo/en4CT5eveXz8ahJY7DB1phJoz7pxR49bjI2NJo8bnR38EdjWWyoxI79qAv8sTc2lPL+uHPEQwsmSW/nqEePxYZaY7l77TOOHXIyOw7N8E8mY0OvyfBW+4zChkOjfLwmTBoW8qQJXuPHDAt5zHivT7Hh0Wde3sNE9vaaOEzkiV7kMJFJL2y49Ock4ziOkRKnSPgSDHAxgIsADFAioQARAB6TAY5J4kPyIlK2px3bduLEtmNpS5vsZl8xCT+MmwAgCVu9OTqxfP2B6urq0wcOrN+amL4iR4KJgHAypPrmpRx7NTUQKQppy5b79+/fCwjakGSOJ98aO8DJsM2J66s37f070j+gVq1adfjw4e8Pnt76jZ8SiISQAS42pxw7ColHT6QtjcgzhyCZ8+xNkTFB9woLCw0b7Blk95HjkozofRWb9u7dVH2gPDE6ffNqqBXp0YlbD5w++J81a77919YV097Oey8yTvpGbJsaGPUqLQLlFiYd75SIjA+xPyv6etmyrzeEhjkvBUBY6L6KI0cq8sujV+dIAHC9Gc4KgE3zS3+0/OCaNX/59yM/EvRDxiXm7UcDo6YvRSnt447CywJliH0DhC+eGYsB+BU7M/+7IxX7ojOUoI8ZCACccjnpj388uePb5elK4I4syTs2NfDodnM8hvc74yUZSWW7du2cGUtm3Nr5w3f5azMkeD8R8C7npC//fMfJnuxu5PjtUYHTU3xJfMBHEcfFoevi5uxct/OHuHWhSnzACCCS+G2dAdk5oA8ymRL4KqL/4fa4MTfXxX0Rt+6mRGAAAH6PZux4TPZBFp+IMuMe1CBccmvOLdKDCCBKP/njtL7I06f6ekLGRDPnzBR5EgD8Pp8xQv5zkgFBAM/JfUcJJ8PyR0kZtbTr5QDkzndIjWopBXoHCCKj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",ic="data:image/png;base64,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",rc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB5CAYAAAAd+o5JAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAA0bSURBVHgB7Z17cFTVAca/c/eVzYskm8cSmJCiQNQAIYQigpAo6HQGeXTajkNtq61OS6dT60ynnXam46MzHad2WmXGxx9OlU4rztQHD2sVBYIgLxERFRHEBDDJkmySzfu1e0/POffeTSKBPYtY7+49v8zNvffkfjl399vzPucuwWWQFwyWu3StCpqeB8VXj65FNA9pbGtqOorLgMhcVF5entfdO3QnIXQ1BakCqDL3a4IZVs92Gz0u1IdCoUZJzcUR5vYP3gtKfqWMtRskAkIf9WrYmMjsi5pcVDSlKobYy+ywHAo700iIdl97a/Pmi13gmiiwoGjyvRQ6F6nUa3+YR/R2f3Y2Bvp6d090wQUmFxQH72e7h6FINWovZvQ4kwPFpWtA6VNQpCq1/pycLmb0gbGB8TI5yJpFwzHynqpgpT4uuOa1tY02tzTrYCSG+5XB6UEM+jNjz0V2XRgM1lKKR6FIF4KZWdlnBvp7RWoWKZmKVKxIM35kHRCjLEYDFGmHRlEXDofqNVYW10KRluia4a3GuixXQ5GWEIplfK+xI1WjTlOMwSSRbau+6fTFSMC8dl0ORVqjQZH2KJMdgDLZAbjlr8wCnboKyCgBiXwIhN6U03mYrmwliL8Y6GS6pl2QhcxeDZIdAG09AXp6n5TGtfBWkNx86E2fQj9+GLK45s2FNr0MesMZxI4ck9a5F1XANasUsXNhRHckoasuh6t6GtA/jOHN74KyvdR9VkyGe8lMoRvZ/iH0cE/iuCAJrfoTkD3dOA7eDDJ4Hoh8kFg4826QybVGPX5KLVczo+sTykj1OmgVK1gzXge5ahHg9YN+vOOSGm3JGmjzlrIDHa7rakAm5SO2/42EcbkXLYTrWytEw1Krng2SP4kZtiehznV9Bbw/ZO8Fe22uG1icFaUYevy1xPExk3x3L42fk7ICDD78n4Q6rSwA/+9WstFgmpwOMrBUzA0mbGCSiMFJFgkzWoqSmyBGNCkRMlIwW0pGypeI68Ux/ymZlVgz5WoRD6G8+c/Or6qEDGRWhaHjP0znqpa7R8+ia8U9ivec6V0zS6V0PDVe6vyiOpbyLYM5bvah0gpzEurkTI72iY1HYERC5FIxp6cB1n2xxjnoQKuUjHaeNTymxgeEDg8kFg0NmvGYW2szpIhEDB0177GzS0oWO9kEY0jeGJanElknx8pi44a190rpaNi8jhoffD3cLZVdS1e8yNHfA4OGQSTEss3QDjnhxxtY1t5mpJSOj4Azr0jJ6KGngd52I6Wc/wT02LaEGn3Hc9DbmkB1dvz5aegHEmfVnGj9blEW8zeONpzFyIty9xjdeRSx9z8z7vFcB4aeSJxVCx0rS6N7T7JckcXX1oOBx7bL6ZiGa/lnSu8bxNDTb0npSEFRkEKRtnS0hYhqQjkAZbIDUCY7AGWyA1AmOwBlsgNQJjsAZbIDUCY7AGWyA1AmOwBlsgNQJjsAZbIDUCY7AGWyA1AmOwBlsgOwlcmzAj6U5niguLLYyuR1c3Oxa30F/riiRJl9BbFddp1fXIB7bpmBfb+twjPfLUPd9Cwovhzyy2T+T/BpsZrHhSx/FlYun46bFpTgVGMXNuxswdYTcvOaFeOxncljlk0IMguyMKc4C0/OLcJ9n3Zgz/thPHWgE83dUSjksKHJEJPOLa/5uhxCKLzZXlTWBHFNVSFuvzmCF/aH8Y/97ThxXm6hmJOxpckWfBUJMdauxHH53MivKMI9lUW4Y00vdr3VjJcOR7DlmNxSEyfi8mdlPwCbwGvUN5Rlwu1xQ/NqEFP/XcTYxEo0YjxDUCOiyuiZ5MWMqgBuXZiPVdf4EekaRs+gLjaFwUB/74O2WyZTmuPGbRU5+N6CYsyYlgd/wM/c5Oay23QTI+/hrStxbIa5jDB9JIaW42G8uiOEx3d2oalTldt8mYyt10LVfSMLP1hQgGVVRcgsyYIn2wPKTKbMcOIxDefnbCPMbMpM5/vY4AiGmnvw/LYWvPh2BIdOD8Kp2N5kC566f/rNfNw4twAzKvKRUeKPp2pusEjJZgrnJo+uJiUYbunGqSPnsWFrGC8d6oPTSBmTx7Lq2mx8ez4zfGEhMqdmw817xkSKHk3ZosxmFTZRSzebYse3N2Dpb07DaXCTbV27noitx3vFVrq1BesX52HJggCursxDRqnVM0bMajnLvsWScmIsgk+5V3rlSNmX3twVxR9eDQNsWz0nG3fWFaBmWRAZ08zHK5gp2fRb7guw0pSUH2pcUJaBtfNzUVUdgI9Vzr5Y9liPOHEyKZmSczM0fH/+JPx4RTFKKwPwFvtBNaNmPQoR3orOM+psl1PK5Jqpfvx8SQFqbyhBVlkONL/LeAVW1myWwZyxx9HIACKdzu3+tL3JOT4N6+awVHsjG2OexZpPgYx4Z4gob8VVJJ5arTJYY79GOvtx6t1W/PvNMDa+1Q2nYluTa6b48bOFAdTNK0ZOaQ4Iy6LF3VqVZ3EVf+SUqD+bzxdjR1EdfWci2Pt2Gza8Esahz5zbEWJhK5OtVHvXwhJMLcuHL9dn9GaZX1EmUis3lZjp16w2i2d2jegYaOjCpi1NePlwNw41KHMtbGXyrxcHcM/yGfBkeozsGBjXoUEmaAsNdw6i5ZN2/P318/jnoW50q8GJC7Bddu3xjs7tEgnWegJgvIIsAjHY1o/dB1vx2uEObPmgR408XQL7lcnESrYY3Vs9WDGK3qYIdr/Tiif2tuOdcypLlsF+Jo9NuebDSaP9Izgf6samvSGWarvwSZuaDZIMtjPZtFi0c4f7hvH52U48u68V/zoWQc+QypIvB/ulZJ2ip7MHe0524oX3wtimZmh+aWxn8tb9p/HUwQ4cbpZ49PGXIDdTE9s44rV4TBh+QdgEHeNdvRTdPfbKcRz7lNxH7i7EHeuuZl1jfKaBmG0Awo+1MccsnGhu4+8uI3zsdYSfsz219Gy/540/Y+36M7ALKTmefKUgLje8hfnMJNZNCp+xJ+YebNN8xjnJYGnVCCfmubH54tcTcT0P87LtSdgNB69qpKPZLRkfHM+Czdo90Uj8EvGXsc32cc14cmFWbwMcbLLZ+00vDDPCaXyocmyxG2++k/HXExsPWqv1yWNSHjV/jFUbZMxKDjreQjranP8idrTasWXyftYVqv/1oMiKja+eMVOnBjGpX0zs5+GaGR7/O43vRdgYPedcSwx2Q30HRZqjvoPCISiTHYAy2QEokx2AMtkBKJMdgDLZASiTHYAy2QEokx2AMtkBKJMdgDLZASiTHYAy2QEokx2AMtkBJGWya+YUuOvmQgvkJiODaxbT3TwHJJCTpK4U3tU10Arlda6KyXDfUgmtLIBk4DoP0/F9MvB43JehI+w1eW65Du7qacnpMn3w3FqZlE56+o/3Ozcyo+aKYzowhKG/vQz9XDihznPbAnhW1pixAUN/2YLYyebEulU18K6aH587NfjINsROXFrnXjITvp8shSUa2nQA0e0fIBHu6nL4frlczNDkk/eGnzuAke0fJtbNZ7pfLI/f4/Cmgxh5PXF83GD/Q2uEYZyR7R+xOPdL6TIfWgv4veI8+vYpDD29+5Ia6ek/xO+D+6a5o+cZXrivv0ZGahpM4muN3YsrpHTuxbPGny+fnVDjXVEJa7kc37mryyADT1Ec6wkGPEXL3eOM0aU17Mezep6Uzsviswy24ieZ3oQ6z5IZwmAxeZDHz85lcjnp7FrvH4I1i5wkM4O8fxgkPqWVHYn/IwMdt4OEjvYPxyXGBEu5+9T7hyf8P7LxGXFS8VqlMZfmWv9HJk5+jXjKkU7jn2WZ91PKZJ49x/57yJxsTKG3dyO6830ZKUZeORxflEA7ehF985ic7vl98Y8GDfdgZOu7CTVDm/aLa7m5et9QwqwsHtfmI0zXazyiken4uQzDpk7cIzNAJssV8bHsWW/viecCUYmiQVy39yT08KhuZMsRqQ9HUlNyCa9wseyCfp64LB6vy2FZvleYLJ+SjTJI6NrldTwb1MoKoJ/tSC6uuK5dOiVb8EpXsvGN6r7a+FLyKbmK5FDzrh2CMtkBKJMdADe5EYq0RqXktIZE+G+NtbnkGpOKlIO1+o/yvQadHIUiTSGix0pzEa0eirSEULpZ7PmvQFFwF+sRqYUifSBo7GgNfYMfWhWvjVCkF/qop/FhmoLiYAMbDyiHIvVhqVjXUBcJhRr5abwJpem4C4q0gFA8aBnMcVkH/f29jf7MbD7aVgtFysIMfKy9LfTw2DDX2JOB/t76zKxsXlhXQZGCkKMdbS1rvxh6QY8X+xTcydrOj0GRUlBKNutZvrqJ/uaaKHBgoPc1lXWnEKwM7gyH1g9GIhN+X4PrYjqedftyszeyQjwfKvu2JaxpVK9R3NUeDj2b4LrE5AWD5VoMD7Crl6lm1tcNH3Sgm5m5G8PhUL2UAklSWBis1UGqoNE8ZnhyM8MVlwnpYu91o8YGHKLZGUcjjY2RZNT/A9HGkxQMdVdQAAAAAElFTkSuQmCC",sc="data:image/png;base64,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",lc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB5CAYAAAAd+o5JAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAABNXSURBVHgB7Z0JfBRVnsd/VX2lc3TnpnMSjgBigJBEIAGcIOMx45GAJ+K5MMRxhkHdkZ1dZx0V2Q/K7mcVFUeUUVwEVnGE0UFB5dARkDNAEBJAQkKSJncnIWd31bz3qjqJMwQS7K5quuvrp+jqtptu6l/v//7v//6/9zhcBuE2W4pO4NPBC+HQ8D4C38gbuNKaiopCXAZcf96UkpIS3tTS8RDHiXkiuHRA1IyrEsRg28nDKoMO2+12e2k/P9M3zLit7Qsgco9phvU1uEZw4ktGHqsuZew+jRwTk5DugusjcpoCDV+mlOP4x+uqKzf09QbdhV6MjIlbIEKgH9Jar+9DbCTeYw4NRdv5lh0XesM/GTky1vYH8rAEGlcauX0Z+gdGjoqNz4co/hEaVyq55rAwBzH07t4vdvfJNjIs6nRxB7UA68pHB934mpqe4RbvPuly4Q+agf0DF4S3ez9n7jraZssVRbwEDX/BFhwSeqattYW1ZtaSRdaKNfyMB90nnNQX4zQ0/A5exLTaWvt2nvTFudDwSwResi1PUpZ50PBLOBE/oY88OdMiaj9FmkxiblvLTfsvUgPWIwCMbDHz7EiI0qOi3omzdU54krRhBljCOJTbXezwNfTwYyYMC8KTj2QjJzMRBms0YDBj8bPv4uUPz8KTvPPKfUgZnQexqxaO+lJs2rIDS5fvRHmVbxjcb408MzsCry+7G3prDIlASDqA05G0PA9vwOnM4AxR5CaKRUTIGMyek4cp2e8h//5XUOYDhvbOv9oH+N3judBbrKBJPpFke8TONriaagBnJzxOVw2E9tMsq8QOCEgePRsFD0yEL+CXRp4wNAjJgyNADUwvuNjahGWLVyPzhtfw9pZaeJr8OX9G3sy5OLL7Tek7iaE5UcDPfjoavoAqRs6KJ31jXjziwwzwBgkRetIHh7EWTC94bWkpnnuvnAVcTW0CPE35ORd2HurECy+9T2zcAnZjEWMnDx4GX0C1ljzntyOw9/2JWLNwBKYNDYHnEcg8KjWoCw5HG5Tg6MkuCF12uSVLXsQXUMfI8iy2KS4IN9ybjLXvXoNti0ZjxjUR8BjyRWatmaR+FENuydJ3B7KRCRzXc6IP02PsbQlY8VoGdq3MxPN5ccSV/5jAX5SCLdHZbWzlkLyHGOgtubi2A2++WIwT+xrhbOqiNpF+jIlHalYkfvlcGjP2C/cnIyvRjIGSnU6GTeRCU3fNcQIcTR1QDkFy1/T7DcmYnGGE2ujMIaHPQGE6XSK2Frdg5V8qUbyzDsFdIhKjjdCF6smQlmM2N0abkJEThVkkQMscZISzoRPFNX0PfyxBPMYlmTBzYjh+9ch44h1CuruFLZuOYsveOngbjvz34B0jYA4jARf5d3C8FTnpAsrOHEcQuYGr65Rv2W2tLc9ykTE2BTusvqHu+dHrYjH9tjgMHRlGjCRH3sRQokhi1RYn5hXsx8ai5gt+fsKQIGx8exqMMRHkJpGSH3CKKNlzAncu3MvSmUow765oLH5uAfiQLPY7OPo7hHac+e4dZNy0HkpTX2PnfGacXNnsxO83ViJ7zn78ghzffFAOodN953OklVOjX/x+1AUbWF9I3XTJ18fw3O824ab53ypmYMqK92uRkfsMPnn/3+Co2SsHfiaSW4yGWvhcWjMrwYw7rotB5uRo0qdx3Xbtl2hLDnroZ4ZeFYO7nU5UNHbhw50OKIUljMc9+amYMuVahEePlI3MQc0gzCeMHEb6q/uyIlBAhlMJJPDiTPSi0EOysEhadGVhPSodfeeBaZJj37ZSjB0TBXNyLAxRoRiVOwqvTyL94/wtihl68ZOTMevB3xC70ktLHKXYAof9Gxw59C3UQtU+mWa+fkP64Om3xcMYZwLP86z/dUONW7yrDm+sKcOGQgeaOy7dGmi260+LxiErdwi5RXSsT/xo3WHMXVQEb2MN5XFy37PgzSOkyRDy3S8sfhxLV5yBWtA+WZWWPJJEzmufGoUkEj3DKIUFnBxg0aPT3okv/1KBZST63lfRPpC/GhUNTqxd/z0x8mAW7dJbJm1YKJTAEup2yy7JQ3eexLqPPTuteTmoYmTqnuMyw8HJBhaZKTicK27GmvVnsfmbeuyrvPxUpKO5S0qCcHKyS1Q4GUITMfSUzC/7wpyyOn2y2PPA+tv9jcQln8HqvQ39csn9+wKaVnRn1pTskQR2UzHPhEAuGiAXwFnXiR1bqvHJZjs2HnZ4yLg9X8CGUpzkIZTKXSfZ6OWkGS4XpNDCJ1IQ6hi5kqQyZ/zqIHHJA+tvB4JIhk+cQc9c5+DkEFbj5Y1pxt4kJ0aS1GwspJQqGa0L5+ELqGNkkvigh7fY8307nI7zbBhFvbUx1oItr4/Hpq1V2LyrHt+e8OzNNe+OSKSNTsTNP58qT4gQOBeKvlMvqu6NX1aG0Ah7x1Z793yyKLiQmhmPBQsnIHuMBZ6m4OFrMfvBhxAeM0KefSKHiwz9Vh+FL+C3NV7/+uoZkrc+B1dbB5sRErvrr7zQT4pCj3FpwOdswJrVf8I6MgT0Bfy2WpO25uy5h3F7tgU35kQgPNKE5IRgMrzyfDdRdqaUxXflFY04crwSn24rw86DXigYvEx8ZhZKwzv41CyUhvfQjBwAaEYOADQjBwCakQMAv1Y1ulFGusrL0lXlSo36i/9LV+emICfdAr3FBN6gw+IlRXjpz57VQ73zPxMxODWNZDLb0Oiox6YvTmDpihOadNXb3D7JguVLx0FnCULvuc3elSeeguMNknxVH4rw2EGYPTsNUyYdQP6/fKFJV73Jwl8Phy7MxAzLKkScAlytHSTz6PmZKNHVArGrTi6ql4oGBg/NQMHsABe8eRMmXU0Olp+Rqfu2Tiz77yJk3roLb3/h+YK+GY8cQN5963D4AC3Wc8tjXPjZtDj4AupIVxPMeP4W70lX4yN0MIQFsXPqnOvKm7FobbUkXW31nnT1xeUHSCNul3RYxMhJSerVWvdGPelqwXDseesarFngeekq1+uMnjdSvZUCFJ0k3+NqlnRQVIcV6KpG6tFM0UG4Pj8Ja17Jwrb/HI0ZmR6UrjJUmHsRO6XCQWbgAC7/YUi1duxEZ9YhbboNr+fE4MlTzdi62Y7lO2pYmdDlwcn1n/Kz/skvPIKkSXbJ3x3g0tWVb53AyaJGOFucctksmLFTx4ajYOFV2PlqBpbcm4yRMSYMlOxxFkl/ITekxiYlExTuVQbIo84S4NLVkhas3FyFE4X1CCbPEyOM0IdQxyJVVxrJ84wJkXggLwFZNhOcjktLV4fGGDBrihWPzhkKXaixW2jz+edV2LK3Cd6GSVdnDoI5NELyJHwQsseTTNjZWgSZOE26yqSruTG47vo4DBkWylYfYH6WWor4G1ebEwULDlxUurphRSb0VhNJSkhaKvrxkm+rcOd/FCsoXbVi8VNTwRlsTKLD5KvEbZ85dQAZt+yF0qgmk7kQTLr6cRVAjttGhmFufgIm3WCTVBYiR1wO/amXkK6S97gNXLK7Cus+qcSqbQ6vl+L2ZsX7Dnz61ad4/okETJk8BtbIBKbJAjfwFRM8hc8lQ6gI7vap0cjIjCR9Gt8doEn18RePoKRbQHLSQ0ZYcfdNNlyfrowOyg2Trt4aS9KaKQgPj5SGUlA30vYd6WpGBObNSEJCWjhg4NlCAZADMrFLQOWxBlQ4+o62m9oF7P+qCmPJ54MSLTBEBWPk1GAsvyYWeOIgPtzl/T6Z8vxjSbj37gnkzESXIiY3aAcc9RU4cqwKaqG6dHX+jTZMz7XBFBNEvbK0ZghptvRRIPnmkkP1WPFhOTYc6r90deUzI5E51cb6dNquN3xwGnP/6xS8DZOufj0dvDESkpPUYclLm7H0zRqoharS1TXzRyDxauLOaKul10OUDCIKIjobOrB1mx3LNlVhX8XA1I20FHfdRxWSkakXIDfM1cOCoQRMuir2UjW6GklcUA+1UUe6SoKp+OHh0Ol00tQfbcLk2lSfbcHHxLjr/1bzI6WrTjkZIirfFXI9yRDB1RrA0lV5AEtbrUCm/ipPOrDi43KsPtDgUXVjd9ZLVM7SbmmOhG9kvFTTJ7taXdi+uxqbdlVjQ5Gnpasii8ZFZmFOsbxmkk0nfR912Zx7nQP1UUnV2IX8Zw8OuL8dCAKJyGl/T/vkwUkKSVfjSApTZ+xWNoqiMrNfl8JPpasdEJo7oI8ws4ZliA7B5levxqfba7B5d6Pnpau3W5A2Kgw3/zReEr/Jibqi4kb4An4rXf2KBG/yYrWM1IxBmP/41ZiU5vlllwvuS8bsu0YjPCqceGnZTQvteGONHb6A39Z4PbHsNE4erGaJFGpoQRD7u+LbZcHyNqJ8uDrx3vpjZPik3CJxF8O/pasFRzAz24KbJoUjItaMxFgjmrzQTZwpd7C8a1lVB4qON5HcdaMmXdVQDk26GiBoRg4ANCMHAJqRAwDNyAGAJl31AEy6SuaSqZJCk64qDJWu/pZko3LGWKAPDZKkq68U4eUNnt10ZNWLw5GcEsVy1nSjsU3bqrB0pW+skEvx311XJ1qw/Kkx0AWbpE5Jrvr0ChzPpKs07xUeFYJ774zB5AmVyC847hOG9ts++cnZQ6ALkqWrolRKRNWNohekq4Kri/z90owaJ63OjsHJcSiYFQtfwG+lqymJoXAXSTrbO/HqW98ha/ZuvOMF6erMX59C/pw9OHy4vJfIncPPc63wBVSTri66fpBXd13Vm0zd5bx155qx6P+rvb7rKt1rgi7WSqGr8SfGe2Oj0YGjWkuee2Mq9jyVifceTMW0IZ6+GNJeFu6WzLYrUAAmXRXod0lFiZySSruLoN72BOQwkj7zhswEXJc+CMdP1WHZjip8dMQTE+1SYSB4ydAclLzYAuuTRYiK1pZdDBWlq2K3mlGv0yNt1CAsHx6Fhfbz+LLQjuU7a3+EdNX9d8slGorW04myZs9XKrzUkq7WdWDll9/jxFkHXJ3O7pat1+sxPNmKgryR2PXv47AkL+nypKtXWbvLfOnhOK9kgoKTGjAbsgUFuHT1VAtW7rKjpKwBZk5AgtUIvUFyLNTVGc0mZKRG4oEpNmQmmODs6OqfdHWSFY/OIMMnowFyx4jPd1Vhy0ElZDIcHpoRAbNZjjE4PXLG61Fe2aJJVylMupoTg7wJcYiJDCFG0kl+Rta8uVxOPLK8EBuLWi74eSZdfXo8uWuN4KlQTk6AnDxdgzsWH1dMuvqLO8OweGEasW9Itz6ariFSVlaBjLwSKI3v7bq6uQo5LxZi3h8LUXT8HESnFDhRhS915ZeC1+nIO6W7oqTkHBa9UYgbf/+doruuvvlBMzJv3YNNnx9HY6McRFL1Hqee2/a5ZAjVSd2REY3URKs0BBEkpQV7vNSHu6vpgCEJVtx17SBcP1bZsSqdqLjnZismZ0XBag3r+V2adJXHfekRmDc1EfE2K3g933vTVZaSrK5rQpWj7xbJpKvHqjF2iAVBljAYjEEYkRqH5Y/HAP9biA+/bYYSPP+YDbNmjmT5bOmmc7H1No8Uq1e5qa50lWS+5pPAavpoG0wk0KLXRYAoy1fpNRJQcrYea0ng9H/7G/otXf3gyauQOiS6e1Ji49dlmPuKQtLVbRNJ06EqSml0/sJr+7H0rQaohbq7rt6fisTYSGZQBk0gCJI+uaO1HVuPnsOyr+yXJV1d8Vk5lj4ir4ZHbuGrk5RZykHadRU967UKLVj3V2XE7xdDvV1Xo8N7DCz75ur68/j48DmsL6z9cdJVOi4WxB6hm4KZp571w9gSCQEsXWVIF14QBFTVNOGNv53F6kMe3HVVznaxoE1ULq3J/eBXBHha0+l0YfvxGvz1SDU2Hmvy+K6r7lSmNEmg1K6rVLqq697SV9mced+otutqPhnD7vfSrqtsekCgexjzbDZqcKwy0lVmZM4km5YL7P2TvS1d3ft9B5ydHTCYzKwlGwwh+OzpUfjsYB02H3R4RbqaROaOZ92SIM9+0VdFHC1ugS/glzVeNML++rtaXDcukVxwNhYjyZVBSE0aBEfrYY8bueCuJCQn2X6wTAbHdeGNtdXwBfxXuvpuKZnlqiG5CJcUacszXd5AdBuWPaFrw3Rh3cYSnxg+Ufxauprz9FHMnGDBTelWRIQFITHaiKZWz/eTZVVNTLpabm9HEZld+/RrTbqqoSCadDVAoEYuhYZfo7Vkv4ZjE9p0Pn4HNPwSko4ppI88BK4QGn4Kd4j+yes4fjs0/BJOFDewR/pHVIxtGxlH5ULDf+BQWl9tH0JP3YHXKmj4F0KPTbvnwiJjbadJSi4FGlc+pBULPKY12u2l9Gn3EIoX8DA0/AKSYX3WbWCKzn3S2tpSag4OpfPcudC4YiEGfLmuxr6k92u63k/aWlu2B4eE0s46HRpXIFxhfU3VjH989Z8yXuQueIiMnV+GxhWFKHIbhBDTtAv9P92FXmxra/lMc91XEKQPbqi1/7K9sfGC1RC6vj5HXbfJErqKdOJ0U2PNffsgZGi0nRfxcF2t/Z1LvO/ShNtsKbwLz5B3/0QbZqkNnXQQNxDjrqqttW/v1ycwQKKjbbkCuHTwYjgx+GBoKADnINe6lCcTDs7QoMLG0tIBrbnxd69Z+R7gKSPDAAAAAElFTkSuQmCC",cc="data:image/png;base64,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",dc="data:image/png;base64,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",uc="data:image/png;base64,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",pc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB5CAMAAAAqJH57AAACGVBMVEVHcEwSFRgSFRgSFRgTFhkSFRgSFRgSFRgSFRgSFhgSFRgSFRkSFRgRFRgSFRgSFRgPExcSFxkULCcUKCUTHB0THR4VNi4SGxwTIiAXSDoTHx7/5l0UMCoVNC0TJiMULikRExUWRDgTJSMSGRsTISAVMiwVOC8WQjcVOjEVPDIWPjQWQDUZW0cYU0ITIB8SGhsZYUsTICAXSzwTIyEXTj4TJCIYV0UdjmkZGRgUNDYchGMYVUMaclcZZU4bfl8beFsaaFAelG4YUEAaalEerqv/7YMUIyJQQCAiLST/7owuKBv/6W4nIxoXUED/63j+11ofHhkUMisdiWb+xln+zlk+Lh4rMSVv2oX9sVcaem1m3IcbbVP8uVY3Lhz/6WVdSiP/4VkZbWAdl3b/8Jb+v1lDNx4kTTkTYcBpUCYTJCO1kDcdpq8kWkL/8qM8dE15l1Ys1ZK6ejiZZDHDmTlK1Yrn2mkujmKLbSyNl1GJgEEbgXXgsUV7UyrurkqGXitdoGLSmj4uRjImZUkSOnEXTj+jiTXTqD3xyk7IymX40lBBdUzXw1lKkF3NgTzpmEkXfbkWVGmdym9jjlWyymqJynRzZSrNtkv/9rf6plK4pEYcjHwhwZnpv0d1ynhBdEwRPYb821SlcDIalLJBiFn34W/mz12VfC8dmIMerJ4UT4EYbnb14oMVQT0WX3weoIp47I4XVFYAFA9HcEzXs89SAAAAs3RSTlMA/JgiBMrbgu8TLUmzWVb/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AOo6eEwAAAjRSURBVGjexZuLXxNHAoCHKiQIuhMFDIdWJRSpVTEodq3aetQQiRGCmPKQXOhpaAigl6SYSkLEFkI5HtezBaGldyCP0vO8uz/xZmZ3k53NY3dCQr4km9nZ2fmY9y6/LABySst05SX6Ii7n6EvKdWWlIA0HD+mK9Vz+0Bfr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",mc="data:image/png;base64,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",gc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB5CAYAAAAd+o5JAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAr5SURBVHgB7Z15bFzFHce/M293Hdt72Osjm8QOi3IZSIIjLpEi4vwBbdqqEI7SVlQlQlQqqqA0pf+AGq4WyiFIVVVcpUSFBiRonKqKaWkbI0hUoEkcyNEmTbJxYmcTX+vN2t7zTWfe8653fcRJmhDvzHyk55k3b96uvZ/9zZuZ550lOAsqAoGgYdJGULMCmvOPSSPUSUJdHR1tOAvI6VQKBoMV0VjiLkLYTQykEWBa7gWCC2vlyTqngdZwOBw6zXMmxpI7GL8fjPxIi51qkAgIe8FFsW4y2RNKrqmZ1ZhBZgPPBqGZyoQIoQ/0nOhsnqiCMV6hv2bG/QymOElH79SHO2LfKnW7MTQQ+2C8CmMk+2sDa3jyFDTFRtNEogskV9XOvBmMvQhNsdJU6vH0c9H/zC/MXZMDfFiUzJAduoNV/BgwlnR1jQy3aDaTymCNFiwHGZi/y9+3muvqQKCJMbwAjSwEysrdh4cGY1Y0W5HMrCjWSMb3shliX4txCBrpoAzLu7vDrZRfi5ugkRKT2m4pn7K8CRopIQzLREp5TqoetbeM4vZl5dDwvpZ1M8lqtuWam/aWU1zTUAKNwA5g0bsOQiLqqgzMnlEGzQgUknHb9RVYfGm1FdGT8dVlPtTPMCA7Ukmuq3Lg+itn8rtolXjgtqpJ669o8vKol1+yAxLgnUZxw2I3Hvx2EBfXiTtvBPfefYkVzb/d1Is9odT453l4JAe6ITtFL/nmJW7ccpUXTUsCKK3y8YlbIiZvQV0O3HnnAixt7MCW7X147PcRRAfMgnN9Pj+87g6eG4LMFL3k5h0xa5tVeQKv/nAOrrxipiU61TeA+57eg3c+PDnhuQvnedB+dDrP9UFmpLkmd/Slccez+9HV0QcznsbDv9p/SsHXLiqBz+/HiuVByI5UHa/okInf/KkdvScG8Nr7vaes+80bK0GdpfBPb8DSy+UeV0s3hPp43yC2f3bilHXqah34zi3zwVhS9NHwxE+vhcxIJ7mTN9uHOyfuSNVVO7Bh7SVweNy8F57ks7pJLL7iSqx9aC5khfhrAgwS4eHDKTGk6oikC8rFnPaqG324d1UQVcEqEMLHx9QDRitAjEr+SpTi0N6tuG/Nh9jaloAs9HaFiXSS81l5hZsPoSqxcH4ZLp7vgb/OA+owQCiB+KMJLQUzuGTKJfMUXDgzGfp7DuDzPftxpD2Ep186gCPHMihWhGQpJkMmYm9nkve6u7CnvQwrkhksm8HvTjkNLthSzJvrlNVcM5YAMZO8KInI8YPY9P42bPlkN44ez6A/VvwxIHUkj+aGRaV4/MdzMZdPnAjHhBCrybYiOOPEG2/8DT/79cExkybFjPTNdUPAZV2jPw3Fc2Wz/A78ce1CzFlcA+GYETF88uDJp/6B5948DtkQkqXrXefjcVE01LoKyjp607jvsb3IxOK8mebvb5bGge27pBScRWrJDTNKsWiOb0z5x/sT2PzeEfGvE2CJBJ555SBkRmrJdzcF8LVraq0h1WieX3+MX4cZDu3rwzsfDUBmpJTsKaH4xddnYcGcKtTO9GL9AwvQML2w2d7bkULP4X581tYL2ZFqCDXT48Dq66qxrKEKs+dW80kO3rPicyJXXx3AH7wUO3f34OE/d1sTJWKeO3R4AB9t64fsSCW582Qaq1vCAN9+/uWZuGflPBAXwZa/tuO7rx3CyUTh0Gj3gQEcPZGC7Eg7GfLQXzpx/aIqGKUO3Ptm+xjBgmR3HNFBecbEEyH1jNdLfz+KhfVudEbHj9Ynm+X/1x+B1JKPRpIwM9EJj0fj8kexQGrJ+7oTOHZy5G4UpfZn7k1TmZlcC6kli44Y8iRP9zlQwjtioeNJqITUkyGjqfMzLAhAOZSSPNsPzJ+uVlMtkLq5Ho2I5HmB01ppUiqUiuT6StFcqxfJSkmu8Bmo8cv/2afRKCXZWeaCyzsNqqHUNdlR7oLT44RqKBXJRpkTTp96kaxWc11eApdHN9dSQ0vKeJOt3qIxSkkmjgoezpVQDaWaa+Ks4FstVEMpyczwgbhqoBpqRbKDN9VOLVluDC/vhUy+KpBsqCWZuEGoeuu2qyUZ5WBES5YbqiNZWnw+r5USuPlPb0GZCkg/GSJk7vjXp8Pfm8PvJRMP2rZ9gvr6enxj5a3YsmUrZEf6SO7vj+LFl1+Gz+vlm/iEI7EEf75rtxKCBUo01y+9/MpplcmKEpJFNG/a1JLbb28/gvVvvQ1VUKZ3/eIrr+byTz/7HFRCmbtQ4vq7ZetW1NfVY1NLC1RCqXHyL595zhItmm+VUGqJJ4HoZfdH1ZF8/lf/cU29CQeVBGc5P5JnLAW75lGw2/kkhH8hpgLpVBIDJ/utLRGXe6X60ZzbjpeQ27gaCCwdKYu140IzEOViE0Oo8NrrWkf4fnxoEN4Kv70qn+Scm0iedwfYinfBvvJuoeBk1N4uICJqheA1P7kKffvvtrbnn7gOmXSKi5Z7aacsZ9/x4tdbdtk9wKXfn/DaS1JRsJ5dkz5UfixZS5uK5RDZ2DosLx33GM2AGDxnmDxvgvH96MYH8aWLurF5Q+FXUq5c1YKNLYcx/ZH1vH7Gqg9+rp2KfWal4jvwCH88WI8tUtN+Dr5vPY/1XNm69vMC/LnjSSCeBhtKDKfJXBlE3tpP8TTF91PWMcL3zSFRZ7g8wc8z7dUQRIuTSp7556rPfpVcd70VuSI9FSzRXxjZ2XJu0G4m7XREqK0xX7Sd2hnrDDZSL2s3W996oYc3JkQ5TGQG+xCc7RnzOzReVo3mTYdA5l4OyuvBIYTZ55Lc4/Ayh/04+ceI0xyWOnzMMSpvcjmDCbABvsXsFLl8nOeTuXzhsQQMSvnfyF+DNH+jJNP8TUNzr9nZcnaSY0dAWm61BLIlqyeWzctJ2L4JkP0VSV4qykZEojBMSWFdjMpnXRdcUg0RvWYu4sS+0+1Hc8tePP94IndNFrz+1n/grOVv1v/uRGY48rPRSHmksmyrQIcFD0cwGY5u5I5nhluAbCuSsb51PBuNVkTG7ai1Izhl5+N29CK3nxypn+Dl6Yy19naW/0fyuRknz71jfNn8ekzeXIALSSadRn9fN4L1Hjzy4FVWlKx7+99o3doBt8cH17RSyMy5XwpZNM1cNstroi3JF7jzlUomMBiLIpOxV6CnvAmcVubGtFL5v7jz/K13LSJayOYRTjbewJ9p8s7XF4GIaoHhUOeDI+d/UXPR606qN8M0lTj/05pa8JRAsX/JVRMtWQG0ZAXQkhVAS1YALVkBtGQF0JIVQEtWAC1ZAbRkBdCSFUBLVgAtWQG0ZAXQkhVAS1YALVkBtGQF0JIVQEtWAC1ZAbRkBdCSFUBIDkEjNTqSpYZExE8Kgg+gkRIC1iZSCpO0QSMpZKf4SQ1CW6GREsJYs5WKH1U1gc0MaIJGHghCvSfCF4tstuO1Dhq5MEec5pZV8dcGDoEhCE3xw6PYpFgeCYdDYjc3hKImVkEjBYTh0axggZHNDA7GQqVlbrFYVhM0RQsXuLanK/xUfpmRvzM0GGstK3eLi3UjNEUIaevtOrZydOmYGS/+LriLj53XQlNUMEaazfKS5eMdM8YrHBqKvaeb7iKCX4P7usM/iEci8fEOGxOdJ5ruEq97Hb+Ii68O1833FIQPjVopw6qe7vDrk9SbnIpAIEgzeITXXqaHWRcacdOBNXO567q7w62ndQbOkOrqQJMJ0gjKKrjwi6D5AiD9/LUOUX7DIe2e1hYJhSJncvb/AEd0LIx2gX+VAAAAAElFTkSuQmCC",Ac="data:image/png;base64,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",fc="data:image/png;base64,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",hc="data:image/png;base64,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",yc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAdxSURBVHgB7Z1NbFRVGIa/M7e0QdoBDBpLieksIC0xodEEdlIU3GCEwoYEbSHBBQYQEiPBGClKJOKC/7DQhB9LxAW0oq4oEdmhiakbCrIY1I5DAipMC01LZ673nXbMzFDb3nun937n9HuSgZk7bdLMM+/5P+cqKiL+R7KRLGt1REVWEdm1JPDHpi6lVFeaHu2JVVffyn9L5Z7E4/FZVkXlblvRdhK0RSk6mO4v2xOLzb6XfY1/IFeVz7isImoRCfrjJDozULYMkiN4jeSKXINQ1GBNH9qdfRpPJmsjVBbPf9+yLJozs5KmTSujiFIk8KZ/YJD+Tj2gdDpdcD1DtMxJsNWafxFyq+fMooryaSJXE6ZXlGedwV0BaXt1xJFYUDQ/GZ0hYjUEzlDqFlyzIqsiToXckH8R3wZBT1ClFmLXRkgwhtFKXhFsOCLYcESw4YhgwxHBhiOCDUcEG44INhwRbDgi2HBEsOGIYMMRwYYjgg1HBBuOCDYcEWw4IthwRLDhiGDDEcGGU0aacvXHn6m7+yZdu36Denv7nOe/UirVR6ne3oKfm1dTTTXOIxqtovq6BbSwfj7VOf/j+lRA/Za8Y+dfePaZOcSZ8+3f0d6PDzwm0i0QDeFrml6lJYufJ1P4/fbdgtfaCYbYpS81Oan1JzgfpHlN08qsbN2TXSxYuzo4WlVFG1vWUSnpSSTp8NHPqfHl1bRz14fZ16agXYLBZKS4mI3N66jF+SLplmjtEwyQ4leWv0iTyYnTZ+n15s3ZOl9ntEwwQDGKIjUIkOatWzZlW+LcMSLBAEXniuVLKQiQ5tea3tCybtZ6oGNDc2kbW2MBuSiy0d/WCa0Fo/8aZB8Wkte3vKWVZO2HKrdteZOCJJXq1Uqy9oKDTjHISdahTta2FZ1P9/Wb2UTVjIw750g4AtBnxpj18M/cKKkUNPTaTh9n1VfWfqjSL5ikON/+LV3svOJ7PBug9DjjSOZCsWBrxzvvtuZfmFn5BJlMrnu1cuWKbL92OOV95BX8PgZeGhqeIw7c73tY8HrKJbgYFNlHjn5G53yMWOGLcqH9CxZFtTEDHaUCUj7Z9wHtdx5VVd5GqtDowiQFR2RFxwiYLvymw3sKUbfjwQ22gjGpjym8IPHbKuaYYpaCDzt14kln/BePoPEjGfV556UrxAl2gk+eOvtfclG3hTFdB7nHj31KXjhx6kviBCvBSMDefQcKriHNYVBfN5/e37WD3MKtLmYlGLM1xUB6WB/YhpZ1noZBL3b+QFxgIxhF8f8NI4aVYuBlMuN8B59VIGwEjyUxzGLPy2QG2g5cimkWgsdKbw7dUsxlOpGF4HPO4P94hJ3ieTVzXf3O1Z8kwVkwozNRcWGmGCNdbpAiegQ3H0TYKXYD6mE8wiZ8wVfdCQutX1w/n9ySYLDiI3TB3dfdNUbCSjHmfN3Ww1hFEjahC04kbpNbdEpx2IQuuCfxJ7kFCQ5jwVvU5Xwxh0V52s4HHwmxRa0T2grGEhsOrVTuhC7Y6zIZcPL0V8SZaFUlhU3ogmdG/Qg+G2iK3bYXOOxGDF2wn5Yp5AaZ4mvd7ro9NQxWWYYvuG4B+SGoFGNI1e2JAlJEE/neVxRUir0MrtTX+/vylgIWgv00tEAQKe50uUpjIQO5gEU3aa3LmZpigkix2wRjTRcHWAguxVEMk5niiSxIKGbF8kbiAAvBpdjjO5kp9jL2XScJLqQUO/UnY6G8l/QuWfwCmz3DbAQjwX4PVSn1QvnhE/Dcp9dvm6KUsBqL3rZ1k+9vfimnEjGh4WVGaDGjw01ZCcZ0HLaM+Ok2lWqh/GGPe4aRXk5HOrCbTcpuGXnP/ZaRfPymGKs8ve5s3BrwqT/jwXK6ECnApmyv+FnWA7k7d31EXuCWXsB2Phgf1hkfe3W9ptirXMAtvYD1hD9a1l736npNsdcWMLp5HI8eZr+iAx/a5Usd2a2cbj9ALynGqe9uwd+1bcsm4og2S3awlRNpdpMULyn2MqrWxuicrGK0WpOVSwoSffzY/mxxOt5KRy8pdjOqxrVozmHMUYZYTpPouT3qbXXWeKhX1zdvHjf9GHnz26UrNVP+KMOJArnrRzlxIAduy3OhvY24IQehTZCx6mLIbTvFt97NRwSPwWh1cU6uDvdvACJ4DIpTjEYdimVd5AIRPA5rR/rF6If7GT4NC21vThkUaIFjfbOu9zeUBE8AnW9eKYINRwQbjgg2HBFsOCLYcESw4YhgwxHBhiOCDUcEG44INhwRbDgi2HBEsOGIYMMRwYYjgg1HBBuOCDacxwTbtk2COTiC1a38C4OPhkjQk/6BwcILiroimXTm6/xrf93vkxRrCJz9k3pQcE3ZqkvFk3canRh/n/9GmWXR7OgMml5RTgJvIBalLoI5lE4XvJehoZjCk3jP3YMRy36bBGPI2Pah2Nyntw83sh5ZrSivSTACO5P5hQYetOJ5VnAsNvtepr9sWSatDpGgNUiuPfiwMRaL3cNrVfwD8WSylshqVUotUjY1kMAe2+kJ2bbTWFaqI1b91OX89/4F+8YI7b29vWUAAAAASUVORK5CYII=",bc="data:image/png;base64,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",Ec="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAATlBMVEVHcEzq6urm5ubm5ubm5ubwgyy5YSOeUB787+b6qGbz18H6kTz8wY/5hiemViObTh7QbyXWs5vNpIrgdyTm5uaFTCK5gl5sOhTEmn////+cNvO/AAAABXRSTlMAGci9ZoV8zcQAAAK/SURBVHhe7dvpauNAEARg5+g5dfvKvv+Lrra2zTaDNoYoU4IwjSGQPx+lsmV5Rjqt8/56oc7r++nPvLxd6PP2ssJw6fJ6nAHQ5/2Efn9RBz2f1KXLPwtucIMb3OAGNziEQ+CwOOkCFwY7DIP0GTQNBuv9CvegSbCyCoPmwLMDq7DSDPgG18KgCbC3sElNhXWUrgJfFmQqYLxM6m+HLx+D63PswmZiS++FS3bwDkTsLKyRt+n9cFpZPzpN5cYi8RN6BzwPfhvWio1q6H1w+Bw2I/p60LvgsEw5dmH2gJGvhC1YpP4aDFbfUdP438RiEgsiW/qL8DJAMzCkZ4nhY7pvgJ93bP0KcNGxYmd3NjxCcxJP9/vozmJoTFe5Y8DrXIdJTPCqiTVdnm/XO8a7M6VjnbgCaVH8ioNevWP5C2MCcD3odTsWTWzSpI/rOuNETGwvygAzOg4pzbOBPSexOFidTVy7Y9Bn72ElYmLMA86J2LEYuM+BlBis/IP7yOm4PNSQae9qC0PjdAzawjnROjYw5Jund6wHfhg94VxdHGrI9TuWIrH+Y6qfuICVnggd20Nt32vkxBgZRkbHUnacJ39M4kQ5V+O1ccrkJ47HfB/3MQCmn6tzIH4f247TMddckFgdSy/28pab2F7Qkzre/gnjx3EkJBYD609G54bKHSMwYEVTh4lZSB2vaAAKFQ0w1kCiQbM2wlkDUVVRVEC4rgYcYzYmaw0kZ6hqqk5YA9G/wkxsUxYLuYB3LRs//xxD3diT2blQnhb/aWIpAlt2/9bAdsdmHmlF2bqbISrJRlrG9o9tGGyFDa8c0+YWn01bY4svbW/xlWn3w5ae0/amppoFy97GpcH2A8TcqheTln1zgoD9Ybdj8G9A4d9yw7/JiH9bVbuDrcENbnCDG9zgwx47OuxBq6MeLTvuYbrDHh/8Dfq5f7l4n1ziAAAAAElFTkSuQmCC",wc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAP1BMVEVHcEwAAAAAAADLy8vy8vL2+v3/////++r/7ar+44X90Rb9vBD/9M3+1U7Y6/SHwd05mcbD4e9IoctosdSv1unA2j1uAAAABnRSTlMAEiZyxP3KMBNEAAADB0lEQVR4AcTQsQ0AMQgEQdYA/Zf8Eo/sDriJyG6F/eAsA3s4Euj2B7r9wdv3yFqU4begj6h10cNmiPangA7wkvAOmAfIXtABWRJ5A0ria98+siQHgSCArghMg/z9rzqe6azpQLyXoyI3cICKT0Z5CeA/ARMwARMwARMwARMwAT58rihWGAWI6XN9iJVHARr5ZVQFuQHAKEDk+WEYgA+gYBQgcIAfBuANBIwCeDqAgmGAwAsYBygMEDAM4HkBwwC8AT8AsLh2AxEA3PJOgFu3bacN1AKWYzvd2wDu3LbtbL0JZAD4IdwOpwf087e1NsAKwLVxgRJA8k/3+kEoC6gj2I7lQQDJR2QFCMHBBToAyYccgCygPwMFgOTnL/kJ6At0AJJPGsjggqcA7hD5pIEIcMFDgOU1P8h8/jXwogIFgOSTN4H8dWS/BbsC0M/3Mp+t5OsMtl0B6OUj9ABBtLArAJ18lE5+AQAyAwWA5JMGSAFEoADwfMTOADLwKrj0AOwyv9cAeUvYhUABoPk5NZZ4AhCBAsDzEe8BGVSgAMj+WQM8PwBcoADQ/E4DsoC+oAM46Yso3g7ANx/oeApwO4CAJwHLxirwcmUfZX4EnqwAuxQ0VhH56TZfAcDVFWQ5gNzO36ECYO0JIi+A5ysAXMAbKIr8PsD9Edw3IF6BJP/YoQTIGXQbCIr9S4BOQAog+1cAiGC9b8D3968G4GoJ4t/8rNk/B3QEvIGo278EaAS55hfl/iVAI4jtAi6erwdgJ4I6gNDwLngKwAWZF9D/YagDYD+EQDbgNftXALD8I+AF8P2rAB1B+A2IunwFQApqA+RLyM7zlQAucLUB9go8eL4SwP+qqQ2wAnCS/CcBbj33+lWEvgUu57mM+Lv+dwPe7tpx+JkfYAOoDRQYAn7kJ28BEA1kGAJK+ogwBPiUCiwBQRRgAiiiAAuATwWmgJC8LaAEmAJ8hC0gzzupngdMwARMwARMwARMwATYH3YzPe5nfuDR/Min+aFX+2O/5gef7Y9+2x9+Nz3+/x0c+Iy+pJgziwAAAABJRU5ErkJggg==",Cc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAJ1BMVEXZ2dnZ2dna2tra2try8fT///9Wzv8Atv9bZGj/m43/c13/alOkqaxKHFPqAAAAA3RSTlMGbsyXV3DeAAAA+ElEQVR4Ae3ZAUYFURTG8VMriDYQs4LmFAGQEQPQXCAAZgOZWUBw0QoKIEgAQV0A0bJaQGf4nC897/n+uMCP6w5zcMyOOk/Vn5gZaANtduzpzuw0j8+t84uS6tp7cy+5Jvc8LsK/ExYWnuYVaBlCfLNC3Yd4xvAS4hVsAxcgEgsLX9W4BwTXrShMXXuXry0sDMaPG37Q8SM2l/B+4umpAb0OIR4b1HuInzH8EeI3DH+GuLUC1JrwYeC7+hUdGP6uj/GB4FprfBCYujb1YP//nYWF+Z8+P25GDL9QI/aPh7uwsLDwkF/8dH6Zw7fec8suas1GLfiY1eIPQKTYtaVTVS4AAAAASUVORK5CYII=",Bc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAbFBMVEVHcEzv7+/s7Ozp6enm5ubs7Oz49PT6+vr44eH20ND0u7vypqbxm5vwlJT57u5iYGAzMzPgg4O3VVWOMTFdMzOIiIjZ2dnih4f////ctLS/v79CQkLAkZHAFRWzAADIamrU1NSgoKCXl5esrKy7wMNQAAAABnRSTlMAT9H1/w10dyYBAAAEwUlEQVR4AeySRQLEIAwA0Tj8/7frrtWcOpcKMrFwJKZc3MgphjM1FWdSPXlzcScfzd75nkiH/p5eAN2AkzCeE0ZXzinnW76uOedwTtg/5U28iT8AxCKqZq2ZqYowwepiYNH2ARWG9cSdb9KPcu5riIGk/UVocTHrU12ZOgAi9E78VH3lRcVsdynBx3Lc5MaLiUnvXRwyAUqLiEEGNhCQblthvpguVZY+aPAvaqO5YtmzZifqjeJAEID3VCxgQFwKtnz7/d9xhNIO7qSGkj+ndufG/KjV8Ak5iwV08RJcl3mThlqirDlMymw5pmNJuRls2XDJoLHMYcsalN8KlsPYfb7M/OMM3pDezJMry2DQV2TENBswzxSuxX1FNh9y/QxsylRnIudVuzRPwMWHaH9ELgiMjl+VG+caAssIcmFTSYXWZRfDYFMu08xguUw5WGQCk9Yu8uCNUEQmsPr8Jgueq1PyRxCH1ek4LJdIZQ6rAnK4kkkhsoJpZ1ccttKGROawfgpaCpfLgJXcdv3gWJrR/2HIJYPTjJjvvdn1MVSOGb9/2OiuwXABn3GmGfpcudEyOimAa3DXxYzO5csjbux6FbYyHTo+jeQ9ddi0kjffuBgP72WLYXyEZJzd+5JiWqUbPWQ4HgAbqYlOOpufzLads/WS/6bpP69jJp+uUUdm0CAYX5m6Yyfvv8j17OpMUzqW1FrBoP0UPEVYyxIO6xNDuJSexjCXMSx9XUJ4mWKzBmOZw3JmDOvrwjCWOSy1hLD0VkFgIFNYJtmuwpbBWuawHhOGCwDvgkvxkv3heIg53eXz4Rhz2HuJSwm7J2Dc1MFpODpJljGfu2PKQcMuoLZehWtQ5sdSJybC7yIfJY+lBuWuV+FKep7CUZZ5JrC6n6rXYJGlw34G/hXzxmCJ9DaF0bnzYdVc0kwiH3BzcZiXWsP7++0jcgtvp6fnmHS1BD9JXpjjksBc5rcTf4DgUtMxY1geIPyRyWEtU5g/qwsOQ5nAxSpsGUxkAtunFgJOJVx8zDW4JUN/muVLcCp8IUCWPk4nzHA0lNzGDA7D6Mx0sQdgJ+VU8gz3X2Tc1Hx5y2CV7Qx/kfnylizoAwadaiZ5o9MLAbagJ68wu8DgRd7ipQ9/hdFXpst9iwmLG26S8CCf9rebLjN5aYNHAHj8lMN4h8dF7k5RFhhXmr+YY3h3/sxO3OXvtu0pZo9g/mIu7QfhS/xv9+Be5P/Pv9uf5gwA5lsR+uIUHN1vuek/JLkfBEZlBLDabi0QzHOd5T7KdLuJbLAp+JoBR7nro0w32MiWotqKaK40UR5nuLfZW4pkn3dMNxCXIzxEt5Px8U1Uts/r3Sw3nG6Ci3IrEN82pvu8o8vP0KnP841yPSn6WNPkw4361oh8NQDasDJKJmNWm6h2kfmXIfTrIj8Gl7ltbBb5d/tmjAIgDATBLoQg/v+5VkNKXU4zCLlavCxJN7MZ/pnfV1EqCSLEV9hM5gHiS6FmL2bOoSb4uBcz5xiXzYV7Hhx9LarnZf9DTmC6pGN4Aoqn3HiSkahV8a9HJuAUyc531bljlTrHNEEWvNEj24d6JCMIoYIC60m/vuacz168F2uVFK2Eo9WOtKKVVy3TynRSffACJV4aRwV6KyYAAAAASUVORK5CYII=",kc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAPFBMVEX////r7vXn7fHk6u7h5+vm7PDy+Pzz8uz23K3315j15MT6xlr9sx3/qgD4y4L069n8vDr/YwP8hjz5pnEuBE72AAAABnRSTlMCTs31/9IIfInYAAADUUlEQVR4AezPgQ3AMAwCQWxI9x+5Sp0ZiKTyC5weu2rKFrtwWjK3xqXs8crveS7tHmMfWGi3O3KDbndkQndg/QQOHDhw4MAvb2aw5DgIA9EbEoAFTv7/X7dm4tl27MYHCsFpa1zrZ6nVEhDRGKPKYnDKZfusYl/s6grWsp2XIQltq35gydtllRQkqbWffzc3sLTtcZkX+D+3ZcuNkKsP2I7s6hG/XbnZJ+L6eXs8/eU76iI+4E9h6XcS2raV0j4fkHyKS3j94Juak4/1Fyz9b1InsPXLJ/4qHJzADVHRR+YFLv36QWm5gWmHSMj0ZDDC6kucfcHSNZO5gQvAvOyWagxwcgPz1/NP8vcxwOIBRgnFtRGjZdp6jQFeXdX9NmG+PlaA13auhGG/tldX+nrsA2Q9OBTXsSgA8ymxPmJU18LiwqNtvY+x9/Hr1fb8bPVmL0THDb0+mbXi4XRwg8S9dEQPsLJTipjJSeTsAJZCVEz7vr+EG2oWuJGAbf9Zdsq1Tgfn+4Ff3jvAMNRUsOT7gb++PtyXcEPNANe23TqT7ge38k4+A6xluwn8Prhv/GnirQ/Eu5hUXgc30q3mBDDSfI43/XHT7QN1Fjji4vAur9D9/gQwbi6zcHnZHncCOJUHeTUw8JSIjaQ5XVzkkOraSJojl3deccG83L3P+4RxMMzb6r1J7trf1IdxMNKMIn2Wd16vZuYN9pdmeZibNg6m5sUM3O3xLjuNg6l5IW936zz+Ywg3L5uBfXXiMFiYebsuwqoFG4URMDUvnYGMO35RzszL5aXc0dMiNS+dgbwci4yBqXm5vPQ/loELNmZePgMlRumUYwoDYGJe2iSlXDOqBfEOgM/mpTOQH82RpyZhAMzMy+WN31vYWPCT4gBYmHn5DJQTBi4oGobAkZg3yIs2SUPIuiFPo2Ay0AwzsHNYrUe4KMeRVJcUGNg6pk3ocymMgYk5kWr2UoQMwYfAfOGSgYesJ8EHwOOXTgWC5xVgVHNEyGkROLRLyG0VOCFk1PgKcMiYvgjZG4yQDYLrCjBah0DwVeAKlRUqu4H5UbitBJ93IhXV5Qbm7b1G/bfRVYqjFo9aTGMwavGAbUkZsE04A7btaKA2Wg3U1rIB3Ew3YNsHAfSscHWTIh58AAAAAElFTkSuQmCC",Ic="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAXVBMVEUAAADh5+3i6Ovh5+zi6Ovh5+v////i6ezi6Ozh6Ozl6u719/n9/f7////9/v7y9vl+pL8wbZgMVIa90d8fYZAAS4ABTIEGUIOIq8Tm7vMvbZgKWJMCToQKV5M6j+bTVWRjAAAACnRSTlMAK4/V8/8GlP29kjUMiAAAAa5JREFUeAHs0IUNA0EMRFEfMyxD/4XGDlUQTQT+BzvCJy1JTdv1A6i+axt6NU7zAG2exqe7DPAWkafhD01Ejdzzuu0HqH1b5bYbasU9D2CnyC11/N8OaBuTHfX837HwzmRPA3eAE1Ph36ewwgorrPB1G2vNfaFh58Mz77Cwi+FddEj48uGbv4DwzWDKpeTE4wbClb0sI/MwQNiyV2QUHvbRvh2kMAwDMRQ9Q7aNk/sfs/UFnukiyKWa9eAPwZbEkPkH8BH41IHLFXhOAQHJSSZM4hzjesgkXPen3FHwzmAkDYDdb7CfjcHuN9hCYbD7DbY0Gux+g9dmYLD7DUbSuO5lnbJLgG34Yw0eCAi/AT6+/NSXP3X+cuWfU1ZAApJpk3jZJNxfPy64YCcng32GwZYBg32GwRY+g32GwZZ6g32GwTY3g32GwE5aLqcvgB14XA5Bu4OdtFxOX/nLlX9OeQHJSaaTE8A4o35ccMGdc3XO1TlX51xPXa5ZkTnXrMica1ZkzjUrMudy/4Y/oBRccMEFF1xwwQXHFjRiKymxJZzY2lFs0Sq3WhZbpgutD74BPWLsmdxKFbsAAAAASUVORK5CYII=",Oc="data:image/png;base64,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",Rc="data:image/png;base64,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",Mc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAIVBMVEXZ2dnZ2dnZ2dnZ2dnv+P7///87rPz/AABGsfzi8/96x/085FVWAAAAA3RSTlMGzG4zvmxxAAABAUlEQVR4Xu3ZwQnCUAwG4OgEQhcQnKDGDdQN7MEFgriAGxT0LnSC4pi2ohcfSUpyMuY/lB76XfII4TUA8wpNqZcAwFldA8zQnAWs7HgNFW4aU7ZYA+Lehg+IA26MCYiPD2Jzuyu4IyFXBfcSPiu4lfBJwUQ7NkSxcOLxSa983mLiPOfvkv0oznNm5tLkxujIgXsPbs2YKQ5XsMiYa4xYuPiMSRhchGuMEJiZDlzBYmC9MS7vjCwSzn7+F5z9LF++FSxf+xUs/3BQ8ORfHdp0KBMFl4mMuekQD8c/58SJ5bmkYHkuKVieSwqW55KItUTDrsWPa+XkWna51myuBZ9rtfgEjuylcRN+iI0AAAAASUVORK5CYII=",Sc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAUVBMVEXX19fMzMzMzMzPz893g4yFkJiZoqnp9Prz+/9CpOvG5PqOyfQpmOiv2fe66MH///90vPHO79OX3aIXj+ZcyW3m6utdse540obc5eE6vk/MzMwHw7fDAAAABHRSTlMCzG4b8DRO8AAAA/pJREFUeF7s1st6ozAMBeA2XUi+m3s67/+gQ2UjYoNbKJQVZ5kE/k9SjHgb83j/d2neH29f+SD2YvpjhMm9XB77TMDleYSCwV0YCCWze7FMsLs4N/zXueEbvuEbvmGpeqGbRoteyetgUKM5Ryu4BAbfLOLh72Gjm5VoczKMxodZeoPk+gh5I2GMNF7Hos+EId41WuCwJ0QofIkSJPd4FoyqyaKCyyzTQT4JBtGsRkhcRFLR/hRY6sCoMEslotsDrgSoF+YEGHQ+TCUyF77ASab+aDgMIyk+a6gywGgeSRcchlXulgOxbroEDsLALt85kdbKpiapg7AfXfFToWuHSh+DUfNpTcpzGL52qzxdJQ/BZqVglwWX/25PvT4C0x3KKttZzAj3h2AxwvKlk66QlRMljsC0+SAvF6t6aD/HtENd4RoNI6x/D4enn8jYavhMMlRM85DpEO6F80WvEtdSqWlamxR9FFbN0u242jRDx3L2CNkPe2K9fHXtVGJtn+AcPG09NcCmMl3tfwMrLnd262DUlXtJNX0aZZhLbtR+2PCiz92BWaaHRA4xJJu9MOjExdm1biV2ltNXEQ07YTpHqWtpuJVbTdXynNO13O+Dzct8IbgduU9XyJPkjsfMa9nsgkWy+wmmOVaumIrmTzCHVuoeWBYabd03sYVmyx1wzwXDBLdUTzmxJ+0EA5fcb4cxKZjgihtdDv8G05JxM0w7bTnhugDidLLr5ZRpq26GVdwMwDB+U3DX0ldTyTjDgEi32gLziM2i023RHfMkueVeJ28im2Exjxjmh1ZdHCx1OPkZt4umthlO3zowjth+5/Ly4iGX30TKcJPAUw+70tmNWHy6tQu4+d++3e1EEMJQAHa1FK7WOLERef8HNZB4rGwyQujITc+Va+x8ych/loX9cX06hvsMV02ILbF+AoAswj/avXeRK+H278ZP+HAhHKG1PpOUa/iqC9N3BI1LNeO3VH+FUaVrXIJiLlOwMCGU8X51Q65uPz+jO2VVznEC1i4VNTIoubmiVPVnhVTCOFxIh/sh8w43KlQPmUw6ZRhudaFkaYmYJCBjuFLRk0QUhIh4GG5uRu3jtHg0V5HdtCgaJpqCiyARk7wmjpOFwAqcVbFa+kA+TpY+sgJXEB1qbrGHzrQM89zyls1gkpkFvZAdzDNbGF6FdeL4pi0KYgDL6TY1622q2MIyujEXa1j6o4j6+qP0RxGyCj+GRw5fmPqsw8Tpr+OmBNcUpiDnB2wSyBhGytmRYiGygF+Nsgd22GGHA1EwMPGsYTiHkA1MPMu/+eLwhsa1oTvth70fO+ywww477PC+Szi3Kqf/dFMVb9suWu26WrbvMt2264NfwUOKGWhxOcAAAAAASUVORK5CYII=",Tc="data:image/png;base64,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",xc="data:image/png;base64,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",vc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAFVBMVEXl+OTU8s45vzn5//f///9mzmWk46NudVGjAAABDklEQVR4Xu3ZQW6DMBCGUTtwAE/oARJLzjqolDVV5wREygES5f5XqF25zoIsmN8bIs23f4LZMEhjmM8E1TAbngisjdii2LGZCK41PbmWgSZLnbH0wVDf5AzRgOEfoogZLGMD9P74U9jmsWLFihX3D++vHYbH2cfCHcHnZJNuALz3uaMc977UifHuiQ9inCa+dv0j4iDFY0SnBG5R34X4K836P/tFiPd/D86PPgpwJpfyDichnuOkZfogxHnkPLQYF7ElrFg3RvlwPgvNarzziw6r8bzEYTX2L1KsWPEixYoVD+C6wRdd/Yp93bDd3wrFihUrBnpzDJVxi9kpYotjV3Vyqjp21ZzZ6g58VafFX3XCibGrkd94AAAAAElFTkSuQmCC",Vc="data:image/png;base64,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",Pc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAG1BMVEXX19fZ2dnZ2dnZ2dnv+P47rPzZ2dn///96x/1nbFiqAAAABHRSTlMCzG4b8DRO8AAAALRJREFUeF7t2TEKwkAUhOGnXsAqtZW1h1BzARfSRsI7QSAnyL2NpBN2F96AxfJPEdJ8TcIUu2N27DyU8WJ22mxQ3+zg4ZztGsdv63xaQnn6aO59DM/uG16CAWcCBoPnNWUz9BX8SIW8Kngt4aGCUzFVfM+mNQz+PtOe/S21ifnPv5+sVUyf6fNfMX2mz/SZPtNn+gwGF6Mf+/ULB/2qQ79kAYPBYGn4kSYnaeySZjZp4JOmxQ/Q2laaGT2ytgAAAABJRU5ErkJggg==",Nc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAclBMVEVHcEzu8fXr7/Hm6+//////8ub0+Pu02vfl8/4pnPX/lAD/zIP/2r3///9Ufplyv/n/kI7/v2aVzvv/UlI8dZz/ZWX/YmLh5+uXl6X5k0T/uFUAS4A+pvb/nxn/mxA3ovZwm7j+k5O7lnfUlU7+np6Sfl4sKHjqAAAABXRSTlMATtD1C8ow0P8AAAJ9SURBVHhe7dvZjuIwEIZRIF22sy+s+9Iz8/6vOHES9MuZ9iBBXJa6/d1wwcVREWKjIM9080W0ZStazGd9H4stc4uPzo227EVaxryMLdrr2wEiZ0t04LwfOGetHznCvJwzRzMMzDvyd4MDHOAA0+GcDJ0PxAfTJUHJhdjgQ2J0YIPPJnxmg5NRPw+u+9KM+OGhjBlGKTOMMv4vF2WplokZ1pGWMx8LSIarzLxk1m3MmwRgxm2RAbYX4AAHWEjZjFKdJqVTWMJDGivjuHQAw7XB1zi+uoHtrnI+segdkSMkpXABY2CwlhzBKvcAY2APcP5t4ADL2016gEVxbCvEVDBVm+XQpiI7LFbHrpWYBqaWRRvIgOFCfh+ulkaVBYYL+T14Y8IbwGkL09gdy6p15UvwcpQJp3C/lqUDmGotkwaK46himFe7jZoEvqN92+fnbrfT7qg/v3T63dvujn6TRrL1Onu8vgJX+1bVrf6FC+12dudC1sh6uVw/Xl+B7xoFPJ54aF9NDuuPsauwwnvdNB91btwpjVT/+3LR8yclL8C4Uyy3E+65qRYQwOrZAkKAJ1sym7bnS2bdNukmARgyXBOeclsEDBnuJLCZHcYPAV4YP33YYRRg8gHjIS8njIe8/DDhrxMmGCN/UUr9e5kLGFcZIY3VSVK7ge0zpxq7JMnFFYy/TsxoePp/cAjbozQlZhj9JDjAAVblKR46lYoPVtcYxVfFBpexUZk/Eo7hkwmfzKcbDuF4FAb2AgvV6AQj3CAMzATD5Ybh8sNSipwXBuAVZl5AEPOSiZg3CcS4LTLALxTgAAc4wL6OpHg7hOPt2JGvg1bejpb5O0zn7fjgXw4zQKl16iUIAAAAAElFTkSuQmCC",Dc="data:image/png;base64,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",Uc="data:image/png;base64,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",Lc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAADwCAMAAAAJixmgAAABOFBMVEUAAADw9Pvu8/ro6P/w9frw9Prv9Prv8/nu8/ro7vnm8Pr////w9PokS1okvbotvrsbu7hUxsQTubY7wb5Fw8FKw8Ezv7xPxMJaxsU2wL0MuLQ+wb9dx8ZoyslhyMZCwr8kT15LxcMGt7P5/f4nWmdjychty8rN7+8mVWPr+fnT8vE/lZovkZYni5AtY2+16ehv0tFHv74vanUlZG+w5ON61dM1sbEfoaI4mJzZ9PPF7ew9nqFDi5L0/Pzv+vrJ7e2q5+YqmZwwcXosr64knJ5Ovr0ha3WS3dyI29l/19ZTysczjZLl9/fA6+qq4eCb4N8lqqqjtryi4+JEo6Z5kptHg4tyzs04o6UggYcceoE8dn8ccnrf9vVx1dOG09JAvLtKtrY5h4696Ojv8vNAsbFMbHnM1dl/qa9z+BPfAAAAC3RSTlMA8H4L3NC6sGgtGd+CbfEAAAqFSURBVHja7NRBEoMgEERRhqiAzS24/x1jtMKQHKGn/87lq2lJSy2X3TpZtpfc3Oi9Mp3Vs/z691Zi7k2uv+c9On3HcuRz6wHaznnfEN5L/L1xgD0/HY+39jDVe9DWZ2OArjHcZ59R5/lJqH1ycr7ARu9dxJZSC+BdxM0XDep80yXCgf3EJe2xwHuyEIsG5qsV4xee4C4wawKDPIFBnsAgT2CQJzDIExjkCQzyBAZ5AoM8gUGewCBPYJAnMMgTGOQJDPIEBnkCgzyBQZ7AIE9gkCcwyHuza2e7TQNhGIYvIKKxGzsbhGBECIKKIrEvEmURUCH27QBxAAdw/3fArHnN2OnY9bidA7722NHT759/mqb/weH+M/lwPYgwocF4b4+yGMXBwXhHUYqDg/HGKQ4LxjubRSoOCmZfzTT47NnoxCHBeMcSbMSPB1GlD/DheLzxRicOC8aLeJk9GESUgGC8pmEDXuYxiYOC8dqlJcFxiUODD4djI6bhLCZxIDDe4dA2DDjL4hEHA+N1z7BIROJQYLxuw9IbUcdBwHhrG84UOH8ziCEBwa+GKtsazoooxKHAeN0tLbim4ijEAcB4EbsNK3A+iUDcEYx3B28tOI9E3BGMV4G3n2HJjULcEYzXiN1rSXk3M11M0l+DdokSjLd+pC1XfJ26uBuYeXbExvvtHrlm8+eDzaBBIgQLr+G6Db8+c1Su/O7wN7P7pwNmnuW3cy316L0xKu6fFvil9FIxS6tP72yE+MTAeFW7laXVrxfxiYDxJrZgyNq7d6T3wocO3vFM7X/E/YPxGrDbsM/7Kd3v4NXgZXH1xMB4Sw3bNPKmiNt6x15xeDDexPbL1hLxexG39lrwMstSxL2D8boVN/SmU8TNvXqAVMGITwb8LlGx2jZeA57eOoZ3yEgLcI64VzDehIKt2eedpOlEgRE39spsvAKMuF8w/SbOPez3Kq0CI27upWEDRtwHGO9uUt+wv1/hBXwOsd+7A9icYQkuEPcFxgvYbuknXq+d6FR6zyH2ewGPzJZWYjoOD8a7y0i38D7MhZeRFkHs91rwTDe8XCqueCTisGC8IjRs08BbFBORUsMi5xF7vFrMls5ENBhxH+CPkguYW8nfby655TMswU3EP7jqGWnZcJYX8pnTq+HBeFUYaRu/V4BpmIr94q/fb5Zy/fqeuYdNwxPxrHVPYLxuw028BRVr71R6veIfyfsr/z5tj2tJz3R6bh0ejBcwDfu9Uqz6VWZGGvE2b5K8v+SKN9eS9CIOCMaLmC395MKR3nuyCzvSKWAtXi0Q13qTHVf8mi2tnzhF3B2Md17fMN76SC8jbcjWi3irN9mpipd6pgsLnp5fhwYf7M7n9d7nPq8uw1xLnOFNw4vF2y3eXfs6zypi27D98a3WQcF4y+TG3kwWnJfvYRnpRUzwGnCdWBVsxBKMOAgYL/dww34N2HjrzvCiXnx7syzqxSwtNTDnEXcHH8xlKoe4iZdP0zjDpS2NuOoFvE1c0LB42GLdGYxXxeEmfi+fDxdF7pxhKxZaxHh5LXPZV8RsaXM8EHcDH8B1yB7v3lKEkTb3sAoNCzBivPMSWImHdWJGWoERHxeMFzFgn5dPD1W2nOEV4pJ3bl8I8PCOI/4pFz9g+aTHxwfjvTi3aedV79OZafdXaRd8+fLbkrfScK24fIbVrFxG3BaM14KdLX3X7y03XFTeDzPSiK23HjyuiCWYkUZ8bPC+8BowM93E+/SbzkNyrZxHTr7ofBb58l3nRTk3dQwYccrSWq0QtwfjtWDuYeONIkLMllZgxO3B+5JbbTgirxCztAwYcSswXs7wPD7vX+buh6eJGIzj+Ato5I8bE9jIWOS/AoFEDCRMMRLNMtQYJWqIGsX3/xbsjZbv7Z6e1/ParL83QD552nLd0+tpsQAj9gfjlWM6Le+DjUtWaQPe/j/wS+E1SQq88fN+Dm82G9KIV20SnMLaa/6tN160EBe8KS3S2ltcpc9UfTDiVcCMaS/xus2OzobNgc3xXV7d5ZvJ509Zvpp8Mdknx0VvfvOAtz4YsVyz/B48zGstfvthM/m+n6ss486qfJbO0rmQ3uln6bWzgI+W7Id9xZpb2A/LR0vExquz2ymAjfhiveAVz9JXzTcPh6tyDvuK+3I//Ejuh20yL2KxH3Z7p4c03vpgxHBNfMVdx35YR+yH8SJemQa7vLdiP/xLNQEjfliyH56rEh957ofxIu4W5rDLW9gP420ClmJ+4qkWt3NjutAfBoxXiAEXvDu3prnEHMbbAIwYLxX2EevwQ7xrP4xXigG/dnkBL+NtCpZiwDof/i0+PrJz2NUfzsbhZJV+NlQEMWDh7dsC2wofqiBgxHDpLXmLdZz9YR28Utw2YOE9KbZa8DYEI15wVNhTnFVY/qhFhfE6xQ5vrj/Msa8gYHLl+B3eiHcqxc7+sF208IoMB/rvSC/9YQPG2xyMeAFwTfESFZadB7wlYuE1/eH2fasFbzAwYtkf9hK7+8N4y8XPHd7ckMYbCkzOFooVtuZKsegP2yMP13hLxE/2bZ5mOWm1zDOr6S3hDQlGjNdqJ22QCvFlSX/4eldVZTjivC6HSzm29E6FByOec5/i8RDL/rD0unM+kue0OPOANygYsTyn5VljxxzGWymeB0yF9aj5GPvo4QtdYzmH5z3Fi/kK4/UVA7ZzGG9gMNmeM1pxQJx2pjMHl4X+MN5qcc+WmOPDGow3DhixMRM/cb4/jNdP7Dov/V5FBSOmxBTYT0yFt/D6icV5abwxwYhlhTveYrz+4s2JOHeaFm9UMGJWaV7yOPETL2+NFfEV54c03ohgsjfPKp2lrngNr38eazGr9BsVFSzF7td4PMR4a4vXAOONDkY8R2qJ8dYXm6ur8MYHI85XGPBKlbg3bvI6bSbGGxEsxR2NXdBcHbwaXCX+81s1fIEYb0SwzGnHXeHI4lbrrZoJGLG8AyCqGG9ssBSv8N7SFDiqWM0MjFiAWz/KxHc9Yz9xevd4qNOWFrvAmjzJkU22We/dqDpJEaxOu8YrwF3RH+6dqlpJEqxuurw/DHgiLvSHl+t60wQbccnlQ/SHZ+9tDEZccp8WtwDqLM7c2xiMuM/VNIi7ufPSSXibgxG3jVjM4ZS84cCIy+7EG+2pBNIcTMbt0kVLZzEJbzgwYgtmDifkDQNGPCj7PzxIxBsKjNg5pNPxBgMjlkM6ofoGA5PdgazwUkIfewgGRjwqVniQkDcsGPEK4n5aH/MICUZMhZP7eElQMOIMnObHWkKDEbcmSezDJeHBiNP0Bgcjzrz9RK7+jwcmw16S3ghgxN0EvX/bu3ccBGIYCMPjZJ9MbpH73xEEuxuEaJHQeP4q7afYtX8AHuK/218fejRYMIMpnsEUz2CKZzDFM5jiGUzxDKZ4BlM8gymewRTPYIpnMMUzmOIZTPEMpngGUzyDKZ7BFM9gipcXHLnAgfl4dUrXD+aMNRd4RcmxxKeyYG8Zvrifyh2IBOLLGwBKkxf3i1gA1GiDLGjuffii4tHW0rTh2dKStOBVnVqKpoqjWwrxdMNVTTDVS8V7WzTpYsNHtQiTo1R8aS/rLKeOeS07RneM2G+agjGx1gAAAABJRU5ErkJggg==",Gc="data:image/png;base64,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",jc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAALVBMVEXw8PDq6urr6+vr6+vr6+vs7Oz////V1dWgkuppUt1aQdl9aeHAtvHs6fvPx/SyrBd3AAAABnRSTlMCbsz2/xuR/wX0AAABhElEQVR4AWJgYFR2IQsYCTAwsKq4kAmcAhiYXMgGCgwi5Gt2ZFBxcUsjC6S4ODGYuKSRCVycGVzI1+wyqpl4MKq5HAhgNIIBYMessRqKoig6OyYS11mgPdrHdpLfoT3aoz06CaQ7a309OOTdZsd27F9b7y3iD/wXOSTJbMgpCZGYO/9FDknyw/Ly+EjoyS2YCK2+Xb2BkdDqntUzQOjJKzAWevIWDJVO3+4AkdD6t9vAVGjJdWBNaMktYEFoyU3gSGjJT8CFsKBc3yIWo4WC8goJMcySJQG2kuRRVZLpS+S59K9dLiKn/GHpciwawILQus43wJ3Qks+AC6Ehx1qBJx/AUGjJHWAitOQuMBVacrwV/N6qemNqYUgKf42cVVX5ctofliLb4yJHbgN9oSXXgR2hIcdagSffAEdCQ46NC09egZHQk7UV2Js+MBF6+/YWTIWefAY7Qk9uH2xUlWHTD3I4oQlJ8m/kcEITkuT/yy+jZOKHoikniia7KJpmo2iCj6KpRQA/mHLksdpV/AAAAABJRU5ErkJggg==",Fc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAGFBMVEX////y9Pba4ebO1NmeqK/CyMxmdYB7iJKIfN86AAABWklEQVR4Ae2ZQUvDQBCFX9uC1zSI55qLV7F/IIdNvVYwd9Hk9VowxL/vVlYm4mYrk4O63XcosywfbztvKWUHwKxQKYOOFbpQS4xV1vPjh0LW9Bp5sYZKcws7Y5W1haHU78ObL5J1zLBKEeUsLYsZTjm7lXcdD5xylhaJYoJTzqJo4ZTz/4UvTQUrY0osjVMpld03probadgVG1htecAFnQ5S2f2jXoNwP4SfpHIwyxG4/eb8LNUn/HLKeVHXj2RV1w9SfeznW9LXsOF3tlqQO0Aqd7Ilmfnh1jmPwQ0wI29Vzg7e+eG96bqOwWPbxdrfMKeQ8w0JHbw392SrhIOXpNlY9WG4y5Q5k28mQwgO5byCyHtJwjkDWmfX6JGGaZytfnq3Tzvrj90rGnZuP/qi9H97uBMDnHJO7yTpnSRGOOWc3rf/Lqwfv0wb/ORTRk6Thl3Qw1MHfFip2XfLetCO8De/bwAAAABJRU5ErkJggg==",Hc="data:image/png;base64,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",Yc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAJ1BMVEVHcEwAAADJycn09PT////7xc6NNR+6RSj/aob/6u//TnCONB/oVTHIMuxnAAAABHRSTlMAE0mpI0KUswAAAT5JREFUeNrt28FugzAQhOE04GTt5v2fNwLRzoVFilr/DtHMidsnrQy7wtrLmi80iygWjVw6culs8HWasUzXRdzcGc0qr/DEwtMvPMMxbNiwYcOGDRs2/PZwuaUpXeHbQQz/O3zfyXnhElGHwK01ySQcklm4SiZhyTAsuSPcDhMlh7938mdY8rlgvtTI4XpsWcCf5w6vEwLLxWG5MLzn1ojSBc7boqpQ+sJZ+SWjcGmSMVhy9PyA5DIP68zxsJLDnqsP4PZSosCw5BPAaKl9qjvA/CfzM5sE3xb5QYAfffLxDhj2koGWGW9jR0YG+iqZhCXDsGQMThqfgv0RiI+G+VLnh4sdBORWGJaLw3JhWC4Gqy16vH0d9k0bCg+7xvWNuWHDhg0bNmzYsOERKynDlnBGrR2NW7QaJA9cphMNs08ubvVHH6jV2AAAAABJRU5ErkJggg==",Kc="data:image/png;base64,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",zc="data:image/png;base64,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",Qc="data:image/png;base64,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",Xc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAe1BMVEVHcEwAAAAAAAAAAAAAAAAAAAARCxC+DkgAAAAAAAD4El4FHB4QYWcLQ0sXi5ESaoI2BBXURvyXl5fgEFWeNLyPCjZEREQl18ysrKxSG2IgurAamcMp8eVwCCofuu7p6elqamoiJii+vr5RBh/19fXFQeujDD6GLJ////8uTen5AAAACXRSTlMAj70r1ZT+/gZ6h2ZEAAADnUlEQVR4Xu3b2XLiMBAFUBGgibybdd+XzP9/4chAGyJFauGRNHnwfSLOwyncJVuV6LIq3U4PlmspCdfnz7dwQ4pIyqDX6bJ7PvsVEM9kOXYBjyR3BMLqf97cjzuQyvBSD59f3bPBnURSTjfro5L7/JFMljMtvH+F93r3JLvXh9UX8+V1lDGnWnn+dOd6F5QbXVtd1nnCsQzPtGOGHbo70MODSEpRWx3W488k9mOeIjzVuxvZ3TypHoNK1I45oca8f2clvUjA+GtAWVMHrXys3OO7K6nOd5gflDFz05h38NZKUmDTmDPTmKdvrKQJ18Dvr6nh8I2VNOAErIx5yZtko6wkCuapF3jDSZjnHuArt4D50jk8Ais4nrmGC24F89QxPOGWMM+cwgNuDfOZSxjegONk6QgeTQpOwqrdHNaoJIx2YxhVAjbYWSP4hCoBh0gLh0oLx/8L3q6S8DYsxmwrgnYwtSzLCr7ZeRxQRRht7yyqCGNy3y6qMrxNvbpwUWGM10GPSz28CnKjEQ4z5kOpwEHGDBcCXoEf+Ksk4G3macAkvE283mgV9vrshMVYhtPsVU1Q9W2PmQCEjarnLL4uN3UBuANJ8xQQ8G0v4DfvufCv0fLn/fF8Pu7VX/2R4xaG+R2YQ2BYuA85LDwVznA6HQpgKsGHe4T4+OQUPgq3UoR8/AZjQPrZFbwT36cCxBfbBYLVD78MbuEWbuEWxoei+qRUrziF8TWgvhvUKy7h+sWnvg3VKy7h+lWvvv/VK05h3NwoOx71ShMYxI7zR7jezkl7PNMVGoY0Tyv4vr+/oO05cbLaVslSVtYZLyCAikHYux3nqKqwyMUbnAjMAHucdGaCv3xO2HCrL8A9JtXDB+41uQ72vpRXP8Nj7juxBEsDDjNmFuZGY3IFHgdxOeQrhIknpbdnJ5PUYO8ohmpou/3forO0cAu3cAsXk1NQGNVRFG0aAVkSE7BZjZrC1bEoo81M6r/Ba8WmYRCsAxhte3gQOYAxM3t4ErmE15ktXERu4XVqB8PIEh4OLeFZbAVfIwqmD3bT53cZfUCZPMpOw+uchouIgOnD+wgbx8yoUsUI6LoCDatjZmRrplFBg670MCDO+jeqpNBdD2A9ojXTuIRj7nr0WIdqzdjXjqiuB7xIHdYlWjONilZ016PLWJ9ozTSvlhlqcn2slhGtmQawsSb38YlluipXeiXRML2msEyH9UHNSmoGG2py8KgP/gXuqa8ZD639xwAAAABJRU5ErkJggg==",qc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAilBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAwBh0SAgtCJUsMEBMOUlsp8eUKOkDfEFT4El4GJyon5tuuDEIWe59ZByKUMbAQY397KJIcq9vEQOkfuu5bHm0k18yBCTEUe3UanpYhw7zURvypOMkesql1dXX///8Yk7zm5uadkJS/v7/Dw8O9vb3Ona1dUKcyrwfVAAAABnRSTlMBlY/4zitLNPvRAAAD5UlEQVR4Xu3bh27jOBAGYCe2h029y92pu1fe//VueTGjoUnFMHcuwgH6X+CDNWYbggud9eNqCd+U5epxvbjkAb45Dx/uCr49q0l+L8BS/+Y1TJL14nEa+DGgwkRVXk4DLxcwUWaYOjM8wzM8wzP8x+tn5G/DMzzD2U2Y/Sewyg83YJbu6WF5jKIo/hLmSZomjBiOd9Gv7ORXcJHqVKTwIfrI8Qu4Sj9ScDJYPkcmahRmqUnCCGDzmU3ybAxO0iF7GvgQoZxG4H2KktDAcMLywQtXKQ4ngrMcy7EH5gl2K7LhpDCcSxcusFsQDqcjlp8d2C4wJ4RhZ5fZhlmKw4AIdsucZxZsF3gPZLA7pnbyx6f77hSYFoZnLB/lu4FFZReYAo4zBEurzJm4uC+QjBaYiUC423TNYMf2YH751/05OleKtj/3YXC80enK2FPmGOBPXWBpwQVWdUQQXGoX2ycL1mUWgOGEY1WnDYI7jWJb5hYsXn+ABVcAXNRaNelD4HhzlVIpDAO8gAUXfFufryIC4HLj5pRjGCy4MCpOGwB3G09Kdcx9cFFxn3vu74fjjTcKQNsY1irA9uyNuBsuN/5kGlNygLUKwHo/3N4Nv43Ab+DN09mfp7thyBq/3fjc1q9uWdgikSmfHbuu8Kryd1Yn6dqdvHa5U+BaqzwIxnZpDSgJTuS2tlREBsPY7ozqxkyWfS049TG1xMX1238LsmMq/pa6crcq8qYkBWzUJ/xfvfH/1zYFzIw62E4R5UUd7CYLg7HqZAtOGoQiOxBmbX9jErwxwXZNFgBjFaf3FlB2WMT23XB99kfctYpuyrth4XdbtBS+AFoiGz+s7ob56CpXFR8b98tmL4+elRxdRwOGU+0rMPul6rBhe6u3QtrOfGUuA+Cto9Zij44qPy8b+twcm2VcOrYKgLmttgJ3Opg5wmgYNcGubRkAQ22pdqeDDYe2/KoJFjeDXUIIvDUqu3wCdBCuhmNq7jTBIDO2CoK5nqaMetXKQgfzAY5O1zs2GQRDa+3VWIry1+tncrs7gu2GYiPAkxHYOrDHxBsBp5WFmi/K7o7Qwk4rC8HSboLRwk4rC8PSboKRwk4rC8NOE4wOdltZGHaaYHSw28rCsNMEI4N5ilOBC9tlVlTwdYFd2G6C5RkB7Hb9Xdi9P6CBqwTBfASWJwQfqGpc4AL7YTSmdjHdcNqjkeTC9v3BUZLOXIkZSS5s3R/kimrmwp+bgQ/GjeVTRn+NW6V7+BKGWM8d9DAwuAFD9v+4qv/uzPAMz/AMz/AMz/AMT/ZAY7InKZM9wpnu2dHiYQr3YZqnZcvVhI/pJns++A+TixIijgLM8gAAAABJRU5ErkJggg==",Jc="data:image/png;base64,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",Zc="data:image/png;base64,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",Wc="data:image/png;base64,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",_c="data:image/png;base64,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",$c="data:image/png;base64,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",ed="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIEAAACACAMAAAAbIvrHAAAAQlBMVEVHcEwAK0sAFi0AKkkAJUEAJEEAKkUAK0ocTmr///8ANFnO2N8/aoG50s/n7O9/mqtggJeitcIAL1EALEtHi4B6zJz6YwSIAAAACHRSTlMA9w+oSC5y2SlKWkgAAAInSURBVHhe7dzLbuMwDIbRXBuSutvu+7/qTGozCErXu/4ECn7LrE4UytDCyumr+8fjPIN7XG8n7XKdPTrPj/sGeMxenVeCAlwIl/+A2xMwCb7pSbiuS6AAD8LldHlKRNwIt9Ndl8BJ8PHbghCEIAQhCEEIQhCCEIQgt5Iqc02jk4OABr9XMlrQ+HsDKqDCtgIUUOW9Gk5QeLdKKEHjH2oYwZT5Veok1JMKCkYgxXznFwEjyKw18xFBBEMBSTTCCljL8qoiBV0BVZwEZW/roSbR/ghaWhsIQVZA9TofNBUUtMCOgZegqqA7CYg1chJk1gQrsIOYvARDBcNLkFTQvASsZbTAbgWsgJatVrTlrd8XTPnzMMAaLIeAxV2QAYLPw8hdANgLdDwGkN241caS1+gthEAbzCObpYUJ9HhSG4kJJeCtghbYc7KXoDuvgT2e4AVJBd1LUFWQnQTEmmAFdhCTl6CpYHgJhgoaWmAH0UvAGsEF9pmMF9itgBfYZzJeUFTQ0QK7FZwExJqABXYQnQSTGUSYwB4OEII21mhvDAgh0LHfHwOEgK0gqaA5CTJrBBWQXYIkUEE3xyP9CDWJ1QCSYASDldBJqBd+lUGCzj80BCSQyrslgQk671UJJ5DBtkQCEBy/5QEVSC783iDBCTTqI9XKNZWW//wbUSEIQQhCEIIQhCAEIQiB/y1T/5u2223j2Qtw9b9x7XzrfL6bm/fYHivA+98H/gEx1ciJsaYnsgAAAABJRU5ErkJggg==",td="data:image/png;base64,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",nd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAADwCAMAAAAJixmgAAAAYFBMVEVHcEzi6e3i5+zh6Ozh5+vh5+vn6fPh5+vy9vb8/Pr///9/pcBQhKggYpAAS4CMzLLlumT+79/NtWPi9Mf/37L+nYTK6Zf/v2X/fn7/yoD/v2b/b2//UlJFu3cXqVb/0I6qQ+R7AAAACHRSTlMAR5bD3v8cgs4TOxUAAAR1SURBVHgB7dxhU/o4EMfx0jY1u6HlYltAFH3/7/LwLsxy5zT/Yiji5vd95PDsM1tDkzgWF63KqjbqqqtyJUapKY3iyub/3iejvKfisqYy6quaC29tMqhudHsj4spkUhVZrxSvXI2RLLG6yBqpOYFL4bLShFyewOYcsdrInCuKVWS+Cme8kieaVSfPdCUDzmHEVVFr/g2WKDDrwoRYeSYEMMAAAwwwwAADDDDAAAMMMMAA3yXj1uu269r12hn9YOtOVql1VjXYuu5LzuoFb1pxSu1GK9h1EzmVYFp3k61JITh4J8T6wK6L5rSBN5c6DnUXbXSBbfsncGtVgV03AZacJrDtYuCQVQR2c8BOEbidA271gE0XAUtGDdjNAzs14HU3q/VvBQPczgO3asDdzADGIw0wVunHevGI5/S9WsYz6jYP8Vp928N4ThHYzAEbdUc88Zy6Q7x4rVV3TBtvg4P4Xw6m+FUL/XowLtOYpq9LiTWCmdReiONPHiLvXIZJNZgjxzo6wS43MLvcwOxyA7PLDcwASwADjEULX0t48cCrJTYPAAMMMBYtfC1hP4zNA8AAA4xFC19LePHAqyU2DwADDDAWLeyHMwFjP+wyAzvOC+w4L/DiXvwDMYABBhhggAEG+K8QwBcBDDDAAAMMMMAAAwwwwADTGWwzAfvgfe4zAQ9jAG8pBzB5Afc5gP0QwM/P221PysHkh1PjGMCnevs7wN4P3y2An0/gb9f3/p5g8kNSu3FMAgc03Qucwg0THnfPAk4jLw8ektvvxv2YAJZoeTAN6Y3jfv8p3qZH6eDlvcPJ+1kCWKKFwbfw+n2o36bX06Jgn4z1xLwPMds+Gd0vCaZB8kT8jYgvwd+LbL+VaDkweeFyQkngkJD75cA8nCP+aTDb7bnlwF7m+/NgmbFfHsyPAGZ5ppcCy4AfAtzfDUyPAaZtCOBbg/kxwAwwwAADDDDAAAMMMMCPDvbDy+GzXejw2cv1u0Q/vr596XX0fGVmc3z/0nFjbgSm4cT7Cj515ajHt4lG4iuizftEG7oJ+OMwBd598Pxo/zbZ/goxHd8nO9INwMNhGrwbkuYrjUnzlTbpYC9eAcsHnmfm36J5npl5j2ZSwTJgEV9+MCQNWBqTBixtksEvh8uCV3rhmb3Gwa88s2McfEwGH/5b8Eo8s7c/xDN7/0Pp4AnYd8HRz2c0BVsCDDDAAAMMMMAAAwwwwAADDDDAkvIDgJe4V98RzxAH3/sQjxc/xPNx8L2PaWnxY9r4iO9/EM9LH8QzfUx7P/iKbnPVQotdtUhDynwlSrtMk5a9TJPrUulnr0uJFr4ufcAo8iH+YxrAAKsIYIDVBDDAAAMMMMAAAwwwwAADDDDAAANchx+IVUeBWRdV+Mmy6mxgVkVpQnk80WWxMjmM2JrQqijMOVL9GxwqCnmmjVU/X1OewI2RLLG6yBqpKU49mWx6Kv6pMplUFf/W1CaL6qYQcTbeIK6M+qrgDT1lsl5JTWkUVzYilVZlVRt11VW5KqS/AU7/MH7Y2dGaAAAAAElFTkSuQmCC",ad="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAARVBMVEXZ2fbi5+3h5+vh5+rh5+vh5ur5/f/t+e6+wsWNkpZjaW5VXGCkrq13fYH7/v/+//9ivsGQ0/bJ6ZhmvvSn2lJj2uAqnPagIKT1AAAABnRSTlMBK5LX/7zdl8JuAAADvElEQVR4AezWBZLDMBQD0OCPvvH+t107KuOglirj4BulOPSM07zIMk/jcMi0iDPRXRd51ou+8s4jbyYLvZGFTRpWnr8Hnge6evl/w5tg+7bG2+c1fpcPvMFDjMEhhtFUJkAJe7xI0sEpXiWpYNCzFt4ggsMtHDQw4i0cIYH9HnYJHOJFwj6zCL4cPPQwhwbOJ6/PvkSP2gme2BaXwAgH9hxIYMvhJtkkcMEtDA1sJV27yYoAvpBzm20k6R+BTLYtmBAu1ULmsKqED537NFPClPfoYft3MLL3IYfhTf0O2Jl/BMOZooVLrU1Obagbl1JT6rIVKdy1tEfe2HCEiwomtdBVPmrKKWEf1axIG4MuihVt4wWMCRt/sVeGPW/CMBD+MJR8mewFyvv/f+rKCfv11aQR7VRtE9dAkmLzcIkFMFl3cnnHsbyiAu5LuQFcRE6c0BRcTN4An0Sj17swPfvc7zk2nca+6diQ56kEPplYjBgdn1gtcnxev+6SV/S3gi/wBS5/DKw4Bs2PAnB9TB0dGYy8AZei2gaexf/g670+g/1xlGYdldracufOcy0hL0txsr6z1PiJn8vUngjg2/xUU/2+m3Udx+hAzdgEXn7OI02FS6Dv2B6xtKGWts5jKZdABtNm5GXOmtra1jr2PHBMm6G7YSzUkXRTu5O3vl+AIFcv/OyYalnFNrhgdvQD+c5tmBwKUbDsvCeOcc0M5wz0HrYttWLSIys8I+bpC0S+I9gw9xio6tq6jg1SNjDGaL2qDscGdv/8UDZRc9wRogG27OxYIQnHBsYIJ7EuhIgVV0+I3sCYWIMcnKsHYIwcaZ1P1rY5zrkhGuB0nwD2a9YATigKMcfSR6s4OP5Jjvm2AAeIXae2O8Yst7jUbDk4Jk9ijiVlsB047kPRbI/DFXYcPE3Ll2vh7fdW2+pq9WiNVep8c80Wk/Y4PM0XaWIjaFJXUtXsWOuNVLuOLWlh8EJmbSMY3FTypswMDiXGYE8xoomgVlYPilDrjGiy+3eXGrBdGFNpoQEsCmGskqIAVmgfhyVLVS0GDu6jDRsDhskO5rV2xxaDcbiel9rAEhw70FLNZXJMdHOZHas42P244zBms9Exu+cGmMX0HQflPU4CLI1ZeY+D/guwqEv+QcemLpjUAbPG4PTKzMqvzKz0yhyC00fiQPkjkZQ+EkOwPnwWD8WfxU4MfxY74M/qAp/XBb7AF/gCi35UAvCPz1v+PciWFKaBsZgJtu2IjtaCAeNAbbQaqK1lA7iZbsC2DwIAPG0/wSTMit8AAAAASUVORK5CYII=",od="data:image/png;base64,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",id="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==",rd="data:image/png;base64,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",sd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAtFBMVEUAAADd4+nh5+vi5ezi6O3j6Or///8RVcuK1Kra4eYGL00UgJDk6eze5OhwiJllf5Ho7O+Vp7P8/f1adorv8vSClqV7kaEyVG2ZqrYJMlAYP1rH0Nd2jZ1shJYrTWchRmAROFXr7vHO1tyKnqyGmqmEmqhLaX8+XnbZ4OS7x8+vvcatu8aquMJXcodRbYM3WXH3+Prz9fa/ytK2wstFZHqisr2Qo7CLnqxAYHfU2uCOoa8uUGlysB7cAAAABnRSTlMA+tdHmJmSP376AAACfklEQVRo3u2ba3OiMBSG8bLZxoK7RtqKIKIUrfdru93d//+/mkNkYGwHg9HgdM7zxZPJyDPoe4bABMMwatUK1UqlWjM4dVoCdX6+lNqMaIXZlNaMKrWJdmxaNSqUEe0wWjEoJSVAKYq/5puKf+ZwYv4euBMQzl0OKNYmvqFw5YBifX2cBiwNUhbJYAEovqgY+xjFcuGSCN49IBkyFF9cjH2M4qKLvTRIZ14oUKwuxnU1ik/1MbkKaeRQrEGMfUxO803Fctka/jpiR2z4GJAsbNcb+/7ec0+FS148axzxh5jwYZEMEz+ZHVk6xTMnne6bFxJPnoD/cEw/Ll8/ie0uHzvLx+YKJvYX7ePfcMjkm8fiDh8GLlQhzAyLpdqaTqcWMVue97qGTD03/00kxU0+XIqyz8tOMXGLfyWMnPhv+msvRVIGUmKPD1einIdh6BYXdxuCp/dD0ZYSz2Hc25zZxy2RyXHQyBSOJSNmcTN1vWHORSJf7Ey5og9HmfPDw/nPZMSEHn4qPxqcJ15A0Ut+4jYv3qTExBw1BEHECosT3wMvmklYH2XEwHbpCPV+Ld/H6mJg0FrFZu944spiwAW1Y+kSm88cJs46gGDqElswfBH1mJcPcn2sLmbQTL243ED5dt1UR50DNolgvJhY1m4M1fCq4pQXsn7PjhcqfdwrJCb2Ih2ONrJ9rC7mbNsB1M5oq32VySzXNW98eZtL+etq5Zs2FH8txvtjFJe9DwSerMo+REWxshifV6NYbR9IEiSFzQkoLibGfSAo1rUPBAInGzIUq4txHwiKldfVECSFzQkoLibGfSAovmVxWa8dlfaiVXmvlhk/aAnUjdJeH/wAEKeTOdES0jAAAAAASUVORK5CYII=",ld="data:image/png;base64,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",cd="data:image/png;base64,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",dd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAS1BMVEXt7e3m5ube5Ojm5ubm5uY2NjYYGBgnJyeioqL4+Pm3t7dLS0vR0dFzc3OFhYXu7u7m5uYAAAAAd8xra2v///9iYmJfqt+gzewqjtV7jFUQAAAABXRSTlMEZ/zEZiaDM1gAAAMfSURBVHhe7dvZbuMgFAbglpR98Zq07/+kM9AwZ7B8pjLHDhfDL1WqosSfwGwG+e13Pm5sfGHY7eMt5Ta+PLfstpDfxyb5SAUe1pdmSEWO7Wp9cWILexvbwGOH99PhDne4wx3ucIc77LycqiK9I8B6mQhZdC2s7USK1ZXwMhGz1MFuIsdVwZ4O+ypY4gD3yrBB64EZ5TkOyyoYU60a1iKDsph8IuyzWtr+YviO/nK8Xwjb3Eq18VaKaRLSepN7q7NXwQFu6f5ND9fAJrE6TDsJOgHmAli6xCox7UaoBDh5NizTT0b+B5JSci6lFNngYxLkyXAqrxNZ5X8nf/r9nRr4oTHYRFc9ASA3tIqGqYDnL7YPB3CBLWmQQwU8z597sI2uAxeXXVRsDTxDdZc3eExXlhyNjJCIV3Y/wvNevtgWvscPeOGiMo/MvQrO1Q1w/LYq6xmvbRUZKgyzuRZb18cJeWBm2chCwxqCWNVDbqkcEqD5szvIuQcMZzQumy8kADDlIrgs8gANm9SdVL7D4Lq1yGB5DvyAPoDkAgiAVbqWCkHpJAcoMlQRdcjksTI3XcmOq/7GbJJd2aXiZ5w8Sfg8/BZNWt+LwkNl5IHdk2GVrrLtwzZDYQOLZ/9TBBjmJYsMWhl2AMvnTTZkOH5V4jCLcChhGXs3AYZGLSKMF3jgJSziZ2RYP//bdRf9LDDkyenLYHANr4BJVe3Brapq/fgXzNDGFVZwaxoX+5qrupNKrkpcTXf6nOf5yACSY4pR+vAAoh8zDuNDJrfJ1R7EI0Nmqua9YJMEuK6ciI9OEp/zfn6aFi1bY5xSRn3/IdNiHYwvBMy6DbIQqKtqfOmjMFhAFREaF77YWxC4WOwRuhO6vLVmG2R5SxhACAt6ypAJjzD6tEcYPNc+tKFp8Jia0uDBHELcinjZ5otEN1/abzfRN9jWkzfY2m8ptt9Ebb9tHJ0jG+WZOwU+cDRwFYwfhpwIS4CPHf8ALBsfeLU/4mt/qNn+GLf9wXX7o3p6/me4wx3ucIc73OEOd5i1gVmz146avWjV7tWyKDdwU95bvD74C8nN2nr45xt+AAAAAElFTkSuQmCC",ud="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAAAAAAcD2kOAAAOGklEQVR4AbWbLcykvBfFj7myuj5oNB6f+gQffH3w1Vg0Gp/ggw9e4IPF9Z+e21kenuns17v/8767+3zc4Ufvub0FpoP4pzrXyXdtVRkDQIyt2s6P6xH/UH8EvtbgLMqy7bBe/xfwHlrBQ8Zw1LekDcc/Bu+++oFrujCv+5GHdx3bEvrGIKsh+9+Ar6mGynbTHsvap86Ckm77J+AzWFDVsEXVuS3j4Puu836Ylv2HtdtQgWqW/wy+gtEE90o9Zt9aqARZlQtrpm/eKHr9b+BJIfV0saj7CmWxsLaHMe3+9+C9+XL2a2d0kJ9VeWXPRMtw/R348sTUK42u8NRxBsCdZ/2NPRxEM7za/ga88rV2Ssb695GecQRcjAo2oxNktQtrQ3TQfwq+PJL8GeP5wtph74tgfnEtvc01V8/pbFsA0hx/Bj7obr3dZa1Hj64MbuaTNV1DRX8mA8BufwJeLYd76aGypE9m10WwSBPjGaPFS92Ri1Pm3wdPAsCumvBbQ9yPeFhQR1yAPsYKqhCjrXvcMlOMF38w/i544LQ8Y9wfJStjnJsrbpr6JcahP+IpUO1xxUvOMd6deQzD74F7jk4HfousdTpjXISuar16qKr7S9gzBiD7u5pkWgFc5JrllSbT+c5CtbHsYhxzPz6OtUOWz0nPyXDZ+SnG3QIyFMAFrt1jPFsmLRXr1b2yuftK1q0wq7HGHVldjFNimZy5vWIJFMFPf6sjxqN+Tc/jxyS6mM2yhi3ciU5xnofgaRyJvPwcPJGr+eEYN4v2jBuzfi01fi0SVnfFXbTSLs329jPwKoBVbq6YVtPE/mfwS3GEs86fBhTJhsf9CD4MYHZyqUaT3BNcYGxFsw+D9ogxfD2XFNlen8BXA8h6c2E4a2XTVL9UG12q2sFOTIJv6wZZIsEBlSaa0jNftNDKYK9d5qzw0hTjsRw67qwEk7FKXIBk74A24Bb9bPBFQefgWgavmpWrxQ8ZhnJGU21bzQYQGavEhdjZJG4iS7CgaFF4q7geqM4S+LT6G6VkSTcvmlhVWI3+fBlB2a0D1W5fwppZ8JDZaWRfAnvtTTN+omrS8cGFkRzx3Wy0kbuAz5L6Yumu7+BN+95uPiDZWUYByW6ATDXor50N6HqTyDYIivIcU329gWvtOQ0+qB0Sl6zEBcneJZ8nw2pLZFZbWStrdHyCNcMza+8jeSQX8GEASJ5cLvRJ/W3Gz9w8xcz5BF8Va/GQokH6wkV5cEv3qrQ6n0H22S4BnzVoD3+CR62sDgWZyai/LcnOwzNucDLWoL+aYTuZhuTWoSA50sDM8RV8WaDlTC6IxtHfRHaetZy4QCKbqdIQ0pvAsKIc56r/Cp7U/AafyLX62wbn1eduaHUWNXOVQxI3kT9wmdMD2eUMrunwig+S5jXLhlfMGl6dwYGqXx3efz5My8IOL7ASl+KAbQX6W01G/W0V6KwVPZipCaymHNIO6jPq4pAXwF4/wA6oSgNmU2Zd0UD6m8gCVN0wzesyh74RCKpZPaa/JHtXXqwtML/Ah9Z6uRTHSvuGnY3621jU4xFvnXMLK1qEiUuy/1TY6dwVrF36IL4gmec8j9fhvj35pk1dsi/nm7XIhQxxI4zgy/AkBhRVvdqSG9iUUb4BDBDABfUZ3gcUVfEqeFBw7pYVvqsG/dXlwPmUbTFrLGsRcQN9pr/0WaRQXp74CHorZ6m0vAP9TWT6a63Z4yfNaNVn+pvIMpr3YzLXewKfwkz3KJD7xE1k73XubPGzPEBycADJY1XMteFUBoc6sczfVG0dKLfVBK/xJ7qsPC9SJhS0xw5oEnhgme0l7iieZOd1ORjjTxV06VCfZayaUoWNceK0QmyBmi8qcIFEdp7HQffA7KP34ZH6UxJXfebSUSI7ztslIhrAv3cPyX1DfOfU316q/TlzrRE0e7zlzNCqz3au1OfvDorh/PERO4C5YHG7C6hpBiWzkTlmDZy2m0DMF3KQHlS116/iwHcdajIWGn7gu8JrOfC9VtjQBoMhUp1a0QRdcl5aMBAoc0OfUU1t+35TNwJyIQAmxuXNYEEi09++IxcyWriTXNESoInHnX9grEF/WWHVbN4XKe2aG/pybQmXfXJJVvPGKhntYSbDEiB5uesNiWwmq50kcd/VxROQCS5fkpTULB5Uv5ALGYMY9rB5Eg2ZMd0jZshiAYYUuWjYQgY0EB9ji5LcGEANQX0201SLmqcmwg2Yb3AOUbPm2aIgyyuODhUQCiuEAdB5ppL+0mczWRnz0kETacVd1vO3EJIrPCWRZZ0IMwf/1GQSN5lILn1W88Y6HZQmJq5UZFKDPEMS2Tl808kbRxhWR+HCsvcAyeQm8mTVZzeKhvDUphvcVN9D5m4odOtBM4o1nnhTv5lnAzHr9+7QbeYxjQ94DZFqb14htgAe78vd96L3aiJC2wSov33uG2oinLdB7PE1019CGg0x09NF4qbPYNvTxMSlz4lLn2keyVw67H5zT2OAvn+FNBpiwh+BK4DkxE1kchOZRZPIb9zYC0P6HBIa7T6fRizAXvKY5N29VgwLalglr/IhWXnEWwueIVhGqMpgA2zvYAP1Vx0yswtQ89REOD9aNGe8tZtackifQwJ9LheXQcV5/DbWOnEb9dnMlj7TPJKZ5+76yrXSjJJD+hxCsntfFwNg0QBjYTkea74skROXFVZPQp/ZNxDikws0o6i/XU8uyUOFp/RZbI2W19c13siTJsq+Wm4zkQv0wePb9fVmhCEzuUA3elBhagu9ugda9EBfWiTCXKvbr0WmXgIoN7e8Crq1iPKqJYPd3IMa5jefa9I6hPJVdd9omzCTpc8pz/SZLdyd325fJqslUI+i/nY9uS0GfFOrdzGYeZEdChM5kTl/E5lHbIJy/Vfs6WiIZV0xznn6TO679FnwhA2QKy4oaWwSN5FZsYnc9SLzo6wqAckMSeTEJbnIxch2teGSYuuizN6+GogBNYxit4e9xrw9ihBQS0BJa1x4sRfr8uWt+jvWOgr1GV2L5ni+A2lCA/prNTvOq88YWvr8pisOqcIQO6bdFbn0mb6R3NV4dI2jgeFyQH9ZD84zXv0luVzUEXEEmlJ15XVhrHmcRHb22TVWa6wuB6yrRE5cktXfris9TDXJaMSdt8cbvkkW+/VRBMnPrhEAAdU60VjnQNVbC6opWKw3yKC9S8HktoOevfqM711jqN9lKj3M0KvPxrz5d7FTxwTuOP73pPQduSIkd7Y+46/ktJMMrfps3g/aqcUEawtZUCKrv2ONrhcXfwNsJpu4PGMzSiHTB4CZ4JPXApcpkL2+VEbf4/fAMFNos0eTKV3Nj6mmCI66QJVKf+1AdWv9u2CExX5+FBFIc1HBE3O94U1e6HPK81j/JnhoOQ+5uuC7zMlMLxl8mg8PjYU+ax8YzW+Bh5ZM/nmT9DEOrGyCWdGuWF6sMHIh1e+AqxYcbfXGpQ5O2/7rY2PZ41WhpEmt+j2PM87uNd4lOjrZHw/Ke3r9rq5Xn1E1yy/VVI2OuC5U9MtPF2/w/HHIxkGvGoPB7yg06rGguD6sxD/fDHHkv0tI5uInQ2NGluxo6yAA6iCOCXEdQqvkxC1q5FxqSm//1CirXxtQY56kZpkkT/UeSdKt5ELC+oFrLx1w6Q2vDWWF0CtvGhvljXlY3TCKhgw5ZGZIQSMH1hbe4pti9CipbegzzQtNbsQkd336Wr3tenItKpRUX4RsTzDLzRzxLKeJCHKJIMtMlix+F5o75INWHrwrvo3bsew+kX0+aOgSN5FTGkgm9w4pyXM1MGf5jeulnGzKrB7K2RSDfsuYaZYc4nLssHE7zq1GK2sqvVVfca/G1eCDpO2hmQ2NJj8nNjTqsxmU/7pfn5ClLlasrHdw3MDfHBZPuUEy2bbk0mf6S3Jo9Kemuu28xnDcVzV8tN8RXwLHAVyYN/Mc6HHPMhHrRQeZuCTr8KsWL0kdo4PYMxeMZnikk2Xw1eovV8GtD9cIS7hvNgrXVULafh9iEy4HZTBtMPuzdVYXB7zkfGeZqqEj0lhbAusQVlC9+tdcH8F5M9BNzhmwcDSiLMFLVVjyhdXRWp0/ys2F+xHMLHMXyixQOXowHPEw+JVk0jHKcB9MuY1uovkM1rHWp26108o6O55qB5VrTYnpGu54XfBj1+01MXAgt7iRrEA+YtyqbFefRkKf722RTzGNp9/i7ZFpW/V+zNwpvoML5GrPW1jRzrqS1YXdiN12npvTL3nzeMTpabxZ8ya8EH8N5vZHu+Z5LXrUEdRjC6iP1A/yYRbG3ar3GDdb5BbA7CBMb1xf6TrMXeQHss54dL22YPD9hWV9ln5/xTibMrcI5g5U3oKfHZ4bSuR8ZVMskz7F8+4SjyXGLnxiwDH8Ljie7rUte6lwaxu9lnd2uyMOKo6rv4d7ctMvfS6DywrymhXBIKuOSWObC+e1dccgayKJarYUKVqnfwTW6VSt8cvGbtPrLmo1UvhF/+WWXn6U/vJjw0J3xj8Ex5Npc+mEj8Egq/Hra8UmuGOVP6T7yfu8QTn+MTjvopf+0M8gvPVm7ilu1/UBFqdJMjzLPf4VOCdZOr5+87a0ODzUcGfKoVgz/ocPaOTVtp0vsocGH2UcqXF1gpypvwVTi+bY9qsmYR1chW+Sphu3+EgLa+M/gGlvhcxezvyjfZnC4Pve+2GctyMbs/RV+fM/fwMmZ66RVft5v0qWzH2NLOuPf/dBq603uKer82Fet23ftm2dR9/V5na6W3hi/wr8+uDHUyLP4q56Uv8pmNrHrkJZpulnzfC/B6vObRq6trZGeaZqXD8uNP6P9D/DT8MGYXGd+wAAAABJRU5ErkJggg==",pd="data:image/png;base64,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",md="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAALVBMVEVHcEzm5ubn5+fn5+f////m5ub///+8vsD4lBz/+fLIysva29z09PT8y5D6rU+p61AKAAAABXRSTlMAkc0rBVj6jIUAAAHPSURBVHja7dvRkoIwDAVQQUMhifz/57rI7Ea9w1aoTWd2cx998JgUO1TJacm568ktfXc+rbl05Jzucnd7ck+/yB01SPe1vrREB7foHTyvBQ+uWUvurV7PmvuTFexbcsABBxxwwAEHHHDAOzJdZw8Y2XEc/eFpHkcXGFl/eFrYJvA4BhxwwAEHHHDAKsz8DDOzUFWYON3zAn+/SnVg4fQThNewfBrWB3WrYqhbpAC2Fudgi6xsSlwGU4JswVY1pVQKM7C5ii0FsCRkRZ/hgZg/DTOgWxuI8Cfh9BzRX3cuAViPwfrC5rdMKYbR5Tf2auIXmA7B8BYZWHGV5QjM0LNt2NpcDgtcnRmYBCvmAzC427BFSUphxvXNw1j6fhg+9puwlc6HKiZsdB5GXXfDbC673nPhCvvD2goe/h2sf/riav91kmRxgrHX4gpzsqgTjPc9TjCuMnvCQwLZAcabTHWC8bAmTjDKiZxglBP5wLbOFtFacP50zKKVYGw3RurC22cTNvdaBu/tt7lTRRjP+wxsHRh/6TK2Agy28AM8G1sFxhMZL/B8bfKPuWo8nBBwwAEHHHDAAQf8LtxsJKXZEE6zsaNWg1bNRsvaDdM1Gx+8Aej5VSM7CMk+AAAAAElFTkSuQmCC",gd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAIAAAAlC+aJAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMi1jMDAwIDc5LjU2NmViYzViNCwgMjAyMi8wNS8wOS0wODoyNTo1NSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QzRERDlBODMwNTg1MTFFRDlBQjhDOTdGREYxN0U2OUMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QzRERDlBODQwNTg1MTFFRDlBQjhDOTdGREYxN0U2OUMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDNEREOUE4MTA1ODUxMUVEOUFCOEM5N0ZERjE3RTY5QyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDNEREOUE4MjA1ODUxMUVEOUFCOEM5N0ZERjE3RTY5QyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqHjzD0AAAetSURBVHja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",Ad="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAZlBMVEVHcEz////m5ubm5ubm5ubm5ubq6urp7/L///+x9upltqqyy9Pc7/9f28cHjXiQ8eFp8NpJxrIAhnF3vrM1o5LL3ub0+fuUqsBCaY1ihaVrk7kwW4FOd5uVzcRhrv2Vx/xeoeVWqf7ZdcgaAAAAB3RSTlMAAWbD8/8ZrH9iwwAAArBJREFUeAHszVEBxEAIQ8FAeO36V3yngv1oxsBIqvawaNylv8es8yOVucCl5oqWgfesegFrgLMMGHEn5jNx4sSJEydOnDhx4sSJE/9oMcPdOGEgCP+y7GDOR3qsDewB7fu/ZK8H6rbJDvFtxPczEnyaaGdE8tYA4rni9pIQ/lTxtXv/oZNuZ4rfuq7rkZnOE+frQ3xB4iY8oEguuAzF5sBHkeMmLq54mzijn3dPLgmY+xyCjxRLdDZxiSjwxvtB5Ezee2dLTMOoZvbdDo4sQot4Yo56lXYOK2UXR2a+e2U7OgHel7OL88gPCgx8HLmxiyP/YXDgsi5fRCarON/5yaRshwDvK/XZKC68MZAWWMArYhO7gXdGdTvkl41XxCSe+C9RCYzvS5gtYmJhzMp2CChySt4gHpnVyB8uq3JFgBhUSRi8bIcoN2tdpYAYVEkoEliCVlSqqRHjwLIiclnWSh2LvQTemXYx4Aor9Zq48CcoHNLo5jRj8dF2KJUCuIQD14snVojhkNl81QJJ4PrIvkdHXS8eWaW8HDm5l8SRdQZqAVv1+wQuq1ZMDJgWnTU8iQl88NWKw4Qi//ylsbSgUnOoEeM2CaPqXcMOpe9+gRQGaJEXef8NrCUQg8XUuC+fxQQqZfrKjPWR1xyEOUlgsohzfeT2v+cksu0vCRx5+hg4/ItUKnmbOIyoUosWWOhlO2xiwpFxYKlUn63iUOCKaNsh3JJUySR2A7wvZTsEn8B2ALFlRZZFe/9s/69P9YqQ+lyfmmAX16zICp7r/ffE+atKteA5CnZxTaXWYELExshLe5o40IAiK1UyiQ2VWvKZYg9XRKp0ijiUQee+5nPFwSN+t28HJAAAAAjD+rc2hRxgFlgAuRcGDAaDwWAwGAwGnwfOIpwuO8pCqywty2K6Kh8crv8tt+viLq8AAAAASUVORK5CYII=",fd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAM1BMVEVHcEyuNyTCQC3JRS7LRjDMRi/bSzLkTzXnYkrre2fxoJLzsqf1wrn64Nz98/H////ujn153/OxAAAABXRSTlMAImPA6ZDtme8AAANPSURBVHgB7M6BCQMwDMTAtx05+29cQgPdIE/BWkCnb5G1eNiqDP2KwlCFbompNP+vIDh176d1cwpJBdD7eQ1QUty/SRDK+zcJUuUFlBawTQFLeAEMYAADGMDfAgYwgA+v5pEkuQ4D0SUBwt7/st8Ma6GYUspAUGX0pv0jTNIST1Ezj3Azlcn0SwAWiy+Z8G8AWD2AXPl1gGlxKMtXAebX4P37K/M1gPwevdBOPpxfASCNL8nI2JNSP0DuDXWMCcoxuwEkdiRjZABJL4DFnmgMCiSjPgCy2JNhNExQASDgPDrGpgi+k+TUA0B+lGaKJc0ABE8BCAZ5OY5+/tfEWagB4PpTXjFZrcYrGvt9Ys8BZK/9eQFsCAk4gjwDAH3+ifsnvnONFDhC1gFwAX5KbyxRREzoCE6PABQl1jb5tQjCjqBPABj+SdmkV8JXKvbFDwAcppU32c0VDAIAXgUAY1rxps3fpVCQr6VZBvDAve2b3MYclRCcAJw0lvMGNJFnLGURwHAGxtjG1eh41rAaAF9uK6VxHAIuAejleH6YcBVoCQDEc69bzqC9ApDXB8NnjRtZABDc1FgMAKQAgHsACufN7gPQrWyeYQfdBmA8FCxsx3wbYPYCzNsAgpugAiC3AbQ3AnobwGoABgCsCyBOALwJAP8lLhlR+G2A2rZ7BlIFoOBE1gfgeEeIlYHkT4tQeOpicjoNgOnk2dsF6w9Qih15kUSYJMPfvwWgqPo5UQhoMmwHfWzFNm5JH1vxvGcAZ34wn0/HfgfAnk/HdNOCTvyIOpZkXE5AWMui1GlcElnLopTvz8XYj7lpY+JX1LUxGRptkvrmtEfctT1XuSBt2J6jbuZaE86WI5o6gPccUtUBZhlgWAeAjTpAdgBky1FtHUA7D6tV5cJH52H1yHio7LywKEjeuLIJm7va+8l3Lq3sKqrRO9d2ftE4nd66uORLDmj02tWtoQz0X90CgjyfOIxevb7PM8OQtx8wzMPxe77/hMMSvy5R+skjFtdkYk71v9D4zWc8QP3PeIDyhw+ZgFhgGFz4N4/Z8t/27WAIAACAYZi/9Sh2+dSgAA2Y2X47X0dlAQUUUEABBXDsxrkfB4+cfHL06tkvh8+Wfnv8zvn/AB/cGhg7KjtbAAAAAElFTkSuQmCC",hd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB4CAMAAADheK3eAAAAhFBMVEVHcEzk7e/h6Ozh6Ozh5+vj6u3h5+v3+vrH6fvV9Pjl9cxu2+Ri2t+n2lH///+g1pbk8/7x+uOW3Y/Z77Xh5+spnPbK6Zey3Pyo6+7Q7KSD18mUzftpuvmF5Oi/5YIAS4CdzNax3mRWve9hvcKr2rK3z9xjoLR1ya4YXYxAeaHq7vFJf6Xc/jOIAAAAB3RSTlMAHG2DtkniEVJ3KwAAA2xJREFUeF7t29ly2yAUBuAkdcymdV+8O3v6/u9XIdunxgGrcuBomtF/pQtmvjlAdEYO3MncP8zmGVbms8e7Ux7m2WeGmdn9Af6VoWfe0Y8AYNJS7laYkAArpFvZh2PJ4KJE0vPDKn/aLImndaGGSy5e7+oTIIu9v5vZLTkuNIlbrfB9Pz4r+tGyzAtdiGsZKjbOtju57iBjIe7k+LioqDKschqMIadQsj15kuudf8qaY8pr/zwcT059JTs8ufDVxBgyTDZXnn+irPbd3YXc7A8RIkySpFl9CZUaWYlquAxdyCx3eQNZTdRqled50Q0yL1Q5HSSTG2WouL9m27MNfffqDiN08RyGocUdBn23d29TyzL03f43iX0ZOoH57QlyZl82dgwM2dwlQU7cymoQajZmqhlfnmrGl19GketW3kZjyKmUF1RfCF1EDuVCyl9CpVbmeU4cymud3BW7bGXqUC4KnUyc1gzjaKmd7YCWdtd5+Dh8eZInmby+b455/3i5Ilcr7xixYjbkj815tka5cyHs+/J2o+TdJFNPifi+/LpRkykfdASAylMTqeNukH+32nF14Rk+q2p1spnmGcbZkomEC94nwzhTGCX/Kr8+HfKWtFn9jbiQG8M4CD3uDkGGyTJJcyFTjQzjjL+TsOHyXlyRn5RxupBba9636ZltGGec7YBV0dAdRqG7G3aYOs7mX1VH98kwzuqbRMp9bxIYZ/XtWbZy1PP2hHHWOgbIxo5hQQ50XRJkY5e0IasZVAu+PMmTPMlpHTuWDWcrUt/fEZfy9trZCu5Q3oamsxXcbc3bUCcfSo05MA7kMAzXBSf4e/ulleWi4svPrZwGI8lJNpYcZj+m5qnmxT4/ZUkxa17m5yld18wAKHM1LmumrVxelgxhAIRtmFU5Ov08DjLVPAdcypFVOVjIUHJVJry4+g+UiA2UoWjI/kJukrN4pi935nmrYTKsNAQ2tEb2xNDfSXrDlJpNsieEMJ8nEeQWOSC0hJr1s/3cCD18GFxV7NYTS317u7+z/M+yGoYgG96eCLK+YyDKRO2SCLIhk8zwZejj+DL0cXwZ+jiuDEUbzhmQxbJ0I8NKG84ZyBYXOZQDppOJ7oSD/dsvhnMGLM+Xyu0XvBs/JFJu/Ix3y2m0m13j3WaDG3y4mUl4vFuLfwCyDJPw00UHeQAAAABJRU5ErkJggg==",yd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB6CAMAAABDcmfrAAAAP1BMVEVHcEzG1uLp7fDT4Onm6+/a4eb////9trT/CAD0RkH/T0m1y9uuw9IAS4A6dJ2atcnM2+ZEfKLE1OC+z9seXI5Z1PVRAAAAFXRSTlMAXH/A/v//////////////////7S/oHlaWAAABKklEQVR4Ae3Vi2qEMBCF4cml9pLoavT9n7Uza4USxhLYzQjd83MfOHwISOiec94s5+goxDfLYgwkuSiuLT04hoU1LxL5HY5m7ZynuH+7YbtI0doVWWDhB+PEBNwQYMCAAQMGDBgwYMCAAb8rDT/1ukv0oXQMet2lF4Q/ua+qY9DrLib+4/4BBgwYcOKyUuK6wuMfPR0GPCnVcFK6cQ/Bs1INjyd1gQEvVRNnAs9VmQMM+B/CNy4pdYfHkwA/HZ64parlTX0YzlzLuA5wN3hRMoHnswADBgwYcPpVO6xv22GlZlgJ8Cm8KLXCi1ID3CvAgAEDBgwYMGDAxdYtdzhdAydas7VcRFwpZCkVs1KWArmSLyg52vwFcvEbbZszl4vbGOZ8WA0LXky6qm+5JTtNSsfNeAAAAABJRU5ErkJggg==",bd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAALVBMVEXB1tWn0c/a2tqn0c/a2trB1tX////D9fIAzb7a2tqn0c//AAAAsKL9AAD29vabewDgAAAABnRSTlMCzctubRuL2NnbAAAAwElEQVRYw+3TLQ7CQBCG4Y+fenQVtg6NwuJ6ikosCSdAN5gxJA2CZK7AFfYKa0m4BZvQ0pDQBKZqN9+rRsyjJgPMCzFVb4AsWKMuMRVzS2zt+IRCzpWph9QQudvwTiTgyhgxMTExMXHq2PtbWxX6Z/Y+VhzpqYiJDfj4UYrYuX6xw/t3aWLVbpGY+NvbOJcqHn4b1TRxHzFxzPjVAG5LC/8aMTExMfFInOvVZg/aYK3mLpjY8QJZbrVNCcxyo13hCYDoEvoovFChAAAAAElFTkSuQmCC",Ed="data:image/png;base64,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",wd="data:image/png;base64,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",Cd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAKlBMVEX////a4eaaM2z9rRr8iRL9sSz/8dvv7vL+w2T+4LfQoLu2a5SjRnr+0ITFZin+AAABwklEQVR42u3b62rDMAwFYHu2fE3e/3UXnAyFpIScIazBdH6F1vSrXVkJBbuR7CcmD5LZ+bRXCM9XYc7HxbTkY8qZ2Uk5SK8D+wG7yTHYYIP/F5wKUUnAGCE4UdhCCRgjA5cwUtwplag+jJGBKYzQ5TV6GKMAay21WnFpbSfrXAAMLBr8A91hvEyQknyG8Y2Bb8I7jLcCvO3ow/pLjRdXXSluobXixYVvJ2YpcqrEdnqwCgXav3waLOfn1bApVbhz1b1O1nEdbxnculdSlYRXrpLdvctcS6sQzG5I23WKHzPeCiyLwPX8gfQZptOUQxWCiSfMC31NPU2Z7H5s8Dv46xcx2OC/DTfcbSKw66jbpRpIR10pOHfIzWKwy8t7d8kOg3EZd3HY+eWl66XvTv4d7OVviw3dwDiMy+zKwizjLg7jjaQ7aZhl1MVhvIX1LAHjjWRhF4ZxGXdxmFsY0LBQGG9hfsYDfQM2MAAjMrtzYHeFncEGG2ywwQYbPB1uwHMAAKNys39vDTbYYDCpxFjSfDjFkTQdLjtcpsPxiBqsttRqxaW1naxzGWywwQqw2pGUrANnrWNHegetlGTFw3Rqxwe/AXAEHeeJRtDQAAAAAElFTkSuQmCC",Bd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAPFBMVEX////n5+fm5ubm5ubm5ubn5+f339/89PT++/vPPT3VU1PHHx/vvr7jjY2/AAD////YYWHffn7ooaHm5ubnSdTLAAAABnRSTlMBK7yTj9XxuJ91AAACO0lEQVR4Xu3bzXKrMAwFYGgTSf4H8v7veuuUm+lkap80GGvjs87kGzNaYAlNOfPleuuW62We9nzeOufz2/24dc+Hynn3M893gCV1ivAdnKdLdlPXZPEy5XrmvrDk2p4yn/rDNw04DfjtDHjAAx7wgAdMYakm0CmwNxHG+PbwGl/K2hpe4otZ3oCR64KnSnxwBRnAyLWcQNgWZAADVxKMFGQIY5epEAYygIHLNhZjuSBjGLsmVmKADGDgHpQxjF0sY/iAi2UMY7eNjGHsYhnD2G0kY3hFLpbXd2CPXLdtDsn+DdgAN/+pR2c2f4aF8pm44AZaYqSUKFZkzs+D/gqnkP+/4OaicWU4y4+/qMKlkva/uXvNmB0O7EuyLxQ2hvNzsrEKu8Jrkf0C6AjMsQ6b0nsgH4TpGTXuNZgaw1tiowG7XKxa8NYWHvCAB0wkKQlRd/iRHTYsy5lwqVlg8/kVYCsZcL3h3d26n/jbJdcb9nL3bewL7xEfz4RjEWZ3LiygEXYaTAXXx5PhAB70abAFD/o0OBKo6FYwv9IkZdf+hT5ZfGQx4ArT5tLm+Nm14NLW6ppq5Kll2/aaWrmYG/rhetf4Yi61VsTG/9kFtCKaN1+WsPmwtmy+6Lebkig02BRbiljGrlbbWKtRrjUa0BqGaI1/tAZeWiM+/aGm/hhXf3CtP6rX/zgBR3Q+x8jygR+MT24GDDLgAQ94wAMWhQUNjZUU/iKvaks43deO0r52pLVopbVaprhMp7Y++A+reEh85omhkgAAAABJRU5ErkJggg==",kd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB5CAMAAADF5hVFAAAARVBMVEXX3ODX3OHY3t7X3eD////M2+b/srHMzMwDTIH/CwPg5Oj/PTc0cJpbjK6DqMKmwdS7z97/bGf/pKL/kIz/1dPO1Nnw8PJTOZTwAAAABHRSTlPKbwtKnBWVoAAAAmFJREFUeNrt22uSmzAQBGACEWlAL2yv7n/UyJtU+k9YaxhZVFLqC3xl5FFTkj2M03BBpnGYPi7JNHxclGvh1Dh/4O+N0+EOd7jDHf7v4TXnEvhHToc73OEOd/ifgZ3zPqwXwPgV601z2Dn7217fBaftb7DJid4hx61vgR/bcgQ/E+yTTvXhx7J8BedEByDUhuflGCZtAZuqwrdl2Y5hxmd5rQjfl2WfX8D80KYavD/dlzDlUAnenu4rmHGUVXDK7n0ugikbPfz4dMtgyjadhjm+220WwsbCKuGZrgSOgFfB9+xmUgybAJhzMMdICHOZz8N05XAEwgmYYySEGQ8rhzlGYpgBogxmC95mDexhhTDHSAVHIInhG8dICjMWXgCzBdWwhxXAHCM1HAEBzBZUw8YiCmCOrxp28OXwY+MYaWEPVwSzBavBtgTm+NaCQxHMFqwGR6AMftDVwEwBzA2rNcw1bv2oKbeGuc7Nv9Wc5NYbCOXWWyZ3zTpwkNVioqyCASOA2VBaOMj6mLIW9nDFMENZ8c4VymFmpyyF+aRlMOVdAzs4MUz5PByBVQ7zLfc0zA8shynL4QCY0zALWg5bOPVRxBnYAUkBUxbCHojq46YsC2CevWhg1qQIjlxgBUz5JUzXJi3Mgi6Gg+XWoYBZ0IVw4Im1DmZNFsGeZ/RKmHIBHB3gKl+GbAWwB+dICzP7MUyWy6uHKX8FB/dkw3uu+PYDOHgHsq3uFi0+Y51pf5tqHS80W8EhmrVf1Xe4w+fhlNN/HtnhDne4wx1+F7w2zrX/8Bqucsdr4HEYx+lb80zj+BOr7HfkKh+2QAAAAABJRU5ErkJggg==",Id="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAQlBMVEXS0tLMzMzMzMz/srKLz/9Otf+u3v/58/P/AABww//M6v//f3//W1vf8v/v3d3/l5czqv//PDz/HBzMzMz/////qKgG8dBsAAAAA3RSTlMGbsyXV3DeAAACU0lEQVR4Xu3b2XKjMBCG0Tja2PGSef9XnQlflWtSHQe00LqI+t51SvgXCDV6+1eX94dqvV/etoLVpeu4yJdHlbow4PChWIEhC1dJ3uAP5aoGN7jBDW7wstSBAzd5fXh5PJYq8JFfNrjBDW5wg8f/4evVud76+Xw4TN1XmHJ2OBcOt07AT3s+D17u3fcw1Q+nwLgSHrx1T3o+AzbdVgL+rKdty8MrroQp3yO7uTA8dq/hr7QvCk/dzzA0F9wWgplGezDFoPtSMO5kzC48eOQyMNNoNHswskMuAJtP976afZjaZJsPb9rtjzkMI/tceN1cYyJgwj3nwSOxioJJmMuBw0SsIuHBMp2T4XAjVtEw83lOhZc7sUqAB+ZUGoyLGA1bhpwCG2KVBjOnbAq8EqtUmCEnwCOxSob5l300PBGrdJhg95FwuBGrHJi7SBSMO5k8mGs9RMBMo9FkwlxrHwGbO7HKhMl1fxw2xKoA7KPglViVgt1heCRXBWDSdRhGrgEj14CRa8DIWuGSstZ0krLWDUTKWrdMKWs9JKSs9ViUstZCQMpaSx8pay32pKy1vJWy1oJeylqvMFKOh13SS5uUtV5Tpaz7Yi7lfRg3fStCysdhn7X5IuWjsM/cbpLyHiy39vJh5COwLbmliEz9DHuHq7lfzXALbxsj78HWld8oR34Jw57SGkB+Cdv+el4zBFnCtnfXc9s/yPoNL+QaLT7kKk1N2cZ1Cm3c1qpvcIMVPp37DR8Lhnn5VR+ENrjBDW5wtUM41Y4dVTtoVe9oGbK+W+344F9DoeGDpbchngAAAABJRU5ErkJggg==",Od="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAA8FBMVEUAAADt8fPt8vTt8vTp7+/s8PP////t8fM5vU6F5OiUzfr/gYH/mprV9vfa7f253/yv7fD/09P/vLz/rKz/3NxEwVj1/PZdym5Wx2j5/fm46MCi4Kx/1Yx504eS2578/v0/v1O86cOs5LVqzno9v1Lq8PPg9ePW8trV8dmy5rqV3KBQxWP6/fv3/fjo+Ou1572l4a6h4KtjzHROxGH/iorF5Pz/9vb/19eb0PqN5una897O79TJ7c+b3qb/oKDl8/3V6/3i+PnS9fbs+e6e6ez/39/B68iK2Jdx0IBKw1207vH/6Oj/zs7/wcH/v7+G15PWBDHsAAAABnRSTlMA/uiyMHNa+bxxAAADA0lEQVRo3u2baXPaMBCGnUDAaUuPtIBvG8x9kwNaAs2dJj3//7/pSgwuGMsWg7CnZN8vYJD3GUnrd2XNSJKkdOowG6sOU2kJdHSQjV0HR9DfBLhATkupbCJKSWR+O5lY1SHzLBF8JmYRJoKDhGAEIxjBCEYwUwhGMIIRjOBtwYW6Vtb1slYvxAmu6aeyp1O9Fg9YHSiyT8pA3T2436asiuIalmW4SoVetvs7BjeKBJM3SgVvsktGXgYVG5uCf51w6PeI3qQ5gDhr2quh7OYZ/OxoG4K/vuHQA72nRXo7VAPmfUh63RIP/klvMcmI9oLD9cgcmKLBJ15/zS4rXtf0+swJfvgUKTrBGgS2wiJa0EATn9UNJ3Iooc9OQzi4CPPbDW/SJW1Eg/uQz72oRj3I7b5YsAp+NYxuNgQPU4WCB+AbHH6sgpMMhIKhLjR52jWhYogE12CGbXZtfrr03BNmucYJfheuC9JYl2WDGemuKOe9p8iQZZ18XjADVhfgz69CRcFQ90vM0WgTB59k5irByoCCmQF5wddkLKH+Fhjc+rNM9LQYdqjPpOn11uArEpydMtM85bqFpTSsw8dVNPhtuOy5TbvBXK1Cuea/3XZ3btg2M2B1g6wur+bWZOkPqm/0wsuusrDHSV+pS5aXaK05d+arUfpOwLYBmfZIv/2hWOigQDB7qE3CcqZgjybFOqT7OxlqX3JNHYq7LLiUm/dMaym5xID9j9NjhQIVyn2eBLh6XRDYbyAl2ZOy5svUQPjA39+H6nbdMpsLbvHOH9WzzFtmQO85/nIcqvuAIlGWfXYF8hWJe2ZAPjCoE1AWdZ9dZfxlsXO8PTgXtBCYgV2FLQRyHOBchG4Clz7WLHTpc8OOV/0/FnsbLG/3ZUGf0CtMki9t4l9TP3JovIsX8/PXHBrzbUWIB5//EL75AmAu8kj4dtP4A5fGo/ANtv3dUgzaRN3/beMXuUOPYAQjGMEIXheCEYxgBCMYwUwhGMEIRnAgOLFjR4kdtErsaFlih+kSOz74F7rcqD5hQQQSAAAAAElFTkSuQmCC",Rd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAclBMVEX////y8vLx8fHx8fHx8fHx8fHy8vLz8/Py8vJcv/NW2vPp9v275Pj////R6fiFw/OWzPV9nt+dxelitfDy8vJzvPGC4/aTruRDre9D1PEyye38AgNNs/BnjNhPdMj8GxzvAgNUuvJcgtL+t7dyltsqut9J2SO6AAAACXRSTlMBkJi8lZTWK49TBySPAAACwElEQVR4Xu3baW/iMBCAYbqlgM/c3PTe//8X1zNxmdQJLKsEj7T1G6R8fDQmDUTUM2i5WtS39fpaj22xWs58TwBEgrFfrftYx4brR3DndXy4nrv3twXMbR0OZmytt5ytPBsFJno1W/DAixm60WCSfxic4AQn+OPlcHj5YICd62QG+IAleDDNBJclC6w2hWWAwS0UA2yLotiYmDC5RRkfLgvIRoXJLVRkWG2Q/YSDOnV6h55dk8DkhuoJVC+/g3oX2CLZVdEk9k6wxnH/roI7LXxpVohUcCdf6uFZ6b316vQXV4EsqV3Us+/3gE1dnKjBFZ54YmrToorhlomz6viw0bDGGwbYWCefOGCUFQds6s9nri97xYYJNmV6kpjgoe0/f0zVfSAKnOcssMoEy8SqEUIxwFYI0Zj4sBauPD6cC0hHhckVKjKsMnGtt0sJrKpE1ZzLmqwtz3Jf6RqEVXPZ7KhHPPCEVfACFWnRCKJJvgbbKyipYW94AP5VU/Xkq7C+oHZdhIarHF4JLxNNcnkjHKpncQsHvuCAl5cRp6G7M5f/tNSkBm4373ubaBfRkHOzWy6uvknoftsP8W21dTKxJOdlMHEgZ302UK91Hvub3R2Z4LCsRRXDLROn1BwfEgDnDLCxbq0FB2yUOB4VB2xUc+T6spflTLBhmphKvzslWDPB6zULrNaSYWJ0pWKArZRybeLDWvLAGlhpo8NrianIsAIX7KCd3PXa7/Zf/XaNgdENSUTxRCSieJoGtn3Us5086M1JYB2wJAcqoZPDZFJkBup0Sz2s+iNYZHTHX1zfVTmghija0Og/p6Fhke7ldS+PvoG0asQbCMmQ5viQAHjNABvrYMkBGyV3e8UAg7z/KV/2KJ2eJNLvTpP9Q2iCE5zgBLNtSWHbhMO27Yhpo9UT29YybM6xmQ5bPsTcPviwBPMPvqhmqo4W0j0AAAAASUVORK5CYII=",Md="data:image/png;base64,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",Sd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAMFBMVEX////v9/va4ea63vSb4O5gv+VdyuR32OjT7PhZ1uN6dep3f+lzi+mcu+9pruZxm+jQ03jSAAACFElEQVR42u3bUW/rIAyG4c+DJO4a4P//2xMbNqamW9eDii/mNxdVrx4RodRFCo7obXIE7c0gI1dlsoEJ7WNipCSmuyo3GJNz2GGHHXbYYYcddthhhx12+E/BIdrAYVmiCbwcRSN4XTYygEVeNzJZsa7ZBj6i+XCTeS4sbFg1nr5isMKXMBle0eXJKwZoWy+HHJ+F3z+6frZLCd8Uc17yoq0LVD7cLj8Pf9B7kwl3olTdFrRNbrbIz8PKdlfpckdmZT/pgFqUJV82Glmx2i3GTSFLynZXZYFFfg7GqSAr3svNXk3VZZwLTR6Fwftpi1F1A+7GF41GYVCRJZe+xVhZ+f6jzKMwKO1KNymoy/g+2qo8BGtJ4cKQSi56lx/LYRhGKFqocCI8qsnDMLjKCb8tqjwOg5pMT8jjsJZUzjQdVjmXwvNuNaW9tC32eEtrNLq5+lMTElc5/dodgbmIG6BRrjIBL36AUNrF5f69ZEnkVz4y0369nQRSVpohvehHgsu92SdUOaA3/rOoXXvingQW99EgMDKB7HLtjFN0ktcvo4+6AzOXdB70WqmzLaANuMcVx6fMH0bbJueb8VYGa4OBvg63U2GrvzCruFLAZDjU9bLBGchi8sdcLqOjiHrsY7FicS1WbHXAFv/UISpC9BN6hx122GGHHXbYYYcddthhh/8z45dw5stK2r1oBRvY7mU6s9cH/wEmsDDfLZf3HAAAAABJRU5ErkJggg==",Td="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAOVBMVEX////h6Ozh6Ozh5+3i5+vh5+v/w8Ph5+v/lJT/6ur////m9P6v2vwpnPaUzfr/UlLL5/5UsPj/fn4yO/GHAAAABnRSTlMBlL0rj9UQ3sh9AAABTUlEQVR4Xu3by26DMBCFYRLD+MI97/+wrR1XB4EEklvGqXT+FbD5ZDDeTRMzbWfV6lrT5B5WucfbfVr1nliv/ppNAoJefQJN08LVKopt08HVlLvG1oHtv4EJEyZMmDBhwoQJEyZMmDBhwtM54O6C1/Ecnl+3wP06XsHzy/89vKzjrmTt82VwP303QMOTBeApPEsE3GuTc+KL4WG8gJEARuJ1YeS88qtGvgjOmyvkplgUEhBy2FyAkSuEQ79ewfid3HaJXt6ylMCp9QrOV4BzPt27YjhM57ALOxgyvnIJjI4wArx/IBVg+Wh4WjYNeq/62O9hweZShT1OEBU4JzhAdGCEBatsrqOr8DsdXV8HlhD0YPeTgNU+uRRgwoQJK0X4lggTJkyYMGHChAkTJkyYMGHChAlXG0mpN4RjbKxXdq2pNWhVa7Ss4jBdtfHBL61tMZs83wf1AAAAAElFTkSuQmCC",xd="data:image/png;base64,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",vd="data:image/png;base64,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",Vd="data:image/png;base64,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",Pd="data:image/png;base64,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",Nd="data:image/png;base64,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",Dd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAAlwSFlzAAAdhwAAHYcBj+XxZQAAAgpQTFRFR3BM2uHm2eDm2+Hl3OLo2uHm2uHm1dXV2uHm2uHm2+Ll2eDl2uHn2uHn////2uHmALk1cuHmfcX5/2Rk/5ub+P35C7w+9/35+f36I8NR/P79cdiPCbs8B7s6dNmREr5D/f3+c9mQqui8zPHXHcFMrum/6vnuKcVVG8FKqee7Db0/Aro39Pz2H8JOIcJPY9SDdtmSyvDVGcBJ1PPdWNF7VtF5l+Ktrei+Abk2Crw98vv1BLo44ObqVNB4ddmSZtWG0/PceNqUp+e5+/78leKrEb5C/v//Ts5zLsZZouW1JMNSyPDTGMBIMsddFL9Fxu/Su+zJ/f794/fp0fLbPMllUtB2YtSD9fz3LMVYoeW1HsFNJsNTDr1Avu3MjeClJ8RUrOi9+v778/b38/X3ataK7Prw2/Xii9+jZdWF5vjryfDUD71BkeGoUc914vfoN8hh7/vy1/Tg3vblUM906/rv8fv0QMtoxe/R7vryit+iP8pn3PXjMMZc0PLa6Pntz/LZPcpmX9OA4PbmpOa3WtJ8bdeMn+Wzt+vGb9eNF79Hj+Cm7/j+aNaIvuL85fT+0uv98/z1fuToe9uW5/r7Nchf9v34//j4Oclim+SwmeOu1fPeQstpf9yahd6e/5yc/6Oj/8XFwPL0oOvu/9DQNMdewvL0oevu/+vrTM5y/2Vl/3p6/8vL/7+//5mZd5o/nwAAAA50Uk5TAPSOvSuQ8wbU/ZSVkrxza5+gAAAGuUlEQVR42u2b+V8TRxjGV4uCR595rM0mQg4IIYkSznIkIhBuDSAgcqgIosX7wLvaw6PVXvb2rL1Pe/2P/WGXZLNZIchm008/+/7GO5uZ7868884zs4wkSZJUsKZolbDYVhWtKZAUK9ywTuTF1m0olCRJKnxJ5M1eKpQkaYPIo62XpIJ1Qogdh0thsZUe3iGEWFcgrRFC7LC8eQAo3SGEWCMVCSEOIy92RAhRJK0VQpTmB6BUCLFWEkII5MmEEMIGsAFsABvgfw/g2tqQkOVEg9+VH4DmLVRtS0UeAIrLqDFvseUAae2TXqsBmqmzZmsBZhN6gGqHpQBbtW3vvBYl6bcUoEHb/iUcJ9lgKUCCJKNK+0E0t5A8YCmATDI23KC8f3MLScqWA9zC7Bh3BlHRQpLcZv0QfIPZtmT7Fg+BEoQdgNr/JN/LxzT8Jvn+Vk9Dl7oQNSbbT7isTcUV+kxYkefFqM3Mxajr6rWavdU9LWRLT/XNmmNDXUbLsTdHy7HT3yfru3fbRb9jMUGSME+QvFN7imToXtPBN99wAa43jh5sujdDsqcjmBmJ/oYZWZ55zzxJdrnETf5y+oTef+L0IOn2bs+1KO2sZ+VYuXFZ3ZlKhv05BYjcIve+/fzyG4/I8YncAVwIUX7cu9gTvU9inLydK4B4PSfPp82Gfa1bZHlL6z5nyvdaiOF4bgDiPXyaFmOdgYU5tr8z5Z2/Ql98mQCvLmHf/Q7gQj0vamd6cYk2DZSksozjIsO3zQX4AUAkxKdpmaYkPRGVaUbmCicnzAT4/iGAW5xM73+SdHvLJyLlZW6S3KoZhRBrzAT4GUAn5fT4C5AMqGMdD5Cs0kRiPMZD5gbh5Xo+TnPsI+lOxlrcTXKXpriJ4e2mApRwb/r8b1X2eg7vwIDXoQREo6Z45BxrzQQ44a7U5b9qkuWAV13ny0kmtOXl0VjQRIBajhlo7gngQ5L8EIhkiP4+dpgH4DxF/fqzjeQDYDdJeox+c5I+h2kAW3lf7zpA8gbwAUnyfaMfvZWxG39xgD6e1rsaSdYCrrJTJBNG7/oRz5gFMCtHM/RHJ0n3eQBDUZLfGvxqD6e6sgV4ZRH7BBhiKDMsqkhWnQcwTlI+a1D9AZ4EPlms7qwAPgOO8d5z9j1y7VEEe0i2GgC0cxr4bMUAnwLjbDLMTSQrh4Du58RhN48Dn64Y4GNgLw8ajXELyRoAxYMkZzJV7zBvAh9nBbBErFTxguYvx7uNyc2vLwgA/ZUkd0d10ghvstqkWeDjnCb8wyQAHCTJbsU3TiNpdIm7TQLwMNm/I+0kCWA2RHJQlUFBn5E0chinyJUBvE4V4BrJyv5UvBlII/MAUkPQSZItNcAeWY1AVR+eq7k6p5dGQdOGIBmEzgGSu2+ocsCnWW+LDaSReUGYnIZ3SbaUAxjWRGC6dNdIo2FeNwmgZiERtSr93tUxpYlAdRdcG9ZLo262ZwuwaRH7TZOKq0heBdqoRqD+jCBdGrVzGvhpsbqzAviiF0OcUaqMkZxTVcgUMgEGgM9T0ijBOvR+sWKATV+haxtPJHVYBBggyXpgux5A9SnnoWd5qgtfbVo5wK/ARVWQaJVoLVCnB1B9yhBMcwz4MTuApZSLn4PJICwDHG319W1qwDWkgjDpa1QlWYVpkszRw7rM3cioh+S76U+OehamYb+ZohQdir5z7tfsx0YDJPenr8KjqUT0jF+auC94x115I7UjLamLROpKPOrhbwVJemqG5jQ+oC4qXzJza+blo16DPfkdYEGapy9GI/ez2JcsB2B7mE8A/afI13sBYOROWvvFShYMRMw9ovEz9poiRvcnZ33yRM4fXvBVKb5R99JTYLlnROMMzStL4q7GhByrbryrCXLnrrEqj5xo3KX45meWXAbSATYvZX8+xMQkrziQlTlvcucDcwE2/wOcDbPPmVX7zxjYA5MBNv8NxH28Mr90rfM36fsapgP88RcQDzO05Ang6AwDWba//KPa25OMNY0s9sRIt5s79yBXAJgYJ8+VP7+87j7Z7kTuAIBDYUb7ThqX9T+LMlCxjMpe6IPF57UxcvCjjG4+O/0WKXdEkGsAINjRQ3KmvXv46JwLcM0dHe5uP0DS92VweTW98EcrR/OZKb0amhqrcC23nhV9tus/dvx6tc9DenzV149Pnyx+gUrsf+WyAWwAG8AGsAFsABvABrABbAAbwAawAf4bAHm/8Jj3K595vvS6Wr32e8T6a79H1Gu/0vp8XnzemOer3y8rl8/X5+vy+8ZC9f59weqitVa3vrZodYEkSdK/K7JSOrKbqnoAAAAASUVORK5CYII=",Ud="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAXVBMVEVHcEwrK0M0N082OVQ4OlZCRWZxc4xEWXdJg55U2OBNn7BRwMtIcotCr/5AhLtBk9FBo+s3X5JCbKhpbb13eteIg+yVi/5iV5lUU46LSoinR4faRZHsRZTERo52RXTP84y8AAAABHRSTlMAJWjDIlyQNAAABQpJREFUeAHs0sEOAiEMhGGg4Hbavv/zSgJZE29IsuOB/6K3+WBJo1ykPpqUnD5lqYTkJpRKqpD3pyCP/+3hxmruACHM3wSZF9AojSsoXEBJwtofAkmVC6gTcAAHcACvXmvP/v4XgNEBHMABHMBFBiiUCjAARMDlgBMBAbiG0QAKePT2AAo3vX78/BbbAMWoK2KN4WN/ExCAqblPxdrz09gGxH0KNXPA1p7fKiDi+xhzf6ZAvEkpoyXHdRCIPoZrF4D9/x97rdneKS3JcVTlfpqaWOoDDVqz3zV+CwDNrrdR10jXWC3MgV32Al8GkN3gRv+h/esYvC7IyX4VQHb2T8zdf+iarPc1/bshst9lvwbQ7LbRBPDXGLyavzQ49v80ewCwGftv2ho1Qf/oGoR789/Mtt9F3cYZBBh4X/x/mwD+I4StPXbS4NCf2IGdEGy2s/EZ+GsXm38TAlzV/SwovzfS1gYZdhH9GWBCIH81gW/WLio2kBkBjAoawgsLwRAM/SX3IAAhjG19wXuzQPC69093LyMABSEK9r8N4dY/3KPcEwAU0gUhsRMTDH9UeRxHuHsggDQo+CaW3Z5Kr+PSmcoBAB5pu/E39/P40Z8cAgGeiwOQ0i+tA3wJI3LFXwFIZ3ktA5R7VWaYUWsdEVoAk+JYBLDySfmJb3wRX6vIo2kNwGq07jwjskoEvbWjoV6xHgACgP8U3Vup4X5qsMvWA1gFMG/k4W7tg5h2y1YCAADw7wfT3eDmwGkMlQEASemF/BtBYbQpAgoAANxjyV8qrzYAfUY4AOjAZ4JUvB8Isg/AHENwAACgU0v+KjOxsnA3vAgAPnIXHVOjYbc1pXQRALwThPd038sM+CTnB8EKvmoAjSDdC/1VZmBl5TX500UNYCYw7tpEoBUBAnjHEEAEUD6Y3P2YvMcEIAIrOtUkSN4TGn8AEEFw+SggIH8AEIHKf6xw3iMGONpmPVFQJwFAiufOi1cBwP+iKxh1AICdekuPEIShALwHAoaEwf0vs6LVUwmm9/vkpZ3hI+cPMt4Bd8CvANwBIRDFlGIkCnbV2xQTDddeDohL8HSuBvGz6emeaONbDwo9YNg1bZEpEhG3ifbOjiGkw7nU8k/oZsIkiwKAaaJBfiLmfC4mSquha4z+ibCH094YPMpM+yjxAJARtHzOw+KRAf1PFZ8+BprQc1McgGwE0eRbQzobIvqj8BhCw3Q8AA4BmqGXew50OT4eQ9hun10HoBOQyXcNAePb4tg6t/E5O4CTgIB1i3dDGo+Px2DHtwAIgptvimIjsAc16wYAgZPvGMhfZ7NuABAEXNZPLAOAICH/SwG4Lyl/IyDT5+Uzi4iq+IBM/AnZWsoNpWwBn1qypZdSa1VtH6p8IYB1yZYZJbVplD8dgPF17urxGMrnA7h245+O4fZOgDBnv+Rmxkdp0ZcBROsyxehscbfkavw6e/UsgEUfY0BAfMGPayTUdtXmdwCkbr1r1VkLMrbZ0FxE23LlLt6M7wD04oRL1f0GKQiIR3WE9aPMLwa0hmb6YYZk1vHNWr8G3tx9F6AFb8jxiCBcHu2KFifeAbTd+xtyPCLGdI5WGrAA/3IA3pDy3O1RdzZ14l0AtmPEt5U68R4AhCLzlxUAKMR/KeDr6w4A4GHMA+sAZvCGR9aBsZ8VvOGRceDiALrrlRlED5T9zPBtv6z0D39wAAz0xueB3/o98JvfB3z7PwAuR32KFEooSwAAAABJRU5ErkJggg==",Ld="data:image/png;base64,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",Gd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAPFBMVEVHcEzP1dvQ1tbO1NnO1NnQ0NmiqKv29/fIy83O1NlSXGOBiY7p6+xye4CRmJzd4OG0uLtibHJHUln///8YRa/yAAAABnRSTlMAKiySzgZNvhPZAAADfUlEQVR4Xu2bi26jMBBF2yad8fv5//+6i+lgGMKuZFPYan1VqU49yfEF39ik4W3S++MpL9Pz8f426/MhL9bjs3Cf8nI9J/JD3qDH7/NbGj5fJl+A77PhfKlmy0/ye63n5xsZvtryfw2Wf9Cr/p8FHuARp5FjHqmfBR7gEaeR44YFpOhO8ACPOI0cZ5IBq1JSUYMpANBFuPTrIigAT8XBdIKNTlVW5JzF3AYCzwXK82Ite8BepY20ydnNzYm0HYfkxdgMNioxhZwxzvYnLD2IB8WtcXKcq8kkvSxU+5pzXXOccPbgDBof7GQM16cVF5cwGU5LsQRLh6QN7FMRPbLKbwdUXNJ4ZGkqMmSVaQdLMkHonDczytPv9SxDykNHnMySIxCYq8ipjatz6VlxV45jqorg2dmnji/MOgEWTBc4pI1sRYsKoUAAC4DvAGd3mEzNQ7PPk+hZJII6eDGj6oEmASuWHeCMwa7BsQ7phS0DcQ22ncsiCrCLF7NAKORbmXUxtoPl0tDk8BCMNeeWAt46uSBBJqm/gV2de9gJllNMA1KAjg81FUSxKcZGMMYZZh04S5OLg9k0V7oW29Yc67RTOATbfbFojZNQ+/X4EBzUeetxNsyzw2Nw9nbH7cixcZFv345zLN3iWmnfva82IgBAkGyKoilixZ4VN8XpfN0PHmAu9EUvnxjAwevdFZa+ILEdLA6WVV9zYwN/jqY+5cy5YNRprSjz4bsInAn2MTGF4zdZjQ1x4mB2AcnIVM/JZ4GR/Crt9OJd0phqH7XDSWD4wgYs9Ztl2lJfGSGUNphzwKhmrmETTdRLrUgoqSq2O06B75gxLqfS0ZhI8sQ4uYOhKLrSYsvwaeC4i6enTSCuDoYHCPTTDeZ7XBLxDI2A5eqcOKnqiv/Jr7a04XRwrNnke3dDjW9xrPkEIgaS9fA9jqFQFPKhxE0rSz2JwB1x4nNY82DDtlmEZ4KzpVWHuPVdA9V29y16wRFIZrGclBNSQEzVZT2zEYQXYFMvuEqSRyZbz/dOqjVOHJxhz8W6ZHBFfxo4B3V8RQVn7kA4OBvHPz2v8pr1NYG928oQAIOOKqlowWcu89WnwY//wrSCx/dA/l7/r4EH+FgjTuN7IJeBB3jEaYDHt40H+Ps0wFjAd92Sct9NOB8X33aEvgA/7rrR6rZby+67me6O2wc/JuYvqUaK5aX5ihcAAAAASUVORK5CYII=",jd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAbFBMVEXa2tra2tra2tra2tra2tra2tr////a2toAwP/Z8v//5sz/gQD/gAC6z9rryK4Apdz2bACi4v//8eL/vnf1/P/7+ff/jwP/0J3k9v8Aw///qkp11f9bzv9Byf8exf//nSrD6/+Q3P//5Md21f9CFRjSAAAABnRSTlMCzPZuG2+a9LtCAAAB2klEQVR42u3b246CMBCAYUGtdeseoIAcXDzs+7/jDnAxIbpJZ0tmopn/GvMFZICk6QpaJ+mOsTRZr4Y2yY69ZAMwuAIyXOedSOvphEvDWDmdcooup5yuBt4wN5gKK6ywwgorrLDCChPLrL1ywuhCXUGDPyE7q+lqImzHTn/JeesOs76gexjqazoMfdePXWADYdtR4al+bx7UHsLhhg5/j7+7mPvcY/gd2s+yEB0uTnYoM3cN1NusD2gx2BTdKF8XgjMbGBx7tThWETDNtXj0qVgADjLxv700OFYcMN5T+x7HKho2lGocK17Y4FjJw/KXWv7mkh8n+QeI/COTUDbBxc8iLwmSLPpaxDFihnGM+GEYIxEYxkgEhjESgWGMWGFM4deAvXNeAC5bB3l2OD+7MW44r5wIfANXAj6OZsUKo3vOuWE/um1p2GAco2mOXGA+GsYxOhoC7Hw8nFfoGh8sR8E4RtXNTHkWGMcoN5SiYRwj8xyw3KWWv7nkx0n+ASL/yKS/JJwXei36l/8QwLES/th78s9bymJI2f4Ldof45R9PgunLP31t4qMveDVdhBu8xKfrxworrLDCCiussMIKK6wwHRbbhCO27Uhso5XU1jLBzXTQlnv74BbQX+nYnnoY7CMgAAAAAElFTkSuQmCC",Fd="data:image/png;base64,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",Hd="data:image/png;base64,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",Yd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAALVBMVEXk5OTa2trZ2dn////a2toAfd6izPLvzPnRfvDZteWKr84Aar6zas3j7vxXp+ldDjCnAAAAA3RSTlMGy258//q2AAABGElEQVR42u3b0Q6CMAyFYWBsgtq+/+PaUM1c4sUuyk7U819DPjAKM80ma5nXoc3LdOTsWBrjuryskBa/4TQ0v2V3x8uECRMmTJgwYcKECZ8A36zcphLryL613a0X3CahrlG9sEbCex/sRcLbZ/hqlaYz4EvTbhEmTJgwYcInw3aOIuDjFAXAdamGgC1BwVlQcC7jYVGXh8MpuaxBcMmdpSoHwP1urkerBMDdbnm/ThkDu+vJUw6BU3dVLsPhJFplOIz/qPFfLvzPCf8AwT8y+ys5+CXRL0Nfi175s6WP/M/yFrmgV/5bJEyY8M/DgGEIZvyDH3jBRnwc4xImTJgwYcKECRMmTPiLYNi2I9hGK9zWMpMhLmz74AMqR94PQgY3hQAAAABJRU5ErkJggg==",Kd="data:image/png;base64,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",zd="data:image/png;base64,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",Qd="data:image/png;base64,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",Xd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAKlBMVEX////a4eaaM2z9rRr8iRL9sSz/8dvv7vL+w2T+4LfQoLu2a5SjRnr+0ITFZin+AAABwklEQVR42u3b62rDMAwFYHu2fE3e/3UXnAyFpIScIazBdH6F1vSrXVkJBbuR7CcmD5LZ+bRXCM9XYc7HxbTkY8qZ2Uk5SK8D+wG7yTHYYIP/F5wKUUnAGCE4UdhCCRgjA5cwUtwplag+jJGBKYzQ5TV6GKMAay21WnFpbSfrXAAMLBr8A91hvEyQknyG8Y2Bb8I7jLcCvO3ow/pLjRdXXSluobXixYVvJ2YpcqrEdnqwCgXav3waLOfn1bApVbhz1b1O1nEdbxnculdSlYRXrpLdvctcS6sQzG5I23WKHzPeCiyLwPX8gfQZptOUQxWCiSfMC31NPU2Z7H5s8Dv46xcx2OC/DTfcbSKw66jbpRpIR10pOHfIzWKwy8t7d8kOg3EZd3HY+eWl66XvTv4d7OVviw3dwDiMy+zKwizjLg7jjaQ7aZhl1MVhvIX1LAHjjWRhF4ZxGXdxmFsY0LBQGG9hfsYDfQM2MAAjMrtzYHeFncEGG2ywwQYbPB1uwHMAAKNys39vDTbYYDCpxFjSfDjFkTQdLjtcpsPxiBqsttRqxaW1naxzGWywwQqw2pGUrANnrWNHegetlGTFw3Rqxwe/AXAEHeeJRtDQAAAAAElFTkSuQmCC",qd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAA8FBMVEUAAADt8fPt8vTt8vTp7+/s8PP////t8fM5vU6F5OiUzfr/gYH/mprV9vfa7f253/yv7fD/09P/vLz/rKz/3NxEwVj1/PZdym5Wx2j5/fm46MCi4Kx/1Yx504eS2578/v0/v1O86cOs5LVqzno9v1Lq8PPg9ePW8trV8dmy5rqV3KBQxWP6/fv3/fjo+Ou1572l4a6h4KtjzHROxGH/iorF5Pz/9vb/19eb0PqN5una897O79TJ7c+b3qb/oKDl8/3V6/3i+PnS9fbs+e6e6ez/39/B68iK2Jdx0IBKw1207vH/6Oj/zs7/wcH/v7+G15PWBDHsAAAABnRSTlMA/uiyMHNa+bxxAAADA0lEQVRo3u2baXPaMBCGnUDAaUuPtIBvG8x9kwNaAs2dJj3//7/pSgwuGMsWg7CnZN8vYJD3GUnrd2XNSJKkdOowG6sOU2kJdHSQjV0HR9DfBLhATkupbCJKSWR+O5lY1SHzLBF8JmYRJoKDhGAEIxjBCEYwUwhGMIIRjOBtwYW6Vtb1slYvxAmu6aeyp1O9Fg9YHSiyT8pA3T2436asiuIalmW4SoVetvs7BjeKBJM3SgVvsktGXgYVG5uCf51w6PeI3qQ5gDhr2quh7OYZ/OxoG4K/vuHQA72nRXo7VAPmfUh63RIP/klvMcmI9oLD9cgcmKLBJ15/zS4rXtf0+swJfvgUKTrBGgS2wiJa0EATn9UNJ3Iooc9OQzi4CPPbDW/SJW1Eg/uQz72oRj3I7b5YsAp+NYxuNgQPU4WCB+AbHH6sgpMMhIKhLjR52jWhYogE12CGbXZtfrr03BNmucYJfheuC9JYl2WDGemuKOe9p8iQZZ18XjADVhfgz69CRcFQ90vM0WgTB59k5irByoCCmQF5wddkLKH+Fhjc+rNM9LQYdqjPpOn11uArEpydMtM85bqFpTSsw8dVNPhtuOy5TbvBXK1Cuea/3XZ3btg2M2B1g6wur+bWZOkPqm/0wsuusrDHSV+pS5aXaK05d+arUfpOwLYBmfZIv/2hWOigQDB7qE3CcqZgjybFOqT7OxlqX3JNHYq7LLiUm/dMaym5xID9j9NjhQIVyn2eBLh6XRDYbyAl2ZOy5svUQPjA39+H6nbdMpsLbvHOH9WzzFtmQO85/nIcqvuAIlGWfXYF8hWJe2ZAPjCoE1AWdZ9dZfxlsXO8PTgXtBCYgV2FLQRyHOBchG4Clz7WLHTpc8OOV/0/FnsbLG/3ZUGf0CtMki9t4l9TP3JovIsX8/PXHBrzbUWIB5//EL75AmAu8kj4dtP4A5fGo/ANtv3dUgzaRN3/beMXuUOPYAQjGMEIXheCEYxgBCMYwUwhGMEIRnAgOLFjR4kdtErsaFlih+kSOz74F7rcqD5hQQQSAAAAAElFTkSuQmCC",Jd="data:image/png;base64,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",Zd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAKlBMVEVuv+pxpsuixNqhxNq01OeArc+PvNzZ6fP+//9emsNpp9A9iblFk8Q9ibrLJXqlAAAADnRSTlMBL6D/////////////oNaeoRwAAAJeSURBVHja7deNcuMgDARgu1pYlTbv/7pHAEe+uON6Jo41c6dNmwJDRl/k/NDpnvlDHPIxTyOtvAvB6nsJrL6fYO4jXB5pmXsD4JLeguaAn6ABEIAABCAAAQhAAAIQgAAEIACegFSTnZJqXgEIqKokfABCXUJxAIiug8sB0BaSJrgU0MuvLLgWQK2R9YyXAuTpOdv0IgDsKdv8SgDtAtjClQCtyc4Ablvi3QHxeQ2YyP1d4PM5YFPx+ySU+4ze3wVyMUCevg3F+TwgHkcy6hI6nQlp9X0AGAA4Aews5AbguwECiF8HQK1x6wC0BU4A2BvMAwDqCM4FCOQIgPoIIHu3vpMigv1f1LDt/h0AfWuwAXzWFIvoe5PLKvfaBjCBL6Ak2vad19P9B72r8nfQbxCsMw4OZQ+wbUIqu+kAKUcjyLsACwYAZTdiXT2cfYAFR1qQbc9pAEs/65a9pPcALFlQdtMA5WzA8fgD7Cr9hwBLAAIQgAAEIAAB+NcBmSQofSIoY0AirdaEuc8wdiYZjz4FQB3FwLFKpWp6rEEXGTEAKk2np1wCRXkAbKCyDFGHG4DKaQBoegYQKwBVNtakVDkJkBRlAyA4WGj/nG07kKFyBPBV870b8DGUZQgl01hThW2m9L+fWuqmnPV7J/favwOK5q2FWKGyyk+AxjwBQNrYOoD1mgnWgNad1wFZCSL/1AFbM8EK0HSvAwAQCyAtdUVMiHZXxvY8AGNBjgHemAAEIAABCEAAAhCAAATgV8DNBB71b9P85SVoheeptsAxt6nm5lrfBC71R2YXwm2eav4AwjXv2I6cFtEAAAAASUVORK5CYII=";var O=(t=>(t.AUTHENTICATION="Authentication",t.AI="AI",t.SECURITY="Security",t.TRAFFIC_CONTROL="Traffic Control",t.SERVERLESS="Serverless",t.ANALYTICS_AND_MONITORING="Analytics & Monitoring",t.TRANSFORMATIONS="Transformations",t.LOGGING="Logging",t.DEPLOYMENT="Deployment",t.WEBSOCKET="WebSocket Plugins",t.CUSTOM_PLUGINS="Custom Plugins",t))(O||{}),c=(t=>(t.GLOBAL="global",t.SERVICE="service",t.ROUTE="route",t.CONSUMER="consumer",t.CONSUMER_GROUP="consumer_group",t))(c||{});const P={"basic-auth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"hmac-auth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"jwt-signer":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},jwt:{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"key-auth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"key-auth-enc":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ldap-auth-advanced":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ldap-auth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"oauth2-introspection":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},oauth2:{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"openid-connect":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"mtls-auth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"vault-auth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"bot-detection":{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},cors:{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ip-restriction":{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},opa:{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"kubernetes-sidecar-injector":{group:O.DEPLOYMENT,scope:[c.GLOBAL]},"request-validator":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},acl:{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},canary:{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"forward-proxy":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"proxy-cache":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"proxy-cache-advanced":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"graphql-proxy-cache-advanced":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"rate-limiting-advanced":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"rate-limiting":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"graphql-rate-limiting-advanced":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},mocking:{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"request-size-limiting":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"request-termination":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"response-ratelimiting":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"route-by-header":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"ai-proxy":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-prompt-decorator":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-prompt-template":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-prompt-guard":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-request-transformer":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ai-response-transformer":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-rate-limiting-advanced":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-azure-content-safety":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"aws-lambda":{group:O.SERVERLESS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"azure-functions":{group:O.SERVERLESS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},openwhisk:{group:O.SERVERLESS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"pre-function":{group:O.SERVERLESS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"post-function":{group:O.SERVERLESS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},datadog:{group:O.ANALYTICS_AND_MONITORING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},prometheus:{group:O.ANALYTICS_AND_MONITORING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},zipkin:{group:O.ANALYTICS_AND_MONITORING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},collector:{group:O.ANALYTICS_AND_MONITORING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"response-transformer-advanced":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"correlation-id":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"request-transformer-advanced":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"request-transformer":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"response-transformer":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"route-transformer-advanced":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"kafka-upstream":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},degraphql:{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"exit-transformer":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},jq:{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"file-log":{group:O.LOGGING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"http-log":{group:O.LOGGING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},loggly:{group:O.LOGGING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"statsd-advanced":{group:O.ANALYTICS_AND_MONITORING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},statsd:{group:O.ANALYTICS_AND_MONITORING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},syslog:{group:O.LOGGING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"tcp-log":{group:O.LOGGING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"udp-log":{group:O.LOGGING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"kafka-log":{group:O.LOGGING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},session:{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"upstream-tls":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"application-registration":{group:O.AUTHENTICATION,scope:[c.SERVICE]},"konnect-application-auth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE]},acme:{group:O.SECURITY,scope:[c.GLOBAL]},"grpc-gateway":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"grpc-web":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"upstream-timeout":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},opentelemetry:{group:O.ANALYTICS_AND_MONITORING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"websocket-validator":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"websocket-size-limit":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"tls-metadata-headers":{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"tls-handshake-modifier":{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"oas-validation":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"jwe-decrypt":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"xml-threat-protection":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},saml:{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"app-dynamics":{group:O.ANALYTICS_AND_MONITORING,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"json-threat-protection":{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"standard-webhooks":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ai-proxy-advanced":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-semantic-cache":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-semantic-prompt-guard":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"header-cert-auth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"upstream-oauth":{group:O.AUTHENTICATION,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},confluent:{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"service-protection":{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE]},"injection-protection":{group:O.SECURITY,scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},redirect:{group:O.TRAFFIC_CONTROL,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"kafka-consume":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"confluent-consume":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"request-callout":{group:O.TRANSFORMATIONS,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-sanitizer":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"ai-rag-injector":{group:O.AI,scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]}};var Xn=(t=>(t.REDIS_CE="redis-ce",t.REDIS_EE="redis-ee",t))(Xn||{});const _o=[O.AUTHENTICATION,O.AI,O.SECURITY,O.TRAFFIC_CONTROL,O.SERVERLESS,O.ANALYTICS_AND_MONITORING,O.TRANSFORMATIONS,O.LOGGING,O.DEPLOYMENT,O.WEBSOCKET,O.CUSTOM_PLUGINS],$o={[O.AUTHENTICATION]:!1,[O.AI]:!1,[O.SECURITY]:!1,[O.TRAFFIC_CONTROL]:!1,[O.SERVERLESS]:!1,[O.ANALYTICS_AND_MONITORING]:!1,[O.TRANSFORMATIONS]:!1,[O.LOGGING]:!1,[O.DEPLOYMENT]:!1,[O.CUSTOM_PLUGINS]:!1};var vt=(t=>(t.SERVICE="service_id",t.ROUTE="route_id",t.CONSUMER="consumer_id",t.CONSUMER_GROUP="consumer_group_id",t))(vt||{});const Vt=t=>{const n=Object.fromEntries(t.fields.map(a=>Object.entries(a)[0]));return"id"in n||(n.id={}),n},Pt={label:"Tags",name:"tags",type:"input",inputType:"text",valueType:"array",valueArrayType:"string",placeholder:"Enter list of tags",help:"An optional set of strings for grouping and filtering, separated by commas.",hint:"e.g. tag1, tag2, tag3"},en={getColumnFields:Vt,tags:Pt,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(t){const n=t.inputAttributes||{};return delete t.inputAttributes,{type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",newElementButtonLabelClasses:"kong-form-new-element-button-label",inputAttributes:{class:"form-control",style:{minWidth:"200px"},...n},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...t}}}},ei={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Pt}]},Wd={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{group:{required:!0,type:"string",hint:"The arbitrary group name to associate to the consumer."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},ti={fields:[{username:{}},{password:{inputType:"password"}},{tags:Pt}]},_d={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0}},{password:{type:"string",required:!0,encrypted:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}}]};function ni(t,n){for(var a=-1,o=t==null?0:t.length;++a<o&&n(t[a],a,t)!==!1;);return t}function $d(t){return function(n,a,o){for(var i=-1,r=Object(n),s=o(n),l=s.length;l--;){var d=s[++i];if(a(r[d],d,r)===!1)break}return n}}var eu=$d();function tu(t,n){for(var a=-1,o=Array(t);++a<t;)o[a]=n(a);return o}var ai=typeof global=="object"&&global&&global.Object===Object&&global,nu=typeof self=="object"&&self&&self.Object===Object&&self,et=ai||nu||Function("return this")(),wt=et.Symbol,oi=Object.prototype,au=oi.hasOwnProperty,ou=oi.toString,wn=wt?wt.toStringTag:void 0;function iu(t){var n=au.call(t,wn),a=t[wn];try{t[wn]=void 0;var o=!0}catch{}var i=ou.call(t);return o&&(n?t[wn]=a:delete t[wn]),i}var ru=Object.prototype,su=ru.toString;function lu(t){return su.call(t)}var cu="[object Null]",du="[object Undefined]",ii=wt?wt.toStringTag:void 0;function Ct(t){return t==null?t===void 0?du:cu:ii&&ii in Object(t)?iu(t):lu(t)}function Bt(t){return t!=null&&typeof t=="object"}var uu="[object Arguments]";function ri(t){return Bt(t)&&Ct(t)==uu}var si=Object.prototype,pu=si.hasOwnProperty,mu=si.propertyIsEnumerable,gu=ri(function(){return arguments}())?ri:function(t){return Bt(t)&&pu.call(t,"callee")&&!mu.call(t,"callee")},kt=Array.isArray;function Au(){return!1}var li=typeof ee=="object"&&ee&&!ee.nodeType&&ee,ci=li&&typeof module=="object"&&module&&!module.nodeType&&module,fu=ci&&ci.exports===li,di=fu?et.Buffer:void 0,hu=di?di.isBuffer:void 0,ui=hu||Au,yu=9007199254740991,bu=/^(?:0|[1-9]\d*)$/;function pi(t,n){var a=typeof t;return n=n??yu,!!n&&(a=="number"||a!="symbol"&&bu.test(t))&&t>-1&&t%1==0&&t<n}var Eu=9007199254740991;function mi(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Eu}var wu="[object Arguments]",Cu="[object Array]",Bu="[object Boolean]",ku="[object Date]",Iu="[object Error]",Ou="[object Function]",Ru="[object Map]",Mu="[object Number]",Su="[object Object]",Tu="[object RegExp]",xu="[object Set]",vu="[object String]",Vu="[object WeakMap]",Pu="[object ArrayBuffer]",Nu="[object DataView]",Du="[object Float32Array]",Uu="[object Float64Array]",Lu="[object Int8Array]",Gu="[object Int16Array]",ju="[object Int32Array]",Fu="[object Uint8Array]",Hu="[object Uint8ClampedArray]",Yu="[object Uint16Array]",Ku="[object Uint32Array]",Be={};Be[Du]=Be[Uu]=Be[Lu]=Be[Gu]=Be[ju]=Be[Fu]=Be[Hu]=Be[Yu]=Be[Ku]=!0,Be[wu]=Be[Cu]=Be[Pu]=Be[Bu]=Be[Nu]=Be[ku]=Be[Iu]=Be[Ou]=Be[Ru]=Be[Mu]=Be[Su]=Be[Tu]=Be[xu]=Be[vu]=Be[Vu]=!1;function zu(t){return Bt(t)&&mi(t.length)&&!!Be[Ct(t)]}function Ta(t){return function(n){return t(n)}}var gi=typeof ee=="object"&&ee&&!ee.nodeType&&ee,Cn=gi&&typeof module=="object"&&module&&!module.nodeType&&module,Qu=Cn&&Cn.exports===gi,xa=Qu&&ai.process,tn=function(){try{var t=Cn&&Cn.require&&Cn.require("util").types;return t||xa&&xa.binding&&xa.binding("util")}catch{}}(),Ai=tn&&tn.isTypedArray,Xu=Ai?Ta(Ai):zu,qu=Object.prototype,Ju=qu.hasOwnProperty;function fi(t,n){var a=kt(t),o=!a&&gu(t),i=!a&&!o&&ui(t),r=!a&&!o&&!i&&Xu(t),s=a||o||i||r,l=s?tu(t.length,String):[],d=l.length;for(var m in t)(n||Ju.call(t,m))&&!(s&&(m=="length"||i&&(m=="offset"||m=="parent")||r&&(m=="buffer"||m=="byteLength"||m=="byteOffset")||pi(m,d)))&&l.push(m);return l}var Zu=Object.prototype;function va(t){var n=t&&t.constructor,a=typeof n=="function"&&n.prototype||Zu;return t===a}function hi(t,n){return function(a){return t(n(a))}}var Wu=hi(Object.keys,Object),_u=Object.prototype,$u=_u.hasOwnProperty;function ep(t){if(!va(t))return Wu(t);var n=[];for(var a in Object(t))$u.call(t,a)&&a!="constructor"&&n.push(a);return n}function Je(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}var tp="[object AsyncFunction]",np="[object Function]",ap="[object GeneratorFunction]",op="[object Proxy]";function ye(t){if(!Je(t))return!1;var n=Ct(t);return n==np||n==ap||n==tp||n==op}function qn(t){return t!=null&&mi(t.length)&&!ye(t)}function Jn(t){return qn(t)?fi(t):ep(t)}function ip(t,n){return t&&eu(t,n,Jn)}function rp(t,n){return function(a,o){if(a==null)return a;if(!qn(a))return t(a,o);for(var i=a.length,r=-1,s=Object(a);++r<i&&o(s[r],r,s)!==!1;);return a}}var sp=rp(ip);function Va(t){return t}function lp(t){return typeof t=="function"?t:Va}function Ye(t,n){var a=kt(t)?ni:sp;return a(t,lp(n))}var cp="[object Symbol]";function Zn(t){return typeof t=="symbol"||Bt(t)&&Ct(t)==cp}var dp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,up=/^\w*$/;function pp(t,n){if(kt(t))return!1;var a=typeof t;return a=="number"||a=="symbol"||a=="boolean"||t==null||Zn(t)?!0:up.test(t)||!dp.test(t)||n!=null&&t in Object(n)}var Pa=et["__core-js_shared__"],yi=function(){var t=/[^.]+$/.exec(Pa&&Pa.keys&&Pa.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function mp(t){return!!yi&&yi in t}var gp=Function.prototype,Ap=gp.toString;function Nt(t){if(t!=null){try{return Ap.call(t)}catch{}try{return t+""}catch{}}return""}var fp=/[\\^$.*+?()[\]{}|]/g,hp=/^\[object .+?Constructor\]$/,yp=Function.prototype,bp=Object.prototype,Ep=yp.toString,wp=bp.hasOwnProperty,Cp=RegExp("^"+Ep.call(wp).replace(fp,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Bp(t){if(!Je(t)||mp(t))return!1;var n=ye(t)?Cp:hp;return n.test(Nt(t))}function kp(t,n){return t==null?void 0:t[n]}function Dt(t,n){var a=kp(t,n);return Bp(a)?a:void 0}var Bn=Dt(Object,"create");function Ip(){this.__data__=Bn?Bn(null):{},this.size=0}function Op(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var Rp="__lodash_hash_undefined__",Mp=Object.prototype,Sp=Mp.hasOwnProperty;function Tp(t){var n=this.__data__;if(Bn){var a=n[t];return a===Rp?void 0:a}return Sp.call(n,t)?n[t]:void 0}var xp=Object.prototype,vp=xp.hasOwnProperty;function Vp(t){var n=this.__data__;return Bn?n[t]!==void 0:vp.call(n,t)}var Pp="__lodash_hash_undefined__";function Np(t,n){var a=this.__data__;return this.size+=this.has(t)?0:1,a[t]=Bn&&n===void 0?Pp:n,this}function Ut(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}Ut.prototype.clear=Ip,Ut.prototype.delete=Op,Ut.prototype.get=Tp,Ut.prototype.has=Vp,Ut.prototype.set=Np;function Dp(){this.__data__=[],this.size=0}function Wn(t,n){return t===n||t!==t&&n!==n}function _n(t,n){for(var a=t.length;a--;)if(Wn(t[a][0],n))return a;return-1}var Up=Array.prototype,Lp=Up.splice;function Gp(t){var n=this.__data__,a=_n(n,t);if(a<0)return!1;var o=n.length-1;return a==o?n.pop():Lp.call(n,a,1),--this.size,!0}function jp(t){var n=this.__data__,a=_n(n,t);return a<0?void 0:n[a][1]}function Fp(t){return _n(this.__data__,t)>-1}function Hp(t,n){var a=this.__data__,o=_n(a,t);return o<0?(++this.size,a.push([t,n])):a[o][1]=n,this}function pt(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}pt.prototype.clear=Dp,pt.prototype.delete=Gp,pt.prototype.get=jp,pt.prototype.has=Fp,pt.prototype.set=Hp;var kn=Dt(et,"Map");function Yp(){this.size=0,this.__data__={hash:new Ut,map:new(kn||pt),string:new Ut}}function Kp(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function $n(t,n){var a=t.__data__;return Kp(n)?a[typeof n=="string"?"string":"hash"]:a.map}function zp(t){var n=$n(this,t).delete(t);return this.size-=n?1:0,n}function Qp(t){return $n(this,t).get(t)}function Xp(t){return $n(this,t).has(t)}function qp(t,n){var a=$n(this,t),o=a.size;return a.set(t,n),this.size+=a.size==o?0:1,this}function mt(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}mt.prototype.clear=Yp,mt.prototype.delete=zp,mt.prototype.get=Qp,mt.prototype.has=Xp,mt.prototype.set=qp;var Jp="Expected a function";function Na(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(Jp);var a=function(){var o=arguments,i=n?n.apply(this,o):o[0],r=a.cache;if(r.has(i))return r.get(i);var s=t.apply(this,o);return a.cache=r.set(i,s)||r,s};return a.cache=new(Na.Cache||mt),a}Na.Cache=mt;var Zp=500;function Wp(t){var n=Na(t,function(o){return a.size===Zp&&a.clear(),o}),a=n.cache;return n}var _p=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,$p=/\\(\\)?/g,em=Wp(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(_p,function(a,o,i,r){n.push(i?r.replace($p,"$1"):o||a)}),n});function tm(t,n){for(var a=-1,o=t==null?0:t.length,i=Array(o);++a<o;)i[a]=n(t[a],a,t);return i}var nm=1/0,bi=wt?wt.prototype:void 0,Ei=bi?bi.toString:void 0;function wi(t){if(typeof t=="string")return t;if(kt(t))return tm(t,wi)+"";if(Zn(t))return Ei?Ei.call(t):"";var n=t+"";return n=="0"&&1/t==-nm?"-0":n}function Ci(t){return t==null?"":wi(t)}function am(t,n){return kt(t)?t:pp(t,n)?[t]:em(Ci(t))}var om=1/0;function im(t){if(typeof t=="string"||Zn(t))return t;var n=t+"";return n=="0"&&1/t==-om?"-0":n}function rm(t,n){n=am(n,t);for(var a=0,o=n.length;t!=null&&a<o;)t=t[im(n[a++])];return a&&a==o?t:void 0}function me(t,n,a){var o=t==null?void 0:rm(t,n);return o===void 0?a:o}function ve(t){return t==null}const It="kong-ui-forms-api",Da="kong-ui-forms-config",sm="redis-partial-list-fetcher-key",ot="autofill",Ke="autofillSlot";function lm(){this.__data__=new pt,this.size=0}function cm(t){var n=this.__data__,a=n.delete(t);return this.size=n.size,a}function dm(t){return this.__data__.get(t)}function um(t){return this.__data__.has(t)}var pm=200;function mm(t,n){var a=this.__data__;if(a instanceof pt){var o=a.__data__;if(!kn||o.length<pm-1)return o.push([t,n]),this.size=++a.size,this;a=this.__data__=new mt(o)}return a.set(t,n),this.size=a.size,this}function nn(t){var n=this.__data__=new pt(t);this.size=n.size}nn.prototype.clear=lm,nn.prototype.delete=cm,nn.prototype.get=dm,nn.prototype.has=um,nn.prototype.set=mm;var ea=function(){try{var t=Dt(Object,"defineProperty");return t({},"",{}),t}catch{}}();function Bi(t,n,a){n=="__proto__"&&ea?ea(t,n,{configurable:!0,enumerable:!0,value:a,writable:!0}):t[n]=a}var gm=Object.prototype,Am=gm.hasOwnProperty;function ki(t,n,a){var o=t[n];(!(Am.call(t,n)&&Wn(o,a))||a===void 0&&!(n in t))&&Bi(t,n,a)}function ta(t,n,a,o){var i=!a;a||(a={});for(var r=-1,s=n.length;++r<s;){var l=n[r],d=void 0;d===void 0&&(d=t[l]),i?Bi(a,l,d):ki(a,l,d)}return a}function fm(t,n){return t&&ta(n,Jn(n),t)}function hm(t){var n=[];if(t!=null)for(var a in Object(t))n.push(a);return n}var ym=Object.prototype,bm=ym.hasOwnProperty;function Em(t){if(!Je(t))return hm(t);var n=va(t),a=[];for(var o in t)o=="constructor"&&(n||!bm.call(t,o))||a.push(o);return a}function na(t){return qn(t)?fi(t,!0):Em(t)}function wm(t,n){return t&&ta(n,na(n),t)}var Ii=typeof ee=="object"&&ee&&!ee.nodeType&&ee,Oi=Ii&&typeof module=="object"&&module&&!module.nodeType&&module,Cm=Oi&&Oi.exports===Ii,Ri=Cm?et.Buffer:void 0,Mi=Ri?Ri.allocUnsafe:void 0;function Bm(t,n){if(n)return t.slice();var a=t.length,o=Mi?Mi(a):new t.constructor(a);return t.copy(o),o}function km(t,n){var a=-1,o=t.length;for(n||(n=Array(o));++a<o;)n[a]=t[a];return n}function Im(t,n){for(var a=-1,o=t==null?0:t.length,i=0,r=[];++a<o;){var s=t[a];n(s,a,t)&&(r[i++]=s)}return r}function Si(){return[]}var Om=Object.prototype,Rm=Om.propertyIsEnumerable,Ti=Object.getOwnPropertySymbols,Ua=Ti?function(t){return t==null?[]:(t=Object(t),Im(Ti(t),function(n){return Rm.call(t,n)}))}:Si;function Mm(t,n){return ta(t,Ua(t),n)}function xi(t,n){for(var a=-1,o=n.length,i=t.length;++a<o;)t[i+a]=n[a];return t}var vi=hi(Object.getPrototypeOf,Object),Sm=Object.getOwnPropertySymbols,Vi=Sm?function(t){for(var n=[];t;)xi(n,Ua(t)),t=vi(t);return n}:Si;function Tm(t,n){return ta(t,Vi(t),n)}function Pi(t,n,a){var o=n(t);return kt(t)?o:xi(o,a(t))}function xm(t){return Pi(t,Jn,Ua)}function vm(t){return Pi(t,na,Vi)}var La=Dt(et,"DataView"),Ga=Dt(et,"Promise"),an=Dt(et,"Set"),ja=Dt(et,"WeakMap"),Ni="[object Map]",Vm="[object Object]",Di="[object Promise]",Ui="[object Set]",Li="[object WeakMap]",Gi="[object DataView]",Pm=Nt(La),Nm=Nt(kn),Dm=Nt(Ga),Um=Nt(an),Lm=Nt(ja),gt=Ct;(La&>(new La(new ArrayBuffer(1)))!=Gi||kn&>(new kn)!=Ni||Ga&>(Ga.resolve())!=Di||an&>(new an)!=Ui||ja&>(new ja)!=Li)&&(gt=function(t){var n=Ct(t),a=n==Vm?t.constructor:void 0,o=a?Nt(a):"";if(o)switch(o){case Pm:return Gi;case Nm:return Ni;case Dm:return Di;case Um:return Ui;case Lm:return Li}return n});var Gm=Object.prototype,jm=Gm.hasOwnProperty;function Fm(t){var n=t.length,a=new t.constructor(n);return n&&typeof t[0]=="string"&&jm.call(t,"index")&&(a.index=t.index,a.input=t.input),a}var ji=et.Uint8Array;function Fa(t){var n=new t.constructor(t.byteLength);return new ji(n).set(new ji(t)),n}function Hm(t,n){var a=n?Fa(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.byteLength)}var Ym=/\w*$/;function Km(t){var n=new t.constructor(t.source,Ym.exec(t));return n.lastIndex=t.lastIndex,n}var Fi=wt?wt.prototype:void 0,Hi=Fi?Fi.valueOf:void 0;function zm(t){return Hi?Object(Hi.call(t)):{}}function Qm(t,n){var a=n?Fa(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.length)}var Xm="[object Boolean]",qm="[object Date]",Jm="[object Map]",Zm="[object Number]",Wm="[object RegExp]",_m="[object Set]",$m="[object String]",eg="[object Symbol]",tg="[object ArrayBuffer]",ng="[object DataView]",ag="[object Float32Array]",og="[object Float64Array]",ig="[object Int8Array]",rg="[object Int16Array]",sg="[object Int32Array]",lg="[object Uint8Array]",cg="[object Uint8ClampedArray]",dg="[object Uint16Array]",ug="[object Uint32Array]";function pg(t,n,a){var o=t.constructor;switch(n){case tg:return Fa(t);case Xm:case qm:return new o(+t);case ng:return Hm(t,a);case ag:case og:case ig:case rg:case sg:case lg:case cg:case dg:case ug:return Qm(t,a);case Jm:return new o;case Zm:case $m:return new o(t);case Wm:return Km(t);case _m:return new o;case eg:return zm(t)}}var Yi=Object.create,mg=function(){function t(){}return function(n){if(!Je(n))return{};if(Yi)return Yi(n);t.prototype=n;var a=new t;return t.prototype=void 0,a}}();function gg(t){return typeof t.constructor=="function"&&!va(t)?mg(vi(t)):{}}var Ag="[object Map]";function fg(t){return Bt(t)&>(t)==Ag}var Ki=tn&&tn.isMap,hg=Ki?Ta(Ki):fg,yg="[object Set]";function bg(t){return Bt(t)&>(t)==yg}var zi=tn&&tn.isSet,Eg=zi?Ta(zi):bg,wg=1,Cg=2,Bg=4,Qi="[object Arguments]",kg="[object Array]",Ig="[object Boolean]",Og="[object Date]",Rg="[object Error]",Xi="[object Function]",Mg="[object GeneratorFunction]",Sg="[object Map]",Tg="[object Number]",qi="[object Object]",xg="[object RegExp]",vg="[object Set]",Vg="[object String]",Pg="[object Symbol]",Ng="[object WeakMap]",Dg="[object ArrayBuffer]",Ug="[object DataView]",Lg="[object Float32Array]",Gg="[object Float64Array]",jg="[object Int8Array]",Fg="[object Int16Array]",Hg="[object Int32Array]",Yg="[object Uint8Array]",Kg="[object Uint8ClampedArray]",zg="[object Uint16Array]",Qg="[object Uint32Array]",we={};we[Qi]=we[kg]=we[Dg]=we[Ug]=we[Ig]=we[Og]=we[Lg]=we[Gg]=we[jg]=we[Fg]=we[Hg]=we[Sg]=we[Tg]=we[qi]=we[xg]=we[vg]=we[Vg]=we[Pg]=we[Yg]=we[Kg]=we[zg]=we[Qg]=!0,we[Rg]=we[Xi]=we[Ng]=!1;function In(t,n,a,o,i,r){var s,l=n&wg,d=n&Cg,m=n&Bg;if(s!==void 0)return s;if(!Je(t))return t;var p=kt(t);if(p){if(s=Fm(t),!l)return km(t,s)}else{var u=gt(t),g=u==Xi||u==Mg;if(ui(t))return Bm(t,l);if(u==qi||u==Qi||g&&!i){if(s=d||g?{}:gg(t),!l)return d?Tm(t,wm(s,t)):Mm(t,fm(s,t))}else{if(!we[u])return i?t:{};s=pg(t,u,l)}}r||(r=new nn);var h=r.get(t);if(h)return h;r.set(t,s),Eg(t)?t.forEach(function(E){s.add(In(E,n,a,E,t,r))}):hg(t)&&t.forEach(function(E,k){s.set(k,In(E,n,a,k,t,r))});var C=m?d?vm:xm:d?na:Jn,f=p?void 0:C(t);return ni(f||t,function(E,k){f&&(k=E,E=t[k]),ki(s,k,In(E,n,a,k,t,r))}),s}var Xg=1,qg=4;function At(t){return In(t,Xg|qg)}const Ha=(t,n="")=>typeof t.id<"u"?n+t.id+"":n+(t.inputName||t.label||t.model||"").toString().trim().toLowerCase().replace(/ |_/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-]+)/g,""),Ji=(t="")=>t.toString().trim().replace(/ /g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-_/./:]+)/g,"");var Jg="[object String]";function Lt(t){return typeof t=="string"||!kt(t)&&Bt(t)&&Ct(t)==Jg}const Zi={methods:{getFieldRowClasses(t){const n=this.fieldErrors(t).length>0,a={[me(this.options,"validationErrorClass","error")]:n,[me(this.options,"validationSuccessClass","valid")]:!n,disabled:this.fieldDisabled(t),readonly:this.fieldReadonly(t),featured:this.fieldFeatured(t),required:this.fieldRequired(t)};return Array.isArray(t.styleClasses)?Ye(t.styleClasses,o=>a[o]=!0):Lt(t.styleClasses)&&(a[t.styleClasses]=!0),ve(t.type)||(a["field-"+t.type]=!0),a},fieldErrors(t){return this.errors.filter(n=>n.field.fieldName===t.fieldName).map(n=>n.error)},fieldDisabled(t){return ye(t.disabled)?t.disabled.call(this,this.model,t,this):ve(t.disabled)?!1:t.disabled},fieldReadonly(t){return ye(t.readonly)?t.readonly.call(this,this.model,t,this):ve(t.readonly)?!1:t.readonly},fieldFeatured(t){return ye(t.featured)?t.featured.call(this,this.model,t,this):ve(t.featured)?!1:t.featured},fieldRequired(t){return ye(t.required)?t.required.call(this,this.model,t,this):ve(t.required)?!1:t.required}}};var Ya=function(){return et.Date.now()},Zg=/\s/;function Wg(t){for(var n=t.length;n--&&Zg.test(t.charAt(n)););return n}var _g=/^\s+/;function $g(t){return t&&t.slice(0,Wg(t)+1).replace(_g,"")}var Wi=NaN,eA=/^[-+]0x[0-9a-f]+$/i,tA=/^0b[01]+$/i,nA=/^0o[0-7]+$/i,aA=parseInt;function Ka(t){if(typeof t=="number")return t;if(Zn(t))return Wi;if(Je(t)){var n=typeof t.valueOf=="function"?t.valueOf():t;t=Je(n)?n+"":n}if(typeof t!="string")return t===0?t:+t;t=$g(t);var a=tA.test(t);return a||nA.test(t)?aA(t.slice(2),a?2:8):eA.test(t)?Wi:+t}var oA="Expected a function",iA=Math.max,rA=Math.min;function On(t,n,a){var o,i,r,s,l,d,m=0,p=!1,u=!1,g=!0;if(typeof t!="function")throw new TypeError(oA);n=Ka(n)||0,Je(a)&&(p=!!a.leading,u="maxWait"in a,r=u?iA(Ka(a.maxWait)||0,n):r,g="trailing"in a?!!a.trailing:g);function h(A){var y=o,b=i;return o=i=void 0,m=A,s=t.apply(b,y),s}function C(A){return m=A,l=setTimeout(k,n),p?h(A):s}function f(A){var y=A-d,b=A-m,x=n-y;return u?rA(x,r-b):x}function E(A){var y=A-d,b=A-m;return d===void 0||y>=n||y<0||u&&b>=r}function k(){var A=Ya();if(E(A))return R(A);l=setTimeout(k,f(A))}function R(A){return l=void 0,g&&o?h(A):(o=i=void 0,s)}function w(){l!==void 0&&clearTimeout(l),m=0,o=d=i=l=void 0}function I(){return l===void 0?s:R(Ya())}function v(){var A=Ya(),y=E(A);if(o=arguments,i=this,d=A,y){if(l===void 0)return C(d);if(u)return clearTimeout(l),l=setTimeout(k,n),h(d)}return l===void 0&&(l=setTimeout(k,n)),s}return v.cancel=w,v.flush=I,v}var sA="__lodash_hash_undefined__";function lA(t){return this.__data__.set(t,sA),this}function cA(t){return this.__data__.has(t)}function aa(t){var n=-1,a=t==null?0:t.length;for(this.__data__=new mt;++n<a;)this.add(t[n])}aa.prototype.add=aa.prototype.push=lA,aa.prototype.has=cA;function dA(t,n,a,o){for(var i=t.length,r=a+-1;++r<i;)if(n(t[r],r,t))return r;return-1}function uA(t){return t!==t}function pA(t,n,a){for(var o=a-1,i=t.length;++o<i;)if(t[o]===n)return o;return-1}function mA(t,n,a){return n===n?pA(t,n,a):dA(t,uA,a)}function gA(t,n){var a=t==null?0:t.length;return!!a&&mA(t,n,0)>-1}function AA(t,n){return t.has(n)}function fA(){}function _i(t){var n=-1,a=Array(t.size);return t.forEach(function(o){a[++n]=o}),a}var hA=1/0,yA=an&&1/_i(new an([,-0]))[1]==hA?function(t){return new an(t)}:fA,bA=200;function EA(t,n,a){var o=-1,i=gA,r=t.length,s=!0,l=[],d=l;if(r>=bA){var m=yA(t);if(m)return _i(m);s=!1,i=AA,d=new aa}else d=l;e:for(;++o<r;){var p=t[o],u=p;if(p=p!==0?p:0,s&&u===u){for(var g=d.length;g--;)if(d[g]===u)continue e;l.push(p)}else i(d,u,a)||(d!==l&&d.push(u),l.push(p))}return l}function $i(t){return t&&t.length?EA(t):[]}var wA=0;function er(t){var n=++wA;return Ci(t)+n}var tr=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,Ot="\\d\\d?",Rt="\\d\\d",CA="\\d{3}",BA="\\d{4}",Rn="[^\\s]+",nr=/\[([^]*?)\]/gm;function ar(t,n){for(var a=[],o=0,i=t.length;o<i;o++)a.push(t[o].substr(0,n));return a}var or=function(t){return function(n,a){var o=a[t].map(function(r){return r.toLowerCase()}),i=o.indexOf(n.toLowerCase());return i>-1?i:null}};function Gt(t){for(var n=[],a=1;a<arguments.length;a++)n[a-1]=arguments[a];for(var o=0,i=n;o<i.length;o++){var r=i[o];for(var s in r)t[s]=r[s]}return t}var ir=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],rr=["January","February","March","April","May","June","July","August","September","October","November","December"],kA=ar(rr,3),IA=ar(ir,3),sr={dayNamesShort:IA,dayNames:ir,monthNamesShort:kA,monthNames:rr,amPm:["am","pm"],DoFn:function(t){return t+["th","st","nd","rd"][t%10>3?0:(t-t%10!==10?1:0)*t%10]}},oa=Gt({},sr),OA=function(t){return oa=Gt(oa,t)},lr=function(t){return t.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},Qe=function(t,n){for(n===void 0&&(n=2),t=String(t);t.length<n;)t="0"+t;return t},RA={D:function(t){return String(t.getDate())},DD:function(t){return Qe(t.getDate())},Do:function(t,n){return n.DoFn(t.getDate())},d:function(t){return String(t.getDay())},dd:function(t){return Qe(t.getDay())},ddd:function(t,n){return n.dayNamesShort[t.getDay()]},dddd:function(t,n){return n.dayNames[t.getDay()]},M:function(t){return String(t.getMonth()+1)},MM:function(t){return Qe(t.getMonth()+1)},MMM:function(t,n){return n.monthNamesShort[t.getMonth()]},MMMM:function(t,n){return n.monthNames[t.getMonth()]},YY:function(t){return Qe(String(t.getFullYear()),4).substr(2)},YYYY:function(t){return Qe(t.getFullYear(),4)},h:function(t){return String(t.getHours()%12||12)},hh:function(t){return Qe(t.getHours()%12||12)},H:function(t){return String(t.getHours())},HH:function(t){return Qe(t.getHours())},m:function(t){return String(t.getMinutes())},mm:function(t){return Qe(t.getMinutes())},s:function(t){return String(t.getSeconds())},ss:function(t){return Qe(t.getSeconds())},S:function(t){return String(Math.round(t.getMilliseconds()/100))},SS:function(t){return Qe(Math.round(t.getMilliseconds()/10),2)},SSS:function(t){return Qe(t.getMilliseconds(),3)},a:function(t,n){return t.getHours()<12?n.amPm[0]:n.amPm[1]},A:function(t,n){return t.getHours()<12?n.amPm[0].toUpperCase():n.amPm[1].toUpperCase()},ZZ:function(t){var n=t.getTimezoneOffset();return(n>0?"-":"+")+Qe(Math.floor(Math.abs(n)/60)*100+Math.abs(n)%60,4)},Z:function(t){var n=t.getTimezoneOffset();return(n>0?"-":"+")+Qe(Math.floor(Math.abs(n)/60),2)+":"+Qe(Math.abs(n)%60,2)}},cr=function(t){return+t-1},dr=[null,Ot],ur=[null,Rn],pr=["isPm",Rn,function(t,n){var a=t.toLowerCase();return a===n.amPm[0]?0:a===n.amPm[1]?1:null}],mr=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(t){var n=(t+"").match(/([+-]|\d\d)/gi);if(n){var a=+n[1]*60+parseInt(n[2],10);return n[0]==="+"?a:-a}return 0}],MA={D:["day",Ot],DD:["day",Rt],Do:["day",Ot+Rn,function(t){return parseInt(t,10)}],M:["month",Ot,cr],MM:["month",Rt,cr],YY:["year",Rt,function(t){var n=new Date,a=+(""+n.getFullYear()).substr(0,2);return+(""+(+t>68?a-1:a)+t)}],h:["hour",Ot,void 0,"isPm"],hh:["hour",Rt,void 0,"isPm"],H:["hour",Ot],HH:["hour",Rt],m:["minute",Ot],mm:["minute",Rt],s:["second",Ot],ss:["second",Rt],YYYY:["year",BA],S:["millisecond","\\d",function(t){return+t*100}],SS:["millisecond",Rt,function(t){return+t*10}],SSS:["millisecond",CA],d:dr,dd:dr,ddd:ur,dddd:ur,MMM:["month",Rn,or("monthNamesShort")],MMMM:["month",Rn,or("monthNames")],a:pr,A:pr,ZZ:mr,Z:mr},ia={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"},SA=function(t){return Gt(ia,t)},TA=function(t,n,a){if(n===void 0&&(n=ia.default),a===void 0&&(a={}),typeof t=="number"&&(t=new Date(t)),Object.prototype.toString.call(t)!=="[object Date]"||isNaN(t.getTime()))throw new Error("Invalid Date pass to format");n=ia[n]||n;var o=[];n=n.replace(nr,function(r,s){return o.push(s),"@@@"});var i=Gt(Gt({},oa),a);return n=n.replace(tr,function(r){return RA[r](t,i)}),n.replace(/@@@/g,function(){return o.shift()})};function xA(t,n,a){if(a===void 0&&(a={}),typeof n!="string")throw new Error("Invalid format in fecha parse");if(n=ia[n]||n,t.length>1e3)return null;var o=new Date,i={year:o.getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},r=[],s=[],l=n.replace(nr,function(I,v){return s.push(lr(v)),"@@@"}),d={},m={};l=lr(l).replace(tr,function(I){var v=MA[I],A=v[0],y=v[1],b=v[3];if(d[A])throw new Error("Invalid format. "+A+" specified twice in format");return d[A]=!0,b&&(m[b]=!0),r.push(v),"("+y+")"}),Object.keys(m).forEach(function(I){if(!d[I])throw new Error("Invalid format. "+I+" is required in specified format")}),l=l.replace(/@@@/g,function(){return s.shift()});var p=t.match(new RegExp(l,"i"));if(!p)return null;for(var u=Gt(Gt({},oa),a),g=1;g<p.length;g++){var h=r[g-1],C=h[0],f=h[2],E=f?f(p[g],u):+p[g];if(E==null)return null;i[C]=E}i.isPm===1&&i.hour!=null&&+i.hour!=12?i.hour=+i.hour+12:i.isPm===0&&+i.hour==12&&(i.hour=0);var k;if(i.timezoneOffset==null){k=new Date(i.year,i.month,i.day,i.hour,i.minute,i.second,i.millisecond);for(var R=[["month","getMonth"],["day","getDate"],["hour","getHours"],["minute","getMinutes"],["second","getSeconds"]],g=0,w=R.length;g<w;g++)if(d[R[g][0]]&&i[R[g][0]]!==k[R[g][1]]())return null}else if(k=new Date(Date.UTC(i.year,i.month,i.day,i.hour,i.minute-i.timezoneOffset,i.second,i.millisecond)),i.month>11||i.month<0||i.day>31||i.day<1||i.hour>23||i.hour<0||i.minute>59||i.minute<0||i.second>59||i.second<0)return null;return k}var on={format:TA,parse:xA,defaultI18n:sr,setGlobalDateI18n:OA,setGlobalDateMasks:SA};function vA(t,n,a){switch(a.length){case 0:return t.call(n);case 1:return t.call(n,a[0]);case 2:return t.call(n,a[0],a[1]);case 3:return t.call(n,a[0],a[1],a[2])}return t.apply(n,a)}var gr=Math.max;function VA(t,n,a){return n=gr(n===void 0?t.length-1:n,0),function(){for(var o=arguments,i=-1,r=gr(o.length-n,0),s=Array(r);++i<r;)s[i]=o[n+i];i=-1;for(var l=Array(n+1);++i<n;)l[i]=o[i];return l[n]=a(s),vA(t,this,l)}}function PA(t){return function(){return t}}var NA=ea?function(t,n){return ea(t,"toString",{configurable:!0,enumerable:!1,value:PA(n),writable:!0})}:Va,DA=800,UA=16,LA=Date.now;function GA(t){var n=0,a=0;return function(){var o=LA(),i=UA-(o-a);if(a=o,i>0){if(++n>=DA)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}var jA=GA(NA);function FA(t,n){return jA(VA(t,n,Va),t+"")}function HA(t,n,a){if(!Je(a))return!1;var o=typeof n;return(o=="number"?qn(a)&&pi(n,a.length):o=="string"&&n in a)?Wn(a[n],t):!1}var Ar=Object.prototype,YA=Ar.hasOwnProperty,KA=FA(function(t,n){t=Object(t);var a=-1,o=n.length,i=o>2?n[2]:void 0;for(i&&HA(n[0],n[1],i)&&(o=1);++a<o;)for(var r=n[a],s=na(r),l=-1,d=s.length;++l<d;){var m=s[l],p=t[m];(p===void 0||Wn(p,Ar[m])&&!YA.call(t,m))&&(t[m]=r[m])}return t}),zA=et.isFinite;function QA(t){return typeof t=="number"&&zA(t)}var fr=1/0,XA=17976931348623157e292;function qA(t){if(!t)return t===0?t:0;if(t=Ka(t),t===fr||t===-fr){var n=t<0?-1:1;return n*XA}return t===t?t:0}function JA(t){var n=qA(t),a=n%1;return n===n?a?n-a:n:0}function ZA(t){return typeof t=="number"&&t==JA(t)}var WA="[object Number]";function ra(t){return typeof t=="number"||Bt(t)&&Ct(t)==WA}const _A={packageName:"forms",disable_global_radio:"The plugin is set to 'Scoped' by default when configured under a {scope}. To configure a global plugin, navigate to the global plugin list page.",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it."},$A={view_advanced_fields:"View Advanced Fields",window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},start_with_a_use_case:"Start with a use case:",use_case_index:"Use case {index}",error_message:{label:"Error Message",code_placeholder:"Code Message",message_placeholder:"Error Message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},identifiers:{label:"Identifiers",options:{ip:"IP",credential:"Credential",consumer:"Consumer",service:"Service",header:"Header",path:"Path","consumer-group":"Consumer Group"}},redis:{title:"Configure your Redis",address_example:"e.g. localhost:6379"}},ef={field_is_required:"This field is required",invalid_format:"Invalid format",number_too_small:"The number is too small. Minimum: {0}",number_too_large:"The number is too large. Maximum: {0}",invalid_number:"Invalid number",invalid_integer:"The value is not an integer",text_too_short:"The length of text is too short. Current: {0}, Minimum: {1}",text_too_long:"The length of text is too long. Current: {0}, Maximum: {1}",this_not_text:"This is not a text",this_not_array:"This is not an array",select_min_items:"Select minimum {0} items",select_max_items:"Select maximum {0} items",invalid_date:"Invalid date",date_is_early:"The date is too early. Current: {0}, Minimum: {1}",date_is_late:"The date is too late. Current: {0}, Maximum: {1}",invalid_email:"Invalid e-mail address",invalid_url:"Invalid URL",invalid_card:"Invalid card format",invalid_card_number:"Invalid card number",invalid_text_contain_number:"Invalid text - cannot contains numbers or special characters",invalid_tex_contain_spec:"Invalid text - cannot contains special characters"},tf={title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},nf={labels:{on:"On",off:"Off"}},it={general:_A,"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"}},rla:$A,validators:ef,redis:tf,vfg:nf},{t:Ve}=De.createI18n("en-us",it),Ue={fieldIsRequired:Ve("validators.field_is_required"),invalidFormat:Ve("validators.invalid_format"),numberTooSmall:Ve("validators.number_too_small"),numberTooBig:Ve("validators.number_too_large"),invalidNumber:Ve("validators.invalid_number"),invalidInteger:Ve("validators.invalid_integer"),textTooSmall:Ve("validators.text_too_short"),textTooBig:Ve("validators.text_too_long"),thisNotText:Ve("validators.this_not_text"),thisNotArray:Ve("validators.this_not_array"),selectMinItems:Ve("validators.select_min_items"),selectMaxItems:Ve("validators.select_max_items"),invalidDate:Ve("validators.invalid_date"),dateIsEarly:Ve("validators.date_is_early"),dateIsLate:Ve("validators.date_is_late"),invalidEmail:Ve("validators.invalid_email"),invalidURL:Ve("validators.invalid_url"),invalidCard:Ve("validators.invalid_card"),invalidCardNumber:Ve("validators.invalid_card_number"),invalidTextContainNumber:Ve("validators.invalid_text_contain_number"),invalidTextContainSpec:Ve("validators.invalid_tex_contain_spec")},Re=(t,...n)=>{if(t&&n.length>0)for(let a=0;a<n.length;a++)t=t.replace("{"+(a-1)+"}",String(n[a]||""));return t},tt=(t,n,a=Ue)=>ve(t)||t===""?n?[Re(a.fieldIsRequired)]:[]:null,jt={required:(t,n,a,o=Ue)=>tt(t,n.required,o)||[],number:(t,n,a,o=Ue)=>{let i=tt(t,n.required,o);return i!=null||(i=[],QA(t)?(!ve(n.min)&&t<n.min,(o=Ue)&&i.push(Re(o.numberTooSmall,n.min)),!ve(n.max)&&t>n.max,(o=Ue)&&i.push(Re(o.numberTooBig,n.max))):i.push(Re(o.invalidNumber))),i},integer:(t,n,a,o=Ue)=>{let i=tt(t,n.required,o);return i!=null||(i=[],i.concat(jt.number(t,n,a,o)),ZA(t)||i.push(Re(o.invalidInteger))),i},double:(t,n,a,o=Ue)=>tt(t,n.required,o)??(!ra(t)||isNaN(t)?[Re(o.invalidNumber)]:[]),string:(t,n,a,o=Ue)=>{let i=tt(t,n.required,o);return i!=null||(i=[],Lt(t)?(!ve(n.min)&&t.length<n.min&&i.push(Re(o.textTooSmall,t.length,n.min)),!ve(n.max)&&t.length>n.max&&i.push(Re(o.textTooBig,t.length,n.max))):i.push(Re(o.thisNotText))),i},array:(t,n,a,o=Ue)=>{if(n.required){if(!Array.isArray(t))return[Re(o.thisNotArray)];if(t.length===0)return[Re(o.fieldIsRequired)]}if(!ve(t)){if(!ve(n.min)&&t.length<n.min)return[Re(o.selectMinItems,n.min)];if(!ve(n.max)&&t.length>n.max)return[Re(o.selectMaxItems,n.max)]}return[]},date:(t,n,a,o=Ue)=>{let i=tt(t,n.required,o);if(i!=null)return i;i=[];const r=new Date(t);if(isNaN(r.getDate()))return[Re(o.invalidDate)];if(!ve(n.min)){const s=new Date(n.min);r.valueOf()<s.valueOf()&&i.push(Re(o.dateIsEarly,on.format(r),on.format(s)))}if(!ve(n.max)){const s=new Date(n.max);r.valueOf()>s.valueOf()&&i.push(Re(o.dateIsLate,on.format(r),on.format(s)))}return i},regexp:(t,n,a,o=Ue)=>tt(t,n.required,o)??(!ve(n.pattern)&&!new RegExp(n.pattern).test(t)?[Re(o.invalidFormat)]:[]),email:(t,n,a,o=Ue)=>tt(t,n.required,o)??(/^(([^<>()\[\]\\.,;:\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(t)?[]:[Re(o.invalidEmail)]),url:(t,n,a,o=Ue)=>tt(t,n.required,o)??(/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g.test(t)?[]:[Re(o.invalidURL)]),creditCard:(t,n,a,o=Ue)=>{const i=tt(t,n.required,o);if(i!=null)return i;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})$/,s=t.replace(/[^0-9]+/g,"");if(!r.test(s))return[Re(o.invalidCard)];let l=0,d,m,p;for(let u=s.length-1;u>=0;u--)d=s.substring(u,u+1),m=parseInt(d,10),p?(m*=2,m>=10?l+=m%10+1:l+=m):l+=m,p=!p;return l%10===0&&s?[]:[Re(o.invalidCardNumber)]},alpha:(t,n,a,o=Ue)=>tt(t,n.required,o)??(/^[a-zA-Z]*$/.test(t)?[]:[Re(o.invalidTextContainNumber)]),alphaNumeric:(t,n,a,o=Ue)=>tt(t,n.required,o)??(/^[a-zA-Z0-9]*$/.test(t)?[]:[Re(o.invalidTextContainSpec)])};Object.keys(jt).forEach(t=>{const n=jt[t];ye(n)&&(n.locale=a=>(o,i,r)=>n(o,i,r,KA(a,Ue)))});function hr(t){return Lt(t)?jt[t]!=null?jt[t]:(console.warn(`'${t}' is not a validator function!`),null):t}function za(t,n,a){let o=me(a.context,"schema.attributes",{});const i=n.value||"input";Lt(i)&&(o=me(o,i)||o),Ye(o,(r,s)=>{t.setAttribute(s,r)})}const ft={name:"abstractField",props:["vfg","model","schema","formOptions","disabled"],emits:["validated","modelUpdated"],data(){return{errors:[],debouncedValidateFunc:null,debouncedFormatFunc:null}},directives:{attributes:{beforeMount:za,updated:za,componentUpdated:za}},computed:{value:{cache:!1,get(){let t;return ye(me(this.schema,"get"))?t=this.schema.get(this.model):t=me(this.model,this.schema.model),this.formatValueToField(t)},set(t){const n=this.value;t=this.formatValueToModel(t),ye(t)?t(t,n):this.updateModelValue(t,n)}}},methods:{validate(t){this.clearValidationErrors();const n=me(this.formOptions,"validateAsync",!1);let a=[];if(this.schema.validator&&this.schema.readonly!==!0&&this.disabled!==!0){const i=[];Array.isArray(this.schema.validator)?Ye(this.schema.validator,r=>{i.push(hr(r).bind(this))}):i.push(hr(this.schema.validator).bind(this)),Ye(i,r=>{if(n)a.push(r(this.value,this.schema,this.model));else{const s=r(this.value,this.schema,this.model);s&&ye(s.then)?s.then(l=>{l&&(this.errors=this.errors.concat(l));const d=this.errors.length===0;this.$emit("validated",d,this.errors,this)}):s&&(a=a.concat(s))}})}const o=i=>{let r=[];Ye($i(i),l=>{Array.isArray(l)&&l.length>0?r=r.concat(l):Lt(l)&&r.push(l)}),ye(this.schema.onValidated)&&this.schema.onValidated.call(this,this.model,r,this.schema);const s=r.length===0;return t||this.$emit("validated",s,r,this),this.errors=r,r};return n?Promise.all(a).then(o):o(a)},debouncedValidate(){ye(this.debouncedValidateFunc)||(this.debouncedValidateFunc=On(this.validate.bind(this),me(this.schema,"validateDebounceTime",me(this.formOptions,"validateDebounceTime",500)))),this.debouncedValidateFunc()},updateModelValue(t,n){let a=!1;ye(this.schema.set)?(this.schema.set(this.model,t),a=!0):this.schema.model&&(this.setModelValueByPath(this.schema.model,t),a=!0),a&&(this.$emit("modelUpdated",t,this.schema.model),ye(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,t,n,this.schema),me(this.formOptions,"validateAfterChanged",!1)===!0&&(me(this.schema,"validateDebounceTime",me(this.formOptions,"validateDebounceTime",0))>0?this.debouncedValidate():this.validate()))},clearValidationErrors(){this.errors.splice(0)},setModelValueByPath(t,n){let a=t.replace(/\[(\w+)\]/g,".$1");a=a.replace(/^\./,"");let o=this.model;const i=a.split(".");let r=0;const s=i.length;for(;r<s;){const l=i[r];if(r<s-1)o[l]!==void 0||(o[l]={}),o=o[l];else{o[l]=n;return}++r}},getFieldID(t,n=!1){const a=me(this.formOptions,"fieldIdPrefix","");return Ha(t,a)+(n?"-"+er():"")},getLabelId(t){return`${this.getFieldID(t)}-label`},getFieldClasses(){return me(this.schema,"fieldClasses",[])},formatValueToField(t){return t},formatValueToModel(t){return t}}},be=(t,n)=>{const a=t.__vccOpts||t;for(const[o,i]of n)a[o]=i;return a},af={mixins:[ft],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(t,n){this.$emit("model-updated",t,n)}}},of={class:"advanced-field-dropdown-wrapper","data-testid":"advanced-field-dropdown-wrapper"},rf={class:"material-icons"};function sf(t,n,a,o,i,r){const s=e.resolveComponent("vue-form-generator");return e.openBlock(),e.createElementBlock("div",of,[e.createElementVNode("button",{class:"advanced-field-title",type:"button",onClick:n[0]||(n[0]=(...l)=>r.handleOpen&&r.handleOpen(...l))},[e.createElementVNode("i",rf,e.toDisplayString(i.isOpen?"keyboard_arrow_up":"keyboard_arrow_right"),1),e.createElementVNode("span",null,e.toDisplayString(r.titleText),1)]),e.createElementVNode("div",{class:e.normalizeClass(["advanced-field-dropdown",r.openClass])},[e.createVNode(s,{model:t.model,options:{helpAsHtml:!0},schema:t.schema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])],2)])}const lf=be(af,[["render",sf],["__scopeId","data-v-acfccff7"]]),cf={class:"array-card-container"},df=e.defineComponent({__name:"FieldArrayCardContainer",props:{model:{type:Object,default:()=>null},schema:{type:Object,default:()=>null},index:{type:Number,default:void 0}},emits:["remove-item"],setup(t){return e.provide("vfg-array-item-index",t.index),(n,a)=>{const o=e.resolveComponent("KCard"),i=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",cf,[e.createVNode(o,{class:"card"},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default",{},void 0,!0)]),_:3}),e.createVNode(i,{appearance:"tertiary",class:"array-card-remove-button",onClick:a[0]||(a[0]=r=>n.$emit("remove-item"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.TrashIcon))]),_:1})])}}}),yr=be(df,[["__scopeId","data-v-97302224"]]),uf={class:"array-item-wrapper"},pf={class:"array-item"},mf={class:"array-item-after"},gf=e.defineComponent({__name:"FieldArrayItem",props:{model:{type:String,default:""}},emits:["remove-item"],setup(t){return(n,a)=>{const o=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",uf,[e.createElementVNode("div",pf,[e.renderSlot(n.$slots,"default",{},void 0,!0),e.createVNode(o,{appearance:"tertiary",class:"delete",onClick:a[0]||(a[0]=i=>n.$emit("remove-item"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.TrashIcon))]),_:1})]),e.createElementVNode("div",mf,[e.renderSlot(n.$slots,"after",{},void 0,!0)])])}}}),br=be(gf,[["__scopeId","data-v-51d79db2"]]),Af={class:"multi-item-wrapper"},ff=e.defineComponent({__name:"FieldArrayMultiItem",emits:["remove-item"],setup(t){return(n,a)=>{const o=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",Af,[e.renderSlot(n.$slots,"default",{},void 0,!0),e.createVNode(o,{appearance:"danger",class:"delete",onClick:a[0]||(a[0]=i=>n.$emit("remove-item"))},{default:e.withCtx(()=>a[1]||(a[1]=[e.createTextVNode(" - Remove Field ")])),_:1}),a[2]||(a[2]=e.createElementVNode("hr",null,null,-1))])}}}),Er=be(ff,[["__scopeId","data-v-b4fcf731"]]),hf="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",yf=t=>t?t.length===36&&new RegExp(`^${hf}$`).test(t):!1,Qa=50,Ft={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 bf(t,n,a){return a?Ft.SET_REFERRAL_VALUE:t&&!n||!t&&n?Ft.UPDATE_ENTITY:t&&n?Ft.CREATE_FROM_ENTITY:Ft.CREATE_NOT_FROM_ENTITY}const Ef={mixins:[ft],inject:[It],emits:["model-updated"],setup(){const{t}=De.createI18n("en-us",it);return{t}},data(){return{suggestions:[],idValue:"",message:"Type something to search",items:[],initialItems:[],loading:!1}},computed:{fieldState(){return bf(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},scope(){return this.schema.label.toLowerCase()},bypassSearch(){return this.$route&&this.$route.query&&this.$route.query.no_search}},async created(){await this.$nextTick();let t,n;switch(this.fieldState){case Ft.UPDATE_ENTITY:if(!this[It]){console.warn("[@kong-ui-public/forms] No API service provided");break}n=(await this[It].getOne(this.entity,this.model[this.schema.model])).data,t=this.getItem(this.schema.entityDataKey?n[this.schema.entityDataKey]:n),this.idValue=t.id;break;case Ft.CREATE_FROM_ENTITY:this.idValue=this.associatedEntity.id;break;case Ft.SET_REFERRAL_VALUE:this.idValue=this.value}try{t&&(this.initialItems=[{...t,label:this.getSuggestionLabel(t),value:t.id}]),this.items=this.initialItems}catch(a){this.message=`There was an error loading ${this.schema.entity}`,console.error("err!",a)}},methods:{onQueryChange(t){t.trim().length===0&&(this.items=[],this.message="Type something to search"),typeof this.performSearch!="function"&&(this.performSearch=On(this.search,500)),this.performSearch(t)},async search(t){if(t.trim().length===0)return;this.loading=!0;const n=[],a=[],o=this.getInputFields(),i=new Set;yf(t)&&o.includes("id")?a.push((async()=>{const r=await this.fetchExact(t);n.push({...r,label:this.getSuggestionLabel(r),value:r.id})})()):a.push(...o.filter(r=>r!=="id").map(async r=>{(await this.fetchSuggestions(t,r)).forEach(s=>{i.has(s.id)||(i.add(s.id),n.push({...s,label:this.getSuggestionLabel(s),value:s.id}))})})),await Promise.all(a),this.items=n,this.items.length===0&&(this.message="No results"),this.loading=!1},getItem(t){return t.data?t.data.length>0?t.data[0]:[]:t},async fetchUntilLimit(t){const n=[];let a=null;if(!this[It])return console.warn("[@kong-ui-public/forms] No API service provided"),[];for(;n.length<Qa;){const o=await this[It].getAll(this.entity,{size:Qa,offset:a,...t});if(n.push(...o.data.data),a=o.data.offset,!a)break}return n.slice(0,Qa)},async fetchSuggestions(t,n){return this.fetchUntilLimit({[n]:t})},async fetchExact(t){return this[It]?(await this[It].getOne(this.entity,t)).data:(console.warn("[@kong-ui-public/forms] No API service provided"),{})},getInputFields(){var t,n;return((n=(t=this.schema)==null?void 0:t.inputValues)==null?void 0:n.fields)||[]},getSuggestionLabel(t){const n=this.getInputFields();return n.length&&t?n.map(a=>t[a]).filter(Boolean).join(" - "):""},updateModel(t){this.$emit("model-updated",t!=null&&t.length?t:null,this.schema.model)},onSelected(t){this.idValue=t&&t.id,this.updateModel(this.getReturnValue(t||{}))},getReturnValue(t){var n;const a=(n=this.schema)==null?void 0:n.returnKey;return a?t[a]:t.id}}},wf=["data-testid","data-testlabel"],Cf=["data-testid"],Bf={class:"autosuggest__results_message"};function kf(t,n,a,o,i,r){const s=e.resolveComponent("KSelect");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.schema.disabled?"k-tooltip":"div"),{class:"field-wrap autosuggest","max-width":"300",text:o.t("general.disable_source_scope_change",{scope:r.scope})},{default:e.withCtx(()=>[e.createVNode(s,{id:t.schema.model,ref:"suggestion",modelValue:i.idValue,"onUpdate:modelValue":n[0]||(n[0]=l=>i.idValue=l),clearable:"",disabled:t.schema.disabled,"enable-filtering":"","filter-function":()=>!0,items:i.items,loading:i.loading,placeholder:t.schema.placeholder,width:"100%",onChange:r.onSelected,onQueryChange:r.onQueryChange},{"item-template":e.withCtx(({item:l})=>[e.createElementVNode("span",{class:"first-part","data-testid":l.id&&`${l.id}-0`,"data-testlabel":l.label},e.toDisplayString(r.getSuggestionLabel(l).split(" - ")[0]),9,wf),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getSuggestionLabel(l).split(" - ").slice(1),(d,m)=>(e.openBlock(),e.createElementBlock("span",{key:m,class:"field-span","data-testid":l.id&&`${l.id}-${m+1}`||m+1},e.toDisplayString(d),9,Cf))),128))]),empty:e.withCtx(()=>[e.createElementVNode("div",Bf,[e.createElementVNode("span",null,e.toDisplayString(i.message),1)])]),_:1},8,["id","modelValue","disabled","items","loading","placeholder","onChange","onQueryChange"])]),_:1},8,["text"])}const wr=be(Ef,[["render",kf],["__scopeId","data-v-40a272a2"]]);function If(t){const n=e.ref([]),a=e.ref(null),o=f=>Lt(f)?jt[f]!=null?jt[f]:(console.warn(`'${f}' is not a validator function!`),null):f,i=e.computed({get(){var f,E;let k;return ye(me(t.schema,"get"))?k=t.schema.get((f=t.model)==null?void 0:f.value):k=me((E=t.model)==null?void 0:E.value,t.schema.model),h(k)},set(f){const E=i;f=C(f),ye(f)?f(f,E):l(f,E)}}),r=f=>{var E;d();const k=me(t.formOptions,"validateAsync",!1);let R=[];if(t.schema.readonly!==!0&&t.disabled!==!0){const I=[],v=(E=t.schema)==null?void 0:E.validator;v&&(Array.isArray(v)?Ye(v,A=>{I.push(o(A))}):I.push(o(v))),ye(t.externalValidator)&&I.push(t.externalValidator),Ye(I,A=>{var y,b;if(k)R.push(A(i.value,t.schema,(y=t.model)==null?void 0:y.value));else{const x=A(i.value,t.schema,(b=t.model)==null?void 0:b.value);x&&ye(x.then)?x.then(M=>{M&&(n.value=n.value.concat(M));const S=n.value.length===0;t.emitValidated&&t.emitValidated({isValid:S,errors:n.value,field:t.schema})}):x&&(R=R.concat(x))}})}const w=I=>{var v,A;let y=[];if(Ye($i(I),b=>{Array.isArray(b)&&b.length>0?y=y.concat(b):Lt(b)&&y.push(b)}),ye((v=t.schema)==null?void 0:v.onValidated)&&t.schema.onValidated((A=t.model)==null?void 0:A.value,y,t.schema),!f){const b=y.length===0;t.emitValidated&&t.emitValidated({isValid:b,errors:y,field:t.schema})}return I=y,y};return k?Promise.all(R).then(w):w(R)},s=()=>{ye(a.value)?a.value():a.value=On(r,me(t.schema,"validateDebounceTime",me(t.formOptions,"validateDebounceTime",500)))},l=(f,E)=>{var k,R,w;let I=!1;ye(t.schema.set)?(t.schema.set((k=t.model)==null?void 0:k.value,f),I=!0):t.schema.model&&(m(t.schema.model,f),I=!0),I&&(t.emitModelUpdated&&(R=t.model)!=null&&R.value&&t.emitModelUpdated({value:f,model:t.schema.model}),ye(t.schema.onChanged)&&t.schema.onChanged((w=t.model)==null?void 0:w.value,f,E,t.schema),me(t.formOptions,"validateAfterChanged",!1)===!0&&(me(t.schema,"validateDebounceTime",me(t.formOptions,"validateDebounceTime",0))>0?s():r()))},d=()=>{n.value.splice(0)},m=(f,E)=>{var k;let R=f.replace(/\[(\w+)\]/g,".$1");R=R.replace(/^\./,"");let w=((k=t.model)==null?void 0:k.value)||{},I=0;const v=R.split("."),A=v.length;for(;I<A;){const y=v[I];if(I<A-1)w[y]!==void 0||(w[y]={}),w=w[y];else{w[y]=E;return}++I}},p=(f,E=!1)=>{const k=me(t.formOptions,"fieldIdPrefix","");return Ha(f,k)+(E?"-"+er():"")},u=f=>`${p(f)}-label`,g=()=>me(t.schema,"fieldClasses",[]),h=f=>t.formatValueToField&&typeof t.formatValueToField=="function"?t.formatValueToField(f):f,C=f=>t.formatValueToModel&&typeof t.formatValueToModel=="function"?t.formatValueToModel(f):f;return{value:i,clearValidationErrors:d,getFieldID:p,getLabelId:u,getFieldClasses:g,updateModelValue:l}}function Of(t){const n=[],a=o=>{const i=["cluster-cache","cluster_cache"];for(const r of i)if(o.model.includes(r))return!1;return new RegExp("(?<=-redis-).*").test(o.model)};return t.fields.forEach(o=>{a(o)&&n.push(o)}),{redis:{id:"_redis",fields:n,model:"__redis_partial",redisType:t._supported_redis_partial_type,redisPath:t._redis_partial_path},redisModels:n.map(o=>o.model)}}function Rf(t,n){const a=new RegExp("(?<=config-redis-).*"),o=/Config\.Redis.*/;return n.filter(i=>{const r=i.model.match(a);return r&&!Object.keys(t).includes(r[0])}).map(i=>{const r=i.label.match(o);return{label:r?r[0]:i.label,key:i.model,value:"N/A",type:"text"}})}const nt={useAbstractFields:If,useRedisPartial:Of,useRedisNonStandardFields:Rf},Mf={class:"form-field-wrapper"},Sf=e.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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRefs(o),s=e.inject(Ke,void 0),{updateModelValue:l,getFieldID:d,clearValidationErrors:m,value:p}=nt.useAbstractFields({model:r.model,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}});n({clearValidationErrors:m});const u=e.computed(()=>{var w;const I=(w=o.schema)==null?void 0:w.inputType.toLowerCase();switch(I){case"string":return"text";case"datetime":return"datetime-local";default:return I||"text"}}),g={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss","datetime-local":"YYYY-MM-DDTHH:mm:ss"},h=(w,I)=>{var v,A;let y=w;const b=g[u.value]||"",x=on.parse(w,b);x&&((v=o.schema)!=null&&v.format?y=on.format(x,(A=o.schema)==null?void 0:A.format):y=x.valueOf()),l(y,I)},C=(w,I)=>{ra(w)||(w=NaN),l(w,I)},f=w=>{let I=w;switch(u.value){case"number":case"range":ra(parseFloat(w))&&(I=parseFloat(w));break}p.value=I,l(I,w)},E=w=>{p.value=w,l(w,w)},k=e.ref(null),R=()=>{var w;ye(k.value)&&((w=k.value)==null||w.flush())};return e.onMounted(()=>{switch(u.value){case"number":case"range":k.value=On((w,I)=>{C(w,I)},parseInt(me(o.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break;case"date":case"datetime":case"datetime-local":k.value=On((w,I)=>{h(w,I)},parseInt(me(o.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break}}),e.onBeforeMount(()=>{u.value==="checkbox"?console.warn("The use of 'checkbox' inputType with 'input' type fields is deprecated. Use 'checkbox' type instead."):u.value==="radio"?console.warn("The use of 'radio' inputType with 'input' type fields is deprecated. Use 'radio' type instead."):u.value==="file"&&console.warn("The 'file' type in input field is deprecated. Use 'file' field instead.")}),(w,I)=>{const v=e.resolveComponent("KInput");return e.openBlock(),e.createElementBlock("div",Mf,[e.createVNode(v,e.mergeProps(w.$attrs,{id:e.unref(d)(t.schema),autocomplete:t.schema.autocomplete,class:t.schema.fieldClasses,disabled:t.disabled||void 0,help:t.hint?t.hint:u.value==="color"||u.value==="range"?e.unref(p):void 0,max:t.schema.max,maxlength:t.schema.maxlength,min:t.schema.min,minlength:t.schema.minlength,"model-value":e.unref(p),name:t.schema.inputName,pattern:t.schema.pattern,placeholder:t.schema.placeholder,readonly:t.schema.readonly,required:t.schema.required,"show-password-mask-toggle":u.value==="password",type:u.value,width:t.schema.width,onBlur:R,"onUpdate:modelValue":f}),null,16,["id","autocomplete","class","disabled","help","max","maxlength","min","minlength","model-value","name","pattern","placeholder","readonly","required","show-password-mask-toggle","type","width"]),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(s)),{schema:t.schema,update:E,value:e.unref(p)},null,8,["schema","value"]))])}}}),Cr=be(Sf,[["__scopeId","data-v-fe1132bb"]]),Tf={name:"FieldMetric",components:{AddIcon:Se.AddIcon,TrashIcon:Se.TrashIcon},mixins:[ft],emits:["remove-item"],data(){return{contentVisible:!1}}},xf={key:0,class:"content"};function vf(t,n,a,o,i,r){const s=e.resolveComponent("AddIcon"),l=e.resolveComponent("TrashIcon"),d=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["field-dropdown",{active:i.contentVisible}])},[e.createElementVNode("div",{class:"title",onClick:n[0]||(n[0]=m=>i.contentVisible=!i.contentVisible)},[e.createTextVNode(e.toDisplayString(t.model.name?t.model.name:"New Item")+" ",1),e.createVNode(s,{class:"metric-add-icon"})]),e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[i.contentVisible?(e.openBlock(),e.createElementBlock("div",xf,[e.renderSlot(t.$slots,"default"),e.createVNode(d,{appearance:"tertiary",class:"metric-remove-button",onClick:n[1]||(n[1]=m=>t.$emit("remove-item"))},{default:e.withCtx(()=>[e.createVNode(l)]),_:1})])):e.createCommentVNode("",!0)]),_:3})],2)}const Br=be(Tf,[["render",vf]]),Vf={mixins:[ft],emits:["modelUpdated"],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 t=Object.keys(this.value),n={};for(let a=0;a<t.length;a++){const o=t[a];n[o]=typeof this.value[o]}this.keyTypes=n},methods:{removeElement(t){const n=this.value;delete n[t],this.value=JSON.parse(JSON.stringify(n));const a=this.keyTypes;delete a[t],this.keyTypes=JSON.parse(JSON.stringify(a))},addKey(){this.value[this.newKeyName]=void 0,this.value={...this.value},this.keyTypes[this.newKeyName]=this.newKeyType,this.keyTypes={...this.keyTypes},this.newKeyName=""},updateModel(t,n){this.$emit("modelUpdated",t,n)}}},Pf={class:"field-object-container"},Nf={key:1},Df=["id"],Uf={key:0},Lf=["onUpdate:modelValue"],Gf={key:1},jf=["onUpdate:modelValue"],Ff={key:2},Hf=["onUpdate:modelValue"],Yf=["onClick"];function Kf(t,n,a,o,i,r){const s=e.resolveComponent("vue-form-generator"),l=e.resolveDirective("attributes");return e.withDirectives((e.openBlock(),e.createElementBlock("div",Pf,[t.schema.schema?(e.openBlock(),e.createBlock(s,{key:0,model:t.value,options:t.formOptions,schema:t.schema.schema,onModelUpdated:r.updateModel},null,8,["model","options","schema","onModelUpdated"])):(e.openBlock(),e.createElementBlock("div",Nf,[e.createElementVNode("table",{id:t.getFieldID(t.schema),class:e.normalizeClass(t.schema.fieldClasses)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(d,m)=>(e.openBlock(),e.createElementBlock("tr",{key:m},[e.createElementVNode("td",null,e.toDisplayString(m),1),i.keyTypes[m]==="string"?(e.openBlock(),e.createElementBlock("td",Uf,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p=>t.value[m]=p,type:"text"},null,8,Lf),[[e.vModelText,t.value[m]]])])):e.createCommentVNode("",!0),i.keyTypes[m]==="boolean"?(e.openBlock(),e.createElementBlock("td",Gf,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p=>t.value[m]=p,type:"checkbox"},null,8,jf),[[e.vModelCheckbox,t.value[m]]])])):e.createCommentVNode("",!0),i.keyTypes[m]==="number"?(e.openBlock(),e.createElementBlock("td",Ff,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p=>t.value[m]=p,type:"number"},null,8,Hf),[[e.vModelText,t.value[m]]])])):e.createCommentVNode("",!0),e.createElementVNode("td",null,[e.createElementVNode("input",{type:"button",value:"x",onClick:p=>r.removeElement(m)},null,8,Yf)])]))),128))],10,Df),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":n[0]||(n[0]=d=>i.newKeyType=d)},n[3]||(n[3]=[e.createElementVNode("option",{value:"string"}," String ",-1),e.createElementVNode("option",{value:"number"}," Number ",-1),e.createElementVNode("option",{value:"boolean"}," Boolean ",-1)]),512),[[e.vModelSelect,i.newKeyType]]),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":n[1]||(n[1]=d=>i.newKeyName=d),type:"text"},null,512),[[e.vModelText,i.newKeyName]]),e.createElementVNode("input",{type:"button",value:"Add key",onClick:n[2]||(n[2]=(...d)=>r.addKey&&r.addKey(...d))})]))])),[[l,i.attributes]])}const kr=be(Vf,[["render",Kf],["__scopeId","data-v-b7e3dcd7"]]),zf={components:{TrashIcon:Se.TrashIcon},mixins:[ft],inject:{autofillSlot:{from:Ke,default:void 0}},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:(t,n)=>({[this.schema.model]:t[n]}),set:(t,n,a)=>t[n]=a[this.schema.model]}):this.model[this.schema.model]},valueInputType(){var t;return["number","integer"].includes((t=this.schema.values)==null?void 0:t.type)?"number":"text"}},mounted(){this.value||(this.value={});let t=[];this.subSchema?t=this.subSchema.fields:this.subFields&&(t=this.schema.fields[0].schema),this.value=this.transformMapModelValuesToObject(this.model,t,this.schema.model)},methods:{removeElement(t){const n=this.value;delete n[t],this.value={...n}},transformMapModelValuesToObject(t,n,a){let o={};try{o=JSON.parse(JSON.stringify(t??{}))[a]??{}}catch{}return Object.keys(t).map(i=>{const r=i.indexOf(a+"-");if(r>-1&&Array.isArray(n))if(n.length>0){const s=i.split("-").filter(d=>n.find(m=>m.model===d)),l=i.split(`-${s}`)[0].split(`${a}-`)[1];s.length?o[l]={...o[l],[s]:t[i]}:o[i.substring(r+`${a}-`.length)]=t[i]}else o[i.substring(`${a}-`.length)]=t[i];else{const s=i.split("-").filter(d=>d===this.schema.model),l=i.split(`-${s}`)[0].split(`${a}-`)[1];l&&(o[l]=t[i])}return i}),o},addKey(){var t;const n=this.subSchema&&Array.isArray(this.subSchema.fields)&&this.subSchema.fields.length===1&&this.subSchema.fields[0].type==="array",a=((t=this.schema.values)==null?void 0:t.default)??(this.valueInputType==="number"?0:""),o=this.subSchema?n?[""]:{}:a;this.value[this.newKeyName]=o,this.newKeyName=""},updateModel(t,n){this.$emit("model-updated",this.model[this.schema.model],n)}}},Qf=["id"],Xf=["data-testid"],qf={class:"item-wrapper"},Jf={class:"index-wrapper"},Zf={key:0},Wf={key:1},_f=["onUpdate:modelValue","placeholder","type","onInput"],$f={key:0,class:"hint"},eh={class:"input-item"},th=["placeholder"],nh={key:0,class:"hint"};function ah(t,n,a,o,i,r){const s=e.resolveComponent("TrashIcon"),l=e.resolveComponent("KButton"),d=e.resolveComponent("vue-form-generator");return e.openBlock(),e.createElementBlock("div",{id:t.getFieldID(t.schema),class:e.normalizeClass(["object-advanced-wrapper",t.schema.fieldClasses])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(m,p)=>(e.openBlock(),e.createElementBlock("div",{key:p,"data-testid":`field-object-key-${p}`},[e.createElementVNode("div",null,[e.createElementVNode("div",qf,[e.createElementVNode("div",Jf,[e.createElementVNode("strong",null,e.toDisplayString(p),1),e.createElementVNode("div",null,[e.createVNode(l,{appearance:"tertiary",class:"delete",icon:"",type:"button",onClick:u=>r.removeElement(p)},{default:e.withCtx(()=>[e.createVNode(s)]),_:2},1032,["onClick"])])]),n[1]||(n[1]=e.createElementVNode("hr",{class:"divider"},null,-1)),r.subSchema?(e.openBlock(),e.createElementBlock("div",Zf,[e.createVNode(d,{model:r.transformedModel[p],options:{helpAsHtml:!0},schema:r.subSchema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])):(e.openBlock(),e.createElementBlock("div",Wf,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u=>t.value[p]=u,class:"form-control",placeholder:t.schema.fields&&t.schema.fields[0].schema.placeholder,type:r.valueInputType,onInput:u=>r.updateModel(t.value[p],t.model[t.schema.model])},null,40,_f),[[e.vModelDynamic,t.value[p]]]),t.schema.fields&&t.schema.fields[0].schema.hint?(e.openBlock(),e.createElementBlock("p",$f,e.toDisplayString(t.schema.fields[0].schema.hint),1)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema.fields&&t.schema.fields[0].schema||t.schema.values,update:u=>t.value[p]=u,value:t.value[p]},null,8,["schema","update","value"]))])),n[2]||(n[2]=e.createElementVNode("hr",{class:"wide-divider"},null,-1))])])],8,Xf))),128)),e.createElementVNode("div",{class:e.normalizeClass(["input-wrapper",{indent:r.hasObjectKeys}])},[e.createElementVNode("div",eh,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=m=>i.newKeyName=m),class:"form-control","data-testid":"keyname-input",placeholder:t.schema.placeholder,type:"text"},null,8,th),[[e.vModelText,i.newKeyName]]),e.createVNode(l,{appearance:"tertiary","data-testid":"add-key",disabled:!i.newKeyName,onClick:r.addKey},{default:e.withCtx(()=>[e.createTextVNode(" + Add "+e.toDisplayString(t.schema.buttonLabel||t.schema.label),1)]),_:1},8,["disabled","onClick"])]),t.schema.hintText?(e.openBlock(),e.createElementBlock("p",nh,e.toDisplayString(t.schema.hintText),1)):e.createCommentVNode("",!0)],2)],10,Qf)}const Ir=be(zf,[["render",ah],["__scopeId","data-v-9c0cacfc"]]),oh={class:"radio-selection-group"},ih=e.defineComponent({__name:"FieldRadio",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRefs(o),{updateModelValue:s,value:l,clearValidationErrors:d}=nt.useAbstractFields({model:r.model,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:p=>{i("modelUpdated",p.value,p.model)}});n({clearValidationErrors:d});const m=p=>{let u=p;typeof p=="string"&&(u=p.split(","),o.schema.array||(u=u.toString())),s(u,p)};return(p,u)=>{const g=e.resolveComponent("KRadio");return e.openBlock(),e.createElementBlock("div",oh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.schema.values,(h,C)=>(e.openBlock(),e.createBlock(g,{id:t.schema.name+"-"+C,key:h.value,modelValue:e.unref(l),"onUpdate:modelValue":u[0]||(u[0]=f=>e.isRef(l)?l.value=f:null),label:h.name,"label-attributes":{info:t.schema.help},name:t.schema.name,required:t.schema.required||void 0,"selected-value":h.value,onChange:m},null,8,["id","modelValue","label","label-attributes","name","required","selected-value"]))),128))])}}}),Or=be(ih,[["__scopeId","data-v-09b8afda"]]),Rr=e.defineComponent({__name:"FieldSelect",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.computed(()=>o.schema.selectOptions||{}),s=f=>ve(f)?null:f,l=e.toRefs(o),{getFieldID:d,clearValidationErrors:m,value:p}=nt.useAbstractFields({model:l.model,schema:o.schema,formOptions:o.formOptions,formatValueToField:s,emitModelUpdated:f=>{i("modelUpdated",f.value,f.model)}});n({clearValidationErrors:m});const u=e.computed(()=>{const f=o.schema.values;return g(typeof f=="function"?f.apply(this,[o.model,o.schema]):f)}),g=f=>{const E=[];return f.forEach(k=>{E.push({label:C(k),value:h(k),disabled:typeof k=="object"&&k.disabled||void 0,group:typeof k=="object"&&String(k.group||"").toUpperCase()||void 0})}),E},h=f=>{if(Je(f)){if(r.value&&typeof r.value.value<"u")return f[r.value.value];if(typeof f.id<"u")return String(f.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 f},C=f=>{if(Je(f)){if(r.value&&typeof r.value.name<"u")return f[r.value.name];if(typeof f.name<"u")return String(f.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 String(f)};return(f,E)=>{const k=e.resolveComponent("KSelect");return e.openBlock(),e.createBlock(k,{id:e.unref(d)(t.schema),modelValue:e.unref(p),"onUpdate:modelValue":E[0]||(E[0]=R=>e.isRef(p)?p.value=R:null),class:e.normalizeClass(t.schema.fieldClasses),clearable:!t.schema.required,disabled:t.disabled||void 0,items:u.value,"kpop-attributes":{"data-testid":`${e.unref(d)(t.schema)}-items`},"label-attributes":{info:t.schema.help},name:t.schema.inputName,placeholder:r.value.hideNoneSelectedText?void 0:r.value.noneSelectedText||"Nothing Selected",required:t.schema.required||void 0,width:"100%"},null,8,["id","modelValue","class","clearable","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),rh={name:"FieldArray",components:{FieldArrayItem:br,FieldArrayMultiItem:Er,FieldSelect:Rr,FieldMetric:Br,FieldObject:kr,FieldObjectAdvanced:Ir,FieldAutoSuggest:wr,FieldRadio:Or,FieldArrayCardContainer:yr,FieldInput:Cr},mixins:[ft],inject:{autofillSlot:{from:Ke,default:void 0}},props:{newElementButtonLabel:{type:String,default:"New Item"},removeElementButtonLabel:{type:String,default:"x"}},emits:["refreshModel"],methods:{generateSchema(t,n,a){var o,i,r;let s;return n&&(s=JSON.parse(JSON.stringify(n)),(r=(i=(o=s.schema)==null?void 0:o.fields)==null?void 0:i.map)==null||r.call(i,l=>(l.id=`${l.id||l.model}-${a}`,l))),{...s,set(l,d){t[a]=d},get(){return t[a]}}},newElement(){let t=this.value,n;(!t||!t.push)&&(t=[]),this.schema.items&&this.schema.items.default&&(typeof this.schema.items.default=="function"?n=this.schema.items.default():n=this.schema.items.default),t.push(n),this.value=[...t]},removeElement(t){this.value=this.value.filter((n,a)=>a!==t)},getFieldComponent(t){return t.component?t.component:"field-"+t.type},modelUpdated(){this.$emit("refreshModel")},handleInput(t,n){var a,o;let i=t;((o=(a=this.schema)==null?void 0:a.inputAttributes)==null?void 0:o.type)==="number"&&ra(parseFloat(t))&&(i=parseFloat(t)),this.value=this.value.map((r,s)=>s===n?i:r)}}},sh=["id"],lh={key:1},ch=["onUpdate:modelValue","aria-labelledby","type"],dh=["onUpdate:modelValue","aria-labelledby"];function uh(t,n,a,o,i,r){const s=e.resolveComponent("KTextArea"),l=e.resolveComponent("KInput"),d=e.resolveComponent("KButton");return t.schema?(e.openBlock(),e.createElementBlock("div",{key:0,id:t.getFieldID(t.schema),class:e.normalizeClass(t.schema.fieldClasses)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(m,p)=>(e.openBlock(),e.createElementBlock("div",{key:p,class:e.normalizeClass(t.schema.fieldItemsClasses)},[t.schema.items&&t.schema.itemContainerComponent?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.schema.itemContainerComponent),{key:0,index:p,model:m,schema:r.generateSchema(t.value,t.schema.items,p),onRemoveItem:u=>r.removeElement(p)},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.getFieldComponent(t.schema.items)),{"form-options":t.formOptions,model:m,schema:r.generateSchema(t.value,t.schema.items,p),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))]),_:2},1064,["index","model","schema","onRemoveItem"])):t.schema.items?(e.openBlock(),e.createElementBlock("span",lh,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.getFieldComponent(t.schema.items)),{"form-options":t.formOptions,model:m,schema:r.generateSchema(t.value,t.schema.items,p),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))])):t.schema.itemContainerComponent?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.schema.itemContainerComponent),{key:2,"data-testid":`${t.getFieldID(t.schema)}-item-${p}`,model:m,schema:r.generateSchema(t.value,t.schema.items,p),onRemoveItem:u=>r.removeElement(p)},{after:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema,update:u=>t.value[p]=u,value:t.value[p]},null,8,["schema","update","value"]))]),default:e.withCtx(()=>{var u;return[t.schema.inputAttributes&&t.schema.inputAttributes.type==="textarea"?(e.openBlock(),e.createBlock(s,e.mergeProps({key:0,ref_for:!0},t.schema.inputAttributes,{id:t.getFieldID(t.schema),modelValue:t.value[p],"onUpdate:modelValue":g=>t.value[p]=g,"aria-labelledby":t.getLabelId(t.schema),autosize:"","character-limit":t.schema.inputAttributes.max,class:t.schema.fieldClasses,maxlength:t.schema.max,minlength:t.schema.min,name:t.schema.inputName,placeholder:t.schema.placeholder,readonly:t.schema.readonly,required:t.schema.required,resizable:"",rows:t.schema.rows||3}),null,16,["id","modelValue","onUpdate:modelValue","aria-labelledby","character-limit","class","maxlength","minlength","name","placeholder","readonly","required","rows"])):!t.schema.inputAttributes||!t.schema.inputAttributes.type||t.schema.inputAttributes.type==="text"||t.schema.inputAttributes.type==="number"?(e.openBlock(),e.createBlock(l,e.mergeProps({key:1,"aria-labelledby":t.getLabelId(t.schema),ref_for:!0},t.schema.inputAttributes,{"model-value":t.value[p],type:t.schema.inputAttributes&&t.schema.inputAttributes.type||"text",onInput:g=>{r.handleInput(g,p)}}),null,16,["aria-labelledby","model-value","type","onInput"])):e.withDirectives((e.openBlock(),e.createElementBlock("input",e.mergeProps({key:2,"onUpdate:modelValue":g=>t.value[p]=g,"aria-labelledby":t.getLabelId(t.schema),ref_for:!0},t.schema.inputAttributes,{type:((u=t.schema.inputAttributes)==null?void 0:u.type)||"text"}),null,16,ch)),[[e.vModelDynamic,t.value[p]]])]}),_:2},1064,["data-testid","model","schema","onRemoveItem"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[e.withDirectives(e.createElementVNode("input",e.mergeProps({ref_for:!0},t.schema.inputAttributes,{"onUpdate:modelValue":u=>t.value[p]=u,"aria-labelledby":t.getLabelId(t.schema),type:"text"}),null,16,dh),[[e.vModelText,t.value[p]]]),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema,update:u=>t.value[p]=u,value:t.value[p]},null,8,["schema","update","value"]))],64))],2))),128)),e.createVNode(d,{appearance:"tertiary",class:e.normalizeClass(t.schema.newElementButtonLabelClasses),"data-testid":`add-${t.getFieldID(t.schema)}`,type:"button",onClick:r.newElement},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.schema.newElementButtonLabel||a.newElementButtonLabel),1)]),_:1},8,["class","data-testid","onClick"])],10,sh)):e.createCommentVNode("",!0)}const ph=be(rh,[["render",uh],["__scopeId","data-v-27efd618"]]),mh={class:"form-field-wrapper field-checkbox"},gh=e.defineComponent({__name:"FieldCheckbox",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRefs(o),{getFieldID:s,value:l,clearValidationErrors:d}=nt.useAbstractFields({model:r.model,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:m=>{i("modelUpdated",m.value,m.model)}});return n({clearValidationErrors:d}),(m,p)=>{const u=e.resolveComponent("KCheckbox");return e.openBlock(),e.createElementBlock("div",mh,[e.createVNode(u,e.mergeProps(m.$attrs,{id:e.unref(s)(t.schema),modelValue:e.unref(l),"onUpdate:modelValue":p[0]||(p[0]=g=>e.isRef(l)?l.value=g:null),autocomplete:t.schema.autocomplete,class:t.schema.fieldClasses,disabled:t.disabled||void 0,help:t.hint?t.hint:void 0,name:t.schema.inputName,readonly:t.schema.readonly,required:t.schema.required,width:t.schema.width}),null,16,["id","modelValue","autocomplete","class","disabled","help","name","readonly","required","width"])])}}}),Ah=be(gh,[["__scopeId","data-v-6b4ee1cd"]]);var fh=4;function Mr(t){return In(t,fh)}const hh={class:"wrapper"},yh=["disabled"],bh=["id","checked","disabled","onChange","name"],Eh=["disabled"],wh={class:"info"},Ch={class:"dropList"},Bh=["id","checked","disabled","onChange","name"];function kh(t,n,a,o,i,r){const s=e.resolveDirective("attributes");return e.withDirectives((e.openBlock(),e.createElementBlock("div",hh,[t.schema.listBox?(e.openBlock(),e.createElementBlock("div",{key:0,class:"listbox form-control",disabled:t.disabled||null},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.items,l=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["list-row",{"is-checked":r.isItemChecked(l)}])},[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{id:t.getFieldID(t.schema,!0),type:"checkbox",checked:r.isItemChecked(l)||null,disabled:t.disabled||null,onChange:d=>r.onChanged(d,l),name:r.getInputName(l)},null,40,bh),[[s,"input"]]),e.createTextVNode(e.toDisplayString(r.getItemName(l)),1)])],2))),256))],8,yh)):e.createCommentVNode("",!0),t.schema.listBox?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:1,class:"combobox form-control",disabled:t.disabled||null},[e.createElementVNode("div",{class:e.normalizeClass(["mainRow",{expanded:i.comboExpanded}]),onClick:n[0]||(n[0]=(...l)=>r.onExpandCombo&&r.onExpandCombo(...l))},[e.createElementVNode("div",wh,e.toDisplayString(r.selectedCount)+" selected",1),n[1]||(n[1]=e.createElementVNode("div",{class:"arrow"},null,-1))],2),e.createElementVNode("div",Ch,[i.comboExpanded?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(r.items,l=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["list-row",{"is-checked":r.isItemChecked(l)}])},[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{id:t.getFieldID(t.schema,!0),type:"checkbox",checked:r.isItemChecked(l)||null,disabled:t.disabled||null,onChange:d=>r.onChanged(d,l),name:r.getInputName(l)},null,40,Bh),[[s,"input"]]),e.createTextVNode(e.toDisplayString(r.getItemName(l)),1)])],2))),256)):e.createCommentVNode("",!0)])],8,Eh))])),[[s,"wrapper"]])}const Ih={mixins:[ft],data(){return{comboExpanded:!1}},computed:{items(){const t=this.schema.values;return typeof t=="function"?t.apply(this,[this.model,this.schema]):t},selectedCount(){return this.value?this.value.length:0}},methods:{getInputName(t){return this.schema&&this.schema.inputName&&this.schema.inputName.length>0?Ji(this.schema.inputName+"_"+this.getItemValue(t)):Ji(this.getItemValue(t))},getItemValue(t){if(Je(t)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.value<"u")return t[this.schema.checklistOptions.value];if(typeof t.value<"u")return t.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 t},getItemName(t){if(Je(t)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.name<"u")return t[this.schema.checklistOptions.name];if(typeof t.name<"u")return t.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 t},isItemChecked(t){return this.value&&this.value.indexOf(this.getItemValue(t))!==-1},onChanged(t,n){if((ve(this.value)||!Array.isArray(this.value))&&(this.value=[]),t.target.checked){const a=Mr(this.value);a.push(this.getItemValue(n)),this.value=a}else{const a=Mr(this.value);a.splice(this.value.indexOf(this.getItemValue(n)),1),this.value=a}},onExpandCombo(){this.comboExpanded=!this.comboExpanded}}},Oh=be(Ih,[["render",kh]]),Rh={name:"FieldKeyValuePairs",components:{TrashIcon:Se.TrashIcon},mixins:[ft],inject:{autofillSlot:{from:Ke,default:void 0}},data(){return{pairs:[]}},watch:{pairs:{handler(){this.updateValue()},deep:!0}},created(){var t,n;this.value||(this.value={});const a=((n=this.model)==null?void 0:n[(t=this.schema)==null?void 0:t.model])??{};Object.keys(a).forEach(o=>{this.pairs.push({key:o,value:a[o]})})},methods:{onInput(t,n,a){this.pairs[n][a]=t.target.value},updateValue(){this.value=this.pairs.reduce((t,{key:n,value:a})=>({...t,...n&&a?{[n]:a}:null}),{})},addPair(){this.pairs.push({key:"",value:""})},removePair(t){this.pairs.splice(t,1)}}},Mh={class:"key-value-pairs-editor"},Sh={class:"pair-item-cell"},Th=["data-testid","placeholder","value","onInput"],xh={class:"pair-item-cell"},vh=["data-testid","placeholder","value","onInput"];function Vh(t,n,a,o,i,r){const s=e.resolveComponent("TrashIcon"),l=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",Mh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.pairs,(d,m)=>(e.openBlock(),e.createElementBlock("div",{key:m,class:"pair-item"},[e.createElementVNode("div",Sh,[e.createElementVNode("input",{class:"form-control","data-testid":`${t.getFieldID(t.schema)}-pair-key-${m}`,placeholder:t.schema.keyInputPlaceholder??"Key",type:"text",value:d.key,onInput:p=>{r.onInput(p,m,"key")}},null,40,Th),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema,update:p=>r.onInput({target:{value:p}},m,"key"),value:d.key},null,8,["schema","update","value"]))]),e.createElementVNode("div",xh,[e.createElementVNode("input",{class:"form-control","data-testid":`${t.getFieldID(t.schema)}-pair-value-${m}`,placeholder:t.schema.valueInputPlaceholder??"Value",type:"text",value:d.value,onInput:p=>{r.onInput(p,m,"value")}},null,40,vh),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema,update:p=>r.onInput({target:{value:p}},m,"value"),value:d.value},null,8,["schema","update","value"]))]),e.createVNode(l,{appearance:"tertiary","data-testid":`${t.getFieldID(t.schema)}-remove-pair-${m}`,onClick:()=>{r.removePair(m)}},{default:e.withCtx(()=>[e.createVNode(s)]),_:2},1032,["data-testid","onClick"])]))),128)),e.createVNode(l,{appearance:"tertiary",class:e.normalizeClass(t.schema.newElementButtonLabelClasses),"data-testid":`${t.getFieldID(t.schema)}-add-pair`,type:"button",onClick:r.addPair},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.schema.newElementButtonLabel??"+ Add Pair"),1)]),_:1},8,["class","data-testid","onClick"])])}const Ph=be(Rh,[["render",Vh],["__scopeId","data-v-70998d5b"]]),Nh=e.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(t){const n=t,a=e.toRefs(n),{getFieldID:o,value:i}=nt.useAbstractFields({model:a.model,schema:n.schema,formOptions:n.formOptions});return(r,s)=>{const l=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["field-label",t.schema.fieldClasses])},[e.createVNode(l,{id:e.unref(o)(t.schema)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)),1)]),_:1},8,["id"])],2)}}}),Dh=be(Nh,[["__scopeId","data-v-d046a15a"]]),Uh=e.defineComponent({__name:"FieldMultiselect",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRef(o,"model"),{getLabelId:s,getFieldID:l,clearValidationErrors:d,value:m}=nt.useAbstractFields({model:r,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:u=>{i("modelUpdated",u.value,u.model)}});n({clearValidationErrors:d});const p=e.computed(()=>{var u,g;return o.schema.values?o.schema.values:(g=(u=o.schema.elements)==null?void 0:u.one_of)!=null&&g.length?o.schema.elements.one_of.map(h=>({label:String(h),value:String(h)})):[]});return(u,g)=>{const h=e.resolveComponent("KMultiselect");return e.openBlock(),e.createBlock(h,{id:e.unref(l)(t.schema),modelValue:e.unref(m),"onUpdate:modelValue":g[0]||(g[0]=C=>e.isRef(m)?m.value=C:null),"aria-labelledby":e.unref(s)(t.schema),class:e.normalizeClass(t.schema.fieldClasses),"data-testid":"field-multiselect",disabled:t.disabled||void 0,items:p.value,"kpop-attributes":{"data-testid":`${e.unref(l)(t.schema)}-items`},"label-attributes":{info:t.schema.help},name:t.schema.inputName,placeholder:t.schema.placeholder,required:t.schema.required||void 0,width:"100%"},null,8,["id","modelValue","aria-labelledby","class","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),Lh={mixins:[ft],emits:["model-updated"],setup(){const{t}=De.createI18n("en-us",it);return{t}},data(){return{checkedGroup:null,fieldModel:{...this.model},fieldSchema:[],scope:"scope"}},watch:{checkedGroup:{handler(t,n){if(n===null){this.fieldModel={...this.model};return}const a=this.schema.fields[t].fields,o=this.schema.fields[n].fields;o&&o.forEach(i=>this.updateModel("",i.model)),a&&a.forEach(i=>this.updateModel(this.fieldModel[i.model],i.model))}}},async created(){await this.$nextTick(),this.schema.fields.forEach((t,n)=>{t.fields&&t.fields.forEach(a=>{var o;this.model[a.model]&&(this.checkedGroup=n,this.fieldSchema.push(a.model),this.scope=(o=a.label)==null?void 0:o.toLowerCase())})}),this.checkedGroup===null&&(this.checkedGroup=0)},methods:{updateModel(t,n){this.$emit("model-updated",t,n)}}},Gh={class:"selection-group"},jh={class:"form-group horizontal-radios"},Fh={class:"radio-group"},Hh=["disabled","value"],Yh={class:"control-help"},Kh={class:"option-field"},zh={class:"option-field-container"};function Qh(t,n,a,o,i,r){const s=e.resolveComponent("vue-form-generator");return e.openBlock(),e.createElementBlock("div",Gh,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.$props.disabled?"k-tooltip":"div"),{"max-width":"300",text:o.t("general.disable_global_radio",{scope:i.scope})},{default:e.withCtx(()=>[e.createElementVNode("div",jh,[e.createElementVNode("div",Fh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.schema.fields,(l,d)=>(e.openBlock(),e.createElementBlock("div",{key:d,class:e.normalizeClass(["option-group",{"radio-disabled":t.$props.disabled}])},[e.createElementVNode("label",{class:e.normalizeClass(["k-label",`${l.label}-check`])},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=m=>i.checkedGroup=m),class:"k-input",disabled:t.$props.disabled,type:"radio",value:d},null,8,Hh),[[e.vModelRadio,i.checkedGroup]]),e.createTextVNode(" "+e.toDisplayString(l.label)+" ",1),e.createElementVNode("div",Yh,e.toDisplayString(l.description),1)],2)],2))),128))])])]),_:1},8,["text"])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.schema.fields,(l,d)=>(e.openBlock(),e.createElementBlock("div",{key:d,class:"option-group"},[e.withDirectives(e.createElementVNode("div",Kh,[e.createElementVNode("div",zh,[e.createVNode(s,{model:t.model,options:{helpAsHtml:!0},schema:{fields:l.fields},onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])],512),[[e.vShow,l.fields&&i.checkedGroup===d]])]))),128))])}const Xh=be(Lh,[["render",Qh],["__scopeId","data-v-35c8682e"]]),qh={class:"form-field-wrapper"},Jh=e.defineComponent({__name:"FieldSwitch",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(t,{expose:n,emit:a}){const o=t,i=a,{t:r}=De.createI18n("en-us",it),s=g=>g!=null&&o.schema.valueOn?g===o.schema.valueOn:g,l=g=>g!=null&&o.schema.valueOn?g?o.schema.valueOn:o.schema.valueOff:g,d=e.toRefs(o),{getFieldID:m,value:p,clearValidationErrors:u}=nt.useAbstractFields({model:d.model,schema:o.schema,formOptions:o.formOptions,formatValueToField:s,formatValueToModel:l,emitModelUpdated:g=>{i("modelUpdated",g.value,g.model)}});return n({clearValidationErrors:u}),(g,h)=>{const C=e.resolveComponent("KInputSwitch");return e.openBlock(),e.createElementBlock("div",qh,[e.createVNode(C,{id:e.unref(m)(t.schema),modelValue:e.unref(p),"onUpdate:modelValue":h[0]||(h[0]=f=>e.isRef(p)?p.value=f:null),autocomplete:t.schema.autocomplete,class:e.normalizeClass(t.schema.fieldClasses),disabled:t.disabled||void 0,label:e.unref(p)?t.schema.textOn||e.unref(r)("vfg.labels.on"):t.schema.textOff||e.unref(r)("vfg.labels.off"),"label-attributes":{info:t.schema.help},name:t.schema.inputName,required:t.schema.required||void 0},null,8,["id","modelValue","autocomplete","class","disabled","label","label-attributes","name","required"])])}}}),Zh={class:"field-textarea"},Wh=e.defineComponent({__name:"FieldTextArea",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRefs(o),s=e.inject(Ke,void 0),{updateModelValue:l,getFieldID:d,clearValidationErrors:m,value:p}=nt.useAbstractFields({model:r.model,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:g=>{i("modelUpdated",g.value,g.model)}});n({clearValidationErrors:m});const u=g=>{p.value=g,l(g,g)};return(g,h)=>{const C=e.resolveComponent("KTextArea");return e.openBlock(),e.createElementBlock("div",Zh,[e.createVNode(C,e.mergeProps(g.$attrs,{id:e.unref(d)(t.schema),modelValue:e.unref(p),"onUpdate:modelValue":h[0]||(h[0]=f=>e.isRef(p)?p.value=f:null),autosize:"","character-limit":t.schema.max,class:t.schema.fieldClasses,disabled:t.disabled||void 0,help:t.hint||void 0,minlength:t.schema.min,name:t.schema.inputName,placeholder:t.schema.placeholder,readonly:t.schema.readonly,required:t.schema.required,resizable:"",rows:t.schema.rows||3}),null,16,["id","modelValue","character-limit","class","disabled","help","minlength","name","placeholder","readonly","required","rows"]),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(s)),{schema:t.schema,update:u,value:e.unref(p)},null,8,["schema","value"]))])}}}),_h=be(Wh,[["__scopeId","data-v-0e146fba"]]),$h=Object.freeze(Object.defineProperty({__proto__:null,FieldAdvanced:lf,FieldArray:ph,FieldArrayCardContainer:yr,FieldArrayItem:br,FieldArrayMultiItem:Er,FieldAutoSuggest:wr,FieldCheckbox:Ah,FieldChecklist:Oh,FieldInput:Cr,FieldKeyValuePairs:Ph,FieldLabel:Dh,FieldMetric:Br,FieldMultiselect:Uh,FieldObject:kr,FieldObjectAdvanced:Ir,FieldRadio:Or,FieldSelect:Rr,FieldSelectionGroup:Xh,FieldSwitch:Jh,FieldTextArea:_h},Symbol.toStringTag,{value:"Module"})),ey={name:"FormGroup",components:$h,mixins:[Zi],inject:{"vfg-array-item-index":{default:void 0}},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","refreshModel"],data(){return{child:e.ref()}},computed:{schema(){var t;if(!((t=this.field)!=null&&t.schema)||!Array.isArray(this.field.schema.fields))return this.field;const n=this["vfg-array-item-index"];return typeof n!="number"||Number.isNaN(n)?this.field:{...this.field,schema:{...this.field.schema,fields:this.field.schema.fields.map(a=>({...a,...a.id?{id:`${a.id}-${n}`}:void 0}))}}}},methods:{fieldTypeHasLabel(t){if(ve(t.label))return!1;let n="";switch(t.type==="input"?n=t.inputType:n=t.type,n){case"button":case"submit":case"reset":return!1;default:return!0}},getFieldID(t){const n=me(this.options,"fieldIdPrefix","");return Ha(t,n)},getTooltipId(t){return`${this.getFieldID(t)}-tooltip`},getFieldComponent(t){return t.component?t.component:"field-"+t.type},getButtonType(t){return me(t,"type","button")},onFieldValidated(t,n,a){this.$emit("validated",t,n,a)},buttonVisibility(t){return t.buttons&&t.buttons.length>0},buttonClickHandler(t,n,a){return t.onclick.call(this,this.model,n,a,this)},fieldHint(t){return ye(t.hint)?t.hint.call(this,this.model,t,this):t.hint},fieldErrors(t){return this.errors.filter(n=>n.field.fieldName===t.fieldName).map(n=>n.error)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(t,n){this.$emit("modelUpdated",t,n)},validate(t){return this.$refs.child.validate(t)},clearValidationErrors(){if(this.$refs.child)return this.$refs.child.clearValidationErrors()},formattedLabel(t){return t?t.replace(/^[cC]onfig\./,""):""}}},ty=["innerHTML"],ny={class:"icon-wrapper"},ay=["innerHTML"],oy={key:0,class:"link-wrapper"},iy={class:"field-wrap"},ry={key:0,class:"buttons"},sy=["type","onClick","textContent"],ly=["innerHTML"],cy={key:2,class:"errors help-block"},dy=["innerHTML"];function uy(t,n,a,o,i,r){const s=e.resolveComponent("KExternalLink"),l=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["form-group",t.getFieldRowClasses(a.field)])},[r.fieldTypeHasLabel(a.field)?(e.openBlock(),e.createBlock(l,{key:0,"aria-describedby":a.field.help?r.getTooltipId(a.field):void 0,class:e.normalizeClass([a.field.labelClasses,"form-group-label"]),for:r.getFieldID(a.field),info:!a.options.helpAsHtml&&a.field.help?a.field.help:void 0,"tooltip-attributes":a.field.help?{maxWidth:"300",placement:"top",tooltipId:r.getTooltipId(a.field)}:void 0},e.createSlots({default:e.withCtx(()=>[e.createElementVNode("div",ny,[e.createElementVNode("span",{innerHTML:r.formattedLabel(a.field.label)},null,8,ay)]),a.field.link?(e.openBlock(),e.createElementBlock("div",oy,[e.createVNode(s,{href:a.field.link},{default:e.withCtx(()=>n[0]||(n[0]=[e.createElementVNode("span",{class:"section-header"},"More info",-1)])),_:1},8,["href"])])):e.createCommentVNode("",!0)]),_:2},[a.options.helpAsHtml&&a.field.help?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:a.field.help},null,8,ty)]),key:"0"}:void 0]),1032,["aria-describedby","class","for","info","tooltip-attributes"])):e.createCommentVNode("",!0),e.createElementVNode("div",iy,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.getFieldComponent(a.field)),e.mergeProps(t.$attrs,{ref:"child",disabled:t.fieldDisabled(a.field)||null,"form-options":a.options,hint:a.field.hint&&a.field.type==="input"?r.fieldHint(a.field):void 0,model:a.model,schema:r.schema,vfg:a.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated}),null,16,["disabled","form-options","hint","model","schema","vfg","onModelUpdated","onRefreshModel","onValidated"])),r.buttonVisibility(a.field)?(e.openBlock(),e.createElementBlock("div",ry,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.field.buttons,(d,m)=>(e.openBlock(),e.createElementBlock("button",{key:m,class:e.normalizeClass(d.classes),type:r.getButtonType(d),onClick:p=>r.buttonClickHandler(d,a.field,p),textContent:e.toDisplayString(d.label)},null,10,sy))),128))])):e.createCommentVNode("",!0)]),a.field.hint&&a.field.type!=="input"?(e.openBlock(),e.createElementBlock("div",{key:1,class:"hint",innerHTML:r.fieldHint(a.field)},null,8,ly)):e.createCommentVNode("",!0),r.fieldErrors(a.field).length>0?(e.openBlock(),e.createElementBlock("div",cy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.fieldErrors(a.field),(d,m)=>(e.openBlock(),e.createElementBlock("span",{key:m,innerHTML:d},null,8,dy))),128))])):e.createCommentVNode("",!0)],2)}const Sr=be(ey,[["render",uy],["__scopeId","data-v-172f268b"]]),py="12px";var sa=(t=>(t.REDIS_CE="redis-ce",t.REDIS_EE="redis-ee",t))(sa||{});const my=t=>{var n,a;return t.type===sa.REDIS_CE?"Host/Port":(n=t.config.sentinel_nodes)!=null&&n.length?"Sentinel":(a=t.config.cluster_nodes)!=null&&a.length?"Cluster":"Host/Port"},gy={[sa.REDIS_CE]:"open source",[sa.REDIS_EE]:"enterprise"},Tr=t=>gy[t]??"",Ay={class:"partial-config-card"},fy={class:"config-card-row-label"},hy={class:"label-text"},yy=["data-testid"],by=["data-testid"],Ey={key:1},wy=["data-testid"],Cy=["data-testid"],By=e.defineComponent({__name:"RedisConfigCard",props:{configFields:{type:Object,required:!0},pluginRedisFields:{type:Array,required:!0}},setup(t){const{t:n,formatUnixTimeStamp:a}=De.createI18n("en-us",it),o={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:a,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:a,order:3}},i=t,r=u=>u!=null,s=(u,g)=>r(g)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:l}=L.useStringHelpers(),d=e.computed(()=>Object.entries(i.configFields).map(([u,g])=>{var h,C,f,E;return{key:u,label:((h=o[u])==null?void 0:h.label)??l(u),value:(C=o[u])!=null&&C.formatter?o[u].formatter(g):g,type:((f=o[u])==null?void 0:f.type)??s(u,g),order:((E=o[u])==null?void 0:E.order)??100}}).sort((u,g)=>u.order-g.order).filter(u=>u.type!=="hidden")),m=nt.useRedisNonStandardFields(i.configFields,i.pluginRedisFields),p=e.computed(()=>d.value.concat(m));return(u,g)=>{const h=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",Ay,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,({key:C,label:f,value:E,type:k})=>(e.openBlock(),e.createElementBlock("div",{key:C,class:"partial-config-card-row"},[e.createElementVNode("div",fy,[e.createElementVNode("div",hy,e.toDisplayString(f),1)]),e.createElementVNode("div",{class:"config-card-row-value","data-testid":`${C}-property-value`},[r(E)?(e.openBlock(),e.createElementBlock("div",Ey,[k==="password"?(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${C}-copy-password`},[e.createVNode(h,{format:"redacted",text:String(E)},null,8,["text"])],8,wy)):(e.openBlock(),e.createElementBlock("div",{key:1,"data-testid":`${C}-plain-text`},e.toDisplayString(E),9,Cy))])):(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${C}-no-value`}," – ",8,by))],8,yy)]))),128))])}}}),ky=be(By,[["__scopeId","data-v-c1eb723f"]]),Iy={class:"redis-config-select","data-testid":"redis-config-select"},Oy={class:"selected-redis-config"},Ry=["data-testid"],My={class:"select-item-name","data-testid":"selected-redis-config"},Sy={class:"empty-redis-config","data-testid":"empty-redis-config"},Ty={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},xy=e.defineComponent({__name:"RedisConfigSelect",props:{defaultRedisConfigItem:{type:String,required:!1,default:""},updateRedisModel:{type:Function,required:!0},pluginRedisFields:{type:Array,required:!0},redisType:{type:String,default:"all"},isCustomPlugin:{type:Boolean,default:!1}},emits:["showNewPartialModal"],setup(t){const{t:n}=De.createI18n("en-us",it),a=e.inject(sm),o={konnect:{getOne:"/v2/control-planes/{controlPlaneId}/core-entities/partials/{id}",getAll:"/v2/control-planes/{controlPlaneId}/core-entities/partials"},kongManager:{getOne:"/{workspace}/partials/{id}",getAll:"/{workspace}/partials"}},i=t,r=e.ref(null),{getMessageFromError:s}=L.useErrors(),l=e.inject(Da),{debouncedQueryChange:d,loading:m,error:p,loadItems:u,results:g}=L.useDebouncedFilter(l,o[l.app].getAll,void 0,{fetchedItemsKey:"data",searchKeys:["id","name"]}),h=e.computed(()=>p.value?s(p.value):""),C=R=>{let w=`${l.apiBaseUrl}${o[l.app].getOne}`;return l.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,(l==null?void 0:l.controlPlaneId)||""):l.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,l!=null&&l.workspace?`/${l.workspace}`:"")),w=w.replace(/{id}/gi,String(R)),w},f=e.computed(()=>{var R;const w=((R=g.value)==null?void 0:R.map(I=>({label:I.id,name:I.name,value:I.id,type:I.type,tag:my(I)})))||[];return i.redisType!=="all"?w.filter(I=>I.type===i.redisType):w}),{axiosInstance:E}=L.useAxios(l==null?void 0:l.axiosRequestConfig),k=async R=>{if(R){i.updateRedisModel(R);try{const w=await E.get(C(R));if(w.data.config){const I=Object.assign(w.data,w.data.config);delete I.config,r.value=I}}catch(w){console.error(w)}}};return e.watch(()=>a==null?void 0:a.value,async R=>{R&&await u()}),e.onBeforeMount(()=>{u(),i.defaultRedisConfigItem&&k(i.defaultRedisConfigItem)}),(R,w)=>{const I=e.resolveComponent("KLabel"),v=e.resolveComponent("KBadge"),A=e.resolveComponent("KSelect");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Iy,[e.createVNode(I,{info:t.isCustomPlugin?e.unref(n)("redis.custom_plugin.tooltip"):e.unref(n)("redis.shared_configuration.tooltip",{type:e.unref(Tr)(t.redisType)}),"tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("redis.shared_configuration.title")),1)]),_:1},8,["info"]),w[2]||(w[2]=e.createElementVNode("div",{class:"shared-redis-config-title"},null,-1)),e.createVNode(A,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:f.value,loading:e.unref(m),"model-value":t.defaultRedisConfigItem,placeholder:e.unref(n)("redis.shared_configuration.selector.placeholder"),onChange:w[1]||(w[1]=y=>k(y==null?void 0:y.value)),onQueryChange:e.unref(d)},{"selected-item-template":e.withCtx(({item:y})=>[e.createElementVNode("div",Oy,e.toDisplayString(y.name),1)]),"item-template":e.withCtx(({item:y})=>[e.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${y.name}`},[e.createElementVNode("span",My,e.toDisplayString(y.name),1),e.createVNode(v,{appearance:"info",class:"select-item-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.tag),1)]),_:2},1024)],8,Ry)]),empty:e.withCtx(()=>[e.createElementVNode("div",Sy,e.toDisplayString(e.unref(n)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":e.withCtx(()=>[e.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:w[0]||(w[0]=y=>R.$emit("showNewPartialModal"))},[e.createVNode(e.unref(Se.AddIcon),{size:e.unref(py)},null,8,["size"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(n)("redis.shared_configuration.create_new_configuration",{type:e.unref(Tr)(t.redisType)})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),r.value?(e.openBlock(),e.createBlock(ky,{key:0,"config-fields":r.value,"plugin-redis-fields":t.pluginRedisFields},null,8,["config-fields","plugin-redis-fields"])):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("p",Ty,e.toDisplayString(h.value||e.unref(n)("redis.shared_configuration.error")),1)):e.createCommentVNode("",!0)],64)}}}),xr=be(xy,[["__scopeId","data-v-e0256888"]]),vy={key:0},Vy={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},Py={key:0,class:"shared-redis-config"},Ny={key:1,class:"dedicated-redis-config"},Dy={class:"dedicated-redis-config-title"},Uy=e.defineComponent({__name:"FormRedis",props:{tag:{type:String,default:"fieldset",validator:function(t){return t.length>0}},model:{type:Object,default:()=>{}},options:{type:Object,required:!0},field:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default(){return[]}},redisPath:{type:String,default:void 0,required:!1},isEditing:{type:Boolean,default:!1}},emits:["modelUpdated","partialToggled","showNewPartialModal","refreshModel","validated"],setup(t,{emit:n}){const a=t,o=n,{t:i}=De.createI18n("en-us",it),r=e.computed(()=>a.field.pluginType==="custom"),s=e.ref(!a.isEditing),l=e.ref(),d=e.ref({}),m=e.ref(),p=f=>ye(f.visible)?f.visible.call(this,a.model,f,this):ve(f.visible)?!0:f.visible,u=async f=>{o("modelUpdated",[{id:f,path:a.redisPath}],"partials"),m.value=[{id:f,path:a.redisPath}],l.value=f},g=(f,E)=>{d.value={...d.value,[E]:f},o("modelUpdated",f,E)},h=()=>{o("refreshModel")},C=(f,E,k)=>{o("validated",f,E,k)};return e.watch(()=>s.value,f=>{f?m.value&&o("partialToggled","redis",{partials:m.value}):o("partialToggled","partials",d.value)}),e.onBeforeMount(()=>{var f,E,k;if(a.model&&(d.value=a.field.fields.reduce((R,w)=>(Object.keys(a.model).includes(w.model)&&(R[w.model]=a.model[w.model]),R),{})),(k=(E=(f=a==null?void 0:a.model)==null?void 0:f.partials)==null?void 0:E[0])!=null&&k.id){const R=a.model.partials[0].id;s.value=!0,l.value=R}}),(f,E)=>{const k=e.resolveComponent("KAlert"),R=e.resolveComponent("KBadge"),w=e.resolveComponent("KRadio"),I=e.resolveComponent("KCard");return e.openBlock(),e.createElementBlock("div",null,[r.value?(e.openBlock(),e.createElementBlock("div",vy,[e.createVNode(k,{"data-testid":"custom-plugin-redis-config-note",message:e.unref(i)("redis.custom_plugin.alert")},null,8,["message"]),e.createVNode(xr,{"default-redis-config-item":l.value,"is-custom-plugin":"","plugin-redis-fields":t.field.fields,"update-redis-model":u,onShowNewPartialModal:E[0]||(E[0]=v=>f.$emit("showNewPartialModal"))},null,8,["default-redis-config-item","plugin-redis-fields"])])):(e.openBlock(),e.createBlock(I,{key:1,class:"redis-config-card","data-testid":"redis-config-card",title:e.unref(i)("redis.title")},{default:e.withCtx(()=>[e.createElementVNode("div",Vy,[e.createVNode(w,{modelValue:s.value,"onUpdate:modelValue":E[1]||(E[1]=v=>s.value=v),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:e.unref(i)("redis.shared_configuration.description"),label:e.unref(i)("redis.shared_configuration.label"),"selected-value":!0},{default:e.withCtx(()=>[e.createVNode(R,{appearance:"success"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),e.createVNode(w,{modelValue:s.value,"onUpdate:modelValue":E[2]||(E[2]=v=>s.value=v),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:e.unref(i)("redis.dedicated_configuration.description"),label:e.unref(i)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),s.value?(e.openBlock(),e.createElementBlock("div",Py,[e.createVNode(xr,{"default-redis-config-item":l.value,"plugin-redis-fields":t.field.fields,"redis-type":t.field.redisType,"update-redis-model":u,onShowNewPartialModal:E[3]||(E[3]=v=>f.$emit("showNewPartialModal"))},null,8,["default-redis-config-item","plugin-redis-fields","redis-type"])])):(e.openBlock(),e.createElementBlock("div",Ny,[e.createElementVNode("div",Dy,e.toDisplayString(e.unref(i)("redis.dedicated_configuration.title")),1),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tag),null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.field.fields,v=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:v.model},[p(v)?(e.openBlock(),e.createBlock(Sr,{key:0,ref_for:!0,ref:"children",errors:t.errors,field:v,model:t.model,options:t.options,vfg:t.vfg,onModelUpdated:g,onRefreshModel:h,onValidated:C},null,8,["errors","field","model","options","vfg"])):e.createCommentVNode("",!0)],64))),128))]),_:1}))]))]),_:1},8,["title"]))])}}}),Ly=be(Uy,[["__scopeId","data-v-b9a17494"]]),Gy={name:"FormGenerator",components:{formGroup:Sr,formRedis:Ly},mixins:[Zi],inject:{autofillSlot:{from:Ke,default:void 0}},provide(){var t;return{...!this.autofillSlot&&{[Ke]:(t=this.$slots)==null?void 0:t[ot]}}},props:{schema:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},options:{type:Object,default(){return{validateAfterLoad:!1,validateAfterChanged:!1,child:e.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(t){return t.length>0}},enableRedisPartial:{type:Boolean,default:!1},isEditing:{type:Boolean,default:!1}},emits:["validated","modelUpdated","refreshModel","partialToggled","showNewPartialModal"],data(){return{vfg:this,errors:[],children:e.ref([]),collapseStates:{}}},computed:{fields(){const t=[];return this.schema&&this.schema.fields&&Ye(this.schema.fields,n=>{(!this.multiple||n.multi===!0)&&t.push(n)}),t},groups(){const t=[];return this.schema&&this.schema.groups&&Ye(this.schema.groups.slice(0),n=>{t.push(n)}),t}},watch:{model:{deep:!0,handler(t,n){n!==t&&t!=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(t){return ye(t.visible)?t.visible.call(this,this.model,t,this):ve(t.visible)?!0:t.visible},onFieldValidated(t,n,a){this.errors=this.errors.filter(i=>i.field.fieldName!==a.schema.fieldName),!t&&n&&n.length>0&&Ye(n,i=>{this.errors.push({field:a.schema,error:i})});const o=this.errors.length===0;this.$emit("validated",o,this.errors,this)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(t,n){this.$emit("modelUpdated",t,n)},onPartialToggled(t,n){this.$emit("partialToggled",t,n)},validate(t=null){t===null&&(t=me(this.options,"validateAsync",!1)),this.clearValidationErrors();const n=[],a=[];Ye(this.$refs.children,i=>{ye(i.validate)&&(n.push(i.$refs.child),a.push(i.$refs.child.validate(!0)))});const o=i=>{const r=[];Ye(i,(l,d)=>{Array.isArray(l)&&l.length>0&&Ye(l,m=>{r.push({field:n[d].schema,error:m})})}),this.errors=r;const s=r.length===0;return this.$emit("validated",s,r,this),t?r:s};return t?Promise.all(a).then(o):o(a)},clearValidationErrors(){this.errors.splice(0),Ye(this.$refs.children,t=>{t.clearValidationErrors()})}}},jy={key:0,class:"vue-form-generator"},Fy={key:0};function Hy(t,n,a,o,i,r){const s=e.resolveComponent("form-redis"),l=e.resolveComponent("form-group"),d=e.resolveComponent("KCollapse");return a.schema!=null?(e.openBlock(),e.createElementBlock("div",jy,[a.schema.fields?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.tag),{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.fields,m=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:m.model},[m.model==="__redis_partial"&&a.enableRedisPartial?(e.openBlock(),e.createBlock(s,{key:0,errors:i.errors,field:m,"is-editing":a.isEditing,model:a.model,options:a.options,tag:a.tag,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onPartialToggled:r.onPartialToggled,onShowNewPartialModal:p=>t.$emit("showNewPartialModal",m.redisType),onValidated:r.onFieldValidated},null,8,["errors","field","is-editing","model","options","tag","vfg","onModelUpdated","onPartialToggled","onShowNewPartialModal","onValidated"])):r.fieldVisible(m)?(e.openBlock(),e.createBlock(l,{key:1,ref_for:!0,ref:"children",errors:i.errors,field:m,model:a.model,options:a.options,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):e.createCommentVNode("",!0)],64))),128))]),_:1})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.groups,(m,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`group-${p}`},[m.collapsible!==void 0&&m.collapsible!==!1?(e.openBlock(),e.createBlock(d,{key:0,class:"root-level-collapse","model-value":!1,title:m.collapsible.title},e.createSlots({default:e.withCtx(()=>{var u,g,h,C;return[(u=m.slots)!=null&&u.beforeContent?e.renderSlot(t.$slots,(g=m.slots)==null?void 0:g.beforeContent,{key:0}):e.createCommentVNode("",!0),m.fields.length===0&&(h=m.slots)!=null&&h.emptyState?e.renderSlot(t.$slots,(C=m.slots)==null?void 0:C.emptyState,{key:1}):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.tag),{key:2,class:e.normalizeClass(t.getFieldRowClasses(m))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.fields,f=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f.model},[r.fieldVisible(f)?(e.openBlock(),e.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:f,model:a.model,options:a.options,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):e.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"])),m.collapsible!==!0&&m.collapsible.nestedCollapsible&&m.collapsible.nestedCollapsible.fields.length>0?(e.openBlock(),e.createBlock(d,{key:3,class:"nested-collapse","model-value":i.collapseStates[`group-${p}-nested`]??!0,"trigger-alignment":"leading","trigger-label":i.collapseStates[`group-${p}-nested`]??!0?m.collapsible.nestedCollapsible.triggerLabel.expand:m.collapsible.nestedCollapsible.triggerLabel.collapse,"onUpdate:modelValue":f=>i.collapseStates[`group-${p}-nested`]=f},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.tag),{class:e.normalizeClass(t.getFieldRowClasses(m))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.collapsible.nestedCollapsible.fields,f=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f.model},[f.model==="__redis_partial"&&a.enableRedisPartial?(e.openBlock(),e.createBlock(s,{key:0,errors:i.errors,field:f,"is-editing":a.isEditing,model:a.model,options:a.options,tag:a.tag,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onPartialToggled:r.onPartialToggled,onShowNewPartialModal:E=>t.$emit("showNewPartialModal",f.redisType),onValidated:r.onFieldValidated},null,8,["errors","field","is-editing","model","options","tag","vfg","onModelUpdated","onPartialToggled","onShowNewPartialModal","onValidated"])):r.fieldVisible(f)?(e.openBlock(),e.createBlock(l,{key:1,ref_for:!0,ref:"children",errors:i.errors,field:f,model:a.model,options:a.options,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):e.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))]),_:2},1032,["model-value","trigger-label","onUpdate:modelValue"])):e.createCommentVNode("",!0)]}),_:2},[m.collapsible.description?{name:"visible-content",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.collapsible.description),1)]),key:"0"}:void 0]),1032,["title"])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.tag),{key:1,class:e.normalizeClass(t.getFieldRowClasses(m))},{default:e.withCtx(()=>[m.legend?(e.openBlock(),e.createElementBlock("legend",Fy,e.toDisplayString(m.legend),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.fields,u=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:u.model},[r.fieldVisible(u)?(e.openBlock(),e.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:u,model:a.model,options:a.options,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):e.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))],64))),128))])):e.createCommentVNode("",!0)}const Ne=be(Gy,[["render",Hy]]),vr=new Set(["config-client_id","config-client_secret","config-issuer"]),Vr=new Set(["config-scopes_claim","config-scopes_required","config-audience_claim","config-audience_required","config-roles_claim","config-roles_required","config-groups_claim","config-groups_required","config-authenticated_groups_claim"]),Yy={name:"OIDCForm",components:{VueFormGenerator:Ne},provide(){var t;return{[Ke]:(t=this.$slots)==null?void 0:t[ot]}},props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},onPartialToggled:{type:Function,required:!0},isEditing:{type:Boolean,required:!0},enableRedisPartial:{type:Boolean,required:!1},showNewPartialModal:{type:Function,default:()=>{}}},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 t;if(!this.init){this.init=!0,this.globalFields={fields:this.formSchema.fields.filter(i=>!i.model.startsWith("config")&&i.model!=="tags")};const n=this.formSchema.fields.reduce((i,r)=>(i[r.model]=r,i),{});this.commonFieldsSchema={fields:Array.from(vr).reduce((i,r)=>(n[r]&&i.push(n[r]),i),[])},this.authFieldsSchema={fields:Array.from(Vr).reduce((i,r)=>(n[r]&&i.push(n[r]),i),[])};const{redis:a,redisModels:o}=nt.useRedisPartial(this.formSchema);this.advancedFieldsSchema={fields:this.formSchema.fields.filter(i=>i.model.startsWith("config")&&i.model!=="config-auth_methods"&&!vr.has(i.model)&&!Vr.has(i.model)&&(!this.enableRedisPartial||!o.includes(i.model))||i.model==="tags").reduce((i,r)=>{var s,l,d,m;switch(r.model){case"config-client_jwk":{if(Array.isArray((l=(s=r.items)==null?void 0:s.schema)==null?void 0:l.fields))for(const p of r.items.schema.fields)p.label=p.model;i.push({...r,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#jwk-record",newElementButtonLabel:"+ Add Client JWK",...Array.isArray((m=(d=r.items)==null?void 0:d.schema)==null?void 0:m.fields)&&r.items.schema.fields.map(p=>({...p,label:p.model}))});break}case"config-session_redis_cluster_nodes":{i.push({...r,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#host-record",newElementButtonLabel:"+ Add Cluster Node"});break}default:i.push(r)}return i},[])},this.enableRedisPartial&&this.advancedFieldsSchema.fields.unshift(a),this.sessionManagement=this.formModel["config-auth_methods"].includes("session"),this.authMethods=[{label:"Authorization Code Flow",value:"authorization_code",hint:"authorization code flow",prop:this.formModel["config-auth_methods"].includes("authorization_code")},{label:"Bearer Access Token",value:"bearer",hint:"JWT access token verification",prop:this.formModel["config-auth_methods"].includes("bearer")},{label:"Client Credentials Grant",value:"client_credentials",hint:"OAuth client credentials grant",prop:this.formModel["config-auth_methods"].includes("client_credentials")},{label:"Passwords Grant",value:"password",hint:"OAuth legacy password grant",prop:this.formModel["config-auth_methods"].includes("password")},{label:"Introspection",value:"introspection",hint:"OAuth introspection",prop:this.formModel["config-auth_methods"].includes("introspection")},{label:"UserInfo",value:"userinfo",hint:"OpenID Connect user info endpoint authentication",prop:this.formModel["config-auth_methods"].includes("userinfo")},{label:"Kong OAuth",value:"kong_oauth2",hint:"Kong OAuth plugin issued tokens verification",prop:this.formModel["config-auth_methods"].includes("kong_oauth2")},{label:"Refresh Token",value:"refresh_token",hint:"OAuth refresh token grant",prop:this.formModel["config-auth_methods"].includes("refresh_token")}];for(const i of[this.commonFieldsSchema,this.authFieldsSchema,this.advancedFieldsSchema])for(const r of i.fields){const s=(t=n[r.model])==null?void 0:t.help;r.help===void 0&&typeof s=="string"&&(r.help=s)}}},getAuthMethodsValue(t,n){const a=[];for(let o=0;o<this.authMethods.length;o++)this.authMethods[o].prop&&this.authMethods[o].value!==t&&a.push(this.authMethods[o].value);return this.sessionManagement&&t&&a.push("session"),n&&(t?a.push(t):a.push("session")),a},handleUpdate(t,n){this.formModel["config-auth_methods"]=this.getAuthMethodsValue(n,t),this.onModelUpdated()}}},Ky={class:"general-settings"},zy={class:"link-wrapper"},Qy={class:"auth-method-container"},Xy={class:"general-settings"},qy={class:"link-wrapper"},Jy={class:"general-settings"},Zy={class:"link-wrapper"};function Wy(t,n,a,o,i,r){const s=e.resolveComponent("VueFormGenerator"),l=e.resolveComponent("KExternalLink"),d=e.resolveComponent("KLabel"),m=e.resolveComponent("KCheckbox"),p=e.resolveComponent("KInputSwitch"),u=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",null,[a.formModel.id&&a.isEditing||!a.isEditing?(e.openBlock(),e.createBlock(s,{key:0,class:"global-fields",model:a.formModel,options:a.formOptions,schema:i.globalFields,onModelUpdated:a.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),e.createVNode(u,{tabs:i.tabs},{common:e.withCtx(()=>[e.createElementVNode("div",Ky,[e.createElementVNode("div",zy,[e.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#important-configuration-parameters"},{default:e.withCtx(()=>n[2]||(n[2]=[e.createElementVNode("span",{class:"section-header"},"Common Configuration Settings",-1)])),_:1})]),n[4]||(n[4]=e.createElementVNode("div",{class:"description"}," Parameters for enabling the OpenID Connect plugin. Set these parameters before adding authorization, authentication, or other advanced configuration details. ",-1)),r.displayForm?(e.openBlock(),e.createBlock(s,{key:0,model:a.formModel,options:a.formOptions,schema:i.commonFieldsSchema,onModelUpdated:a.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),e.createVNode(d,null,{default:e.withCtx(()=>n[3]||(n[3]=[e.createTextVNode("Auth Methods")])),_:1}),e.createElementVNode("div",Qy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.authMethods,g=>(e.openBlock(),e.createElementBlock("div",{key:g.value,class:"auth-method"},[e.createVNode(m,{modelValue:g.prop,"onUpdate:modelValue":h=>g.prop=h,onChange:h=>r.handleUpdate(h,g.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.label),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]))),128))]),e.createVNode(p,{modelValue:i.sessionManagement,"onUpdate:modelValue":n[0]||(n[0]=g=>i.sessionManagement=g),label:"Enable Session Management",onChange:r.handleUpdate},null,8,["modelValue","onChange"])])]),authorization:e.withCtx(()=>[e.createElementVNode("div",Xy,[e.createElementVNode("div",qy,[e.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#authorization"},{default:e.withCtx(()=>n[5]||(n[5]=[e.createElementVNode("span",{class:"section-header"},"Authorization Configuration Settings",-1)])),_:1})]),n[6]||(n[6]=e.createElementVNode("div",{class:"description"}," Parameters for setting up claims-based authorization. ",-1)),r.displayForm?(e.openBlock(),e.createBlock(s,{key:0,model:a.formModel,options:a.formOptions,schema:i.authFieldsSchema,onModelUpdated:a.onModelUpdated},{"autofill-provider":e.withCtx(g=>[e.renderSlot(t.$slots,"autofill-provider",e.normalizeProps(e.guardReactiveProps(g)),void 0,!0)]),_:3},8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)])]),advanced:e.withCtx(()=>[e.createElementVNode("div",Jy,[e.createElementVNode("div",Zy,[e.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/"},{default:e.withCtx(()=>n[7]||(n[7]=[e.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings",-1)])),_:1})]),n[8]||(n[8]=e.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the OpenID Connect plugin. ",-1)),r.displayForm?(e.openBlock(),e.createBlock(s,{key:0,"enable-redis-partial":a.enableRedisPartial,"is-editing":a.isEditing,model:a.formModel,options:a.formOptions,schema:i.advancedFieldsSchema,onModelUpdated:a.onModelUpdated,onPartialToggled:a.onPartialToggled,onShowNewPartialModal:n[1]||(n[1]=()=>a.showNewPartialModal(a.formSchema._supported_redis_partial_type))},null,8,["enable-redis-partial","is-editing","model","options","schema","onModelUpdated","onPartialToggled"])):e.createCommentVNode("",!0)])]),_:3},8,["tabs"])])}const _y=be(Yy,[["render",Wy],["__scopeId","data-v-44df963d"]]),$y=e.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(t){var n;e.provide(Ke,(n=e.useSlots())==null?void 0:n[ot]);const{t:a,te:o}=De.createI18n("en-us",it),i=t,r=e.computed(()=>i.formModel.id&&i.isEditing||!i.isEditing),s=e.computed(()=>{const l=i.formSchema;return l.fields.map(d=>{const m=`post-function.${d.model}`;return d.hint=o(`${m}.hint`)&&a(`${m}.hint`)||d.hint,d.help=o(`${m}.help`)&&a(`${m}.help`)||d.help,d.newElementButtonLabel=o(`${m}.newElementButtonLabel`)&&a(`${m}.newElementButtonLabel`)||d.newElementButtonLabel,d.model!=="tags"&&(d.valueType==="array"||d.type==="array")&&(d.type="array",d.valueArrayType="array",d.itemContainerComponent="FieldArrayItem",d.fieldClasses="post-function-array-item-container",d.fieldItemsClasses="post-function-array-item",d.inputAttributes={...d.inputAttributes,type:"textarea"}),d}),l});return(l,d)=>r.value?(e.openBlock(),e.createBlock(Ne,{key:0,model:t.formModel,options:t.formOptions,schema:s.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)}}),eb=be($y,[["__scopeId","data-v-f54f37ae"]]),tb=e.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(t){var n;e.provide(Ke,(n=e.useSlots())==null?void 0:n[ot]);const{t:a,te:o}=De.createI18n("en-us",it),i=t,r=e.computed(()=>i.formModel.id&&i.isEditing||!i.isEditing),s=e.computed(()=>{const l=i.formSchema;return l.fields.map(d=>{const m=`exit-transformer.${d.model}`;return d.hint=o(`${m}.hint`)&&a(`${m}.hint`)||d.hint,d.help=o(`${m}.help`)&&a(`${m}.help`)||d.help,d.newElementButtonLabel=o(`${m}.newElementButtonLabel`)&&a(`${m}.newElementButtonLabel`)||d.newElementButtonLabel,d.model!=="tags"&&(d.valueType==="array"||d.type==="array")&&(d.type="array",d.valueArrayType="array",d.itemContainerComponent="FieldArrayItem",d.fieldClasses="exit-transformer-array-item-container",d.fieldItemsClasses="exit-transformer-array-item",d.inputAttributes={...d.inputAttributes,type:"textarea"}),d}),l});return(l,d)=>r.value?(e.openBlock(),e.createBlock(Ne,{key:0,model:t.formModel,options:t.formOptions,schema:s.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)}}),nb=be(tb,[["__scopeId","data-v-0d5c541f"]]),ab={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}]},ob={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}]},ib={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}]},rb={class:"general-settings"},sb={class:"sub-form"},lb={class:"general-settings"},cb={class:"sub-form"},db={class:"general-settings"},ub=e.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(t){var n;e.provide(Ke,(n=e.useSlots())==null?void 0:n[ot]);const a=t,o=e.ref("zeroSsl"),i=e.ref("shm"),r=e.computed(()=>{var A;const y={};if((A=a.formSchema)!=null&&A.fields)for(const b of a.formSchema.fields)y[b.model]=b;return y}),s=e.computed(()=>{var A;const y=At(ab);for(const b of y.fields){const x=(A=r.value[b.model])==null?void 0:A.help;b.help===void 0&&typeof x=="string"&&(b.help=x)}return y}),l=e.computed(()=>{var A;const y=At(ob);for(const b of y.fields){const x=(A=r.value[b.model])==null?void 0:A.help;b.help===void 0&&typeof x=="string"&&(b.help=x)}return y}),d=e.computed(()=>{var A;const y=At(ib);for(const b of y.fields){const x=(A=r.value[b.model])==null?void 0:A.help;b.help===void 0&&typeof x=="string"&&(b.help=x)}return y}),m=e.computed(()=>({fields:a.formSchema.fields.filter(A=>!A.model.startsWith("config")&&A.model!=="tags")})),p=e.computed(()=>({fields:s.value.fields.filter(A=>!l.value.fields.some(y=>y.model===A.model)&&!d.value.fields.some(y=>y.model===A.model))})),u=e.computed(()=>({fields:a.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"))})),g=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-consul"))})),h=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-redis"))})),C=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-shm"))})),f=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-vault"))})),E=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config")&&!p.value.fields.filter(y=>y.model===A.model).length&&!u.value.fields.filter(y=>y.model===A.model).length||A.model==="tags")})),k=e.computed(()=>a.formModel.id&&a.isEditing||!a.isEditing),R=[{hash:"#general",title:"General"},{hash:"#storage",title:"Storage"},{hash:"#advanced",title:"Advanced"}],w=[{label:"Lets Encrypt",value:"letsEncrypt"},{label:"Zero SSL",value:"zeroSsl",selected:!0},{label:"Other",value:"other"}];e.onMounted(()=>{o.value==="zeroSsl"&&(a.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90")});const I=A=>{o.value=A.value,(A.value==="zeroSsl"||A.value==="other")&&(A.value==="zeroSsl"?a.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90":a.formModel["config-api_uri"]="https://acme.example.com/",a.formModel["config-tos_accepted"]=!1),A.value==="letsEncrypt"&&(a.formModel["config-api_uri"]="https://acme-v02.api.letsencrypt.org/directory",a.formModel["config-eab_hmac_key"]="",a.formModel["config-eab_kid"]=""),a.onModelUpdated()},v=(A,y)=>{y==="config-storage"&&(i.value=A),a.onModelUpdated()};return(A,y)=>{const b=e.resolveComponent("KSelect"),x=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",null,[t.formModel.id&&t.isEditing||!t.isEditing?(e.openBlock(),e.createBlock(Ne,{key:0,class:"global-fields",model:t.formModel,options:t.formOptions,schema:m.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),e.createVNode(x,{tabs:R},{general:e.withCtx(()=>[e.createElementVNode("div",rb,[y[0]||(y[0]=e.createElementVNode("div",{class:"header-wrapper"},[e.createElementVNode("span",{class:"section-header"},"General Configuration Settings")],-1)),y[1]||(y[1]=e.createElementVNode("div",{class:"description"}," Parameters for enabling the ACME plugin. ",-1)),k.value?(e.openBlock(),e.createBlock(Ne,{key:0,model:t.formModel,options:t.formOptions,schema:p.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),y[2]||(y[2]=e.createElementVNode("hr",null,null,-1)),e.createVNode(b,{class:"issuer-select",items:w,label:"Issuer",onChange:I}),e.createElementVNode("div",sb,[o.value==="letsEncrypt"?(e.openBlock(),e.createBlock(Ne,{key:0,model:t.formModel,options:t.formOptions,schema:l.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),o.value==="zeroSsl"||o.value==="other"?(e.openBlock(),e.createBlock(Ne,{key:1,model:t.formModel,options:t.formOptions,schema:d.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)])])]),storage:e.withCtx(()=>[e.createElementVNode("div",lb,[y[3]||(y[3]=e.createElementVNode("div",{class:"header-wrapper"},[e.createElementVNode("span",{class:"section-header"},"Storage Configuration Settings")],-1)),y[4]||(y[4]=e.createElementVNode("div",{class:"description"}," Parameters for setting up storage. ",-1)),k.value?(e.openBlock(),e.createBlock(Ne,{key:0,model:t.formModel,options:t.formOptions,schema:u.value,onModelUpdated:v},null,8,["model","options","schema"])):e.createCommentVNode("",!0),e.createElementVNode("div",cb,[i.value==="consul"?(e.openBlock(),e.createBlock(Ne,{key:0,model:t.formModel,options:t.formOptions,schema:g.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),i.value==="redis"?(e.openBlock(),e.createBlock(Ne,{key:1,model:t.formModel,options:t.formOptions,schema:h.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),i.value==="shm"?(e.openBlock(),e.createBlock(Ne,{key:2,model:t.formModel,options:t.formOptions,schema:C.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),i.value==="vault"?(e.openBlock(),e.createBlock(Ne,{key:3,model:t.formModel,options:t.formOptions,schema:f.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)])])]),advanced:e.withCtx(()=>[e.createElementVNode("div",db,[y[5]||(y[5]=e.createElementVNode("div",{class:"header-wrapper"},[e.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings")],-1)),y[6]||(y[6]=e.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the ACME plugin. ",-1)),k.value?(e.openBlock(),e.createBlock(Ne,{key:0,model:t.formModel,options:t.formOptions,schema:E.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)])]),_:1})])}}}),pb=be(ub,[["__scopeId","data-v-07cecf5b"]]),mb={class:"rla-form-basic-fields"},gb={class:"rla-form-request-limits-subtitle"},Ab={class:"rla-form-request-limits-content"},fb={class:"rla-form-window-type"},hb=["innerHTML"],yb={class:"rla-form-window-type-radios"},bb={class:"rla-form-request-limits-items"},Eb={class:"rla-form-request-limits-row"},wb=["id"],Cb={class:"rla-form-request-limits-actions"},Bb={key:0,class:"rla-form-request-limits-examples"},kb={class:"rla-form-request-limits-examples-badges"},Ib=["innerHTML"],Ob={id:"rla-form-error-legend",class:"rla-form-error-inputs"},Rb=e.defineComponent({__name:"RLAForm",props:{formSchema:{},formModel:{},formOptions:{},onModelUpdated:{type:Function},onPartialToggled:{type:Function},showNewPartialModal:{type:Function},isEditing:{type:Boolean},enableRedisPartial:{type:Boolean}},setup(t){var n;e.provide(Ke,(n=e.useSlots())==null?void 0:n[ot]);const a={fixed:[{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit.",config:{limit:500,window_size:3600}},{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits.",config:{limit:200,window_size:1800}},{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences.",config:{limit:500,window_size:86400}}],sliding:[{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset.",config:{limit:100,window_size:3600}},{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made.",config:{limit:300,window_size:1800}},{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
54
|
+
`}strong({tokens:n}){return`<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return`<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return`<code>${n}</code>`}br(n){return"<br>"}del({tokens:n}){return`<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:a,tokens:o}){const i=this.parser.parseInline(o),r=qo(n);if(r===null)return i;n=r;let s='<a href="'+n+'"';return a&&(s+=' title="'+a+'"'),s+=">"+i+"</a>",s}image({href:n,title:a,text:o}){const i=qo(n);if(i===null)return o;n=i;let r=`<img src="${n}" alt="${o}"`;return a&&(r+=` title="${a}"`),r+=">",r}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):n.text}}class Na{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return""+n}image({text:n}){return""+n}br(){return""}}class nt{constructor(n){Ce(this,"options");Ce(this,"renderer");Ce(this,"textRenderer");this.options=n||Dt,this.options.renderer=this.options.renderer||new Zn,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Na}static parse(n,a){return new nt(a).parse(n)}static parseInline(n,a){return new nt(a).parseInline(n)}parse(n,a=!0){let o="";for(let i=0;i<n.length;i++){const r=n[i];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[r.type]){const l=r,c=this.options.extensions.renderers[l.type].call({parser:this},l);if(c!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(l.type)){o+=c||"";continue}}const s=r;switch(s.type){case"space":{o+=this.renderer.space(s);continue}case"hr":{o+=this.renderer.hr(s);continue}case"heading":{o+=this.renderer.heading(s);continue}case"code":{o+=this.renderer.code(s);continue}case"table":{o+=this.renderer.table(s);continue}case"blockquote":{o+=this.renderer.blockquote(s);continue}case"list":{o+=this.renderer.list(s);continue}case"html":{o+=this.renderer.html(s);continue}case"paragraph":{o+=this.renderer.paragraph(s);continue}case"text":{let l=s,c=this.renderer.text(l);for(;i+1<n.length&&n[i+1].type==="text";)l=n[++i],c+=`
|
|
55
|
+
`+this.renderer.text(l);a?o+=this.renderer.paragraph({type:"paragraph",raw:c,text:c,tokens:[{type:"text",raw:c,text:c}]}):o+=c;continue}default:{const l='Token with "'+s.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return o}parseInline(n,a){a=a||this.renderer;let o="";for(let i=0;i<n.length;i++){const r=n[i];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[r.type]){const l=this.options.extensions.renderers[r.type].call({parser:this},r);if(l!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(r.type)){o+=l||"";continue}}const s=r;switch(s.type){case"escape":{o+=a.text(s);break}case"html":{o+=a.html(s);break}case"link":{o+=a.link(s);break}case"image":{o+=a.image(s);break}case"strong":{o+=a.strong(s);break}case"em":{o+=a.em(s);break}case"codespan":{o+=a.codespan(s);break}case"br":{o+=a.br(s);break}case"del":{o+=a.del(s);break}case"text":{o+=a.text(s);break}default:{const l='Token with "'+s.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return o}}class kn{constructor(n){Ce(this,"options");Ce(this,"block");this.options=n||Dt}preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}provideLexer(){return this.block?tt.lex:tt.lexInline}provideParser(){return this.block?nt.parse:nt.parseInline}}Ce(kn,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens"]));class cc{constructor(...n){Ce(this,"defaults",Ma());Ce(this,"options",this.setOptions);Ce(this,"parse",this.parseMarkdown(!0));Ce(this,"parseInline",this.parseMarkdown(!1));Ce(this,"Parser",nt);Ce(this,"Renderer",Zn);Ce(this,"TextRenderer",Na);Ce(this,"Lexer",tt);Ce(this,"Tokenizer",Qn);Ce(this,"Hooks",kn);this.use(...n)}walkTokens(n,a){var i,r;let o=[];for(const s of n)switch(o=o.concat(a.call(this,s)),s.type){case"table":{const l=s;for(const c of l.header)o=o.concat(this.walkTokens(c.tokens,a));for(const c of l.rows)for(const m of c)o=o.concat(this.walkTokens(m.tokens,a));break}case"list":{const l=s;o=o.concat(this.walkTokens(l.items,a));break}default:{const l=s;(r=(i=this.defaults.extensions)==null?void 0:i.childTokens)!=null&&r[l.type]?this.defaults.extensions.childTokens[l.type].forEach(c=>{const m=l[c].flat(1/0);o=o.concat(this.walkTokens(m,a))}):l.tokens&&(o=o.concat(this.walkTokens(l.tokens,a)))}}return o}use(...n){const a=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(o=>{const i={...o};if(i.async=this.defaults.async||i.async||!1,o.extensions&&(o.extensions.forEach(r=>{if(!r.name)throw new Error("extension name required");if("renderer"in r){const s=a.renderers[r.name];s?a.renderers[r.name]=function(...l){let c=r.renderer.apply(this,l);return c===!1&&(c=s.apply(this,l)),c}:a.renderers[r.name]=r.renderer}if("tokenizer"in r){if(!r.level||r.level!=="block"&&r.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const s=a[r.level];s?s.unshift(r.tokenizer):a[r.level]=[r.tokenizer],r.start&&(r.level==="block"?a.startBlock?a.startBlock.push(r.start):a.startBlock=[r.start]:r.level==="inline"&&(a.startInline?a.startInline.push(r.start):a.startInline=[r.start]))}"childTokens"in r&&r.childTokens&&(a.childTokens[r.name]=r.childTokens)}),i.extensions=a),o.renderer){const r=this.defaults.renderer||new Zn(this.defaults);for(const s in o.renderer){if(!(s in r))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;const l=s,c=o.renderer[l],m=r[l];r[l]=(...p)=>{let u=c.apply(r,p);return u===!1&&(u=m.apply(r,p)),u||""}}i.renderer=r}if(o.tokenizer){const r=this.defaults.tokenizer||new Qn(this.defaults);for(const s in o.tokenizer){if(!(s in r))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;const l=s,c=o.tokenizer[l],m=r[l];r[l]=(...p)=>{let u=c.apply(r,p);return u===!1&&(u=m.apply(r,p)),u}}i.tokenizer=r}if(o.hooks){const r=this.defaults.hooks||new kn;for(const s in o.hooks){if(!(s in r))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;const l=s,c=o.hooks[l],m=r[l];kn.passThroughHooks.has(s)?r[l]=p=>{if(this.defaults.async)return Promise.resolve(c.call(r,p)).then(g=>m.call(r,g));const u=c.call(r,p);return m.call(r,u)}:r[l]=(...p)=>{let u=c.apply(r,p);return u===!1&&(u=m.apply(r,p)),u}}i.hooks=r}if(o.walkTokens){const r=this.defaults.walkTokens,s=o.walkTokens;i.walkTokens=function(l){let c=[];return c.push(s.call(this,l)),r&&(c=c.concat(r.call(this,l))),c}}this.defaults={...this.defaults,...i}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,a){return tt.lex(n,a??this.defaults)}parser(n,a){return nt.parse(n,a??this.defaults)}parseMarkdown(n){return(o,i)=>{const r={...i},s={...this.defaults,...r},l=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&r.async===!1)return l(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof o>"u"||o===null)return l(new Error("marked(): input parameter is undefined or null"));if(typeof o!="string")return l(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(o)+", string expected"));s.hooks&&(s.hooks.options=s,s.hooks.block=n);const c=s.hooks?s.hooks.provideLexer():n?tt.lex:tt.lexInline,m=s.hooks?s.hooks.provideParser():n?nt.parse:nt.parseInline;if(s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(o):o).then(p=>c(p,s)).then(p=>s.hooks?s.hooks.processAllTokens(p):p).then(p=>s.walkTokens?Promise.all(this.walkTokens(p,s.walkTokens)).then(()=>p):p).then(p=>m(p,s)).then(p=>s.hooks?s.hooks.postprocess(p):p).catch(l);try{s.hooks&&(o=s.hooks.preprocess(o));let p=c(o,s);s.hooks&&(p=s.hooks.processAllTokens(p)),s.walkTokens&&this.walkTokens(p,s.walkTokens);let u=m(p,s);return s.hooks&&(u=s.hooks.postprocess(u)),u}catch(p){return l(p)}}}onError(n,a){return o=>{if(o.message+=`
|
|
56
|
+
Please report this to https://github.com/markedjs/marked.`,n){const i="<p>An error occurred:</p><pre>"+Je(o.message+"",!0)+"</pre>";return a?Promise.resolve(i):i}if(a)return Promise.reject(o);throw o}}}const Lt=new cc;function ge(t,n){return Lt.parse(t,n)}ge.options=ge.setOptions=function(t){return Lt.setOptions(t),ge.defaults=Lt.defaults,Ko(ge.defaults),ge},ge.getDefaults=Ma,ge.defaults=Dt,ge.use=function(...t){return Lt.use(...t),ge.defaults=Lt.defaults,Ko(ge.defaults),ge},ge.walkTokens=function(t,n){return Lt.walkTokens(t,n)},ge.parseInline=Lt.parseInline,ge.Parser=nt,ge.parser=nt.parse,ge.Renderer=Zn,ge.TextRenderer=Na,ge.Lexer=tt,ge.lexer=tt.lex,ge.Tokenizer=Qn,ge.Hooks=kn,ge.parse=ge,ge.options,ge.setOptions,ge.use,ge.walkTokens,ge.parseInline,nt.parse,tt.lex;const Wn={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",jump_to_error:"Jump to Error",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here."}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service. "},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",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."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Gateway Service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Consumer Group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View Advanced Parameters",hide:"Hide Advanced Parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"All of these parameters are required: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"}},"free-form":{"request-callout":{entity_name:"Request Callout",by_lua_placeholder:"Enter Lua script here..."}}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",open_source:"Open Source",enterprise:"Enterprise",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."},type_label:{host_port:"Host/Port",sentinel:"Sentinel",cluster:"Cluster"}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}}};function on(){const t=Ue.createI18n("en-us",Wn);return{i18n:t,i18nT:Ue.i18nTComponent(t)}}function ii(){const{capitalize:t}=U.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,g,h)=>{var C,f,b;if(!(!u||!g||!h))switch(h.type){case"boolean":u[g]={type:U.ConfigurationSchemaType.BadgeStatus,...u[g]};break;case"string":h.encrypted?u[g]={type:U.ConfigurationSchemaType.Redacted,...u[g]}:u[g]={type:U.ConfigurationSchemaType.Text,...u[g]};break;case"set":((C=h.elements)==null?void 0:C.type)==="string"&&(u[g]={type:U.ConfigurationSchemaType.BadgeTag,...u[g]});break;case"array":n.includes(g)?u[g]={type:U.ConfigurationSchemaType.BadgeMethod,...u[g]}:((f=h.elements)==null?void 0:f.type)==="string"?h.encrypted?u[g]={type:U.ConfigurationSchemaType.RedactedArray,...u[g]}:u[g]={type:U.ConfigurationSchemaType.BadgeTag,...u[g]}:((b=h.elements)==null?void 0:b.type)==="record"&&(u[g]={type:U.ConfigurationSchemaType.Json,...u[g]});break;case"record":u[g]={type:U.ConfigurationSchemaType.Json,...u[g]};break;default:u[g]={type:U.ConfigurationSchemaType.Text,...u[g]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const g={};for(const h in u){const C=h.split(".");C.reduce((f,b,k)=>f[b]||(f[b]=isNaN(C[k+1])?C.length-1===k?u[h]:{}:[]),g)}return g},dismissField:(u,g,h="redis",C=!1)=>{const f=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;h==="redis"?Object.keys(u).forEach(b=>{b.match(f)&&delete u[b]}):C?u[h]=null:delete u[h],Object.assign(u,g)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,g)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&g[u]===null&&(delete g[u],g[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>t(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let g=0;if(u.length)for(let h=0;h<u.length;h++){const C=u[h].$el;g=C.offsetHeight>g?C.offsetHeight:g}return g},getToggleVisibility:(u,g)=>{var h,C;if(u&&g){const f=(C=(h=window==null?void 0:window.getComputedStyle(u))==null?void 0:h.getPropertyValue("grid-template-columns"))==null?void 0:C.split(" ").length;return g>f}return!0}}}const dc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAeFBMVEXZ9vbm7Ozm6+/m6u/m6+/n7e3y+Pzy3eL2n6b6W3H4Qkv3Njn4R1LX7vyQ1PpEsu4sqvoenPr3eYJrx/vyucGx4ftQve34TVwwr/v3i5b5VGdCwfw1tPs2o+u3Zoc8u/uVeaN+j7xbm9VIyPz//v7tWnJPz/xQyvALmlJFAAAABnRSTlMBKpLO/yuda3XGAAAFCElEQVR4AezXwXLCIBCAYQ0aCCsIkKjv/6RV1yaN3UgHOnDZnxxyYOYbHCvb3aN9Jw7VEt1+96o7VK5DVxyqJ+qfdznzEd/6aqF3xAP3VcMjizaw2KFbX2aYYYYZZphhhhlmmGGGGWaYYYYZZviRVIMGOA1K9smMPTvv3dmaYlgGmAsJ2kQ/F00ZPMKq8ZM7+VVTCazgLdVvZv1bNh8e4Vdj8rxLUy4sgUjSe40nMplwAKJA740UHPNgCWSSPjCZyYIVkCn6m0Vms+AByAZq74WGL1nwCchO1F5Hwy4Lho2ovX6j9nD7j7r9l6v9n1OrHxCiAPq+7g+G79s/me75LDkfcy8JPXP3he9665JwHumfyxRcixppRBPXols/fioaBFBGVScGgbVsi0YfDa/15D+PPutPeiod9r5R0Olhb3Gj+YfxNly1voa/jbfx5twtpsZb/k+CYTl+tW4n3I3iQBCA9xTYCziPw9xDTvL//+F2IWoaPUCQxCVZbsGLPvfu3DOEddqU0VUSlU2ahvnut7C4SLKs7aonSdW1WZYU8Xfgf/L6ct1KJPrKzO5PmxH9S3AQEv1vseqlMlU7TgT1pMuKkzBVf8owmNTWh9JO4mM4T68nE9VF5gc1VRb74aA8qQLu+/6p0rHB6aiqxAvn1/P51f+WEbs6URdjiD1w/QX42cIU1NHhpvDA6TXaGTIl3GJ56SmfTOKBLxHDLCjErtP+dYKr88k8cLNqVXkufCPc6XCnMwR+88BldD79FBEQUuq6Ni4MHjha5/09tUX6/r4JE2JQt8Z0Gl7fh4NNGDJcF/6wcLeZWGHNGbjU5kPI1g15zZhS4WGNJMYUqg0sYx9cRqXMRmBUmJDrGi7vCtxEvwi3KzgzJh4Ubo/hHCfj+MsEo4qsPLklrxlzUfgN8LCYrQBvHXdSsyz24VIawis1xhbTqOHWdoe1NCYtCQ/S3zB0iynnJ8PAnTEZy304xKk4HrA6FrY7rBHg5/6GcZvgzh5dFG/DgP/B6NBeA8zSA+NkpAaMgOF/at5Ex7XAvcDs2Aa/ph9laQcN4DmJD0YURviNC7LC2nGiMFqKITlwcgzXvzGF4cp1R8ZHfOmtvIRbqQE9BBYwxXsqhQPf3I5Vbn8A5wrPbgNZ4RywuAIXgFs7xOGOw5iCdbYLp2WDYWFbIro2GIR70BZWB21/A7bnNw3gqeJgYSd+cfY6d9wK3CID5joCs/TATWORwJi5WqC6FbgBjLQx4L0Ajo/hCw2Bqa3Ht+HRA8upiFxpWGtKrvKlD4YJSE1Gh+K4fSMsm7d2Gna6A7dZv/lhntzs9OzCd5xGcWNOt23l6ZjnX1B7gs94u0/jNi5O3tABj/xgh3B6DKc3UfHKAO8HWMbaB18wAc8lBhe+W/hux0Ngnl9rvXpDIbfr2T0DJydgjEszwdwsBosJRkROAI+H8OiFeX6IWjlObtFxiH5BA8a5484EDFY2HnhKM8EgJGS5RWFhm0/AI7JDAx7neGB7fI4aG2qW5gXAOVSkAIx+tl1gBe6j9ndM2JMV7AlgrU/DH/bFxYE/ZfwA/nshEw6OOw6gwo6P4Zi180jKX9+HPyF/E/6Ljx19C/5Wx3zsCC0zH3MC1J7I7eA+B1/36cnyvkp/uY+W1XqwH5a8fB3O3EfLFj0H9tzwDJwL+nq/J2fgxJax0y/yLx8fDGq6BzBk9Az3AKacxXx88F+Y/wNBLXmCTExRhAAAAABJRU5ErkJggg==",uc="data:image/png;base64,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",pc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB5CAMAAAAqJH57AAACu1BMVEVHcEwSFRgTFRgSFRgSFRgSFRgSFBgSFRgUFxoSFRgTFRgSFRgSFRgSFRgSFRgTFRgSFRgSFRgSFRgSFRgSFBYRFBcSEhUQExgQExYSGSISHjIVNCwRT7sTISARSKYiv4USFRkSFxsk15QOEhcVS2MWFxgaHSEhIBkdICYJYa8RVcsk15YbGxkiJS0SGh0MWaIoJRsXGh8NVZwvKRwVGBs0texCR1cmKjNKTmAtMDsMXqkRJDo3MhwZj708QE8VNkYTHiQRJ0Qyr+pGOB8VTWMpl+I6xfISL2AZjL0HZLQMSH82vO4RU8QAeNUtoOUrm+MvpeYyNkJTWGwWTE0PTI0RM1MSIi0ef64RGylLQh8siao4wPAYX1gQO19XXHERNG8dapwCcskQRIgWSj4TJzEOUpdQVGcwquhcYXcROXcVesATKCebiDkdlWwRKU8aeY4fuK83O0gOb8EOUpIVPTQGaLs8zPchxqsUMzV9TizErlKKdy4WYJAk36MVSFoWXHoaeXIYa2oaj58+Lx4UUYH81VEhXXobjowcn6cWOT+plDwSXciPWDDmukRZXnR6ZiyGZiwadl4Vb60YWkkRQ5gRO4Mm7KEYeqEZgrn96H72mU4PO2kdq7IXaHb423EbiXoguJCzgTYi0qjzk0wbnraxoUgRTbVfTCQRQZJVQSIAdc8RRZ5fViQl35r0r0senoLCdTzHoTrfrURvRinQfUBdPCXGjjtWOCPOvmaeeDD25peWbTBzVSdnRSYiy5MULzsVVG798rTyxEkjjdMTZLoSY8cak7IfuKUtndSraTYaa1IbgmReY3ohxJ6DcCsQQXFnXCfay3fp24oRSqwZk7shuYI0sNzojUcRSankylfp0mnawV8fpnxSTCEqmcwhWXAgrHoj0aEwpNcRRqMbRmZgZXyPAA4ADANHcEzvsKH5AAAA6XRSTlMAihX3s3oryQJmJunW4DAyoJ8y////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AFWkMJsAAAt2SURBVGje7JrpXxPXGsdxK7h1+cycjAGXSXEmgZuECRmzkQZiykWRqyYQILLJIqAgXECrLC6AiCKbrTvuiIjiLu7Wvdetrm29bW/be/3c+3/cc2YSNglMVKAv+PECAnnmm/PMmed3zuHx8nLJZ8L4z7wnkthgiZzo/en4CT5eveXz8ahJY7DB1phJoz7pxR49bjI2NJo8bnR38EdjWWyoxI79qAv8sTc2lPL+uHPEQwsmSW/nqEePxYZaY7l77TOOHXIyOw7N8E8mY0OvyfBW+4zChkOjfLwmTBoW8qQJXuPHDAt5zHivT7Hh0Wde3sNE9vaaOEzkiV7kMJFJL2y49Ock4ziOkRKnSPgSDHAxgIsADFAioQARAB6TAY5J4kPyIlK2px3bduLEtmNpS5vsZl8xCT+MmwAgCVu9OTqxfP2B6urq0wcOrN+amL4iR4KJgHAypPrmpRx7NTUQKQppy5b79+/fCwjakGSOJ98aO8DJsM2J66s37f070j+gVq1adfjw4e8Pnt76jZ8SiISQAS42pxw7ColHT6QtjcgzhyCZ8+xNkTFB9woLCw0b7Blk95HjkozofRWb9u7dVH2gPDE6ffNqqBXp0YlbD5w++J81a77919YV097Oey8yTvpGbJsaGPUqLQLlFiYd75SIjA+xPyv6etmyrzeEhjkvBUBY6L6KI0cq8sujV+dIAHC9Gc4KgE3zS3+0/OCaNX/59yM/EvRDxiXm7UcDo6YvRSnt447CywJliH0DhC+eGYsB+BU7M/+7IxX7ojOUoI8ZCACccjnpj388uePb5elK4I4syTs2NfDodnM8hvc74yUZSWW7du2cGUtm3Nr5w3f5azMkeD8R8C7npC//fMfJnuxu5PjtUYHTU3xJfMBHEcfFoevi5uxct/OHuHWhSnzACCCS+G2dAdk5oA8ymRL4KqL/4fa4MTfXxX0Rt+6mRGAAAH6PZux4TPZBFp+IMuMe1CBccmvOLdKDCCBKP/njtL7I06f6ekLGRDPnzBR5EgD8Pp8xQv5zkgFBAM/JfUcJJ8PyR0kZtbTr5QDkzndIjWopBXoHCCKj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",mc="data:image/png;base64,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",gc="data:image/png;base64,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",Ac="data:image/png;base64,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",fc="data:image/png;base64,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",hc="data:image/png;base64,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",yc="data:image/png;base64,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",bc="data:image/png;base64,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",Ec="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB5CAMAAAAqJH57AAACGVBMVEVHcEwSFRgSFRgSFRgTFhkSFRgSFRgSFRgSFRgSFhgSFRgSFRkSFRgRFRgSFRgSFRgPExcSFxkULCcUKCUTHB0THR4VNi4SGxwTIiAXSDoTHx7/5l0UMCoVNC0TJiMULikRExUWRDgTJSMSGRsTISAVMiwVOC8WQjcVOjEVPDIWPjQWQDUZW0cYU0ITIB8SGhsZYUsTICAXSzwTIyEXTj4TJCIYV0UdjmkZGRgUNDYchGMYVUMaclcZZU4bfl8beFsaaFAelG4YUEAaalEerqv/7YMUIyJQQCAiLST/7owuKBv/6W4nIxoXUED/63j+11ofHhkUMisdiWb+xln+zlk+Lh4rMSVv2oX9sVcaem1m3IcbbVP8uVY3Lhz/6WVdSiP/4VkZbWAdl3b/8Jb+v1lDNx4kTTkTYcBpUCYTJCO1kDcdpq8kWkL/8qM8dE15l1Ys1ZK6ejiZZDHDmTlK1Yrn2mkujmKLbSyNl1GJgEEbgXXgsUV7UyrurkqGXitdoGLSmj4uRjImZUkSOnEXTj+jiTXTqD3xyk7IymX40lBBdUzXw1lKkF3NgTzpmEkXfbkWVGmdym9jjlWyymqJynRzZSrNtkv/9rf6plK4pEYcjHwhwZnpv0d1ynhBdEwRPYb821SlcDIalLJBiFn34W/mz12VfC8dmIMerJ4UT4EYbnb14oMVQT0WX3weoIp47I4XVFYAFA9HcEzXs89SAAAAs3RSTlMA/JgiBMrbgu8TLUmzWVb/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AOo6eEwAAAjRSURBVGjexZuLXxNHAoCHKiQIuhMFDIdWJRSpVTEodq3aetQQiRGCmPKQXOhpaAigl6SYSkLEFkI5HtezBaGldyCP0vO8uz/xZmZ3k53NY3dCQr4km9nZ2fmY9y6/LABySst05SX6Ii7n6EvKdWWlIA0HD+mK9Vz+0Bfr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",wc="data:image/png;base64,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",Cc="data:image/png;base64,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",Bc="data:image/png;base64,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",kc="data:image/png;base64,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",Ic="data:image/png;base64,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",Oc="data:image/png;base64,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",Rc="data:image/png;base64,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",Mc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAATlBMVEVHcEzq6urm5ubm5ubm5ubwgyy5YSOeUB787+b6qGbz18H6kTz8wY/5hiemViObTh7QbyXWs5vNpIrgdyTm5uaFTCK5gl5sOhTEmn////+cNvO/AAAABXRSTlMAGci9ZoV8zcQAAAK/SURBVHhe7dvpauNAEARg5+g5dfvKvv+Lrra2zTaDNoYoU4IwjSGQPx+lsmV5Rjqt8/56oc7r++nPvLxd6PP2ssJw6fJ6nAHQ5/2Efn9RBz2f1KXLPwtucIMb3OAGNziEQ+CwOOkCFwY7DIP0GTQNBuv9CvegSbCyCoPmwLMDq7DSDPgG18KgCbC3sElNhXWUrgJfFmQqYLxM6m+HLx+D63PswmZiS++FS3bwDkTsLKyRt+n9cFpZPzpN5cYi8RN6BzwPfhvWio1q6H1w+Bw2I/p60LvgsEw5dmH2gJGvhC1YpP4aDFbfUdP438RiEgsiW/qL8DJAMzCkZ4nhY7pvgJ93bP0KcNGxYmd3NjxCcxJP9/vozmJoTFe5Y8DrXIdJTPCqiTVdnm/XO8a7M6VjnbgCaVH8ioNevWP5C2MCcD3odTsWTWzSpI/rOuNETGwvygAzOg4pzbOBPSexOFidTVy7Y9Bn72ElYmLMA86J2LEYuM+BlBis/IP7yOm4PNSQae9qC0PjdAzawjnROjYw5Jund6wHfhg94VxdHGrI9TuWIrH+Y6qfuICVnggd20Nt32vkxBgZRkbHUnacJ39M4kQ5V+O1ccrkJ47HfB/3MQCmn6tzIH4f247TMddckFgdSy/28pab2F7Qkzre/gnjx3EkJBYD609G54bKHSMwYEVTh4lZSB2vaAAKFQ0w1kCiQbM2wlkDUVVRVEC4rgYcYzYmaw0kZ6hqqk5YA9G/wkxsUxYLuYB3LRs//xxD3diT2blQnhb/aWIpAlt2/9bAdsdmHmlF2bqbISrJRlrG9o9tGGyFDa8c0+YWn01bY4svbW/xlWn3w5ae0/amppoFy97GpcH2A8TcqheTln1zgoD9Ybdj8G9A4d9yw7/JiH9bVbuDrcENbnCDG9zgwx47OuxBq6MeLTvuYbrDHh/8Dfq5f7l4n1ziAAAAAElFTkSuQmCC",Sc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAP1BMVEVHcEwAAAAAAADLy8vy8vL2+v3/////++r/7ar+44X90Rb9vBD/9M3+1U7Y6/SHwd05mcbD4e9IoctosdSv1unA2j1uAAAABnRSTlMAEiZyxP3KMBNEAAADB0lEQVR4AcTQsQ0AMQgEQdYA/Zf8Eo/sDriJyG6F/eAsA3s4Euj2B7r9wdv3yFqU4begj6h10cNmiPangA7wkvAOmAfIXtABWRJ5A0ria98+siQHgSCArghMg/z9rzqe6azpQLyXoyI3cICKT0Z5CeA/ARMwARMwARMwARMwAT58rihWGAWI6XN9iJVHARr5ZVQFuQHAKEDk+WEYgA+gYBQgcIAfBuANBIwCeDqAgmGAwAsYBygMEDAM4HkBwwC8AT8AsLh2AxEA3PJOgFu3bacN1AKWYzvd2wDu3LbtbL0JZAD4IdwOpwf087e1NsAKwLVxgRJA8k/3+kEoC6gj2I7lQQDJR2QFCMHBBToAyYccgCygPwMFgOTnL/kJ6At0AJJPGsjggqcA7hD5pIEIcMFDgOU1P8h8/jXwogIFgOSTN4H8dWS/BbsC0M/3Mp+t5OsMtl0B6OUj9ABBtLArAJ18lE5+AQAyAwWA5JMGSAFEoADwfMTOADLwKrj0AOwyv9cAeUvYhUABoPk5NZZ4AhCBAsDzEe8BGVSgAMj+WQM8PwBcoADQ/E4DsoC+oAM46Yso3g7ANx/oeApwO4CAJwHLxirwcmUfZX4EnqwAuxQ0VhH56TZfAcDVFWQ5gNzO36ECYO0JIi+A5ysAXMAbKIr8PsD9Edw3IF6BJP/YoQTIGXQbCIr9S4BOQAog+1cAiGC9b8D3968G4GoJ4t/8rNk/B3QEvIGo278EaAS55hfl/iVAI4jtAi6erwdgJ4I6gNDwLngKwAWZF9D/YagDYD+EQDbgNftXALD8I+AF8P2rAB1B+A2IunwFQApqA+RLyM7zlQAucLUB9go8eL4SwP+qqQ2wAnCS/CcBbj33+lWEvgUu57mM+Lv+dwPe7tpx+JkfYAOoDRQYAn7kJ28BEA1kGAJK+ogwBPiUCiwBQRRgAiiiAAuATwWmgJC8LaAEmAJ8hC0gzzupngdMwARMwARMwARMwATYH3YzPe5nfuDR/Min+aFX+2O/5gef7Y9+2x9+Nz3+/x0c+Iy+pJgziwAAAABJRU5ErkJggg==",Tc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAJ1BMVEXZ2dnZ2dna2tra2try8fT///9Wzv8Atv9bZGj/m43/c13/alOkqaxKHFPqAAAAA3RSTlMGbsyXV3DeAAAA+ElEQVR4Ae3ZAUYFURTG8VMriDYQs4LmFAGQEQPQXCAAZgOZWUBw0QoKIEgAQV0A0bJaQGf4nC897/n+uMCP6w5zcMyOOk/Vn5gZaANtduzpzuw0j8+t84uS6tp7cy+5Jvc8LsK/ExYWnuYVaBlCfLNC3Yd4xvAS4hVsAxcgEgsLX9W4BwTXrShMXXuXry0sDMaPG37Q8SM2l/B+4umpAb0OIR4b1HuInzH8EeI3DH+GuLUC1JrwYeC7+hUdGP6uj/GB4FprfBCYujb1YP//nYWF+Z8+P25GDL9QI/aPh7uwsLDwkF/8dH6Zw7fec8suas1GLfiY1eIPQKTYtaVTVS4AAAAASUVORK5CYII=",xc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAbFBMVEVHcEzv7+/s7Ozp6enm5ubs7Oz49PT6+vr44eH20ND0u7vypqbxm5vwlJT57u5iYGAzMzPgg4O3VVWOMTFdMzOIiIjZ2dnih4f////ctLS/v79CQkLAkZHAFRWzAADIamrU1NSgoKCXl5esrKy7wMNQAAAABnRSTlMAT9H1/w10dyYBAAAEwUlEQVR4AeySRQLEIAwA0Tj8/7frrtWcOpcKMrFwJKZc3MgphjM1FWdSPXlzcScfzd75nkiH/p5eAN2AkzCeE0ZXzinnW76uOedwTtg/5U28iT8AxCKqZq2ZqYowwepiYNH2ARWG9cSdb9KPcu5riIGk/UVocTHrU12ZOgAi9E78VH3lRcVsdynBx3Lc5MaLiUnvXRwyAUqLiEEGNhCQblthvpguVZY+aPAvaqO5YtmzZifqjeJAEID3VCxgQFwKtnz7/d9xhNIO7qSGkj+ndufG/KjV8Ak5iwV08RJcl3mThlqirDlMymw5pmNJuRls2XDJoLHMYcsalN8KlsPYfb7M/OMM3pDezJMry2DQV2TENBswzxSuxX1FNh9y/QxsylRnIudVuzRPwMWHaH9ELgiMjl+VG+caAssIcmFTSYXWZRfDYFMu08xguUw5WGQCk9Yu8uCNUEQmsPr8Jgueq1PyRxCH1ek4LJdIZQ6rAnK4kkkhsoJpZ1ccttKGROawfgpaCpfLgJXcdv3gWJrR/2HIJYPTjJjvvdn1MVSOGb9/2OiuwXABn3GmGfpcudEyOimAa3DXxYzO5csjbux6FbYyHTo+jeQ9ddi0kjffuBgP72WLYXyEZJzd+5JiWqUbPWQ4HgAbqYlOOpufzLads/WS/6bpP69jJp+uUUdm0CAYX5m6Yyfvv8j17OpMUzqW1FrBoP0UPEVYyxIO6xNDuJSexjCXMSx9XUJ4mWKzBmOZw3JmDOvrwjCWOSy1hLD0VkFgIFNYJtmuwpbBWuawHhOGCwDvgkvxkv3heIg53eXz4Rhz2HuJSwm7J2Dc1MFpODpJljGfu2PKQcMuoLZehWtQ5sdSJybC7yIfJY+lBuWuV+FKep7CUZZ5JrC6n6rXYJGlw34G/hXzxmCJ9DaF0bnzYdVc0kwiH3BzcZiXWsP7++0jcgtvp6fnmHS1BD9JXpjjksBc5rcTf4DgUtMxY1geIPyRyWEtU5g/qwsOQ5nAxSpsGUxkAtunFgJOJVx8zDW4JUN/muVLcCp8IUCWPk4nzHA0lNzGDA7D6Mx0sQdgJ+VU8gz3X2Tc1Hx5y2CV7Qx/kfnylizoAwadaiZ5o9MLAbagJ68wu8DgRd7ipQ9/hdFXpst9iwmLG26S8CCf9rebLjN5aYNHAHj8lMN4h8dF7k5RFhhXmr+YY3h3/sxO3OXvtu0pZo9g/mIu7QfhS/xv9+Be5P/Pv9uf5gwA5lsR+uIUHN1vuek/JLkfBEZlBLDabi0QzHOd5T7KdLuJbLAp+JoBR7nro0w32MiWotqKaK40UR5nuLfZW4pkn3dMNxCXIzxEt5Px8U1Uts/r3Sw3nG6Ci3IrEN82pvu8o8vP0KnP841yPSn6WNPkw4361oh8NQDasDJKJmNWm6h2kfmXIfTrIj8Gl7ltbBb5d/tmjAIgDATBLoQg/v+5VkNKXU4zCLlavCxJN7MZ/pnfV1EqCSLEV9hM5gHiS6FmL2bOoSb4uBcz5xiXzYV7Hhx9LarnZf9DTmC6pGN4Aoqn3HiSkahV8a9HJuAUyc531bljlTrHNEEWvNEj24d6JCMIoYIC60m/vuacz168F2uVFK2Eo9WOtKKVVy3TynRSffACJV4aRwV6KyYAAAAASUVORK5CYII=",vc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAPFBMVEX////r7vXn7fHk6u7h5+vm7PDy+Pzz8uz23K3315j15MT6xlr9sx3/qgD4y4L069n8vDr/YwP8hjz5pnEuBE72AAAABnRSTlMCTs31/9IIfInYAAADUUlEQVR4AezPgQ3AMAwCQWxI9x+5Sp0ZiKTyC5weu2rKFrtwWjK3xqXs8crveS7tHmMfWGi3O3KDbndkQndg/QQOHDhw4MAvb2aw5DgIA9EbEoAFTv7/X7dm4tl27MYHCsFpa1zrZ6nVEhDRGKPKYnDKZfusYl/s6grWsp2XIQltq35gydtllRQkqbWffzc3sLTtcZkX+D+3ZcuNkKsP2I7s6hG/XbnZJ+L6eXs8/eU76iI+4E9h6XcS2raV0j4fkHyKS3j94Juak4/1Fyz9b1InsPXLJ/4qHJzADVHRR+YFLv36QWm5gWmHSMj0ZDDC6kucfcHSNZO5gQvAvOyWagxwcgPz1/NP8vcxwOIBRgnFtRGjZdp6jQFeXdX9NmG+PlaA13auhGG/tldX+nrsA2Q9OBTXsSgA8ymxPmJU18LiwqNtvY+x9/Hr1fb8bPVmL0THDb0+mbXi4XRwg8S9dEQPsLJTipjJSeTsAJZCVEz7vr+EG2oWuJGAbf9Zdsq1Tgfn+4Ff3jvAMNRUsOT7gb++PtyXcEPNANe23TqT7ge38k4+A6xluwn8Prhv/GnirQ/Eu5hUXgc30q3mBDDSfI43/XHT7QN1Fjji4vAur9D9/gQwbi6zcHnZHncCOJUHeTUw8JSIjaQ5XVzkkOraSJojl3deccG83L3P+4RxMMzb6r1J7trf1IdxMNKMIn2Wd16vZuYN9pdmeZibNg6m5sUM3O3xLjuNg6l5IW936zz+Ywg3L5uBfXXiMFiYebsuwqoFG4URMDUvnYGMO35RzszL5aXc0dMiNS+dgbwci4yBqXm5vPQ/loELNmZePgMlRumUYwoDYGJe2iSlXDOqBfEOgM/mpTOQH82RpyZhAMzMy+WN31vYWPCT4gBYmHn5DJQTBi4oGobAkZg3yIs2SUPIuiFPo2Ay0AwzsHNYrUe4KMeRVJcUGNg6pk3ocymMgYk5kWr2UoQMwYfAfOGSgYesJ8EHwOOXTgWC5xVgVHNEyGkROLRLyG0VOCFk1PgKcMiYvgjZG4yQDYLrCjBah0DwVeAKlRUqu4H5UbitBJ93IhXV5Qbm7b1G/bfRVYqjFo9aTGMwavGAbUkZsE04A7btaKA2Wg3U1rIB3Ew3YNsHAfSscHWTIh58AAAAAElFTkSuQmCC",Vc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAXVBMVEUAAADh5+3i6Ovh5+zi6Ovh5+v////i6ezi6Ozh6Ozl6u719/n9/f7////9/v7y9vl+pL8wbZgMVIa90d8fYZAAS4ABTIEGUIOIq8Tm7vMvbZgKWJMCToQKV5M6j+bTVWRjAAAACnRSTlMAK4/V8/8GlP29kjUMiAAAAa5JREFUeAHs0IUNA0EMRFEfMyxD/4XGDlUQTQT+BzvCJy1JTdv1A6i+axt6NU7zAG2exqe7DPAWkafhD01Ejdzzuu0HqH1b5bYbasU9D2CnyC11/N8OaBuTHfX837HwzmRPA3eAE1Ph36ewwgorrPB1G2vNfaFh58Mz77Cwi+FddEj48uGbv4DwzWDKpeTE4wbClb0sI/MwQNiyV2QUHvbRvh2kMAwDMRQ9Q7aNk/sfs/UFnukiyKWa9eAPwZbEkPkH8BH41IHLFXhOAQHJSSZM4hzjesgkXPen3FHwzmAkDYDdb7CfjcHuN9hCYbD7DbY0Gux+g9dmYLD7DUbSuO5lnbJLgG34Yw0eCAi/AT6+/NSXP3X+cuWfU1ZAApJpk3jZJNxfPy64YCcng32GwZYBg32GwRY+g32GwZZ6g32GwTY3g32GwE5aLqcvgB14XA5Bu4OdtFxOX/nLlX9OeQHJSaaTE8A4o35ccMGdc3XO1TlX51xPXa5ZkTnXrMica1ZkzjUrMudy/4Y/oBRccMEFF1xwwQXHFjRiKymxJZzY2lFs0Sq3WhZbpgutD74BPWLsmdxKFbsAAAAASUVORK5CYII=",Pc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAKt0lEQVR4Ae2dXWwU1xXHzyxeY8AFmyJRpw7etRWUlAi7xURVVYKtFp4SO6na5sm0VamUqnIJIu1DlBQiR+pDSyBQqX2oIgU/oUZqjcILrhogaV/wg22lpbULtiHBJa7sTcKH8do7uefO3tk7d2dmF39g75zzQ8t83NmPmfO/5957zp2xBQbD18dbIGO3ZwCesQASwEQAux8s6I/PxV5NJmtG9RJLrYyMjFTNrlp92LbhBWCiiwXH43P3hBCSKWcTHOOnY+Xvis0mYAhg98czM60oghhuYs1n41PCakpLm4u1kZHxRDpmj+jF8bJVsHljFawuL4NYLAZMaXP7zjRMpD6F9OycZ7+VsVpj6Rgc1nei8bd8aROsqShn40eEdWsrpE3Rtjp2bO4ZYWHb4/o3Va1nw0cQtCl6dWNvO1raI4BKoRYmmmCTbpDgqk4IP8/OAiAOC4A4LADisACIwwIgDguAOCwA4rAAiMMCIA4LgDgsAOKwAIjDAiAOC4A4LADisACIwwIgDguAOCwA4rAAiMMCIA4LgDgsAOKwAIjDAiAOC4A4LADisACIwwIgDguAOCwA4rAAiMMCIA4LgDgsAOLkPTWo/BfdcmllHyJr2+Buq3U/gsuxQPxvW6LcEsvscbaz31la7nep4zpbt8Lr32+EKHDw+CicOH3TPV/n/PHKOOduZ5x1ef7Z61joeuvoxxZa/0/PQ573BnoA2879ELWtPkj/4rAf5fm87P/+5+TslxdBLBNfXAe/euorEBUO76+Fuppyx/7in3tpskKQq9qFKdb4hSpp0LpOwSYg7IcUU6ZONkQr8pfr5b0HW6BqbRweFHt+fw72/OEcLBVVlWXw5ssN8hzVmSqx519Cy/e6mhXKTySFPLQfsft9Q9CXBO4vUPdN9n09KTzAWlhMxiZvwf7T/4BRsQwidXcGlpKWr62HA8/VhB7jXHPbXVcvubeAsf0EYr7fz6Z5fYCZ33RA1NiwphxO9V0RyzgcbduZV47GT02nYal5/eAW+VpOhq+Ne7ZJjAKqhAB212+G7r6rvjX9k+mlrf0rGTLDwI7mBmn8k+9fzivD2k9VBJESALb1fgZG2h5/WHqCk+/9O88LyCbgLgug5On553U41NMHL57pyytD4zfWVAd6AapESgA/3/UY7BOu/sR7l2Wv36zVL+91AkvoBRiHyPUB/vjcN6QIsNePY3t96Le7YbP0BCiMC1duyn1jU7ny0albQI1IdgJ/29YMjQ9Vw8CNKSGCXo8IOr/5qFy+1jsATEguAJlPXFp/n4sn7g+e+H9ddSUMH3kaFhOs5b3P74Unjr0jazWKoPf5PZDYWAmdopno6h2UHgBfiY3rYLmobxuEsRszMhegYoTzCQmHYVkYWcx9SNG5AN34ajvs2MLHGQdkF0211TBf0JUHRfekCH66FxLV66SbV55AxQSQ3y1zZ3D3jkr3Grshc+36mdE7v2hf2LbzGeEKCk0G6Qo0lWkemyv3xrIt8M0KucvtXzb/jk3xYG9/66//LNt6bPNNMaB38RMBegGk54PrMPDRpHv8tcnb8CBp2qq8TzYvYId7gKBwcFC4WOe+cwH6B/p9sRVY1XOxbGfL9i1Xq40LEMAre7fLDh+6cuz1oxhweeaDa+4xpgieOH5WhobREyAn31++EUGiZrU0vZ/dHNfttz9/XzHNRNAx1tDYDU/RI1vCExYrETRs17lBuHjlf6LNd2oxGn7fznro2NEg2348Zuexs7LZUM0Axg10/ir6DU82bIYoY+YCIiEABRoZvcFr5wZcISDtIgrYsaMe6jZ+QTYXQVE/FgCUtgB0sE/QfekKXLh6092HXgF7/SoGYEJRAGUQUbBvgK+LwtgoBnyhhxgjGOwJI7ICUIauEzV+X3O9rNknRYgYg0NB9N/AEYF/b6lO9CM829WVEAVKVgCqLf8k256n7qZFWndhGT2/JFIxVFXgqCLuGV1gIKoUKF0PYDsXHpdOLn+BIbN5gENLhfIIpeYZSlYAOLYPY2zKG9QZC4gYDgi3fyik5qu+BKKagbrq5QsfLzZ5Alj9y2430KPCiGE5AXPuOWJGAtU8eDcHoNYFb/94F7Rtr4XFxjRSsNHCPQd2HnHU0PZ4rUgkPSZjCotFz/kUPPvif7P3SuRipt7r6Y3lm6HioH06uo2KygU4b/BG9IIwQ5Vm/kDFufJCwtnNsck7sFJRLh47lDiHQEUaw2YX3w/9Q3ecBBCAmwgy78VAO5gGNkPGfvt0wiKFscIHW56yIEGgx/BOQfYe6Al4ulIXLvij4F75coO3cGBn7pU9ja4Y0COgEL731nkZeVwIA0IARmrEWTcrURHdm2Jv2DHx9QDeL7Q1V2MFJoVQqaZAPJ/jprzs7Nk6hReGP4aVhpo4gjUfa3yHGEYOvfQdGShS/QFMJH1bJJd2ipQzimI+oAdwZJa7aGYz6lfp/DKvYUmjMCIbCSwWrMVoSATjBaf6rkrj/+kHLfCT03+XIWWcXIKeQA3xVMhZjzRi718lp1YyJO8LKBaVJsb4wqAYHagsojOzKJdDkIkmYWgsH37pWfk+zOqhtzh05hKUEuQFoEf4NmiTRc6ITKGeSjZF4L5fHHO0rVk2EX0Hn3JFVCqwB9BICGOqmcPo4jFGYIogLFq4XTQViRILBLEADLADqHsBRBcBdvjQ1UcFFoAPfvcPKBFghxBF0BWRWcXcB/Bx2egF1F1E+twBKQIxGmjf9rCcgRQFEbAHyGIKofNJpzPXbYzx5RDxhy0yLIwiKPXbzAo+IwhZyNx0GcnK5OL/MuSZcZ6VkX+vAMhnAx397ldhuWnb5txMiv0ANY9Q52h7s8wLPL2t+DzGj7quwlvvTGSvg6U9Ewly18fKj/2Hz/Y1j3eCy0G5m4K5gJzhHSP5JRyCf0xuWeyTLUxO/G0YLgxNwIPENK7ah3cRofEvBkwh69z1aNG9/tHxe3Dq7ETebOlciNwpULF/M6xuhtZzx5hisQNnc/vZMOS+ABsK3VSQ/x7vUj8Rte25C0J/L+SSIvu7L0HqztI/sUNRVRH3vUMIx/TylvIFuvnUZ7PwrZ9d1iPgEqeKWe66XFp+lcYOTQr5ZmEt//s3TEKTQfNpBlRSyM1OmTHqgA/S8kMw+v9b0HX2X7DcKC+A4/+FPD/g1Tc/FB5gGrLZXV+k+C3/SgQQ3hT47Q/LDuqQeEZQIbAD6NcMIOgFBlEA0zOBxxTi2IGEfK0EyMwKvh8wBLyhwt+4qtcfVVgAgrcjbOBCcByAOCwA4rAAiMMCIA4LgDgsAOKwAIjDAiAOC4A4LADisACIwwIgDguAOCwA4rAAiMMCIA4LgDgsAOKwAIjDAiAOC4A4LADisACIwwIgDguAOCwA4rAAiMMCIA4LgDgsAOKwAIjDAiAOC4A4eQLIZDLA0AEFMKrvuDczC0w0uX132tzVLwSQ6dH33JxMsReIIGjTialPvTstu98aHhlvsWP2u/r+eNkq2FS9HirXVABT2qDhp4VX/1hU7PTsnKdsLmMl5WMIh8Y+PC5agwPA0CGTeWNrsvYF2QmMZ9JHxKIfGCLY/XGQNndGAclkMhXP3GsVsngDmGgjan48M9OKNsfNvCfXXh4ZT8TAPmLFAP9sRhMwJY8tRnpWJtNjwaq/PJKsOa+XfQ7euKws3YNYiwAAAABJRU5ErkJggg==",Nc="data:image/png;base64,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",Dc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAIVBMVEXZ2dnZ2dnZ2dnZ2dnv+P7///87rPz/AABGsfzi8/96x/085FVWAAAAA3RSTlMGzG4zvmxxAAABAUlEQVR4Xu3ZwQnCUAwG4OgEQhcQnKDGDdQN7MEFgriAGxT0LnSC4pi2ohcfSUpyMuY/lB76XfII4TUA8wpNqZcAwFldA8zQnAWs7HgNFW4aU7ZYA+Lehg+IA26MCYiPD2Jzuyu4IyFXBfcSPiu4lfBJwUQ7NkSxcOLxSa983mLiPOfvkv0oznNm5tLkxujIgXsPbs2YKQ5XsMiYa4xYuPiMSRhchGuMEJiZDlzBYmC9MS7vjCwSzn7+F5z9LF++FSxf+xUs/3BQ8ORfHdp0KBMFl4mMuekQD8c/58SJ5bmkYHkuKVieSwqW55KItUTDrsWPa+XkWna51myuBZ9rtfgEjuylcRN+iI0AAAAASUVORK5CYII=",Lc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAUVBMVEXX19fMzMzMzMzPz893g4yFkJiZoqnp9Prz+/9CpOvG5PqOyfQpmOiv2fe66MH///90vPHO79OX3aIXj+ZcyW3m6utdse540obc5eE6vk/MzMwHw7fDAAAABHRSTlMCzG4b8DRO8AAAA/pJREFUeF7s1st6ozAMBeA2XUi+m3s67/+gQ2UjYoNbKJQVZ5kE/k9SjHgb83j/d2neH29f+SD2YvpjhMm9XB77TMDleYSCwV0YCCWze7FMsLs4N/zXueEbvuEbvmGpeqGbRoteyetgUKM5Ryu4BAbfLOLh72Gjm5VoczKMxodZeoPk+gh5I2GMNF7Hos+EId41WuCwJ0QofIkSJPd4FoyqyaKCyyzTQT4JBtGsRkhcRFLR/hRY6sCoMEslotsDrgSoF+YEGHQ+TCUyF77ASab+aDgMIyk+a6gywGgeSRcchlXulgOxbroEDsLALt85kdbKpiapg7AfXfFToWuHSh+DUfNpTcpzGL52qzxdJQ/BZqVglwWX/25PvT4C0x3KKttZzAj3h2AxwvKlk66QlRMljsC0+SAvF6t6aD/HtENd4RoNI6x/D4enn8jYavhMMlRM85DpEO6F80WvEtdSqWlamxR9FFbN0u242jRDx3L2CNkPe2K9fHXtVGJtn+AcPG09NcCmMl3tfwMrLnd262DUlXtJNX0aZZhLbtR+2PCiz92BWaaHRA4xJJu9MOjExdm1biV2ltNXEQ07YTpHqWtpuJVbTdXynNO13O+Dzct8IbgduU9XyJPkjsfMa9nsgkWy+wmmOVaumIrmTzCHVuoeWBYabd03sYVmyx1wzwXDBLdUTzmxJ+0EA5fcb4cxKZjgihtdDv8G05JxM0w7bTnhugDidLLr5ZRpq26GVdwMwDB+U3DX0ldTyTjDgEi32gLziM2i023RHfMkueVeJ28im2Exjxjmh1ZdHCx1OPkZt4umthlO3zowjth+5/Ly4iGX30TKcJPAUw+70tmNWHy6tQu4+d++3e1EEMJQAHa1FK7WOLERef8HNZB4rGwyQujITc+Va+x8ych/loX9cX06hvsMV02ILbF+AoAswj/avXeRK+H278ZP+HAhHKG1PpOUa/iqC9N3BI1LNeO3VH+FUaVrXIJiLlOwMCGU8X51Q65uPz+jO2VVznEC1i4VNTIoubmiVPVnhVTCOFxIh/sh8w43KlQPmUw6ZRhudaFkaYmYJCBjuFLRk0QUhIh4GG5uRu3jtHg0V5HdtCgaJpqCiyARk7wmjpOFwAqcVbFa+kA+TpY+sgJXEB1qbrGHzrQM89zyls1gkpkFvZAdzDNbGF6FdeL4pi0KYgDL6TY1622q2MIyujEXa1j6o4j6+qP0RxGyCj+GRw5fmPqsw8Tpr+OmBNcUpiDnB2wSyBhGytmRYiGygF+Nsgd22GGHA1EwMPGsYTiHkA1MPMu/+eLwhsa1oTvth70fO+ywww477PC+Szi3Kqf/dFMVb9suWu26WrbvMt2264NfwUOKGWhxOcAAAAAASUVORK5CYII=",Uc="data:image/png;base64,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",jc="data:image/png;base64,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",Gc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAFVBMVEXl+OTU8s45vzn5//f///9mzmWk46NudVGjAAABDklEQVR4Xu3ZQW6DMBCGUTtwAE/oARJLzjqolDVV5wREygES5f5XqF25zoIsmN8bIs23f4LZMEhjmM8E1TAbngisjdii2LGZCK41PbmWgSZLnbH0wVDf5AzRgOEfoogZLGMD9P74U9jmsWLFihX3D++vHYbH2cfCHcHnZJNuALz3uaMc977UifHuiQ9inCa+dv0j4iDFY0SnBG5R34X4K836P/tFiPd/D86PPgpwJpfyDichnuOkZfogxHnkPLQYF7ElrFg3RvlwPgvNarzziw6r8bzEYTX2L1KsWPEixYoVD+C6wRdd/Yp93bDd3wrFihUrBnpzDJVxi9kpYotjV3Vyqjp21ZzZ6g58VafFX3XCibGrkd94AAAAAElFTkSuQmCC",Fc="data:image/png;base64,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",Hc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAG1BMVEXX19fZ2dnZ2dnZ2dnv+P47rPzZ2dn///96x/1nbFiqAAAABHRSTlMCzG4b8DRO8AAAALRJREFUeF7t2TEKwkAUhOGnXsAqtZW1h1BzARfSRsI7QSAnyL2NpBN2F96AxfJPEdJ8TcIUu2N27DyU8WJ22mxQ3+zg4ZztGsdv63xaQnn6aO59DM/uG16CAWcCBoPnNWUz9BX8SIW8Kngt4aGCUzFVfM+mNQz+PtOe/S21ifnPv5+sVUyf6fNfMX2mz/SZPtNn+gwGF6Mf+/ULB/2qQ79kAYPBYGn4kSYnaeySZjZp4JOmxQ/Q2laaGT2ytgAAAABJRU5ErkJggg==",Yc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAclBMVEVHcEzu8fXr7/Hm6+//////8ub0+Pu02vfl8/4pnPX/lAD/zIP/2r3///9Ufplyv/n/kI7/v2aVzvv/UlI8dZz/ZWX/YmLh5+uXl6X5k0T/uFUAS4A+pvb/nxn/mxA3ovZwm7j+k5O7lnfUlU7+np6Sfl4sKHjqAAAABXRSTlMATtD1C8ow0P8AAAJ9SURBVHhe7dvZjuIwEIZRIF22sy+s+9Iz8/6vOHES9MuZ9iBBXJa6/d1wwcVREWKjIM9080W0ZStazGd9H4stc4uPzo227EVaxryMLdrr2wEiZ0t04LwfOGetHznCvJwzRzMMzDvyd4MDHOAA0+GcDJ0PxAfTJUHJhdjgQ2J0YIPPJnxmg5NRPw+u+9KM+OGhjBlGKTOMMv4vF2WplokZ1pGWMx8LSIarzLxk1m3MmwRgxm2RAbYX4AAHWEjZjFKdJqVTWMJDGivjuHQAw7XB1zi+uoHtrnI+segdkSMkpXABY2CwlhzBKvcAY2APcP5t4ADL2016gEVxbCvEVDBVm+XQpiI7LFbHrpWYBqaWRRvIgOFCfh+ulkaVBYYL+T14Y8IbwGkL09gdy6p15UvwcpQJp3C/lqUDmGotkwaK46himFe7jZoEvqN92+fnbrfT7qg/v3T63dvujn6TRrL1Onu8vgJX+1bVrf6FC+12dudC1sh6uVw/Xl+B7xoFPJ54aF9NDuuPsauwwnvdNB91btwpjVT/+3LR8yclL8C4Uyy3E+65qRYQwOrZAkKAJ1sym7bnS2bdNukmARgyXBOeclsEDBnuJLCZHcYPAV4YP33YYRRg8gHjIS8njIe8/DDhrxMmGCN/UUr9e5kLGFcZIY3VSVK7ge0zpxq7JMnFFYy/TsxoePp/cAjbozQlZhj9JDjAAVblKR46lYoPVtcYxVfFBpexUZk/Eo7hkwmfzKcbDuF4FAb2AgvV6AQj3CAMzATD5Ybh8sNSipwXBuAVZl5AEPOSiZg3CcS4LTLALxTgAAc4wL6OpHg7hOPt2JGvg1bejpb5O0zn7fjgXw4zQKl16iUIAAAAAElFTkSuQmCC",Kc="data:image/png;base64,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",zc="data:image/png;base64,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",Qc="data:image/png;base64,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",Xc="data:image/png;base64,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",qc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAALVBMVEXw8PDq6urr6+vr6+vr6+vs7Oz////V1dWgkuppUt1aQdl9aeHAtvHs6fvPx/SyrBd3AAAABnRSTlMCbsz2/xuR/wX0AAABhElEQVR4AWJgYFR2IQsYCTAwsKq4kAmcAhiYXMgGCgwi5Gt2ZFBxcUsjC6S4ODGYuKSRCVycGVzI1+wyqpl4MKq5HAhgNIIBYMessRqKoig6OyYS11mgPdrHdpLfoT3aoz06CaQ7a309OOTdZsd27F9b7y3iD/wXOSTJbMgpCZGYO/9FDknyw/Ly+EjoyS2YCK2+Xb2BkdDqntUzQOjJKzAWevIWDJVO3+4AkdD6t9vAVGjJdWBNaMktYEFoyU3gSGjJT8CFsKBc3yIWo4WC8goJMcySJQG2kuRRVZLpS+S59K9dLiKn/GHpciwawILQus43wJ3Qks+AC6Ehx1qBJx/AUGjJHWAitOQuMBVacrwV/N6qemNqYUgKf42cVVX5ctofliLb4yJHbgN9oSXXgR2hIcdagSffAEdCQ46NC09egZHQk7UV2Js+MBF6+/YWTIWefAY7Qk9uH2xUlWHTD3I4oQlJ8m/kcEITkuT/yy+jZOKHoikniia7KJpmo2iCj6KpRQA/mHLksdpV/AAAAABJRU5ErkJggg==",Jc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAGFBMVEX////y9Pba4ebO1NmeqK/CyMxmdYB7iJKIfN86AAABWklEQVR4Ae2ZQUvDQBCFX9uC1zSI55qLV7F/IIdNvVYwd9Hk9VowxL/vVlYm4mYrk4O63XcosywfbztvKWUHwKxQKYOOFbpQS4xV1vPjh0LW9Bp5sYZKcws7Y5W1haHU78ObL5J1zLBKEeUsLYsZTjm7lXcdD5xylhaJYoJTzqJo4ZTz/4UvTQUrY0osjVMpld03probadgVG1htecAFnQ5S2f2jXoNwP4SfpHIwyxG4/eb8LNUn/HLKeVHXj2RV1w9SfeznW9LXsOF3tlqQO0Aqd7Ilmfnh1jmPwQ0wI29Vzg7e+eG96bqOwWPbxdrfMKeQ8w0JHbw392SrhIOXpNlY9WG4y5Q5k28mQwgO5byCyHtJwjkDWmfX6JGGaZytfnq3Tzvrj90rGnZuP/qi9H97uBMDnHJO7yTpnSRGOOWc3rf/Lqwfv0wb/ORTRk6Thl3Qw1MHfFip2XfLetCO8De/bwAAAABJRU5ErkJggg==",Zc="data:image/png;base64,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",Wc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAJ1BMVEVHcEwAAADJycn09PT////7xc6NNR+6RSj/aob/6u//TnCONB/oVTHIMuxnAAAABHRSTlMAE0mpI0KUswAAAT5JREFUeNrt28FugzAQhOE04GTt5v2fNwLRzoVFilr/DtHMidsnrQy7wtrLmi80iygWjVw6culs8HWasUzXRdzcGc0qr/DEwtMvPMMxbNiwYcOGDRs2/PZwuaUpXeHbQQz/O3zfyXnhElGHwK01ySQcklm4SiZhyTAsuSPcDhMlh7938mdY8rlgvtTI4XpsWcCf5w6vEwLLxWG5MLzn1ojSBc7boqpQ+sJZ+SWjcGmSMVhy9PyA5DIP68zxsJLDnqsP4PZSosCw5BPAaKl9qjvA/CfzM5sE3xb5QYAfffLxDhj2koGWGW9jR0YG+iqZhCXDsGQMThqfgv0RiI+G+VLnh4sdBORWGJaLw3JhWC4Gqy16vH0d9k0bCg+7xvWNuWHDhg0bNmzYsOERKynDlnBGrR2NW7QaJA9cphMNs08ubvVHH6jV2AAAAABJRU5ErkJggg==",_c="data:image/png;base64,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",$c="data:image/png;base64,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",ed="data:image/png;base64,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",td="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAe1BMVEVHcEwAAAAAAAAAAAAAAAAAAAARCxC+DkgAAAAAAAD4El4FHB4QYWcLQ0sXi5ESaoI2BBXURvyXl5fgEFWeNLyPCjZEREQl18ysrKxSG2IgurAamcMp8eVwCCofuu7p6elqamoiJii+vr5RBh/19fXFQeujDD6GLJ////8uTen5AAAACXRSTlMAj70r1ZT+/gZ6h2ZEAAADnUlEQVR4Xu3b2XLiMBAFUBGgibybdd+XzP9/4chAGyJFauGRNHnwfSLOwyncJVuV6LIq3U4PlmspCdfnz7dwQ4pIyqDX6bJ7PvsVEM9kOXYBjyR3BMLqf97cjzuQyvBSD59f3bPBnURSTjfro5L7/JFMljMtvH+F93r3JLvXh9UX8+V1lDGnWnn+dOd6F5QbXVtd1nnCsQzPtGOGHbo70MODSEpRWx3W488k9mOeIjzVuxvZ3TypHoNK1I45oca8f2clvUjA+GtAWVMHrXys3OO7K6nOd5gflDFz05h38NZKUmDTmDPTmKdvrKQJ18Dvr6nh8I2VNOAErIx5yZtko6wkCuapF3jDSZjnHuArt4D50jk8Ais4nrmGC24F89QxPOGWMM+cwgNuDfOZSxjegONk6QgeTQpOwqrdHNaoJIx2YxhVAjbYWSP4hCoBh0gLh0oLx/8L3q6S8DYsxmwrgnYwtSzLCr7ZeRxQRRht7yyqCGNy3y6qMrxNvbpwUWGM10GPSz28CnKjEQ4z5kOpwEHGDBcCXoEf+Ksk4G3macAkvE283mgV9vrshMVYhtPsVU1Q9W2PmQCEjarnLL4uN3UBuANJ8xQQ8G0v4DfvufCv0fLn/fF8Pu7VX/2R4xaG+R2YQ2BYuA85LDwVznA6HQpgKsGHe4T4+OQUPgq3UoR8/AZjQPrZFbwT36cCxBfbBYLVD78MbuEWbuEWxoei+qRUrziF8TWgvhvUKy7h+sWnvg3VKy7h+lWvvv/VK05h3NwoOx71ShMYxI7zR7jezkl7PNMVGoY0Tyv4vr+/oO05cbLaVslSVtYZLyCAikHYux3nqKqwyMUbnAjMAHucdGaCv3xO2HCrL8A9JtXDB+41uQ72vpRXP8Nj7juxBEsDDjNmFuZGY3IFHgdxOeQrhIknpbdnJ5PUYO8ohmpou/3forO0cAu3cAsXk1NQGNVRFG0aAVkSE7BZjZrC1bEoo81M6r/Ba8WmYRCsAxhte3gQOYAxM3t4ErmE15ktXERu4XVqB8PIEh4OLeFZbAVfIwqmD3bT53cZfUCZPMpOw+uchouIgOnD+wgbx8yoUsUI6LoCDatjZmRrplFBg670MCDO+jeqpNBdD2A9ojXTuIRj7nr0WIdqzdjXjqiuB7xIHdYlWjONilZ016PLWJ9ozTSvlhlqcn2slhGtmQawsSb38YlluipXeiXRML2msEyH9UHNSmoGG2py8KgP/gXuqa8ZD639xwAAAABJRU5ErkJggg==",nd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAilBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAwBh0SAgtCJUsMEBMOUlsp8eUKOkDfEFT4El4GJyon5tuuDEIWe59ZByKUMbAQY397KJIcq9vEQOkfuu5bHm0k18yBCTEUe3UanpYhw7zURvypOMkesql1dXX///8Yk7zm5uadkJS/v7/Dw8O9vb3Ona1dUKcyrwfVAAAABnRSTlMBlY/4zitLNPvRAAAD5UlEQVR4Xu3bh27jOBAGYCe2h029y92pu1fe//VueTGjoUnFMHcuwgH6X+CDNWYbggud9eNqCd+U5epxvbjkAb45Dx/uCr49q0l+L8BS/+Y1TJL14nEa+DGgwkRVXk4DLxcwUWaYOjM8wzM8wzP8x+tn5G/DMzzD2U2Y/Sewyg83YJbu6WF5jKIo/hLmSZomjBiOd9Gv7ORXcJHqVKTwIfrI8Qu4Sj9ScDJYPkcmahRmqUnCCGDzmU3ybAxO0iF7GvgQoZxG4H2KktDAcMLywQtXKQ4ngrMcy7EH5gl2K7LhpDCcSxcusFsQDqcjlp8d2C4wJ4RhZ5fZhlmKw4AIdsucZxZsF3gPZLA7pnbyx6f77hSYFoZnLB/lu4FFZReYAo4zBEurzJm4uC+QjBaYiUC423TNYMf2YH751/05OleKtj/3YXC80enK2FPmGOBPXWBpwQVWdUQQXGoX2ycL1mUWgOGEY1WnDYI7jWJb5hYsXn+ABVcAXNRaNelD4HhzlVIpDAO8gAUXfFufryIC4HLj5pRjGCy4MCpOGwB3G09Kdcx9cFFxn3vu74fjjTcKQNsY1irA9uyNuBsuN/5kGlNygLUKwHo/3N4Nv43Ab+DN09mfp7thyBq/3fjc1q9uWdgikSmfHbuu8Kryd1Yn6dqdvHa5U+BaqzwIxnZpDSgJTuS2tlREBsPY7ozqxkyWfS049TG1xMX1238LsmMq/pa6crcq8qYkBWzUJ/xfvfH/1zYFzIw62E4R5UUd7CYLg7HqZAtOGoQiOxBmbX9jErwxwXZNFgBjFaf3FlB2WMT23XB99kfctYpuyrth4XdbtBS+AFoiGz+s7ob56CpXFR8b98tmL4+elRxdRwOGU+0rMPul6rBhe6u3QtrOfGUuA+Cto9Zij44qPy8b+twcm2VcOrYKgLmttgJ3Opg5wmgYNcGubRkAQ22pdqeDDYe2/KoJFjeDXUIIvDUqu3wCdBCuhmNq7jTBIDO2CoK5nqaMetXKQgfzAY5O1zs2GQRDa+3VWIry1+tncrs7gu2GYiPAkxHYOrDHxBsBp5WFmi/K7o7Qwk4rC8HSboLRwk4rC8PSboKRwk4rC8NOE4wOdltZGHaaYHSw28rCsNMEI4N5ilOBC9tlVlTwdYFd2G6C5RkB7Hb9Xdi9P6CBqwTBfASWJwQfqGpc4AL7YTSmdjHdcNqjkeTC9v3BUZLOXIkZSS5s3R/kimrmwp+bgQ/GjeVTRn+NW6V7+BKGWM8d9DAwuAFD9v+4qv/uzPAMz/AMz/AMz/AMT/ZAY7InKZM9wpnu2dHiYQr3YZqnZcvVhI/pJns++A+TixIijgLM8gAAAABJRU5ErkJggg==",ad="data:image/png;base64,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",od="data:image/png;base64,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",id="data:image/png;base64,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",rd="data:image/png;base64,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",sd="data:image/png;base64,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",ld="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIEAAACACAMAAAAbIvrHAAAAQlBMVEVHcEwAK0sAFi0AKkkAJUEAJEEAKkUAK0ocTmr///8ANFnO2N8/aoG50s/n7O9/mqtggJeitcIAL1EALEtHi4B6zJz6YwSIAAAACHRSTlMA9w+oSC5y2SlKWkgAAAInSURBVHhe7dzLbuMwDIbRXBuSutvu+7/qTGozCErXu/4ECn7LrE4UytDCyumr+8fjPIN7XG8n7XKdPTrPj/sGeMxenVeCAlwIl/+A2xMwCb7pSbiuS6AAD8LldHlKRNwIt9Ndl8BJ8PHbghCEIAQhCEEIQhCCEIQgt5Iqc02jk4OABr9XMlrQ+HsDKqDCtgIUUOW9Gk5QeLdKKEHjH2oYwZT5Veok1JMKCkYgxXznFwEjyKw18xFBBEMBSTTCCljL8qoiBV0BVZwEZW/roSbR/ghaWhsIQVZA9TofNBUUtMCOgZegqqA7CYg1chJk1gQrsIOYvARDBcNLkFTQvASsZbTAbgWsgJatVrTlrd8XTPnzMMAaLIeAxV2QAYLPw8hdANgLdDwGkN241caS1+gthEAbzCObpYUJ9HhSG4kJJeCtghbYc7KXoDuvgT2e4AVJBd1LUFWQnQTEmmAFdhCTl6CpYHgJhgoaWmAH0UvAGsEF9pmMF9itgBfYZzJeUFTQ0QK7FZwExJqABXYQnQSTGUSYwB4OEII21mhvDAgh0LHfHwOEgK0gqaA5CTJrBBWQXYIkUEE3xyP9CDWJ1QCSYASDldBJqBd+lUGCzj80BCSQyrslgQk671UJJ5DBtkQCEBy/5QEVSC783iDBCTTqI9XKNZWW//wbUSEIQQhCEIIQhCAEIQiB/y1T/5u2223j2Qtw9b9x7XzrfL6bm/fYHivA+98H/gEx1ciJsaYnsgAAAABJRU5ErkJggg==",cd="data:image/png;base64,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",dd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAADwCAMAAAAJixmgAAAAYFBMVEVHcEzi6e3i5+zh6Ozh5+vh5+vn6fPh5+vy9vb8/Pr///9/pcBQhKggYpAAS4CMzLLlumT+79/NtWPi9Mf/37L+nYTK6Zf/v2X/fn7/yoD/v2b/b2//UlJFu3cXqVb/0I6qQ+R7AAAACHRSTlMAR5bD3v8cgs4TOxUAAAR1SURBVHgB7dxhU/o4EMfx0jY1u6HlYltAFH3/7/LwLsxy5zT/Yiji5vd95PDsM1tDkzgWF63KqjbqqqtyJUapKY3iyub/3iejvKfisqYy6quaC29tMqhudHsj4spkUhVZrxSvXI2RLLG6yBqpOYFL4bLShFyewOYcsdrInCuKVWS+Cme8kieaVSfPdCUDzmHEVVFr/g2WKDDrwoRYeSYEMMAAAwwwwAADDDDAAAMMMMAA3yXj1uu269r12hn9YOtOVql1VjXYuu5LzuoFb1pxSu1GK9h1EzmVYFp3k61JITh4J8T6wK6L5rSBN5c6DnUXbXSBbfsncGtVgV03AZacJrDtYuCQVQR2c8BOEbidA271gE0XAUtGDdjNAzs14HU3q/VvBQPczgO3asDdzADGIw0wVunHevGI5/S9WsYz6jYP8Vp928N4ThHYzAEbdUc88Zy6Q7x4rVV3TBtvg4P4Xw6m+FUL/XowLtOYpq9LiTWCmdReiONPHiLvXIZJNZgjxzo6wS43MLvcwOxyA7PLDcwASwADjEULX0t48cCrJTYPAAMMMBYtfC1hP4zNA8AAA4xFC19LePHAqyU2DwADDDAWLeyHMwFjP+wyAzvOC+w4L/DiXvwDMYABBhhggAEG+K8QwBcBDDDAAAMMMMAAAwwwwADTGWwzAfvgfe4zAQ9jAG8pBzB5Afc5gP0QwM/P221PysHkh1PjGMCnevs7wN4P3y2An0/gb9f3/p5g8kNSu3FMAgc03Qucwg0THnfPAk4jLw8ektvvxv2YAJZoeTAN6Y3jfv8p3qZH6eDlvcPJ+1kCWKKFwbfw+n2o36bX06Jgn4z1xLwPMds+Gd0vCaZB8kT8jYgvwd+LbL+VaDkweeFyQkngkJD75cA8nCP+aTDb7bnlwF7m+/NgmbFfHsyPAGZ5ppcCy4AfAtzfDUyPAaZtCOBbg/kxwAwwwAADDDDAAAMMMMCPDvbDy+GzXejw2cv1u0Q/vr596XX0fGVmc3z/0nFjbgSm4cT7Cj515ajHt4lG4iuizftEG7oJ+OMwBd598Pxo/zbZ/goxHd8nO9INwMNhGrwbkuYrjUnzlTbpYC9eAcsHnmfm36J5npl5j2ZSwTJgEV9+MCQNWBqTBixtksEvh8uCV3rhmb3Gwa88s2McfEwGH/5b8Eo8s7c/xDN7/0Pp4AnYd8HRz2c0BVsCDDDAAAMMMMAAAwwwwAADDDDAkvIDgJe4V98RzxAH3/sQjxc/xPNx8L2PaWnxY9r4iO9/EM9LH8QzfUx7P/iKbnPVQotdtUhDynwlSrtMk5a9TJPrUulnr0uJFr4ufcAo8iH+YxrAAKsIYIDVBDDAAAMMMMAAAwwwwAADDDDAAANchx+IVUeBWRdV+Mmy6mxgVkVpQnk80WWxMjmM2JrQqijMOVL9GxwqCnmmjVU/X1OewI2RLLG6yBqpKU49mWx6Kv6pMplUFf/W1CaL6qYQcTbeIK6M+qrgDT1lsl5JTWkUVzYilVZlVRt11VW5KqS/AU7/MH7Y2dGaAAAAAElFTkSuQmCC",ud="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAARVBMVEXZ2fbi5+3h5+vh5+rh5+vh5ur5/f/t+e6+wsWNkpZjaW5VXGCkrq13fYH7/v/+//9ivsGQ0/bJ6ZhmvvSn2lJj2uAqnPagIKT1AAAABnRSTlMBK5LX/7zdl8JuAAADvElEQVR4AezWBZLDMBQD0OCPvvH+t107KuOglirj4BulOPSM07zIMk/jcMi0iDPRXRd51ou+8s4jbyYLvZGFTRpWnr8Hnge6evl/w5tg+7bG2+c1fpcPvMFDjMEhhtFUJkAJe7xI0sEpXiWpYNCzFt4ggsMtHDQw4i0cIYH9HnYJHOJFwj6zCL4cPPQwhwbOJ6/PvkSP2gme2BaXwAgH9hxIYMvhJtkkcMEtDA1sJV27yYoAvpBzm20k6R+BTLYtmBAu1ULmsKqED537NFPClPfoYft3MLL3IYfhTf0O2Jl/BMOZooVLrU1Obagbl1JT6rIVKdy1tEfe2HCEiwomtdBVPmrKKWEf1axIG4MuihVt4wWMCRt/sVeGPW/CMBD+MJR8mewFyvv/f+rKCfv11aQR7VRtE9dAkmLzcIkFMFl3cnnHsbyiAu5LuQFcRE6c0BRcTN4An0Sj17swPfvc7zk2nca+6diQ56kEPplYjBgdn1gtcnxev+6SV/S3gi/wBS5/DKw4Bs2PAnB9TB0dGYy8AZei2gaexf/g670+g/1xlGYdldracufOcy0hL0txsr6z1PiJn8vUngjg2/xUU/2+m3Udx+hAzdgEXn7OI02FS6Dv2B6xtKGWts5jKZdABtNm5GXOmtra1jr2PHBMm6G7YSzUkXRTu5O3vl+AIFcv/OyYalnFNrhgdvQD+c5tmBwKUbDsvCeOcc0M5wz0HrYttWLSIys8I+bpC0S+I9gw9xio6tq6jg1SNjDGaL2qDscGdv/8UDZRc9wRogG27OxYIQnHBsYIJ7EuhIgVV0+I3sCYWIMcnKsHYIwcaZ1P1rY5zrkhGuB0nwD2a9YATigKMcfSR6s4OP5Jjvm2AAeIXae2O8Yst7jUbDk4Jk9ijiVlsB047kPRbI/DFXYcPE3Ll2vh7fdW2+pq9WiNVep8c80Wk/Y4PM0XaWIjaFJXUtXsWOuNVLuOLWlh8EJmbSMY3FTypswMDiXGYE8xoomgVlYPilDrjGiy+3eXGrBdGFNpoQEsCmGskqIAVmgfhyVLVS0GDu6jDRsDhskO5rV2xxaDcbiel9rAEhw70FLNZXJMdHOZHas42P244zBms9Exu+cGmMX0HQflPU4CLI1ZeY+D/guwqEv+QcemLpjUAbPG4PTKzMqvzKz0yhyC00fiQPkjkZQ+EkOwPnwWD8WfxU4MfxY74M/qAp/XBb7AF/gCi35UAvCPz1v+PciWFKaBsZgJtu2IjtaCAeNAbbQaqK1lA7iZbsC2DwIAPG0/wSTMit8AAAAASUVORK5CYII=",pd="data:image/png;base64,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",md="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==",gd="data:image/png;base64,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",Ad="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAtFBMVEUAAADd4+nh5+vi5ezi6O3j6Or///8RVcuK1Kra4eYGL00UgJDk6eze5OhwiJllf5Ho7O+Vp7P8/f1adorv8vSClqV7kaEyVG2ZqrYJMlAYP1rH0Nd2jZ1shJYrTWchRmAROFXr7vHO1tyKnqyGmqmEmqhLaX8+XnbZ4OS7x8+vvcatu8aquMJXcodRbYM3WXH3+Prz9fa/ytK2wstFZHqisr2Qo7CLnqxAYHfU2uCOoa8uUGlysB7cAAAABnRSTlMA+tdHmJmSP376AAACfklEQVRo3u2ba3OiMBSG8bLZxoK7RtqKIKIUrfdru93d//+/mkNkYGwHg9HgdM7zxZPJyDPoe4bABMMwatUK1UqlWjM4dVoCdX6+lNqMaIXZlNaMKrWJdmxaNSqUEe0wWjEoJSVAKYq/5puKf+ZwYv4euBMQzl0OKNYmvqFw5YBifX2cBiwNUhbJYAEovqgY+xjFcuGSCN49IBkyFF9cjH2M4qKLvTRIZ14oUKwuxnU1ik/1MbkKaeRQrEGMfUxO803Fctka/jpiR2z4GJAsbNcb+/7ec0+FS148axzxh5jwYZEMEz+ZHVk6xTMnne6bFxJPnoD/cEw/Ll8/ie0uHzvLx+YKJvYX7ePfcMjkm8fiDh8GLlQhzAyLpdqaTqcWMVue97qGTD03/00kxU0+XIqyz8tOMXGLfyWMnPhv+msvRVIGUmKPD1einIdh6BYXdxuCp/dD0ZYSz2Hc25zZxy2RyXHQyBSOJSNmcTN1vWHORSJf7Ey5og9HmfPDw/nPZMSEHn4qPxqcJ15A0Ut+4jYv3qTExBw1BEHECosT3wMvmklYH2XEwHbpCPV+Ld/H6mJg0FrFZu944spiwAW1Y+kSm88cJs46gGDqElswfBH1mJcPcn2sLmbQTL243ED5dt1UR50DNolgvJhY1m4M1fCq4pQXsn7PjhcqfdwrJCb2Ih2ONrJ9rC7mbNsB1M5oq32VySzXNW98eZtL+etq5Zs2FH8txvtjFJe9DwSerMo+REWxshifV6NYbR9IEiSFzQkoLibGfSAo1rUPBAInGzIUq4txHwiKldfVECSFzQkoLibGfSAovmVxWa8dlfaiVXmvlhk/aAnUjdJeH/wAEKeTOdES0jAAAAAASUVORK5CYII=",fd="data:image/png;base64,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",hd="data:image/png;base64,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",yd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAS1BMVEXt7e3m5ube5Ojm5ubm5uY2NjYYGBgnJyeioqL4+Pm3t7dLS0vR0dFzc3OFhYXu7u7m5uYAAAAAd8xra2v///9iYmJfqt+gzewqjtV7jFUQAAAABXRSTlMEZ/zEZiaDM1gAAAMfSURBVHhe7dvZbuMgFAbglpR98Zq07/+kM9AwZ7B8pjLHDhfDL1WqosSfwGwG+e13Pm5sfGHY7eMt5Ta+PLfstpDfxyb5SAUe1pdmSEWO7Wp9cWILexvbwGOH99PhDne4wx3ucIc77LycqiK9I8B6mQhZdC2s7USK1ZXwMhGz1MFuIsdVwZ4O+ypY4gD3yrBB64EZ5TkOyyoYU60a1iKDsph8IuyzWtr+YviO/nK8Xwjb3Eq18VaKaRLSepN7q7NXwQFu6f5ND9fAJrE6TDsJOgHmAli6xCox7UaoBDh5NizTT0b+B5JSci6lFNngYxLkyXAqrxNZ5X8nf/r9nRr4oTHYRFc9ASA3tIqGqYDnL7YPB3CBLWmQQwU8z597sI2uAxeXXVRsDTxDdZc3eExXlhyNjJCIV3Y/wvNevtgWvscPeOGiMo/MvQrO1Q1w/LYq6xmvbRUZKgyzuRZb18cJeWBm2chCwxqCWNVDbqkcEqD5szvIuQcMZzQumy8kADDlIrgs8gANm9SdVL7D4Lq1yGB5DvyAPoDkAgiAVbqWCkHpJAcoMlQRdcjksTI3XcmOq/7GbJJd2aXiZ5w8Sfg8/BZNWt+LwkNl5IHdk2GVrrLtwzZDYQOLZ/9TBBjmJYsMWhl2AMvnTTZkOH5V4jCLcChhGXs3AYZGLSKMF3jgJSziZ2RYP//bdRf9LDDkyenLYHANr4BJVe3Brapq/fgXzNDGFVZwaxoX+5qrupNKrkpcTXf6nOf5yACSY4pR+vAAoh8zDuNDJrfJ1R7EI0Nmqua9YJMEuK6ciI9OEp/zfn6aFi1bY5xSRn3/IdNiHYwvBMy6DbIQqKtqfOmjMFhAFREaF77YWxC4WOwRuhO6vLVmG2R5SxhACAt6ypAJjzD6tEcYPNc+tKFp8Jia0uDBHELcinjZ5otEN1/abzfRN9jWkzfY2m8ptt9Ebb9tHJ0jG+WZOwU+cDRwFYwfhpwIS4CPHf8ALBsfeLU/4mt/qNn+GLf9wXX7o3p6/me4wx3ucIc73OEOd5i1gVmz146avWjV7tWyKDdwU95bvD74C8nN2nr45xt+AAAAAElFTkSuQmCC",bd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAAAAAAcD2kOAAAOGklEQVR4AbWbLcykvBfFj7myuj5oNB6f+gQffH3w1Vg0Gp/ggw9e4IPF9Z+e21kenuns17v/8767+3zc4Ufvub0FpoP4pzrXyXdtVRkDQIyt2s6P6xH/UH8EvtbgLMqy7bBe/xfwHlrBQ8Zw1LekDcc/Bu+++oFrujCv+5GHdx3bEvrGIKsh+9+Ar6mGynbTHsvap86Ckm77J+AzWFDVsEXVuS3j4Puu836Ylv2HtdtQgWqW/wy+gtEE90o9Zt9aqARZlQtrpm/eKHr9b+BJIfV0saj7CmWxsLaHMe3+9+C9+XL2a2d0kJ9VeWXPRMtw/R348sTUK42u8NRxBsCdZ/2NPRxEM7za/ga88rV2Ssb695GecQRcjAo2oxNktQtrQ3TQfwq+PJL8GeP5wtph74tgfnEtvc01V8/pbFsA0hx/Bj7obr3dZa1Hj64MbuaTNV1DRX8mA8BufwJeLYd76aGypE9m10WwSBPjGaPFS92Ri1Pm3wdPAsCumvBbQ9yPeFhQR1yAPsYKqhCjrXvcMlOMF38w/i544LQ8Y9wfJStjnJsrbpr6JcahP+IpUO1xxUvOMd6deQzD74F7jk4HfousdTpjXISuar16qKr7S9gzBiD7u5pkWgFc5JrllSbT+c5CtbHsYhxzPz6OtUOWz0nPyXDZ+SnG3QIyFMAFrt1jPFsmLRXr1b2yuftK1q0wq7HGHVldjFNimZy5vWIJFMFPf6sjxqN+Tc/jxyS6mM2yhi3ciU5xnofgaRyJvPwcPJGr+eEYN4v2jBuzfi01fi0SVnfFXbTSLs329jPwKoBVbq6YVtPE/mfwS3GEs86fBhTJhsf9CD4MYHZyqUaT3BNcYGxFsw+D9ogxfD2XFNlen8BXA8h6c2E4a2XTVL9UG12q2sFOTIJv6wZZIsEBlSaa0jNftNDKYK9d5qzw0hTjsRw67qwEk7FKXIBk74A24Bb9bPBFQefgWgavmpWrxQ8ZhnJGU21bzQYQGavEhdjZJG4iS7CgaFF4q7geqM4S+LT6G6VkSTcvmlhVWI3+fBlB2a0D1W5fwppZ8JDZaWRfAnvtTTN+omrS8cGFkRzx3Wy0kbuAz5L6Yumu7+BN+95uPiDZWUYByW6ATDXor50N6HqTyDYIivIcU329gWvtOQ0+qB0Sl6zEBcneJZ8nw2pLZFZbWStrdHyCNcMza+8jeSQX8GEASJ5cLvRJ/W3Gz9w8xcz5BF8Va/GQokH6wkV5cEv3qrQ6n0H22S4BnzVoD3+CR62sDgWZyai/LcnOwzNucDLWoL+aYTuZhuTWoSA50sDM8RV8WaDlTC6IxtHfRHaetZy4QCKbqdIQ0pvAsKIc56r/Cp7U/AafyLX62wbn1eduaHUWNXOVQxI3kT9wmdMD2eUMrunwig+S5jXLhlfMGl6dwYGqXx3efz5My8IOL7ASl+KAbQX6W01G/W0V6KwVPZipCaymHNIO6jPq4pAXwF4/wA6oSgNmU2Zd0UD6m8gCVN0wzesyh74RCKpZPaa/JHtXXqwtML/Ah9Z6uRTHSvuGnY3621jU4xFvnXMLK1qEiUuy/1TY6dwVrF36IL4gmec8j9fhvj35pk1dsi/nm7XIhQxxI4zgy/AkBhRVvdqSG9iUUb4BDBDABfUZ3gcUVfEqeFBw7pYVvqsG/dXlwPmUbTFrLGsRcQN9pr/0WaRQXp74CHorZ6m0vAP9TWT6a63Z4yfNaNVn+pvIMpr3YzLXewKfwkz3KJD7xE1k73XubPGzPEBycADJY1XMteFUBoc6sczfVG0dKLfVBK/xJ7qsPC9SJhS0xw5oEnhgme0l7iieZOd1ORjjTxV06VCfZayaUoWNceK0QmyBmi8qcIFEdp7HQffA7KP34ZH6UxJXfebSUSI7ztslIhrAv3cPyX1DfOfU316q/TlzrRE0e7zlzNCqz3au1OfvDorh/PERO4C5YHG7C6hpBiWzkTlmDZy2m0DMF3KQHlS116/iwHcdajIWGn7gu8JrOfC9VtjQBoMhUp1a0QRdcl5aMBAoc0OfUU1t+35TNwJyIQAmxuXNYEEi09++IxcyWriTXNESoInHnX9grEF/WWHVbN4XKe2aG/pybQmXfXJJVvPGKhntYSbDEiB5uesNiWwmq50kcd/VxROQCS5fkpTULB5Uv5ALGYMY9rB5Eg2ZMd0jZshiAYYUuWjYQgY0EB9ji5LcGEANQX0201SLmqcmwg2Yb3AOUbPm2aIgyyuODhUQCiuEAdB5ppL+0mczWRnz0kETacVd1vO3EJIrPCWRZZ0IMwf/1GQSN5lILn1W88Y6HZQmJq5UZFKDPEMS2Tl808kbRxhWR+HCsvcAyeQm8mTVZzeKhvDUphvcVN9D5m4odOtBM4o1nnhTv5lnAzHr9+7QbeYxjQ94DZFqb14htgAe78vd96L3aiJC2wSov33uG2oinLdB7PE1019CGg0x09NF4qbPYNvTxMSlz4lLn2keyVw67H5zT2OAvn+FNBpiwh+BK4DkxE1kchOZRZPIb9zYC0P6HBIa7T6fRizAXvKY5N29VgwLalglr/IhWXnEWwueIVhGqMpgA2zvYAP1Vx0yswtQ89REOD9aNGe8tZtackifQwJ9LheXQcV5/DbWOnEb9dnMlj7TPJKZ5+76yrXSjJJD+hxCsntfFwNg0QBjYTkea74skROXFVZPQp/ZNxDikws0o6i/XU8uyUOFp/RZbI2W19c13siTJsq+Wm4zkQv0wePb9fVmhCEzuUA3elBhagu9ugda9EBfWiTCXKvbr0WmXgIoN7e8Crq1iPKqJYPd3IMa5jefa9I6hPJVdd9omzCTpc8pz/SZLdyd325fJqslUI+i/nY9uS0GfFOrdzGYeZEdChM5kTl/E5lHbIJy/Vfs6WiIZV0xznn6TO679FnwhA2QKy4oaWwSN5FZsYnc9SLzo6wqAckMSeTEJbnIxch2teGSYuuizN6+GogBNYxit4e9xrw9ihBQS0BJa1x4sRfr8uWt+jvWOgr1GV2L5ni+A2lCA/prNTvOq88YWvr8pisOqcIQO6bdFbn0mb6R3NV4dI2jgeFyQH9ZD84zXv0luVzUEXEEmlJ15XVhrHmcRHb22TVWa6wuB6yrRE5cktXfris9TDXJaMSdt8cbvkkW+/VRBMnPrhEAAdU60VjnQNVbC6opWKw3yKC9S8HktoOevfqM711jqN9lKj3M0KvPxrz5d7FTxwTuOP73pPQduSIkd7Y+46/ktJMMrfps3g/aqcUEawtZUCKrv2ONrhcXfwNsJpu4PGMzSiHTB4CZ4JPXApcpkL2+VEbf4/fAMFNos0eTKV3Nj6mmCI66QJVKf+1AdWv9u2CExX5+FBFIc1HBE3O94U1e6HPK81j/JnhoOQ+5uuC7zMlMLxl8mg8PjYU+ax8YzW+Bh5ZM/nmT9DEOrGyCWdGuWF6sMHIh1e+AqxYcbfXGpQ5O2/7rY2PZ41WhpEmt+j2PM87uNd4lOjrZHw/Ke3r9rq5Xn1E1yy/VVI2OuC5U9MtPF2/w/HHIxkGvGoPB7yg06rGguD6sxD/fDHHkv0tI5uInQ2NGluxo6yAA6iCOCXEdQqvkxC1q5FxqSm//1CirXxtQY56kZpkkT/UeSdKt5ELC+oFrLx1w6Q2vDWWF0CtvGhvljXlY3TCKhgw5ZGZIQSMH1hbe4pti9CipbegzzQtNbsQkd336Wr3tenItKpRUX4RsTzDLzRzxLKeJCHKJIMtMlix+F5o75INWHrwrvo3bsew+kX0+aOgSN5FTGkgm9w4pyXM1MGf5jeulnGzKrB7K2RSDfsuYaZYc4nLssHE7zq1GK2sqvVVfca/G1eCDpO2hmQ2NJj8nNjTqsxmU/7pfn5ClLlasrHdw3MDfHBZPuUEy2bbk0mf6S3Jo9Kemuu28xnDcVzV8tN8RXwLHAVyYN/Mc6HHPMhHrRQeZuCTr8KsWL0kdo4PYMxeMZnikk2Xw1eovV8GtD9cIS7hvNgrXVULafh9iEy4HZTBtMPuzdVYXB7zkfGeZqqEj0lhbAusQVlC9+tdcH8F5M9BNzhmwcDSiLMFLVVjyhdXRWp0/ys2F+xHMLHMXyixQOXowHPEw+JVk0jHKcB9MuY1uovkM1rHWp26108o6O55qB5VrTYnpGu54XfBj1+01MXAgt7iRrEA+YtyqbFefRkKf722RTzGNp9/i7ZFpW/V+zNwpvoML5GrPW1jRzrqS1YXdiN12npvTL3nzeMTpabxZ8ya8EH8N5vZHu+Z5LXrUEdRjC6iP1A/yYRbG3ar3GDdb5BbA7CBMb1xf6TrMXeQHss54dL22YPD9hWV9ln5/xTibMrcI5g5U3oKfHZ4bSuR8ZVMskz7F8+4SjyXGLnxiwDH8Ljie7rUte6lwaxu9lnd2uyMOKo6rv4d7ctMvfS6DywrymhXBIKuOSWObC+e1dccgayKJarYUKVqnfwTW6VSt8cvGbtPrLmo1UvhF/+WWXn6U/vJjw0J3xj8Ex5Npc+mEj8Egq/Hra8UmuGOVP6T7yfu8QTn+MTjvopf+0M8gvPVm7ilu1/UBFqdJMjzLPf4VOCdZOr5+87a0ODzUcGfKoVgz/ocPaOTVtp0vsocGH2UcqXF1gpypvwVTi+bY9qsmYR1chW+Sphu3+EgLa+M/gGlvhcxezvyjfZnC4Pve+2GctyMbs/RV+fM/fwMmZ66RVft5v0qWzH2NLOuPf/dBq603uKer82Fet23ftm2dR9/V5na6W3hi/wr8+uDHUyLP4q56Uv8pmNrHrkJZpulnzfC/B6vObRq6trZGeaZqXD8uNP6P9D/DT8MGYXGd+wAAAABJRU5ErkJggg==",Ed="data:image/png;base64,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",wd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAALVBMVEVHcEzm5ubn5+fn5+f////m5ub///+8vsD4lBz/+fLIysva29z09PT8y5D6rU+p61AKAAAABXRSTlMAkc0rBVj6jIUAAAHPSURBVHja7dvRkoIwDAVQQUMhifz/57rI7Ea9w1aoTWd2cx998JgUO1TJacm568ktfXc+rbl05Jzucnd7ck+/yB01SPe1vrREB7foHTyvBQ+uWUvurV7PmvuTFexbcsABBxxwwAEHHHDAOzJdZw8Y2XEc/eFpHkcXGFl/eFrYJvA4BhxwwAEHHHDAKsz8DDOzUFWYON3zAn+/SnVg4fQThNewfBrWB3WrYqhbpAC2Fudgi6xsSlwGU4JswVY1pVQKM7C5ii0FsCRkRZ/hgZg/DTOgWxuI8Cfh9BzRX3cuAViPwfrC5rdMKYbR5Tf2auIXmA7B8BYZWHGV5QjM0LNt2NpcDgtcnRmYBCvmAzC427BFSUphxvXNw1j6fhg+9puwlc6HKiZsdB5GXXfDbC673nPhCvvD2goe/h2sf/riav91kmRxgrHX4gpzsqgTjPc9TjCuMnvCQwLZAcabTHWC8bAmTjDKiZxglBP5wLbOFtFacP50zKKVYGw3RurC22cTNvdaBu/tt7lTRRjP+wxsHRh/6TK2Agy28AM8G1sFxhMZL/B8bfKPuWo8nBBwwAEHHHDAAQf8LtxsJKXZEE6zsaNWg1bNRsvaDdM1Gx+8Aej5VSM7CMk+AAAAAElFTkSuQmCC",Cd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAIAAAAlC+aJAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMi1jMDAwIDc5LjU2NmViYzViNCwgMjAyMi8wNS8wOS0wODoyNTo1NSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QzRERDlBODMwNTg1MTFFRDlBQjhDOTdGREYxN0U2OUMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QzRERDlBODQwNTg1MTFFRDlBQjhDOTdGREYxN0U2OUMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDNEREOUE4MTA1ODUxMUVEOUFCOEM5N0ZERjE3RTY5QyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDNEREOUE4MjA1ODUxMUVEOUFCOEM5N0ZERjE3RTY5QyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqHjzD0AAAetSURBVHja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",Bd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAZlBMVEVHcEz////m5ubm5ubm5ubm5ubq6urp7/L///+x9upltqqyy9Pc7/9f28cHjXiQ8eFp8NpJxrIAhnF3vrM1o5LL3ub0+fuUqsBCaY1ihaVrk7kwW4FOd5uVzcRhrv2Vx/xeoeVWqf7ZdcgaAAAAB3RSTlMAAWbD8/8ZrH9iwwAAArBJREFUeAHszVEBxEAIQ8FAeO36V3yngv1oxsBIqvawaNylv8es8yOVucCl5oqWgfesegFrgLMMGHEn5jNx4sSJEydOnDhx4sSJE/9oMcPdOGEgCP+y7GDOR3qsDewB7fu/ZK8H6rbJDvFtxPczEnyaaGdE8tYA4rni9pIQ/lTxtXv/oZNuZ4rfuq7rkZnOE+frQ3xB4iY8oEguuAzF5sBHkeMmLq54mzijn3dPLgmY+xyCjxRLdDZxiSjwxvtB5Ezee2dLTMOoZvbdDo4sQot4Yo56lXYOK2UXR2a+e2U7OgHel7OL88gPCgx8HLmxiyP/YXDgsi5fRCarON/5yaRshwDvK/XZKC68MZAWWMArYhO7gXdGdTvkl41XxCSe+C9RCYzvS5gtYmJhzMp2CChySt4gHpnVyB8uq3JFgBhUSRi8bIcoN2tdpYAYVEkoEliCVlSqqRHjwLIiclnWSh2LvQTemXYx4Aor9Zq48CcoHNLo5jRj8dF2KJUCuIQD14snVojhkNl81QJJ4PrIvkdHXS8eWaW8HDm5l8SRdQZqAVv1+wQuq1ZMDJgWnTU8iQl88NWKw4Qi//ylsbSgUnOoEeM2CaPqXcMOpe9+gRQGaJEXef8NrCUQg8XUuC+fxQQqZfrKjPWR1xyEOUlgsohzfeT2v+cksu0vCRx5+hg4/ItUKnmbOIyoUosWWOhlO2xiwpFxYKlUn63iUOCKaNsh3JJUySR2A7wvZTsEn8B2ALFlRZZFe/9s/69P9YqQ+lyfmmAX16zICp7r/ffE+atKteA5CnZxTaXWYELExshLe5o40IAiK1UyiQ2VWvKZYg9XRKp0ijiUQee+5nPFwSN+t28HJAAAAAjD+rc2hRxgFlgAuRcGDAaDwWAwGAwGnwfOIpwuO8pCqywty2K6Kh8crv8tt+viLq8AAAAASUVORK5CYII=",kd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAM1BMVEVHcEyuNyTCQC3JRS7LRjDMRi/bSzLkTzXnYkrre2fxoJLzsqf1wrn64Nz98/H////ujn153/OxAAAABXRSTlMAImPA6ZDtme8AAANPSURBVHgB7M6BCQMwDMTAtx05+29cQgPdIE/BWkCnb5G1eNiqDP2KwlCFbompNP+vIDh176d1cwpJBdD7eQ1QUty/SRDK+zcJUuUFlBawTQFLeAEMYAADGMDfAgYwgA+v5pEkuQ4D0SUBwt7/st8Ma6GYUspAUGX0pv0jTNIST1Ezj3Azlcn0SwAWiy+Z8G8AWD2AXPl1gGlxKMtXAebX4P37K/M1gPwevdBOPpxfASCNL8nI2JNSP0DuDXWMCcoxuwEkdiRjZABJL4DFnmgMCiSjPgCy2JNhNExQASDgPDrGpgi+k+TUA0B+lGaKJc0ABE8BCAZ5OY5+/tfEWagB4PpTXjFZrcYrGvt9Ys8BZK/9eQFsCAk4gjwDAH3+ifsnvnONFDhC1gFwAX5KbyxRREzoCE6PABQl1jb5tQjCjqBPABj+SdmkV8JXKvbFDwAcppU32c0VDAIAXgUAY1rxps3fpVCQr6VZBvDAve2b3MYclRCcAJw0lvMGNJFnLGURwHAGxtjG1eh41rAaAF9uK6VxHAIuAejleH6YcBVoCQDEc69bzqC9ApDXB8NnjRtZABDc1FgMAKQAgHsACufN7gPQrWyeYQfdBmA8FCxsx3wbYPYCzNsAgpugAiC3AbQ3AnobwGoABgCsCyBOALwJAP8lLhlR+G2A2rZ7BlIFoOBE1gfgeEeIlYHkT4tQeOpicjoNgOnk2dsF6w9Qih15kUSYJMPfvwWgqPo5UQhoMmwHfWzFNm5JH1vxvGcAZ34wn0/HfgfAnk/HdNOCTvyIOpZkXE5AWMui1GlcElnLopTvz8XYj7lpY+JX1LUxGRptkvrmtEfctT1XuSBt2J6jbuZaE86WI5o6gPccUtUBZhlgWAeAjTpAdgBky1FtHUA7D6tV5cJH52H1yHio7LywKEjeuLIJm7va+8l3Lq3sKqrRO9d2ftE4nd66uORLDmj02tWtoQz0X90CgjyfOIxevb7PM8OQtx8wzMPxe77/hMMSvy5R+skjFtdkYk71v9D4zWc8QP3PeIDyhw+ZgFhgGFz4N4/Z8t/27WAIAACAYZi/9Sh2+dSgAA2Y2X47X0dlAQUUUEABBXDsxrkfB4+cfHL06tkvh8+Wfnv8zvn/AB/cGhg7KjtbAAAAAElFTkSuQmCC",Id="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAAB4CAMAAADheK3eAAAAhFBMVEVHcEzk7e/h6Ozh6Ozh5+vj6u3h5+v3+vrH6fvV9Pjl9cxu2+Ri2t+n2lH///+g1pbk8/7x+uOW3Y/Z77Xh5+spnPbK6Zey3Pyo6+7Q7KSD18mUzftpuvmF5Oi/5YIAS4CdzNax3mRWve9hvcKr2rK3z9xjoLR1ya4YXYxAeaHq7vFJf6Xc/jOIAAAAB3RSTlMAHG2DtkniEVJ3KwAAA2xJREFUeF7t29ly2yAUBuAkdcymdV+8O3v6/u9XIdunxgGrcuBomtF/pQtmvjlAdEYO3MncP8zmGVbms8e7Ux7m2WeGmdn9Af6VoWfe0Y8AYNJS7laYkAArpFvZh2PJ4KJE0vPDKn/aLImndaGGSy5e7+oTIIu9v5vZLTkuNIlbrfB9Pz4r+tGyzAtdiGsZKjbOtju57iBjIe7k+LioqDKschqMIadQsj15kuudf8qaY8pr/zwcT059JTs8ufDVxBgyTDZXnn+irPbd3YXc7A8RIkySpFl9CZUaWYlquAxdyCx3eQNZTdRqled50Q0yL1Q5HSSTG2WouL9m27MNfffqDiN08RyGocUdBn23d29TyzL03f43iX0ZOoH57QlyZl82dgwM2dwlQU7cymoQajZmqhlfnmrGl19GketW3kZjyKmUF1RfCF1EDuVCyl9CpVbmeU4cymud3BW7bGXqUC4KnUyc1gzjaKmd7YCWdtd5+Dh8eZInmby+b455/3i5Ilcr7xixYjbkj815tka5cyHs+/J2o+TdJFNPifi+/LpRkykfdASAylMTqeNukH+32nF14Rk+q2p1spnmGcbZkomEC94nwzhTGCX/Kr8+HfKWtFn9jbiQG8M4CD3uDkGGyTJJcyFTjQzjjL+TsOHyXlyRn5RxupBba9636ZltGGec7YBV0dAdRqG7G3aYOs7mX1VH98kwzuqbRMp9bxIYZ/XtWbZy1PP2hHHWOgbIxo5hQQ50XRJkY5e0IasZVAu+PMmTPMlpHTuWDWcrUt/fEZfy9trZCu5Q3oamsxXcbc3bUCcfSo05MA7kMAzXBSf4e/ulleWi4svPrZwGI8lJNpYcZj+m5qnmxT4/ZUkxa17m5yld18wAKHM1LmumrVxelgxhAIRtmFU5Ov08DjLVPAdcypFVOVjIUHJVJry4+g+UiA2UoWjI/kJukrN4pi935nmrYTKsNAQ2tEb2xNDfSXrDlJpNsieEMJ8nEeQWOSC0hJr1s/3cCD18GFxV7NYTS317u7+z/M+yGoYgG96eCLK+YyDKRO2SCLIhk8zwZejj+DL0cXwZ+jiuDEUbzhmQxbJ0I8NKG84ZyBYXOZQDppOJ7oSD/dsvhnMGLM+Xyu0XvBs/JFJu/Ix3y2m0m13j3WaDG3y4mUl4vFuLfwCyDJPw00UHeQAAAABJRU5ErkJggg==",Od="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB6CAMAAABDcmfrAAAAP1BMVEVHcEzG1uLp7fDT4Onm6+/a4eb////9trT/CAD0RkH/T0m1y9uuw9IAS4A6dJ2atcnM2+ZEfKLE1OC+z9seXI5Z1PVRAAAAFXRSTlMAXH/A/v//////////////////7S/oHlaWAAABKklEQVR4Ae3Vi2qEMBCF4cml9pLoavT9n7Uza4USxhLYzQjd83MfOHwISOiec94s5+goxDfLYgwkuSiuLT04hoU1LxL5HY5m7ZynuH+7YbtI0doVWWDhB+PEBNwQYMCAAQMGDBgwYMCAAb8rDT/1ukv0oXQMet2lF4Q/ua+qY9DrLib+4/4BBgwYcOKyUuK6wuMfPR0GPCnVcFK6cQ/Bs1INjyd1gQEvVRNnAs9VmQMM+B/CNy4pdYfHkwA/HZ64parlTX0YzlzLuA5wN3hRMoHnswADBgwYcPpVO6xv22GlZlgJ8Cm8KLXCi1ID3CvAgAEDBgwYMGDAxdYtdzhdAydas7VcRFwpZCkVs1KWArmSLyg52vwFcvEbbZszl4vbGOZ8WA0LXky6qm+5JTtNSsfNeAAAAABJRU5ErkJggg==",Rd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAALVBMVEXB1tWn0c/a2tqn0c/a2trB1tX////D9fIAzb7a2tqn0c//AAAAsKL9AAD29vabewDgAAAABnRSTlMCzctubRuL2NnbAAAAwElEQVRYw+3TLQ7CQBCG4Y+fenQVtg6NwuJ6ikosCSdAN5gxJA2CZK7AFfYKa0m4BZvQ0pDQBKZqN9+rRsyjJgPMCzFVb4AsWKMuMRVzS2zt+IRCzpWph9QQudvwTiTgyhgxMTExMXHq2PtbWxX6Z/Y+VhzpqYiJDfj4UYrYuX6xw/t3aWLVbpGY+NvbOJcqHn4b1TRxHzFxzPjVAG5LC/8aMTExMfFInOvVZg/aYK3mLpjY8QJZbrVNCcxyo13hCYDoEvoovFChAAAAAElFTkSuQmCC",Md="data:image/png;base64,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",Sd="data:image/png;base64,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",Td="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAKlBMVEX////a4eaaM2z9rRr8iRL9sSz/8dvv7vL+w2T+4LfQoLu2a5SjRnr+0ITFZin+AAABwklEQVR42u3b62rDMAwFYHu2fE3e/3UXnAyFpIScIazBdH6F1vSrXVkJBbuR7CcmD5LZ+bRXCM9XYc7HxbTkY8qZ2Uk5SK8D+wG7yTHYYIP/F5wKUUnAGCE4UdhCCRgjA5cwUtwplag+jJGBKYzQ5TV6GKMAay21WnFpbSfrXAAMLBr8A91hvEyQknyG8Y2Bb8I7jLcCvO3ow/pLjRdXXSluobXixYVvJ2YpcqrEdnqwCgXav3waLOfn1bApVbhz1b1O1nEdbxnculdSlYRXrpLdvctcS6sQzG5I23WKHzPeCiyLwPX8gfQZptOUQxWCiSfMC31NPU2Z7H5s8Dv46xcx2OC/DTfcbSKw66jbpRpIR10pOHfIzWKwy8t7d8kOg3EZd3HY+eWl66XvTv4d7OVviw3dwDiMy+zKwizjLg7jjaQ7aZhl1MVhvIX1LAHjjWRhF4ZxGXdxmFsY0LBQGG9hfsYDfQM2MAAjMrtzYHeFncEGG2ywwQYbPB1uwHMAAKNys39vDTbYYDCpxFjSfDjFkTQdLjtcpsPxiBqsttRqxaW1naxzGWywwQqw2pGUrANnrWNHegetlGTFw3Rqxwe/AXAEHeeJRtDQAAAAAElFTkSuQmCC",xd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAPFBMVEX////n5+fm5ubm5ubm5ubn5+f339/89PT++/vPPT3VU1PHHx/vvr7jjY2/AAD////YYWHffn7ooaHm5ubnSdTLAAAABnRSTlMBK7yTj9XxuJ91AAACO0lEQVR4Xu3bzXKrMAwFYGgTSf4H8v7veuuUm+lkap80GGvjs87kGzNaYAlNOfPleuuW62We9nzeOufz2/24dc+Hynn3M893gCV1ivAdnKdLdlPXZPEy5XrmvrDk2p4yn/rDNw04DfjtDHjAAx7wgAdMYakm0CmwNxHG+PbwGl/K2hpe4otZ3oCR64KnSnxwBRnAyLWcQNgWZAADVxKMFGQIY5epEAYygIHLNhZjuSBjGLsmVmKADGDgHpQxjF0sY/iAi2UMY7eNjGHsYhnD2G0kY3hFLpbXd2CPXLdtDsn+DdgAN/+pR2c2f4aF8pm44AZaYqSUKFZkzs+D/gqnkP+/4OaicWU4y4+/qMKlkva/uXvNmB0O7EuyLxQ2hvNzsrEKu8Jrkf0C6AjMsQ6b0nsgH4TpGTXuNZgaw1tiowG7XKxa8NYWHvCAB0wkKQlRd/iRHTYsy5lwqVlg8/kVYCsZcL3h3d26n/jbJdcb9nL3bewL7xEfz4RjEWZ3LiygEXYaTAXXx5PhAB70abAFD/o0OBKo6FYwv9IkZdf+hT5ZfGQx4ArT5tLm+Nm14NLW6ppq5Kll2/aaWrmYG/rhetf4Yi61VsTG/9kFtCKaN1+WsPmwtmy+6Lebkig02BRbiljGrlbbWKtRrjUa0BqGaI1/tAZeWiM+/aGm/hhXf3CtP6rX/zgBR3Q+x8jygR+MT24GDDLgAQ94wAMWhQUNjZUU/iKvaks43deO0r52pLVopbVaprhMp7Y++A+reEh85omhkgAAAABJRU5ErkJggg==",vd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB5CAMAAADF5hVFAAAARVBMVEXX3ODX3OHY3t7X3eD////M2+b/srHMzMwDTIH/CwPg5Oj/PTc0cJpbjK6DqMKmwdS7z97/bGf/pKL/kIz/1dPO1Nnw8PJTOZTwAAAABHRSTlPKbwtKnBWVoAAAAmFJREFUeNrt22uSmzAQBGACEWlAL2yv7n/UyJtU+k9YaxhZVFLqC3xl5FFTkj2M03BBpnGYPi7JNHxclGvh1Dh/4O+N0+EOd7jDHf7v4TXnEvhHToc73OEOd/ifgZ3zPqwXwPgV601z2Dn7217fBaftb7DJid4hx61vgR/bcgQ/E+yTTvXhx7J8BedEByDUhuflGCZtAZuqwrdl2Y5hxmd5rQjfl2WfX8D80KYavD/dlzDlUAnenu4rmHGUVXDK7n0ugikbPfz4dMtgyjadhjm+220WwsbCKuGZrgSOgFfB9+xmUgybAJhzMMdICHOZz8N05XAEwgmYYySEGQ8rhzlGYpgBogxmC95mDexhhTDHSAVHIInhG8dICjMWXgCzBdWwhxXAHCM1HAEBzBZUw8YiCmCOrxp28OXwY+MYaWEPVwSzBavBtgTm+NaCQxHMFqwGR6AMftDVwEwBzA2rNcw1bv2oKbeGuc7Nv9Wc5NYbCOXWWyZ3zTpwkNVioqyCASOA2VBaOMj6mLIW9nDFMENZ8c4VymFmpyyF+aRlMOVdAzs4MUz5PByBVQ7zLfc0zA8shynL4QCY0zALWg5bOPVRxBnYAUkBUxbCHojq46YsC2CevWhg1qQIjlxgBUz5JUzXJi3Mgi6Gg+XWoYBZ0IVw4Im1DmZNFsGeZ/RKmHIBHB3gKl+GbAWwB+dICzP7MUyWy6uHKX8FB/dkw3uu+PYDOHgHsq3uFi0+Y51pf5tqHS80W8EhmrVf1Xe4w+fhlNN/HtnhDne4wx1+F7w2zrX/8Bqucsdr4HEYx+lb80zj+BOr7HfkKh+2QAAAAABJRU5ErkJggg==",Vd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAQlBMVEXS0tLMzMzMzMz/srKLz/9Otf+u3v/58/P/AABww//M6v//f3//W1vf8v/v3d3/l5czqv//PDz/HBzMzMz/////qKgG8dBsAAAAA3RSTlMGbsyXV3DeAAACU0lEQVR4Xu3b2XKjMBCG0Tja2PGSef9XnQlflWtSHQe00LqI+t51SvgXCDV6+1eX94dqvV/etoLVpeu4yJdHlbow4PChWIEhC1dJ3uAP5aoGN7jBDW7wstSBAzd5fXh5PJYq8JFfNrjBDW5wg8f/4evVud76+Xw4TN1XmHJ2OBcOt07AT3s+D17u3fcw1Q+nwLgSHrx1T3o+AzbdVgL+rKdty8MrroQp3yO7uTA8dq/hr7QvCk/dzzA0F9wWgplGezDFoPtSMO5kzC48eOQyMNNoNHswskMuAJtP976afZjaZJsPb9rtjzkMI/tceN1cYyJgwj3nwSOxioJJmMuBw0SsIuHBMp2T4XAjVtEw83lOhZc7sUqAB+ZUGoyLGA1bhpwCG2KVBjOnbAq8EqtUmCEnwCOxSob5l300PBGrdJhg95FwuBGrHJi7SBSMO5k8mGs9RMBMo9FkwlxrHwGbO7HKhMl1fxw2xKoA7KPglViVgt1heCRXBWDSdRhGrgEj14CRa8DIWuGSstZ0krLWDUTKWrdMKWs9JKSs9ViUstZCQMpaSx8pay32pKy1vJWy1oJeylqvMFKOh13SS5uUtV5Tpaz7Yi7lfRg3fStCysdhn7X5IuWjsM/cbpLyHiy39vJh5COwLbmliEz9DHuHq7lfzXALbxsj78HWld8oR34Jw57SGkB+Cdv+el4zBFnCtnfXc9s/yPoNL+QaLT7kKk1N2cZ1Cm3c1qpvcIMVPp37DR8Lhnn5VR+ENrjBDW5wtUM41Y4dVTtoVe9oGbK+W+344F9DoeGDpbchngAAAABJRU5ErkJggg==",Pd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAA8FBMVEUAAADt8fPt8vTt8vTp7+/s8PP////t8fM5vU6F5OiUzfr/gYH/mprV9vfa7f253/yv7fD/09P/vLz/rKz/3NxEwVj1/PZdym5Wx2j5/fm46MCi4Kx/1Yx504eS2578/v0/v1O86cOs5LVqzno9v1Lq8PPg9ePW8trV8dmy5rqV3KBQxWP6/fv3/fjo+Ou1572l4a6h4KtjzHROxGH/iorF5Pz/9vb/19eb0PqN5una897O79TJ7c+b3qb/oKDl8/3V6/3i+PnS9fbs+e6e6ez/39/B68iK2Jdx0IBKw1207vH/6Oj/zs7/wcH/v7+G15PWBDHsAAAABnRSTlMA/uiyMHNa+bxxAAADA0lEQVRo3u2baXPaMBCGnUDAaUuPtIBvG8x9kwNaAs2dJj3//7/pSgwuGMsWg7CnZN8vYJD3GUnrd2XNSJKkdOowG6sOU2kJdHSQjV0HR9DfBLhATkupbCJKSWR+O5lY1SHzLBF8JmYRJoKDhGAEIxjBCEYwUwhGMIIRjOBtwYW6Vtb1slYvxAmu6aeyp1O9Fg9YHSiyT8pA3T2436asiuIalmW4SoVetvs7BjeKBJM3SgVvsktGXgYVG5uCf51w6PeI3qQ5gDhr2quh7OYZ/OxoG4K/vuHQA72nRXo7VAPmfUh63RIP/klvMcmI9oLD9cgcmKLBJ15/zS4rXtf0+swJfvgUKTrBGgS2wiJa0EATn9UNJ3Iooc9OQzi4CPPbDW/SJW1Eg/uQz72oRj3I7b5YsAp+NYxuNgQPU4WCB+AbHH6sgpMMhIKhLjR52jWhYogE12CGbXZtfrr03BNmucYJfheuC9JYl2WDGemuKOe9p8iQZZ18XjADVhfgz69CRcFQ90vM0WgTB59k5irByoCCmQF5wddkLKH+Fhjc+rNM9LQYdqjPpOn11uArEpydMtM85bqFpTSsw8dVNPhtuOy5TbvBXK1Cuea/3XZ3btg2M2B1g6wur+bWZOkPqm/0wsuusrDHSV+pS5aXaK05d+arUfpOwLYBmfZIv/2hWOigQDB7qE3CcqZgjybFOqT7OxlqX3JNHYq7LLiUm/dMaym5xID9j9NjhQIVyn2eBLh6XRDYbyAl2ZOy5svUQPjA39+H6nbdMpsLbvHOH9WzzFtmQO85/nIcqvuAIlGWfXYF8hWJe2ZAPjCoE1AWdZ9dZfxlsXO8PTgXtBCYgV2FLQRyHOBchG4Clz7WLHTpc8OOV/0/FnsbLG/3ZUGf0CtMki9t4l9TP3JovIsX8/PXHBrzbUWIB5//EL75AmAu8kj4dtP4A5fGo/ANtv3dUgzaRN3/beMXuUOPYAQjGMEIXheCEYxgBCMYwUwhGMEIRnAgOLFjR4kdtErsaFlih+kSOz74F7rcqD5hQQQSAAAAAElFTkSuQmCC",Nd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAclBMVEX////y8vLx8fHx8fHx8fHx8fHy8vLz8/Py8vJcv/NW2vPp9v275Pj////R6fiFw/OWzPV9nt+dxelitfDy8vJzvPGC4/aTruRDre9D1PEyye38AgNNs/BnjNhPdMj8GxzvAgNUuvJcgtL+t7dyltsqut9J2SO6AAAACXRSTlMBkJi8lZTWK49TBySPAAACwElEQVR4Xu3baW/iMBCAYbqlgM/c3PTe//8X1zNxmdQJLKsEj7T1G6R8fDQmDUTUM2i5WtS39fpaj22xWs58TwBEgrFfrftYx4brR3DndXy4nrv3twXMbR0OZmytt5ytPBsFJno1W/DAixm60WCSfxic4AQn+OPlcHj5YICd62QG+IAleDDNBJclC6w2hWWAwS0UA2yLotiYmDC5RRkfLgvIRoXJLVRkWG2Q/YSDOnV6h55dk8DkhuoJVC+/g3oX2CLZVdEk9k6wxnH/roI7LXxpVohUcCdf6uFZ6b316vQXV4EsqV3Us+/3gE1dnKjBFZ54YmrToorhlomz6viw0bDGGwbYWCefOGCUFQds6s9nri97xYYJNmV6kpjgoe0/f0zVfSAKnOcssMoEy8SqEUIxwFYI0Zj4sBauPD6cC0hHhckVKjKsMnGtt0sJrKpE1ZzLmqwtz3Jf6RqEVXPZ7KhHPPCEVfACFWnRCKJJvgbbKyipYW94AP5VU/Xkq7C+oHZdhIarHF4JLxNNcnkjHKpncQsHvuCAl5cRp6G7M5f/tNSkBm4373ubaBfRkHOzWy6uvknoftsP8W21dTKxJOdlMHEgZ302UK91Hvub3R2Z4LCsRRXDLROn1BwfEgDnDLCxbq0FB2yUOB4VB2xUc+T6spflTLBhmphKvzslWDPB6zULrNaSYWJ0pWKArZRybeLDWvLAGlhpo8NrianIsAIX7KCd3PXa7/Zf/XaNgdENSUTxRCSieJoGtn3Us5086M1JYB2wJAcqoZPDZFJkBup0Sz2s+iNYZHTHX1zfVTmghija0Og/p6Fhke7ldS+PvoG0asQbCMmQ5viQAHjNABvrYMkBGyV3e8UAg7z/KV/2KJ2eJNLvTpP9Q2iCE5zgBLNtSWHbhMO27Yhpo9UT29YybM6xmQ5bPsTcPviwBPMPvqhmqo4W0j0AAAAASUVORK5CYII=",Dd="data:image/png;base64,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",Ld="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAMFBMVEX////v9/va4ea63vSb4O5gv+VdyuR32OjT7PhZ1uN6dep3f+lzi+mcu+9pruZxm+jQ03jSAAACFElEQVR42u3bUW/rIAyG4c+DJO4a4P//2xMbNqamW9eDii/mNxdVrx4RodRFCo7obXIE7c0gI1dlsoEJ7WNipCSmuyo3GJNz2GGHHXbYYYcddthhhx12+E/BIdrAYVmiCbwcRSN4XTYygEVeNzJZsa7ZBj6i+XCTeS4sbFg1nr5isMKXMBle0eXJKwZoWy+HHJ+F3z+6frZLCd8Uc17yoq0LVD7cLj8Pf9B7kwl3olTdFrRNbrbIz8PKdlfpckdmZT/pgFqUJV82Glmx2i3GTSFLynZXZYFFfg7GqSAr3svNXk3VZZwLTR6Fwftpi1F1A+7GF41GYVCRJZe+xVhZ+f6jzKMwKO1KNymoy/g+2qo8BGtJ4cKQSi56lx/LYRhGKFqocCI8qsnDMLjKCb8tqjwOg5pMT8jjsJZUzjQdVjmXwvNuNaW9tC32eEtrNLq5+lMTElc5/dodgbmIG6BRrjIBL36AUNrF5f69ZEnkVz4y0369nQRSVpohvehHgsu92SdUOaA3/rOoXXvingQW99EgMDKB7HLtjFN0ktcvo4+6AzOXdB70WqmzLaANuMcVx6fMH0bbJueb8VYGa4OBvg63U2GrvzCruFLAZDjU9bLBGchi8sdcLqOjiHrsY7FicS1WbHXAFv/UISpC9BN6hx122GGHHXbYYYcddthhh/8z45dw5stK2r1oBRvY7mU6s9cH/wEmsDDfLZf3HAAAAABJRU5ErkJggg==",Ud="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAOVBMVEX////h6Ozh6Ozh5+3i5+vh5+v/w8Ph5+v/lJT/6ur////m9P6v2vwpnPaUzfr/UlLL5/5UsPj/fn4yO/GHAAAABnRSTlMBlL0rj9UQ3sh9AAABTUlEQVR4Xu3by26DMBCFYRLD+MI97/+wrR1XB4EEklvGqXT+FbD5ZDDeTRMzbWfV6lrT5B5WucfbfVr1nliv/ppNAoJefQJN08LVKopt08HVlLvG1oHtv4EJEyZMmDBhwoQJEyZMmDBhwtM54O6C1/Ecnl+3wP06XsHzy/89vKzjrmTt82VwP303QMOTBeApPEsE3GuTc+KL4WG8gJEARuJ1YeS88qtGvgjOmyvkplgUEhBy2FyAkSuEQ79ewfid3HaJXt6ylMCp9QrOV4BzPt27YjhM57ALOxgyvnIJjI4wArx/IBVg+Wh4WjYNeq/62O9hweZShT1OEBU4JzhAdGCEBatsrqOr8DsdXV8HlhD0YPeTgNU+uRRgwoQJK0X4lggTJkyYMGHChAkTJkyYMGHChAlXG0mpN4RjbKxXdq2pNWhVa7Ss4jBdtfHBL61tMZs83wf1AAAAAElFTkSuQmCC",jd="data:image/png;base64,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",Gd="data:image/png;base64,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",Fd="data:image/png;base64,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",Hd="data:image/png;base64,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",Yd="data:image/png;base64,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",Kd="data:image/png;base64,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",zd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAXVBMVEVHcEwrK0M0N082OVQ4OlZCRWZxc4xEWXdJg55U2OBNn7BRwMtIcotCr/5AhLtBk9FBo+s3X5JCbKhpbb13eteIg+yVi/5iV5lUU46LSoinR4faRZHsRZTERo52RXTP84y8AAAABHRSTlMAJWjDIlyQNAAABQpJREFUeAHs0sEOAiEMhGGg4Hbavv/zSgJZE29IsuOB/6K3+WBJo1ykPpqUnD5lqYTkJpRKqpD3pyCP/+3hxmruACHM3wSZF9AojSsoXEBJwtofAkmVC6gTcAAHcACvXmvP/v4XgNEBHMABHMBFBiiUCjAARMDlgBMBAbiG0QAKePT2AAo3vX78/BbbAMWoK2KN4WN/ExCAqblPxdrz09gGxH0KNXPA1p7fKiDi+xhzf6ZAvEkpoyXHdRCIPoZrF4D9/x97rdneKS3JcVTlfpqaWOoDDVqz3zV+CwDNrrdR10jXWC3MgV32Al8GkN3gRv+h/esYvC7IyX4VQHb2T8zdf+iarPc1/bshst9lvwbQ7LbRBPDXGLyavzQ49v80ewCwGftv2ho1Qf/oGoR789/Mtt9F3cYZBBh4X/x/mwD+I4StPXbS4NCf2IGdEGy2s/EZ+GsXm38TAlzV/SwovzfS1gYZdhH9GWBCIH81gW/WLio2kBkBjAoawgsLwRAM/SX3IAAhjG19wXuzQPC69093LyMABSEK9r8N4dY/3KPcEwAU0gUhsRMTDH9UeRxHuHsggDQo+CaW3Z5Kr+PSmcoBAB5pu/E39/P40Z8cAgGeiwOQ0i+tA3wJI3LFXwFIZ3ktA5R7VWaYUWsdEVoAk+JYBLDySfmJb3wRX6vIo2kNwGq07jwjskoEvbWjoV6xHgACgP8U3Vup4X5qsMvWA1gFMG/k4W7tg5h2y1YCAADw7wfT3eDmwGkMlQEASemF/BtBYbQpAgoAANxjyV8qrzYAfUY4AOjAZ4JUvB8Isg/AHENwAACgU0v+KjOxsnA3vAgAPnIXHVOjYbc1pXQRALwThPd038sM+CTnB8EKvmoAjSDdC/1VZmBl5TX500UNYCYw7tpEoBUBAnjHEEAEUD6Y3P2YvMcEIAIrOtUkSN4TGn8AEEFw+SggIH8AEIHKf6xw3iMGONpmPVFQJwFAiufOi1cBwP+iKxh1AICdekuPEIShALwHAoaEwf0vs6LVUwmm9/vkpZ3hI+cPMt4Bd8CvANwBIRDFlGIkCnbV2xQTDddeDohL8HSuBvGz6emeaONbDwo9YNg1bZEpEhG3ifbOjiGkw7nU8k/oZsIkiwKAaaJBfiLmfC4mSquha4z+ibCH094YPMpM+yjxAJARtHzOw+KRAf1PFZ8+BprQc1McgGwE0eRbQzobIvqj8BhCw3Q8AA4BmqGXew50OT4eQ9hun10HoBOQyXcNAePb4tg6t/E5O4CTgIB1i3dDGo+Px2DHtwAIgptvimIjsAc16wYAgZPvGMhfZ7NuABAEXNZPLAOAICH/SwG4Lyl/IyDT5+Uzi4iq+IBM/AnZWsoNpWwBn1qypZdSa1VtH6p8IYB1yZYZJbVplD8dgPF17urxGMrnA7h245+O4fZOgDBnv+Rmxkdp0ZcBROsyxehscbfkavw6e/UsgEUfY0BAfMGPayTUdtXmdwCkbr1r1VkLMrbZ0FxE23LlLt6M7wD04oRL1f0GKQiIR3WE9aPMLwa0hmb6YYZk1vHNWr8G3tx9F6AFb8jxiCBcHu2KFifeAbTd+xtyPCLGdI5WGrAA/3IA3pDy3O1RdzZ14l0AtmPEt5U68R4AhCLzlxUAKMR/KeDr6w4A4GHMA+sAZvCGR9aBsZ8VvOGRceDiALrrlRlED5T9zPBtv6z0D39wAAz0xueB3/o98JvfB3z7PwAuR32KFEooSwAAAABJRU5ErkJggg==",Qd="data:image/png;base64,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",Xd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAPFBMVEVHcEzP1dvQ1tbO1NnO1NnQ0NmiqKv29/fIy83O1NlSXGOBiY7p6+xye4CRmJzd4OG0uLtibHJHUln///8YRa/yAAAABnRSTlMAKiySzgZNvhPZAAADfUlEQVR4Xu2bi26jMBBF2yad8fv5//+6i+lgGMKuZFPYan1VqU49yfEF39ik4W3S++MpL9Pz8f426/MhL9bjs3Cf8nI9J/JD3qDH7/NbGj5fJl+A77PhfKlmy0/ye63n5xsZvtryfw2Wf9Cr/p8FHuARp5FjHqmfBR7gEaeR44YFpOhO8ACPOI0cZ5IBq1JSUYMpANBFuPTrIigAT8XBdIKNTlVW5JzF3AYCzwXK82Ite8BepY20ydnNzYm0HYfkxdgMNioxhZwxzvYnLD2IB8WtcXKcq8kkvSxU+5pzXXOccPbgDBof7GQM16cVF5cwGU5LsQRLh6QN7FMRPbLKbwdUXNJ4ZGkqMmSVaQdLMkHonDczytPv9SxDykNHnMySIxCYq8ipjatz6VlxV45jqorg2dmnji/MOgEWTBc4pI1sRYsKoUAAC4DvAGd3mEzNQ7PPk+hZJII6eDGj6oEmASuWHeCMwa7BsQ7phS0DcQ22ncsiCrCLF7NAKORbmXUxtoPl0tDk8BCMNeeWAt46uSBBJqm/gV2de9gJllNMA1KAjg81FUSxKcZGMMYZZh04S5OLg9k0V7oW29Yc67RTOATbfbFojZNQ+/X4EBzUeetxNsyzw2Nw9nbH7cixcZFv345zLN3iWmnfva82IgBAkGyKoilixZ4VN8XpfN0PHmAu9EUvnxjAwevdFZa+ILEdLA6WVV9zYwN/jqY+5cy5YNRprSjz4bsInAn2MTGF4zdZjQ1x4mB2AcnIVM/JZ4GR/Crt9OJd0phqH7XDSWD4wgYs9Ztl2lJfGSGUNphzwKhmrmETTdRLrUgoqSq2O06B75gxLqfS0ZhI8sQ4uYOhKLrSYsvwaeC4i6enTSCuDoYHCPTTDeZ7XBLxDI2A5eqcOKnqiv/Jr7a04XRwrNnke3dDjW9xrPkEIgaS9fA9jqFQFPKhxE0rSz2JwB1x4nNY82DDtlmEZ4KzpVWHuPVdA9V29y16wRFIZrGclBNSQEzVZT2zEYQXYFMvuEqSRyZbz/dOqjVOHJxhz8W6ZHBFfxo4B3V8RQVn7kA4OBvHPz2v8pr1NYG928oQAIOOKqlowWcu89WnwY//wrSCx/dA/l7/r4EH+FgjTuN7IJeBB3jEaYDHt40H+Ps0wFjAd92Sct9NOB8X33aEvgA/7rrR6rZby+67me6O2wc/JuYvqUaK5aX5ihcAAAAASUVORK5CYII=",qd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAbFBMVEXa2tra2tra2tra2tra2tra2tr////a2toAwP/Z8v//5sz/gQD/gAC6z9rryK4Apdz2bACi4v//8eL/vnf1/P/7+ff/jwP/0J3k9v8Aw///qkp11f9bzv9Byf8exf//nSrD6/+Q3P//5Md21f9CFRjSAAAABnRSTlMCzPZuG2+a9LtCAAAB2klEQVR42u3b246CMBCAYUGtdeseoIAcXDzs+7/jDnAxIbpJZ0tmopn/GvMFZICk6QpaJ+mOsTRZr4Y2yY69ZAMwuAIyXOedSOvphEvDWDmdcooup5yuBt4wN5gKK6ywwgorrLDCChPLrL1ywuhCXUGDPyE7q+lqImzHTn/JeesOs76gexjqazoMfdePXWADYdtR4al+bx7UHsLhhg5/j7+7mPvcY/gd2s+yEB0uTnYoM3cN1NusD2gx2BTdKF8XgjMbGBx7tThWETDNtXj0qVgADjLxv700OFYcMN5T+x7HKho2lGocK17Y4FjJw/KXWv7mkh8n+QeI/COTUDbBxc8iLwmSLPpaxDFihnGM+GEYIxEYxkgEhjESgWGMWGFM4deAvXNeAC5bB3l2OD+7MW44r5wIfANXAj6OZsUKo3vOuWE/um1p2GAco2mOXGA+GsYxOhoC7Hw8nFfoGh8sR8E4RtXNTHkWGMcoN5SiYRwj8xyw3KWWv7nkx0n+ASL/yKS/JJwXei36l/8QwLES/th78s9bymJI2f4Ldof45R9PgunLP31t4qMveDVdhBu8xKfrxworrLDCCiussMIKK6wwHRbbhCO27Uhso5XU1jLBzXTQlnv74BbQX+nYnnoY7CMgAAAAAElFTkSuQmCC",Jd="data:image/png;base64,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",Zd="data:image/png;base64,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",Wd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAALVBMVEXk5OTa2trZ2dn////a2toAfd6izPLvzPnRfvDZteWKr84Aar6zas3j7vxXp+ldDjCnAAAAA3RSTlMGy258//q2AAABGElEQVR42u3b0Q6CMAyFYWBsgtq+/+PaUM1c4sUuyk7U819DPjAKM80ma5nXoc3LdOTsWBrjuryskBa/4TQ0v2V3x8uECRMmTJgwYcKECZ8A36zcphLryL613a0X3CahrlG9sEbCex/sRcLbZ/hqlaYz4EvTbhEmTJgwYcInw3aOIuDjFAXAdamGgC1BwVlQcC7jYVGXh8MpuaxBcMmdpSoHwP1urkerBMDdbnm/ThkDu+vJUw6BU3dVLsPhJFplOIz/qPFfLvzPCf8AwT8y+ys5+CXRL0Nfi175s6WP/M/yFrmgV/5bJEyY8M/DgGEIZvyDH3jBRnwc4xImTJgwYcKECRMmTPiLYNi2I9hGK9zWMpMhLmz74AMqR94PQgY3hQAAAABJRU5ErkJggg==",_d="data:image/png;base64,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",$d="data:image/png;base64,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",eu="data:image/png;base64,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",tu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAKlBMVEX////a4eaaM2z9rRr8iRL9sSz/8dvv7vL+w2T+4LfQoLu2a5SjRnr+0ITFZin+AAABwklEQVR42u3b62rDMAwFYHu2fE3e/3UXnAyFpIScIazBdH6F1vSrXVkJBbuR7CcmD5LZ+bRXCM9XYc7HxbTkY8qZ2Uk5SK8D+wG7yTHYYIP/F5wKUUnAGCE4UdhCCRgjA5cwUtwplag+jJGBKYzQ5TV6GKMAay21WnFpbSfrXAAMLBr8A91hvEyQknyG8Y2Bb8I7jLcCvO3ow/pLjRdXXSluobXixYVvJ2YpcqrEdnqwCgXav3waLOfn1bApVbhz1b1O1nEdbxnculdSlYRXrpLdvctcS6sQzG5I23WKHzPeCiyLwPX8gfQZptOUQxWCiSfMC31NPU2Z7H5s8Dv46xcx2OC/DTfcbSKw66jbpRpIR10pOHfIzWKwy8t7d8kOg3EZd3HY+eWl66XvTv4d7OVviw3dwDiMy+zKwizjLg7jjaQ7aZhl1MVhvIX1LAHjjWRhF4ZxGXdxmFsY0LBQGG9hfsYDfQM2MAAjMrtzYHeFncEGG2ywwQYbPB1uwHMAAKNys39vDTbYYDCpxFjSfDjFkTQdLjtcpsPxiBqsttRqxaW1naxzGWywwQqw2pGUrANnrWNHegetlGTFw3Rqxwe/AXAEHeeJRtDQAAAAAElFTkSuQmCC",nu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAA8FBMVEUAAADt8fPt8vTt8vTp7+/s8PP////t8fM5vU6F5OiUzfr/gYH/mprV9vfa7f253/yv7fD/09P/vLz/rKz/3NxEwVj1/PZdym5Wx2j5/fm46MCi4Kx/1Yx504eS2578/v0/v1O86cOs5LVqzno9v1Lq8PPg9ePW8trV8dmy5rqV3KBQxWP6/fv3/fjo+Ou1572l4a6h4KtjzHROxGH/iorF5Pz/9vb/19eb0PqN5una897O79TJ7c+b3qb/oKDl8/3V6/3i+PnS9fbs+e6e6ez/39/B68iK2Jdx0IBKw1207vH/6Oj/zs7/wcH/v7+G15PWBDHsAAAABnRSTlMA/uiyMHNa+bxxAAADA0lEQVRo3u2baXPaMBCGnUDAaUuPtIBvG8x9kwNaAs2dJj3//7/pSgwuGMsWg7CnZN8vYJD3GUnrd2XNSJKkdOowG6sOU2kJdHSQjV0HR9DfBLhATkupbCJKSWR+O5lY1SHzLBF8JmYRJoKDhGAEIxjBCEYwUwhGMIIRjOBtwYW6Vtb1slYvxAmu6aeyp1O9Fg9YHSiyT8pA3T2436asiuIalmW4SoVetvs7BjeKBJM3SgVvsktGXgYVG5uCf51w6PeI3qQ5gDhr2quh7OYZ/OxoG4K/vuHQA72nRXo7VAPmfUh63RIP/klvMcmI9oLD9cgcmKLBJ15/zS4rXtf0+swJfvgUKTrBGgS2wiJa0EATn9UNJ3Iooc9OQzi4CPPbDW/SJW1Eg/uQz72oRj3I7b5YsAp+NYxuNgQPU4WCB+AbHH6sgpMMhIKhLjR52jWhYogE12CGbXZtfrr03BNmucYJfheuC9JYl2WDGemuKOe9p8iQZZ18XjADVhfgz69CRcFQ90vM0WgTB59k5irByoCCmQF5wddkLKH+Fhjc+rNM9LQYdqjPpOn11uArEpydMtM85bqFpTSsw8dVNPhtuOy5TbvBXK1Cuea/3XZ3btg2M2B1g6wur+bWZOkPqm/0wsuusrDHSV+pS5aXaK05d+arUfpOwLYBmfZIv/2hWOigQDB7qE3CcqZgjybFOqT7OxlqX3JNHYq7LLiUm/dMaym5xID9j9NjhQIVyn2eBLh6XRDYbyAl2ZOy5svUQPjA39+H6nbdMpsLbvHOH9WzzFtmQO85/nIcqvuAIlGWfXYF8hWJe2ZAPjCoE1AWdZ9dZfxlsXO8PTgXtBCYgV2FLQRyHOBchG4Clz7WLHTpc8OOV/0/FnsbLG/3ZUGf0CtMki9t4l9TP3JovIsX8/PXHBrzbUWIB5//EL75AmAu8kj4dtP4A5fGo/ANtv3dUgzaRN3/beMXuUOPYAQjGMEIXheCEYxgBCMYwUwhGMEIRnAgOLFjR4kdtErsaFlih+kSOz74F7rcqD5hQQQSAAAAAElFTkSuQmCC",au="data:image/png;base64,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",ou="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAKlBMVEVuv+pxpsuixNqhxNq01OeArc+PvNzZ6fP+//9emsNpp9A9iblFk8Q9ibrLJXqlAAAADnRSTlMBL6D/////////////oNaeoRwAAAJeSURBVHja7deNcuMgDARgu1pYlTbv/7pHAEe+uON6Jo41c6dNmwJDRl/k/NDpnvlDHPIxTyOtvAvB6nsJrL6fYO4jXB5pmXsD4JLeguaAn6ABEIAABCAAAQhAAAIQgAAEIACegFSTnZJqXgEIqKokfABCXUJxAIiug8sB0BaSJrgU0MuvLLgWQK2R9YyXAuTpOdv0IgDsKdv8SgDtAtjClQCtyc4Ablvi3QHxeQ2YyP1d4PM5YFPx+ySU+4ze3wVyMUCevg3F+TwgHkcy6hI6nQlp9X0AGAA4Aews5AbguwECiF8HQK1x6wC0BU4A2BvMAwDqCM4FCOQIgPoIIHu3vpMigv1f1LDt/h0AfWuwAXzWFIvoe5PLKvfaBjCBL6Ak2vad19P9B72r8nfQbxCsMw4OZQ+wbUIqu+kAKUcjyLsACwYAZTdiXT2cfYAFR1qQbc9pAEs/65a9pPcALFlQdtMA5WzA8fgD7Cr9hwBLAAIQgAAEIAAB+NcBmSQofSIoY0AirdaEuc8wdiYZjz4FQB3FwLFKpWp6rEEXGTEAKk2np1wCRXkAbKCyDFGHG4DKaQBoegYQKwBVNtakVDkJkBRlAyA4WGj/nG07kKFyBPBV870b8DGUZQgl01hThW2m9L+fWuqmnPV7J/favwOK5q2FWKGyyk+AxjwBQNrYOoD1mgnWgNad1wFZCSL/1AFbM8EK0HSvAwAQCyAtdUVMiHZXxvY8AGNBjgHemAAEIAABCEAAAhCAAATgV8DNBB71b9P85SVoheeptsAxt6nm5lrfBC71R2YXwm2eav4AwjXv2I6cFtEAAAAASUVORK5CYII=";var R=(t=>(t.AUTHENTICATION="Authentication",t.AI="AI",t.SECURITY="Security",t.TRAFFIC_CONTROL="Traffic Control",t.SERVERLESS="Serverless",t.ANALYTICS_AND_MONITORING="Analytics & Monitoring",t.TRANSFORMATIONS="Transformations",t.LOGGING="Logging",t.DEPLOYMENT="Deployment",t.WEBSOCKET="WebSocket Plugins",t.CUSTOM_PLUGINS="Custom Plugins",t))(R||{}),d=(t=>(t.GLOBAL="global",t.SERVICE="service",t.ROUTE="route",t.CONSUMER="consumer",t.CONSUMER_GROUP="consumer_group",t))(d||{});const N={"basic-auth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"hmac-auth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"jwt-signer":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},jwt:{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"key-auth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"key-auth-enc":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"ldap-auth-advanced":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"ldap-auth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"oauth2-introspection":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},oauth2:{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"openid-connect":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"mtls-auth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"vault-auth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"bot-detection":{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},cors:{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"ip-restriction":{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},opa:{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"kubernetes-sidecar-injector":{group:R.DEPLOYMENT,scope:[d.GLOBAL]},"request-validator":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},acl:{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},canary:{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"forward-proxy":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"proxy-cache":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"proxy-cache-advanced":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"graphql-proxy-cache-advanced":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"rate-limiting-advanced":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"rate-limiting":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"graphql-rate-limiting-advanced":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},mocking:{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"request-size-limiting":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"request-termination":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"response-ratelimiting":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"route-by-header":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"ai-proxy":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-prompt-decorator":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-prompt-template":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-prompt-guard":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-request-transformer":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"ai-response-transformer":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-rate-limiting-advanced":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-azure-content-safety":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"aws-lambda":{group:R.SERVERLESS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"azure-functions":{group:R.SERVERLESS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},openwhisk:{group:R.SERVERLESS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"pre-function":{group:R.SERVERLESS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"post-function":{group:R.SERVERLESS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},datadog:{group:R.ANALYTICS_AND_MONITORING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},prometheus:{group:R.ANALYTICS_AND_MONITORING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},zipkin:{group:R.ANALYTICS_AND_MONITORING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},collector:{group:R.ANALYTICS_AND_MONITORING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"response-transformer-advanced":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"correlation-id":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"request-transformer-advanced":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"request-transformer":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"response-transformer":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"route-transformer-advanced":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"kafka-upstream":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},degraphql:{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"exit-transformer":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},jq:{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"file-log":{group:R.LOGGING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"http-log":{group:R.LOGGING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},loggly:{group:R.LOGGING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"statsd-advanced":{group:R.ANALYTICS_AND_MONITORING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},statsd:{group:R.ANALYTICS_AND_MONITORING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},syslog:{group:R.LOGGING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"tcp-log":{group:R.LOGGING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"udp-log":{group:R.LOGGING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"kafka-log":{group:R.LOGGING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},session:{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"upstream-tls":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"application-registration":{group:R.AUTHENTICATION,scope:[d.SERVICE]},"konnect-application-auth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE]},acme:{group:R.SECURITY,scope:[d.GLOBAL]},"grpc-gateway":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"grpc-web":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"upstream-timeout":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},opentelemetry:{group:R.ANALYTICS_AND_MONITORING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"websocket-validator":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"websocket-size-limit":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"tls-metadata-headers":{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"tls-handshake-modifier":{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"oas-validation":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"jwe-decrypt":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"xml-threat-protection":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},saml:{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"app-dynamics":{group:R.ANALYTICS_AND_MONITORING,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"json-threat-protection":{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"standard-webhooks":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"ai-proxy-advanced":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-semantic-cache":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-semantic-prompt-guard":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"header-cert-auth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},"upstream-oauth":{group:R.AUTHENTICATION,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},confluent:{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"service-protection":{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE]},"injection-protection":{group:R.SECURITY,scope:[d.GLOBAL,d.SERVICE,d.ROUTE]},redirect:{group:R.TRAFFIC_CONTROL,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"kafka-consume":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"confluent-consume":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER]},"request-callout":{group:R.TRANSFORMATIONS,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-sanitizer":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]},"ai-rag-injector":{group:R.AI,scope:[d.GLOBAL,d.SERVICE,d.ROUTE,d.CONSUMER,d.CONSUMER_GROUP]}};var _n=(t=>(t.REDIS_CE="redis-ce",t.REDIS_EE="redis-ee",t))(_n||{});const ri=[R.AUTHENTICATION,R.AI,R.SECURITY,R.TRAFFIC_CONTROL,R.SERVERLESS,R.ANALYTICS_AND_MONITORING,R.TRANSFORMATIONS,R.LOGGING,R.DEPLOYMENT,R.WEBSOCKET,R.CUSTOM_PLUGINS],si={[R.AUTHENTICATION]:!1,[R.AI]:!1,[R.SECURITY]:!1,[R.TRAFFIC_CONTROL]:!1,[R.SERVERLESS]:!1,[R.ANALYTICS_AND_MONITORING]:!1,[R.TRANSFORMATIONS]:!1,[R.LOGGING]:!1,[R.DEPLOYMENT]:!1,[R.CUSTOM_PLUGINS]:!1};var Ut=(t=>(t.SERVICE="service_id",t.ROUTE="route_id",t.CONSUMER="consumer_id",t.CONSUMER_GROUP="consumer_group_id",t))(Ut||{});const jt=t=>{const n=Object.fromEntries(t.fields.map(a=>Object.entries(a)[0]));return"id"in n||(n.id={}),n},Gt={label:"Tags",name:"tags",type:"input",inputType:"text",valueType:"array",valueArrayType:"string",placeholder:"Enter list of tags",help:"An optional set of strings for grouping and filtering, separated by commas.",hint:"e.g. tag1, tag2, tag3"},rn={getColumnFields:jt,tags:Gt,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(t){const n=t.inputAttributes||{};return delete t.inputAttributes,{type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",newElementButtonLabelClasses:"kong-form-new-element-button-label",inputAttributes:{class:"form-control",style:{minWidth:"200px"},...n},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...t}}}},li={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Gt}]},iu={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{group:{required:!0,type:"string",hint:"The arbitrary group name to associate to the consumer."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},ci={fields:[{username:{}},{password:{inputType:"password"}},{tags:Gt}]},ru={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0}},{password:{type:"string",required:!0,encrypted:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}}]};function di(t,n){for(var a=-1,o=t==null?0:t.length;++a<o&&n(t[a],a,t)!==!1;);return t}function su(t){return function(n,a,o){for(var i=-1,r=Object(n),s=o(n),l=s.length;l--;){var c=s[++i];if(a(r[c],c,r)===!1)break}return n}}var lu=su();function cu(t,n){for(var a=-1,o=Array(t);++a<t;)o[a]=n(a);return o}var ui=typeof global=="object"&&global&&global.Object===Object&&global,du=typeof self=="object"&&self&&self.Object===Object&&self,at=ui||du||Function("return this")(),Ot=at.Symbol,pi=Object.prototype,uu=pi.hasOwnProperty,pu=pi.toString,In=Ot?Ot.toStringTag:void 0;function mu(t){var n=uu.call(t,In),a=t[In];try{t[In]=void 0;var o=!0}catch{}var i=pu.call(t);return o&&(n?t[In]=a:delete t[In]),i}var gu=Object.prototype,Au=gu.toString;function fu(t){return Au.call(t)}var hu="[object Null]",yu="[object Undefined]",mi=Ot?Ot.toStringTag:void 0;function Rt(t){return t==null?t===void 0?yu:hu:mi&&mi in Object(t)?mu(t):fu(t)}function Mt(t){return t!=null&&typeof t=="object"}var bu="[object Arguments]";function gi(t){return Mt(t)&&Rt(t)==bu}var Ai=Object.prototype,Eu=Ai.hasOwnProperty,wu=Ai.propertyIsEnumerable,Cu=gi(function(){return arguments}())?gi:function(t){return Mt(t)&&Eu.call(t,"callee")&&!wu.call(t,"callee")},St=Array.isArray;function Bu(){return!1}var fi=typeof $=="object"&&$&&!$.nodeType&&$,hi=fi&&typeof module=="object"&&module&&!module.nodeType&&module,ku=hi&&hi.exports===fi,yi=ku?at.Buffer:void 0,Iu=yi?yi.isBuffer:void 0,bi=Iu||Bu,Ou=9007199254740991,Ru=/^(?:0|[1-9]\d*)$/;function Ei(t,n){var a=typeof t;return n=n??Ou,!!n&&(a=="number"||a!="symbol"&&Ru.test(t))&&t>-1&&t%1==0&&t<n}var Mu=9007199254740991;function wi(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Mu}var Su="[object Arguments]",Tu="[object Array]",xu="[object Boolean]",vu="[object Date]",Vu="[object Error]",Pu="[object Function]",Nu="[object Map]",Du="[object Number]",Lu="[object Object]",Uu="[object RegExp]",ju="[object Set]",Gu="[object String]",Fu="[object WeakMap]",Hu="[object ArrayBuffer]",Yu="[object DataView]",Ku="[object Float32Array]",zu="[object Float64Array]",Qu="[object Int8Array]",Xu="[object Int16Array]",qu="[object Int32Array]",Ju="[object Uint8Array]",Zu="[object Uint8ClampedArray]",Wu="[object Uint16Array]",_u="[object Uint32Array]",Ie={};Ie[Ku]=Ie[zu]=Ie[Qu]=Ie[Xu]=Ie[qu]=Ie[Ju]=Ie[Zu]=Ie[Wu]=Ie[_u]=!0,Ie[Su]=Ie[Tu]=Ie[Hu]=Ie[xu]=Ie[Yu]=Ie[vu]=Ie[Vu]=Ie[Pu]=Ie[Nu]=Ie[Du]=Ie[Lu]=Ie[Uu]=Ie[ju]=Ie[Gu]=Ie[Fu]=!1;function $u(t){return Mt(t)&&wi(t.length)&&!!Ie[Rt(t)]}function Da(t){return function(n){return t(n)}}var Ci=typeof $=="object"&&$&&!$.nodeType&&$,On=Ci&&typeof module=="object"&&module&&!module.nodeType&&module,ep=On&&On.exports===Ci,La=ep&&ui.process,sn=function(){try{var t=On&&On.require&&On.require("util").types;return t||La&&La.binding&&La.binding("util")}catch{}}(),Bi=sn&&sn.isTypedArray,tp=Bi?Da(Bi):$u,np=Object.prototype,ap=np.hasOwnProperty;function ki(t,n){var a=St(t),o=!a&&Cu(t),i=!a&&!o&&bi(t),r=!a&&!o&&!i&&tp(t),s=a||o||i||r,l=s?cu(t.length,String):[],c=l.length;for(var m in t)(n||ap.call(t,m))&&!(s&&(m=="length"||i&&(m=="offset"||m=="parent")||r&&(m=="buffer"||m=="byteLength"||m=="byteOffset")||Ei(m,c)))&&l.push(m);return l}var op=Object.prototype;function Ua(t){var n=t&&t.constructor,a=typeof n=="function"&&n.prototype||op;return t===a}function Ii(t,n){return function(a){return t(n(a))}}var ip=Ii(Object.keys,Object),rp=Object.prototype,sp=rp.hasOwnProperty;function lp(t){if(!Ua(t))return ip(t);var n=[];for(var a in Object(t))sp.call(t,a)&&a!="constructor"&&n.push(a);return n}function Ze(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}var cp="[object AsyncFunction]",dp="[object Function]",up="[object GeneratorFunction]",pp="[object Proxy]";function be(t){if(!Ze(t))return!1;var n=Rt(t);return n==dp||n==up||n==cp||n==pp}function $n(t){return t!=null&&wi(t.length)&&!be(t)}function ea(t){return $n(t)?ki(t):lp(t)}function mp(t,n){return t&&lu(t,n,ea)}function gp(t,n){return function(a,o){if(a==null)return a;if(!$n(a))return t(a,o);for(var i=a.length,r=-1,s=Object(a);++r<i&&o(s[r],r,s)!==!1;);return a}}var Ap=gp(mp);function ja(t){return t}function fp(t){return typeof t=="function"?t:ja}function Ke(t,n){var a=St(t)?di:Ap;return a(t,fp(n))}var hp="[object Symbol]";function ta(t){return typeof t=="symbol"||Mt(t)&&Rt(t)==hp}var yp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,bp=/^\w*$/;function Ep(t,n){if(St(t))return!1;var a=typeof t;return a=="number"||a=="symbol"||a=="boolean"||t==null||ta(t)?!0:bp.test(t)||!yp.test(t)||n!=null&&t in Object(n)}var Ga=at["__core-js_shared__"],Oi=function(){var t=/[^.]+$/.exec(Ga&&Ga.keys&&Ga.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function wp(t){return!!Oi&&Oi in t}var Cp=Function.prototype,Bp=Cp.toString;function Ft(t){if(t!=null){try{return Bp.call(t)}catch{}try{return t+""}catch{}}return""}var kp=/[\\^$.*+?()[\]{}|]/g,Ip=/^\[object .+?Constructor\]$/,Op=Function.prototype,Rp=Object.prototype,Mp=Op.toString,Sp=Rp.hasOwnProperty,Tp=RegExp("^"+Mp.call(Sp).replace(kp,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function xp(t){if(!Ze(t)||wp(t))return!1;var n=be(t)?Tp:Ip;return n.test(Ft(t))}function vp(t,n){return t==null?void 0:t[n]}function Ht(t,n){var a=vp(t,n);return xp(a)?a:void 0}var Rn=Ht(Object,"create");function Vp(){this.__data__=Rn?Rn(null):{},this.size=0}function Pp(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var Np="__lodash_hash_undefined__",Dp=Object.prototype,Lp=Dp.hasOwnProperty;function Up(t){var n=this.__data__;if(Rn){var a=n[t];return a===Np?void 0:a}return Lp.call(n,t)?n[t]:void 0}var jp=Object.prototype,Gp=jp.hasOwnProperty;function Fp(t){var n=this.__data__;return Rn?n[t]!==void 0:Gp.call(n,t)}var Hp="__lodash_hash_undefined__";function Yp(t,n){var a=this.__data__;return this.size+=this.has(t)?0:1,a[t]=Rn&&n===void 0?Hp:n,this}function Yt(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}Yt.prototype.clear=Vp,Yt.prototype.delete=Pp,Yt.prototype.get=Up,Yt.prototype.has=Fp,Yt.prototype.set=Yp;function Kp(){this.__data__=[],this.size=0}function na(t,n){return t===n||t!==t&&n!==n}function aa(t,n){for(var a=t.length;a--;)if(na(t[a][0],n))return a;return-1}var zp=Array.prototype,Qp=zp.splice;function Xp(t){var n=this.__data__,a=aa(n,t);if(a<0)return!1;var o=n.length-1;return a==o?n.pop():Qp.call(n,a,1),--this.size,!0}function qp(t){var n=this.__data__,a=aa(n,t);return a<0?void 0:n[a][1]}function Jp(t){return aa(this.__data__,t)>-1}function Zp(t,n){var a=this.__data__,o=aa(a,t);return o<0?(++this.size,a.push([t,n])):a[o][1]=n,this}function ft(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}ft.prototype.clear=Kp,ft.prototype.delete=Xp,ft.prototype.get=qp,ft.prototype.has=Jp,ft.prototype.set=Zp;var Mn=Ht(at,"Map");function Wp(){this.size=0,this.__data__={hash:new Yt,map:new(Mn||ft),string:new Yt}}function _p(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function oa(t,n){var a=t.__data__;return _p(n)?a[typeof n=="string"?"string":"hash"]:a.map}function $p(t){var n=oa(this,t).delete(t);return this.size-=n?1:0,n}function em(t){return oa(this,t).get(t)}function tm(t){return oa(this,t).has(t)}function nm(t,n){var a=oa(this,t),o=a.size;return a.set(t,n),this.size+=a.size==o?0:1,this}function ht(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}ht.prototype.clear=Wp,ht.prototype.delete=$p,ht.prototype.get=em,ht.prototype.has=tm,ht.prototype.set=nm;var am="Expected a function";function Fa(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(am);var a=function(){var o=arguments,i=n?n.apply(this,o):o[0],r=a.cache;if(r.has(i))return r.get(i);var s=t.apply(this,o);return a.cache=r.set(i,s)||r,s};return a.cache=new(Fa.Cache||ht),a}Fa.Cache=ht;var om=500;function im(t){var n=Fa(t,function(o){return a.size===om&&a.clear(),o}),a=n.cache;return n}var rm=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,sm=/\\(\\)?/g,lm=im(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(rm,function(a,o,i,r){n.push(i?r.replace(sm,"$1"):o||a)}),n});function cm(t,n){for(var a=-1,o=t==null?0:t.length,i=Array(o);++a<o;)i[a]=n(t[a],a,t);return i}var dm=1/0,Ri=Ot?Ot.prototype:void 0,Mi=Ri?Ri.toString:void 0;function Si(t){if(typeof t=="string")return t;if(St(t))return cm(t,Si)+"";if(ta(t))return Mi?Mi.call(t):"";var n=t+"";return n=="0"&&1/t==-dm?"-0":n}function Ti(t){return t==null?"":Si(t)}function um(t,n){return St(t)?t:Ep(t,n)?[t]:lm(Ti(t))}var pm=1/0;function mm(t){if(typeof t=="string"||ta(t))return t;var n=t+"";return n=="0"&&1/t==-pm?"-0":n}function gm(t,n){n=um(n,t);for(var a=0,o=n.length;t!=null&&a<o;)t=t[mm(n[a++])];return a&&a==o?t:void 0}function fe(t,n,a){var o=t==null?void 0:gm(t,n);return o===void 0?a:o}function Pe(t){return t==null}const Tt="kong-ui-forms-api",Ha="kong-ui-forms-config",Am="redis-partial-list-fetcher-key",ct="autofill",ze="autofillSlot";function fm(){this.__data__=new ft,this.size=0}function hm(t){var n=this.__data__,a=n.delete(t);return this.size=n.size,a}function ym(t){return this.__data__.get(t)}function bm(t){return this.__data__.has(t)}var Em=200;function wm(t,n){var a=this.__data__;if(a instanceof ft){var o=a.__data__;if(!Mn||o.length<Em-1)return o.push([t,n]),this.size=++a.size,this;a=this.__data__=new ht(o)}return a.set(t,n),this.size=a.size,this}function ln(t){var n=this.__data__=new ft(t);this.size=n.size}ln.prototype.clear=fm,ln.prototype.delete=hm,ln.prototype.get=ym,ln.prototype.has=bm,ln.prototype.set=wm;var ia=function(){try{var t=Ht(Object,"defineProperty");return t({},"",{}),t}catch{}}();function xi(t,n,a){n=="__proto__"&&ia?ia(t,n,{configurable:!0,enumerable:!0,value:a,writable:!0}):t[n]=a}var Cm=Object.prototype,Bm=Cm.hasOwnProperty;function vi(t,n,a){var o=t[n];(!(Bm.call(t,n)&&na(o,a))||a===void 0&&!(n in t))&&xi(t,n,a)}function ra(t,n,a,o){var i=!a;a||(a={});for(var r=-1,s=n.length;++r<s;){var l=n[r],c=void 0;c===void 0&&(c=t[l]),i?xi(a,l,c):vi(a,l,c)}return a}function km(t,n){return t&&ra(n,ea(n),t)}function Im(t){var n=[];if(t!=null)for(var a in Object(t))n.push(a);return n}var Om=Object.prototype,Rm=Om.hasOwnProperty;function Mm(t){if(!Ze(t))return Im(t);var n=Ua(t),a=[];for(var o in t)o=="constructor"&&(n||!Rm.call(t,o))||a.push(o);return a}function sa(t){return $n(t)?ki(t,!0):Mm(t)}function Sm(t,n){return t&&ra(n,sa(n),t)}var Vi=typeof $=="object"&&$&&!$.nodeType&&$,Pi=Vi&&typeof module=="object"&&module&&!module.nodeType&&module,Tm=Pi&&Pi.exports===Vi,Ni=Tm?at.Buffer:void 0,Di=Ni?Ni.allocUnsafe:void 0;function xm(t,n){if(n)return t.slice();var a=t.length,o=Di?Di(a):new t.constructor(a);return t.copy(o),o}function vm(t,n){var a=-1,o=t.length;for(n||(n=Array(o));++a<o;)n[a]=t[a];return n}function Vm(t,n){for(var a=-1,o=t==null?0:t.length,i=0,r=[];++a<o;){var s=t[a];n(s,a,t)&&(r[i++]=s)}return r}function Li(){return[]}var Pm=Object.prototype,Nm=Pm.propertyIsEnumerable,Ui=Object.getOwnPropertySymbols,Ya=Ui?function(t){return t==null?[]:(t=Object(t),Vm(Ui(t),function(n){return Nm.call(t,n)}))}:Li;function Dm(t,n){return ra(t,Ya(t),n)}function ji(t,n){for(var a=-1,o=n.length,i=t.length;++a<o;)t[i+a]=n[a];return t}var Gi=Ii(Object.getPrototypeOf,Object),Lm=Object.getOwnPropertySymbols,Fi=Lm?function(t){for(var n=[];t;)ji(n,Ya(t)),t=Gi(t);return n}:Li;function Um(t,n){return ra(t,Fi(t),n)}function Hi(t,n,a){var o=n(t);return St(t)?o:ji(o,a(t))}function jm(t){return Hi(t,ea,Ya)}function Gm(t){return Hi(t,sa,Fi)}var Ka=Ht(at,"DataView"),za=Ht(at,"Promise"),cn=Ht(at,"Set"),Qa=Ht(at,"WeakMap"),Yi="[object Map]",Fm="[object Object]",Ki="[object Promise]",zi="[object Set]",Qi="[object WeakMap]",Xi="[object DataView]",Hm=Ft(Ka),Ym=Ft(Mn),Km=Ft(za),zm=Ft(cn),Qm=Ft(Qa),yt=Rt;(Ka&&yt(new Ka(new ArrayBuffer(1)))!=Xi||Mn&&yt(new Mn)!=Yi||za&&yt(za.resolve())!=Ki||cn&&yt(new cn)!=zi||Qa&&yt(new Qa)!=Qi)&&(yt=function(t){var n=Rt(t),a=n==Fm?t.constructor:void 0,o=a?Ft(a):"";if(o)switch(o){case Hm:return Xi;case Ym:return Yi;case Km:return Ki;case zm:return zi;case Qm:return Qi}return n});var Xm=Object.prototype,qm=Xm.hasOwnProperty;function Jm(t){var n=t.length,a=new t.constructor(n);return n&&typeof t[0]=="string"&&qm.call(t,"index")&&(a.index=t.index,a.input=t.input),a}var qi=at.Uint8Array;function Xa(t){var n=new t.constructor(t.byteLength);return new qi(n).set(new qi(t)),n}function Zm(t,n){var a=n?Xa(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.byteLength)}var Wm=/\w*$/;function _m(t){var n=new t.constructor(t.source,Wm.exec(t));return n.lastIndex=t.lastIndex,n}var Ji=Ot?Ot.prototype:void 0,Zi=Ji?Ji.valueOf:void 0;function $m(t){return Zi?Object(Zi.call(t)):{}}function eg(t,n){var a=n?Xa(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.length)}var tg="[object Boolean]",ng="[object Date]",ag="[object Map]",og="[object Number]",ig="[object RegExp]",rg="[object Set]",sg="[object String]",lg="[object Symbol]",cg="[object ArrayBuffer]",dg="[object DataView]",ug="[object Float32Array]",pg="[object Float64Array]",mg="[object Int8Array]",gg="[object Int16Array]",Ag="[object Int32Array]",fg="[object Uint8Array]",hg="[object Uint8ClampedArray]",yg="[object Uint16Array]",bg="[object Uint32Array]";function Eg(t,n,a){var o=t.constructor;switch(n){case cg:return Xa(t);case tg:case ng:return new o(+t);case dg:return Zm(t,a);case ug:case pg:case mg:case gg:case Ag:case fg:case hg:case yg:case bg:return eg(t,a);case ag:return new o;case og:case sg:return new o(t);case ig:return _m(t);case rg:return new o;case lg:return $m(t)}}var Wi=Object.create,wg=function(){function t(){}return function(n){if(!Ze(n))return{};if(Wi)return Wi(n);t.prototype=n;var a=new t;return t.prototype=void 0,a}}();function Cg(t){return typeof t.constructor=="function"&&!Ua(t)?wg(Gi(t)):{}}var Bg="[object Map]";function kg(t){return Mt(t)&&yt(t)==Bg}var _i=sn&&sn.isMap,Ig=_i?Da(_i):kg,Og="[object Set]";function Rg(t){return Mt(t)&&yt(t)==Og}var $i=sn&&sn.isSet,Mg=$i?Da($i):Rg,Sg=1,Tg=2,xg=4,er="[object Arguments]",vg="[object Array]",Vg="[object Boolean]",Pg="[object Date]",Ng="[object Error]",tr="[object Function]",Dg="[object GeneratorFunction]",Lg="[object Map]",Ug="[object Number]",nr="[object Object]",jg="[object RegExp]",Gg="[object Set]",Fg="[object String]",Hg="[object Symbol]",Yg="[object WeakMap]",Kg="[object ArrayBuffer]",zg="[object DataView]",Qg="[object Float32Array]",Xg="[object Float64Array]",qg="[object Int8Array]",Jg="[object Int16Array]",Zg="[object Int32Array]",Wg="[object Uint8Array]",_g="[object Uint8ClampedArray]",$g="[object Uint16Array]",eA="[object Uint32Array]",Be={};Be[er]=Be[vg]=Be[Kg]=Be[zg]=Be[Vg]=Be[Pg]=Be[Qg]=Be[Xg]=Be[qg]=Be[Jg]=Be[Zg]=Be[Lg]=Be[Ug]=Be[nr]=Be[jg]=Be[Gg]=Be[Fg]=Be[Hg]=Be[Wg]=Be[_g]=Be[$g]=Be[eA]=!0,Be[Ng]=Be[tr]=Be[Yg]=!1;function Sn(t,n,a,o,i,r){var s,l=n&Sg,c=n&Tg,m=n&xg;if(s!==void 0)return s;if(!Ze(t))return t;var p=St(t);if(p){if(s=Jm(t),!l)return vm(t,s)}else{var u=yt(t),g=u==tr||u==Dg;if(bi(t))return xm(t,l);if(u==nr||u==er||g&&!i){if(s=c||g?{}:Cg(t),!l)return c?Um(t,Sm(s,t)):Dm(t,km(s,t))}else{if(!Be[u])return i?t:{};s=Eg(t,u,l)}}r||(r=new ln);var h=r.get(t);if(h)return h;r.set(t,s),Mg(t)?t.forEach(function(b){s.add(Sn(b,n,a,b,t,r))}):Ig(t)&&t.forEach(function(b,k){s.set(k,Sn(b,n,a,k,t,r))});var C=m?c?Gm:jm:c?sa:ea,f=p?void 0:C(t);return di(f||t,function(b,k){f&&(k=b,b=t[k]),vi(s,k,Sn(b,n,a,k,t,r))}),s}var tA=1,nA=4;function bt(t){return Sn(t,tA|nA)}const qa=(t,n="")=>typeof t.id<"u"?n+t.id+"":n+(t.inputName||t.label||t.model||"").toString().trim().toLowerCase().replace(/ |_/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-]+)/g,""),ar=(t="")=>t.toString().trim().replace(/ /g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-_/./:]+)/g,"");var aA="[object String]";function Kt(t){return typeof t=="string"||!St(t)&&Mt(t)&&Rt(t)==aA}const or={methods:{getFieldRowClasses(t){const n=this.fieldErrors(t).length>0,a={[fe(this.options,"validationErrorClass","error")]:n,[fe(this.options,"validationSuccessClass","valid")]:!n,disabled:this.fieldDisabled(t),readonly:this.fieldReadonly(t),featured:this.fieldFeatured(t),required:this.fieldRequired(t)};return Array.isArray(t.styleClasses)?Ke(t.styleClasses,o=>a[o]=!0):Kt(t.styleClasses)&&(a[t.styleClasses]=!0),Pe(t.type)||(a["field-"+t.type]=!0),a},fieldErrors(t){return this.errors.filter(n=>n.field.fieldName===t.fieldName).map(n=>n.error)},fieldDisabled(t){return be(t.disabled)?t.disabled.call(this,this.model,t,this):Pe(t.disabled)?!1:t.disabled},fieldReadonly(t){return be(t.readonly)?t.readonly.call(this,this.model,t,this):Pe(t.readonly)?!1:t.readonly},fieldFeatured(t){return be(t.featured)?t.featured.call(this,this.model,t,this):Pe(t.featured)?!1:t.featured},fieldRequired(t){return be(t.required)?t.required.call(this,this.model,t,this):Pe(t.required)?!1:t.required}}};var Ja=function(){return at.Date.now()},oA=/\s/;function iA(t){for(var n=t.length;n--&&oA.test(t.charAt(n)););return n}var rA=/^\s+/;function sA(t){return t&&t.slice(0,iA(t)+1).replace(rA,"")}var ir=NaN,lA=/^[-+]0x[0-9a-f]+$/i,cA=/^0b[01]+$/i,dA=/^0o[0-7]+$/i,uA=parseInt;function Za(t){if(typeof t=="number")return t;if(ta(t))return ir;if(Ze(t)){var n=typeof t.valueOf=="function"?t.valueOf():t;t=Ze(n)?n+"":n}if(typeof t!="string")return t===0?t:+t;t=sA(t);var a=cA.test(t);return a||dA.test(t)?uA(t.slice(2),a?2:8):lA.test(t)?ir:+t}var pA="Expected a function",mA=Math.max,gA=Math.min;function Tn(t,n,a){var o,i,r,s,l,c,m=0,p=!1,u=!1,g=!0;if(typeof t!="function")throw new TypeError(pA);n=Za(n)||0,Ze(a)&&(p=!!a.leading,u="maxWait"in a,r=u?mA(Za(a.maxWait)||0,n):r,g="trailing"in a?!!a.trailing:g);function h(A){var y=o,E=i;return o=i=void 0,m=A,s=t.apply(E,y),s}function C(A){return m=A,l=setTimeout(k,n),p?h(A):s}function f(A){var y=A-c,E=A-m,L=n-y;return u?gA(L,r-E):L}function b(A){var y=A-c,E=A-m;return c===void 0||y>=n||y<0||u&&E>=r}function k(){var A=Ja();if(b(A))return O(A);l=setTimeout(k,f(A))}function O(A){return l=void 0,g&&o?h(A):(o=i=void 0,s)}function w(){l!==void 0&&clearTimeout(l),m=0,o=c=i=l=void 0}function B(){return l===void 0?s:O(Ja())}function S(){var A=Ja(),y=b(A);if(o=arguments,i=this,c=A,y){if(l===void 0)return C(c);if(u)return clearTimeout(l),l=setTimeout(k,n),h(c)}return l===void 0&&(l=setTimeout(k,n)),s}return S.cancel=w,S.flush=B,S}var AA="__lodash_hash_undefined__";function fA(t){return this.__data__.set(t,AA),this}function hA(t){return this.__data__.has(t)}function la(t){var n=-1,a=t==null?0:t.length;for(this.__data__=new ht;++n<a;)this.add(t[n])}la.prototype.add=la.prototype.push=fA,la.prototype.has=hA;function yA(t,n,a,o){for(var i=t.length,r=a+-1;++r<i;)if(n(t[r],r,t))return r;return-1}function bA(t){return t!==t}function EA(t,n,a){for(var o=a-1,i=t.length;++o<i;)if(t[o]===n)return o;return-1}function wA(t,n,a){return n===n?EA(t,n,a):yA(t,bA,a)}function CA(t,n){var a=t==null?0:t.length;return!!a&&wA(t,n,0)>-1}function BA(t,n){return t.has(n)}function kA(){}function rr(t){var n=-1,a=Array(t.size);return t.forEach(function(o){a[++n]=o}),a}var IA=1/0,OA=cn&&1/rr(new cn([,-0]))[1]==IA?function(t){return new cn(t)}:kA,RA=200;function MA(t,n,a){var o=-1,i=CA,r=t.length,s=!0,l=[],c=l;if(r>=RA){var m=OA(t);if(m)return rr(m);s=!1,i=BA,c=new la}else c=l;e:for(;++o<r;){var p=t[o],u=p;if(p=p!==0?p:0,s&&u===u){for(var g=c.length;g--;)if(c[g]===u)continue e;l.push(p)}else i(c,u,a)||(c!==l&&c.push(u),l.push(p))}return l}function sr(t){return t&&t.length?MA(t):[]}var SA=0;function lr(t){var n=++SA;return Ti(t)+n}var cr=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,xt="\\d\\d?",vt="\\d\\d",TA="\\d{3}",xA="\\d{4}",xn="[^\\s]+",dr=/\[([^]*?)\]/gm;function ur(t,n){for(var a=[],o=0,i=t.length;o<i;o++)a.push(t[o].substr(0,n));return a}var pr=function(t){return function(n,a){var o=a[t].map(function(r){return r.toLowerCase()}),i=o.indexOf(n.toLowerCase());return i>-1?i:null}};function zt(t){for(var n=[],a=1;a<arguments.length;a++)n[a-1]=arguments[a];for(var o=0,i=n;o<i.length;o++){var r=i[o];for(var s in r)t[s]=r[s]}return t}var mr=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],gr=["January","February","March","April","May","June","July","August","September","October","November","December"],vA=ur(gr,3),VA=ur(mr,3),Ar={dayNamesShort:VA,dayNames:mr,monthNamesShort:vA,monthNames:gr,amPm:["am","pm"],DoFn:function(t){return t+["th","st","nd","rd"][t%10>3?0:(t-t%10!==10?1:0)*t%10]}},ca=zt({},Ar),PA=function(t){return ca=zt(ca,t)},fr=function(t){return t.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},qe=function(t,n){for(n===void 0&&(n=2),t=String(t);t.length<n;)t="0"+t;return t},NA={D:function(t){return String(t.getDate())},DD:function(t){return qe(t.getDate())},Do:function(t,n){return n.DoFn(t.getDate())},d:function(t){return String(t.getDay())},dd:function(t){return qe(t.getDay())},ddd:function(t,n){return n.dayNamesShort[t.getDay()]},dddd:function(t,n){return n.dayNames[t.getDay()]},M:function(t){return String(t.getMonth()+1)},MM:function(t){return qe(t.getMonth()+1)},MMM:function(t,n){return n.monthNamesShort[t.getMonth()]},MMMM:function(t,n){return n.monthNames[t.getMonth()]},YY:function(t){return qe(String(t.getFullYear()),4).substr(2)},YYYY:function(t){return qe(t.getFullYear(),4)},h:function(t){return String(t.getHours()%12||12)},hh:function(t){return qe(t.getHours()%12||12)},H:function(t){return String(t.getHours())},HH:function(t){return qe(t.getHours())},m:function(t){return String(t.getMinutes())},mm:function(t){return qe(t.getMinutes())},s:function(t){return String(t.getSeconds())},ss:function(t){return qe(t.getSeconds())},S:function(t){return String(Math.round(t.getMilliseconds()/100))},SS:function(t){return qe(Math.round(t.getMilliseconds()/10),2)},SSS:function(t){return qe(t.getMilliseconds(),3)},a:function(t,n){return t.getHours()<12?n.amPm[0]:n.amPm[1]},A:function(t,n){return t.getHours()<12?n.amPm[0].toUpperCase():n.amPm[1].toUpperCase()},ZZ:function(t){var n=t.getTimezoneOffset();return(n>0?"-":"+")+qe(Math.floor(Math.abs(n)/60)*100+Math.abs(n)%60,4)},Z:function(t){var n=t.getTimezoneOffset();return(n>0?"-":"+")+qe(Math.floor(Math.abs(n)/60),2)+":"+qe(Math.abs(n)%60,2)}},hr=function(t){return+t-1},yr=[null,xt],br=[null,xn],Er=["isPm",xn,function(t,n){var a=t.toLowerCase();return a===n.amPm[0]?0:a===n.amPm[1]?1:null}],wr=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(t){var n=(t+"").match(/([+-]|\d\d)/gi);if(n){var a=+n[1]*60+parseInt(n[2],10);return n[0]==="+"?a:-a}return 0}],DA={D:["day",xt],DD:["day",vt],Do:["day",xt+xn,function(t){return parseInt(t,10)}],M:["month",xt,hr],MM:["month",vt,hr],YY:["year",vt,function(t){var n=new Date,a=+(""+n.getFullYear()).substr(0,2);return+(""+(+t>68?a-1:a)+t)}],h:["hour",xt,void 0,"isPm"],hh:["hour",vt,void 0,"isPm"],H:["hour",xt],HH:["hour",vt],m:["minute",xt],mm:["minute",vt],s:["second",xt],ss:["second",vt],YYYY:["year",xA],S:["millisecond","\\d",function(t){return+t*100}],SS:["millisecond",vt,function(t){return+t*10}],SSS:["millisecond",TA],d:yr,dd:yr,ddd:br,dddd:br,MMM:["month",xn,pr("monthNamesShort")],MMMM:["month",xn,pr("monthNames")],a:Er,A:Er,ZZ:wr,Z:wr},da={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"},LA=function(t){return zt(da,t)},UA=function(t,n,a){if(n===void 0&&(n=da.default),a===void 0&&(a={}),typeof t=="number"&&(t=new Date(t)),Object.prototype.toString.call(t)!=="[object Date]"||isNaN(t.getTime()))throw new Error("Invalid Date pass to format");n=da[n]||n;var o=[];n=n.replace(dr,function(r,s){return o.push(s),"@@@"});var i=zt(zt({},ca),a);return n=n.replace(cr,function(r){return NA[r](t,i)}),n.replace(/@@@/g,function(){return o.shift()})};function jA(t,n,a){if(a===void 0&&(a={}),typeof n!="string")throw new Error("Invalid format in fecha parse");if(n=da[n]||n,t.length>1e3)return null;var o=new Date,i={year:o.getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},r=[],s=[],l=n.replace(dr,function(B,S){return s.push(fr(S)),"@@@"}),c={},m={};l=fr(l).replace(cr,function(B){var S=DA[B],A=S[0],y=S[1],E=S[3];if(c[A])throw new Error("Invalid format. "+A+" specified twice in format");return c[A]=!0,E&&(m[E]=!0),r.push(S),"("+y+")"}),Object.keys(m).forEach(function(B){if(!c[B])throw new Error("Invalid format. "+B+" is required in specified format")}),l=l.replace(/@@@/g,function(){return s.shift()});var p=t.match(new RegExp(l,"i"));if(!p)return null;for(var u=zt(zt({},ca),a),g=1;g<p.length;g++){var h=r[g-1],C=h[0],f=h[2],b=f?f(p[g],u):+p[g];if(b==null)return null;i[C]=b}i.isPm===1&&i.hour!=null&&+i.hour!=12?i.hour=+i.hour+12:i.isPm===0&&+i.hour==12&&(i.hour=0);var k;if(i.timezoneOffset==null){k=new Date(i.year,i.month,i.day,i.hour,i.minute,i.second,i.millisecond);for(var O=[["month","getMonth"],["day","getDate"],["hour","getHours"],["minute","getMinutes"],["second","getSeconds"]],g=0,w=O.length;g<w;g++)if(c[O[g][0]]&&i[O[g][0]]!==k[O[g][1]]())return null}else if(k=new Date(Date.UTC(i.year,i.month,i.day,i.hour,i.minute-i.timezoneOffset,i.second,i.millisecond)),i.month>11||i.month<0||i.day>31||i.day<1||i.hour>23||i.hour<0||i.minute>59||i.minute<0||i.second>59||i.second<0)return null;return k}var dn={format:UA,parse:jA,defaultI18n:Ar,setGlobalDateI18n:PA,setGlobalDateMasks:LA};function GA(t,n,a){switch(a.length){case 0:return t.call(n);case 1:return t.call(n,a[0]);case 2:return t.call(n,a[0],a[1]);case 3:return t.call(n,a[0],a[1],a[2])}return t.apply(n,a)}var Cr=Math.max;function FA(t,n,a){return n=Cr(n===void 0?t.length-1:n,0),function(){for(var o=arguments,i=-1,r=Cr(o.length-n,0),s=Array(r);++i<r;)s[i]=o[n+i];i=-1;for(var l=Array(n+1);++i<n;)l[i]=o[i];return l[n]=a(s),GA(t,this,l)}}function HA(t){return function(){return t}}var YA=ia?function(t,n){return ia(t,"toString",{configurable:!0,enumerable:!1,value:HA(n),writable:!0})}:ja,KA=800,zA=16,QA=Date.now;function XA(t){var n=0,a=0;return function(){var o=QA(),i=zA-(o-a);if(a=o,i>0){if(++n>=KA)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}var qA=XA(YA);function JA(t,n){return qA(FA(t,n,ja),t+"")}function ZA(t,n,a){if(!Ze(a))return!1;var o=typeof n;return(o=="number"?$n(a)&&Ei(n,a.length):o=="string"&&n in a)?na(a[n],t):!1}var Br=Object.prototype,WA=Br.hasOwnProperty,_A=JA(function(t,n){t=Object(t);var a=-1,o=n.length,i=o>2?n[2]:void 0;for(i&&ZA(n[0],n[1],i)&&(o=1);++a<o;)for(var r=n[a],s=sa(r),l=-1,c=s.length;++l<c;){var m=s[l],p=t[m];(p===void 0||na(p,Br[m])&&!WA.call(t,m))&&(t[m]=r[m])}return t}),$A=at.isFinite;function ef(t){return typeof t=="number"&&$A(t)}var kr=1/0,tf=17976931348623157e292;function nf(t){if(!t)return t===0?t:0;if(t=Za(t),t===kr||t===-kr){var n=t<0?-1:1;return n*tf}return t===t?t:0}function af(t){var n=nf(t),a=n%1;return n===n?a?n-a:n:0}function of(t){return typeof t=="number"&&t==af(t)}var rf="[object Number]";function ua(t){return typeof t=="number"||Mt(t)&&Rt(t)==rf}const sf={packageName:"forms",disable_global_radio:"The plugin is set to 'Scoped' by default when configured under a {scope}. To configure a global plugin, navigate to the global plugin list page.",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it."},lf={view_advanced_fields:"View Advanced Fields",window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},start_with_a_use_case:"Start with a use case:",use_case_index:"Use case {index}",error_message:{label:"Error Message",code_placeholder:"Code Message",message_placeholder:"Error Message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},identifiers:{label:"Identifiers",options:{ip:"IP",credential:"Credential",consumer:"Consumer",service:"Service",header:"Header",path:"Path","consumer-group":"Consumer Group"}},redis:{title:"Configure your Redis",address_example:"e.g. localhost:6379"}},cf={field_is_required:"This field is required",invalid_format:"Invalid format",number_too_small:"The number is too small. Minimum: {0}",number_too_large:"The number is too large. Maximum: {0}",invalid_number:"Invalid number",invalid_integer:"The value is not an integer",text_too_short:"The length of text is too short. Current: {0}, Minimum: {1}",text_too_long:"The length of text is too long. Current: {0}, Maximum: {1}",this_not_text:"This is not a text",this_not_array:"This is not an array",select_min_items:"Select minimum {0} items",select_max_items:"Select maximum {0} items",invalid_date:"Invalid date",date_is_early:"The date is too early. Current: {0}, Minimum: {1}",date_is_late:"The date is too late. Current: {0}, Maximum: {1}",invalid_email:"Invalid e-mail address",invalid_url:"Invalid URL",invalid_card:"Invalid card format",invalid_card_number:"Invalid card number",invalid_text_contain_number:"Invalid text - cannot contains numbers or special characters",invalid_tex_contain_spec:"Invalid text - cannot contains special characters"},df={title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},uf={labels:{on:"On",off:"Off"}},dt={general:sf,"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"}},rla:lf,validators:cf,redis:df,vfg:uf},{t:Ne}=Ue.createI18n("en-us",dt),je={fieldIsRequired:Ne("validators.field_is_required"),invalidFormat:Ne("validators.invalid_format"),numberTooSmall:Ne("validators.number_too_small"),numberTooBig:Ne("validators.number_too_large"),invalidNumber:Ne("validators.invalid_number"),invalidInteger:Ne("validators.invalid_integer"),textTooSmall:Ne("validators.text_too_short"),textTooBig:Ne("validators.text_too_long"),thisNotText:Ne("validators.this_not_text"),thisNotArray:Ne("validators.this_not_array"),selectMinItems:Ne("validators.select_min_items"),selectMaxItems:Ne("validators.select_max_items"),invalidDate:Ne("validators.invalid_date"),dateIsEarly:Ne("validators.date_is_early"),dateIsLate:Ne("validators.date_is_late"),invalidEmail:Ne("validators.invalid_email"),invalidURL:Ne("validators.invalid_url"),invalidCard:Ne("validators.invalid_card"),invalidCardNumber:Ne("validators.invalid_card_number"),invalidTextContainNumber:Ne("validators.invalid_text_contain_number"),invalidTextContainSpec:Ne("validators.invalid_tex_contain_spec")},xe=(t,...n)=>{if(t&&n.length>0)for(let a=0;a<n.length;a++)t=t.replace("{"+(a-1)+"}",String(n[a]||""));return t},ot=(t,n,a=je)=>Pe(t)||t===""?n?[xe(a.fieldIsRequired)]:[]:null,Qt={required:(t,n,a,o=je)=>ot(t,n.required,o)||[],number:(t,n,a,o=je)=>{let i=ot(t,n.required,o);return i!=null||(i=[],ef(t)?(!Pe(n.min)&&t<n.min,(o=je)&&i.push(xe(o.numberTooSmall,n.min)),!Pe(n.max)&&t>n.max,(o=je)&&i.push(xe(o.numberTooBig,n.max))):i.push(xe(o.invalidNumber))),i},integer:(t,n,a,o=je)=>{let i=ot(t,n.required,o);return i!=null||(i=[],i.concat(Qt.number(t,n,a,o)),of(t)||i.push(xe(o.invalidInteger))),i},double:(t,n,a,o=je)=>ot(t,n.required,o)??(!ua(t)||isNaN(t)?[xe(o.invalidNumber)]:[]),string:(t,n,a,o=je)=>{let i=ot(t,n.required,o);return i!=null||(i=[],Kt(t)?(!Pe(n.min)&&t.length<n.min&&i.push(xe(o.textTooSmall,t.length,n.min)),!Pe(n.max)&&t.length>n.max&&i.push(xe(o.textTooBig,t.length,n.max))):i.push(xe(o.thisNotText))),i},array:(t,n,a,o=je)=>{if(n.required){if(!Array.isArray(t))return[xe(o.thisNotArray)];if(t.length===0)return[xe(o.fieldIsRequired)]}if(!Pe(t)){if(!Pe(n.min)&&t.length<n.min)return[xe(o.selectMinItems,n.min)];if(!Pe(n.max)&&t.length>n.max)return[xe(o.selectMaxItems,n.max)]}return[]},date:(t,n,a,o=je)=>{let i=ot(t,n.required,o);if(i!=null)return i;i=[];const r=new Date(t);if(isNaN(r.getDate()))return[xe(o.invalidDate)];if(!Pe(n.min)){const s=new Date(n.min);r.valueOf()<s.valueOf()&&i.push(xe(o.dateIsEarly,dn.format(r),dn.format(s)))}if(!Pe(n.max)){const s=new Date(n.max);r.valueOf()>s.valueOf()&&i.push(xe(o.dateIsLate,dn.format(r),dn.format(s)))}return i},regexp:(t,n,a,o=je)=>ot(t,n.required,o)??(!Pe(n.pattern)&&!new RegExp(n.pattern).test(t)?[xe(o.invalidFormat)]:[]),email:(t,n,a,o=je)=>ot(t,n.required,o)??(/^(([^<>()\[\]\\.,;:\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(t)?[]:[xe(o.invalidEmail)]),url:(t,n,a,o=je)=>ot(t,n.required,o)??(/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g.test(t)?[]:[xe(o.invalidURL)]),creditCard:(t,n,a,o=je)=>{const i=ot(t,n.required,o);if(i!=null)return i;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})$/,s=t.replace(/[^0-9]+/g,"");if(!r.test(s))return[xe(o.invalidCard)];let l=0,c,m,p;for(let u=s.length-1;u>=0;u--)c=s.substring(u,u+1),m=parseInt(c,10),p?(m*=2,m>=10?l+=m%10+1:l+=m):l+=m,p=!p;return l%10===0&&s?[]:[xe(o.invalidCardNumber)]},alpha:(t,n,a,o=je)=>ot(t,n.required,o)??(/^[a-zA-Z]*$/.test(t)?[]:[xe(o.invalidTextContainNumber)]),alphaNumeric:(t,n,a,o=je)=>ot(t,n.required,o)??(/^[a-zA-Z0-9]*$/.test(t)?[]:[xe(o.invalidTextContainSpec)])};Object.keys(Qt).forEach(t=>{const n=Qt[t];be(n)&&(n.locale=a=>(o,i,r)=>n(o,i,r,_A(a,je)))});function Ir(t){return Kt(t)?Qt[t]!=null?Qt[t]:(console.warn(`'${t}' is not a validator function!`),null):t}function Wa(t,n,a){let o=fe(a.context,"schema.attributes",{});const i=n.value||"input";Kt(i)&&(o=fe(o,i)||o),Ke(o,(r,s)=>{t.setAttribute(s,r)})}const Et={name:"abstractField",props:["vfg","model","schema","formOptions","disabled"],emits:["validated","modelUpdated"],data(){return{errors:[],debouncedValidateFunc:null,debouncedFormatFunc:null}},directives:{attributes:{beforeMount:Wa,updated:Wa,componentUpdated:Wa}},computed:{value:{cache:!1,get(){let t;return be(fe(this.schema,"get"))?t=this.schema.get(this.model):t=fe(this.model,this.schema.model),this.formatValueToField(t)},set(t){const n=this.value;t=this.formatValueToModel(t),be(t)?t(t,n):this.updateModelValue(t,n)}}},methods:{validate(t){this.clearValidationErrors();const n=fe(this.formOptions,"validateAsync",!1);let a=[];if(this.schema.validator&&this.schema.readonly!==!0&&this.disabled!==!0){const i=[];Array.isArray(this.schema.validator)?Ke(this.schema.validator,r=>{i.push(Ir(r).bind(this))}):i.push(Ir(this.schema.validator).bind(this)),Ke(i,r=>{if(n)a.push(r(this.value,this.schema,this.model));else{const s=r(this.value,this.schema,this.model);s&&be(s.then)?s.then(l=>{l&&(this.errors=this.errors.concat(l));const c=this.errors.length===0;this.$emit("validated",c,this.errors,this)}):s&&(a=a.concat(s))}})}const o=i=>{let r=[];Ke(sr(i),l=>{Array.isArray(l)&&l.length>0?r=r.concat(l):Kt(l)&&r.push(l)}),be(this.schema.onValidated)&&this.schema.onValidated.call(this,this.model,r,this.schema);const s=r.length===0;return t||this.$emit("validated",s,r,this),this.errors=r,r};return n?Promise.all(a).then(o):o(a)},debouncedValidate(){be(this.debouncedValidateFunc)||(this.debouncedValidateFunc=Tn(this.validate.bind(this),fe(this.schema,"validateDebounceTime",fe(this.formOptions,"validateDebounceTime",500)))),this.debouncedValidateFunc()},updateModelValue(t,n){let a=!1;be(this.schema.set)?(this.schema.set(this.model,t),a=!0):this.schema.model&&(this.setModelValueByPath(this.schema.model,t),a=!0),a&&(this.$emit("modelUpdated",t,this.schema.model),be(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,t,n,this.schema),fe(this.formOptions,"validateAfterChanged",!1)===!0&&(fe(this.schema,"validateDebounceTime",fe(this.formOptions,"validateDebounceTime",0))>0?this.debouncedValidate():this.validate()))},clearValidationErrors(){this.errors.splice(0)},setModelValueByPath(t,n){let a=t.replace(/\[(\w+)\]/g,".$1");a=a.replace(/^\./,"");let o=this.model;const i=a.split(".");let r=0;const s=i.length;for(;r<s;){const l=i[r];if(r<s-1)o[l]!==void 0||(o[l]={}),o=o[l];else{o[l]=n;return}++r}},getFieldID(t,n=!1){const a=fe(this.formOptions,"fieldIdPrefix","");return qa(t,a)+(n?"-"+lr():"")},getLabelId(t){return`${this.getFieldID(t)}-label`},getFieldClasses(){return fe(this.schema,"fieldClasses",[])},formatValueToField(t){return t},formatValueToModel(t){return t}}},Ee=(t,n)=>{const a=t.__vccOpts||t;for(const[o,i]of n)a[o]=i;return a},pf={mixins:[Et],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(t,n){this.$emit("model-updated",t,n)}}},mf={class:"advanced-field-dropdown-wrapper","data-testid":"advanced-field-dropdown-wrapper"},gf={class:"material-icons"};function Af(t,n,a,o,i,r){const s=e.resolveComponent("vue-form-generator");return e.openBlock(),e.createElementBlock("div",mf,[e.createElementVNode("button",{class:"advanced-field-title",type:"button",onClick:n[0]||(n[0]=(...l)=>r.handleOpen&&r.handleOpen(...l))},[e.createElementVNode("i",gf,e.toDisplayString(i.isOpen?"keyboard_arrow_up":"keyboard_arrow_right"),1),e.createElementVNode("span",null,e.toDisplayString(r.titleText),1)]),e.createElementVNode("div",{class:e.normalizeClass(["advanced-field-dropdown",r.openClass])},[e.createVNode(s,{model:t.model,options:{helpAsHtml:!0},schema:t.schema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])],2)])}const ff=Ee(pf,[["render",Af],["__scopeId","data-v-acfccff7"]]),hf={class:"array-card-container"},yf=e.defineComponent({__name:"FieldArrayCardContainer",props:{model:{type:Object,default:()=>null},schema:{type:Object,default:()=>null},index:{type:Number,default:void 0}},emits:["remove-item"],setup(t){return e.provide("vfg-array-item-index",t.index),(n,a)=>{const o=e.resolveComponent("KCard"),i=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",hf,[e.createVNode(o,{class:"card"},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default",{},void 0,!0)]),_:3}),e.createVNode(i,{appearance:"tertiary",class:"array-card-remove-button",onClick:a[0]||(a[0]=r=>n.$emit("remove-item"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.TrashIcon))]),_:1})])}}}),Or=Ee(yf,[["__scopeId","data-v-97302224"]]),bf={class:"array-item-wrapper"},Ef={class:"array-item"},wf={class:"array-item-after"},Cf=e.defineComponent({__name:"FieldArrayItem",props:{model:{type:String,default:""}},emits:["remove-item"],setup(t){return(n,a)=>{const o=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",bf,[e.createElementVNode("div",Ef,[e.renderSlot(n.$slots,"default",{},void 0,!0),e.createVNode(o,{appearance:"tertiary",class:"delete",onClick:a[0]||(a[0]=i=>n.$emit("remove-item"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.TrashIcon))]),_:1})]),e.createElementVNode("div",wf,[e.renderSlot(n.$slots,"after",{},void 0,!0)])])}}}),Rr=Ee(Cf,[["__scopeId","data-v-51d79db2"]]),Bf={class:"multi-item-wrapper"},kf=e.defineComponent({__name:"FieldArrayMultiItem",emits:["remove-item"],setup(t){return(n,a)=>{const o=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",Bf,[e.renderSlot(n.$slots,"default",{},void 0,!0),e.createVNode(o,{appearance:"danger",class:"delete",onClick:a[0]||(a[0]=i=>n.$emit("remove-item"))},{default:e.withCtx(()=>a[1]||(a[1]=[e.createTextVNode(" - Remove Field ")])),_:1}),a[2]||(a[2]=e.createElementVNode("hr",null,null,-1))])}}}),Mr=Ee(kf,[["__scopeId","data-v-b4fcf731"]]),If="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",Of=t=>t?t.length===36&&new RegExp(`^${If}$`).test(t):!1,_a=50,Xt={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 Rf(t,n,a){return a?Xt.SET_REFERRAL_VALUE:t&&!n||!t&&n?Xt.UPDATE_ENTITY:t&&n?Xt.CREATE_FROM_ENTITY:Xt.CREATE_NOT_FROM_ENTITY}const Mf={mixins:[Et],inject:[Tt],emits:["model-updated"],setup(){const{t}=Ue.createI18n("en-us",dt);return{t}},data(){return{suggestions:[],idValue:"",message:"Type something to search",items:[],initialItems:[],loading:!1}},computed:{fieldState(){return Rf(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},scope(){return this.schema.label.toLowerCase()},bypassSearch(){return this.$route&&this.$route.query&&this.$route.query.no_search}},async created(){await this.$nextTick();let t,n;switch(this.fieldState){case Xt.UPDATE_ENTITY:if(!this[Tt]){console.warn("[@kong-ui-public/forms] No API service provided");break}n=(await this[Tt].getOne(this.entity,this.model[this.schema.model])).data,t=this.getItem(this.schema.entityDataKey?n[this.schema.entityDataKey]:n),this.idValue=t.id;break;case Xt.CREATE_FROM_ENTITY:this.idValue=this.associatedEntity.id;break;case Xt.SET_REFERRAL_VALUE:this.idValue=this.value}try{t&&(this.initialItems=[{...t,label:this.getSuggestionLabel(t),value:t.id}]),this.items=this.initialItems}catch(a){this.message=`There was an error loading ${this.schema.entity}`,console.error("err!",a)}},methods:{onQueryChange(t){t.trim().length===0&&(this.items=[],this.message="Type something to search"),typeof this.performSearch!="function"&&(this.performSearch=Tn(this.search,500)),this.performSearch(t)},async search(t){if(t.trim().length===0)return;this.loading=!0;const n=[],a=[],o=this.getInputFields(),i=new Set;Of(t)&&o.includes("id")?a.push((async()=>{const r=await this.fetchExact(t);n.push({...r,label:this.getSuggestionLabel(r),value:r.id})})()):a.push(...o.filter(r=>r!=="id").map(async r=>{(await this.fetchSuggestions(t,r)).forEach(s=>{i.has(s.id)||(i.add(s.id),n.push({...s,label:this.getSuggestionLabel(s),value:s.id}))})})),await Promise.all(a),this.items=n,this.items.length===0&&(this.message="No results"),this.loading=!1},getItem(t){return t.data?t.data.length>0?t.data[0]:[]:t},async fetchUntilLimit(t){const n=[];let a=null;if(!this[Tt])return console.warn("[@kong-ui-public/forms] No API service provided"),[];for(;n.length<_a;){const o=await this[Tt].getAll(this.entity,{size:_a,offset:a,...t});if(n.push(...o.data.data),a=o.data.offset,!a)break}return n.slice(0,_a)},async fetchSuggestions(t,n){return this.fetchUntilLimit({[n]:t})},async fetchExact(t){return this[Tt]?(await this[Tt].getOne(this.entity,t)).data:(console.warn("[@kong-ui-public/forms] No API service provided"),{})},getInputFields(){var t,n;return((n=(t=this.schema)==null?void 0:t.inputValues)==null?void 0:n.fields)||[]},getSuggestionLabel(t){const n=this.getInputFields();return n.length&&t?n.map(a=>t[a]).filter(Boolean).join(" - "):""},updateModel(t){this.$emit("model-updated",t!=null&&t.length?t:null,this.schema.model)},onSelected(t){this.idValue=t&&t.id,this.updateModel(this.getReturnValue(t||{}))},getReturnValue(t){var n;const a=(n=this.schema)==null?void 0:n.returnKey;return a?t[a]:t.id}}},Sf=["data-testid","data-testlabel"],Tf=["data-testid"],xf={class:"autosuggest__results_message"};function vf(t,n,a,o,i,r){const s=e.resolveComponent("KSelect");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.schema.disabled?"k-tooltip":"div"),{class:"field-wrap autosuggest","max-width":"300",text:o.t("general.disable_source_scope_change",{scope:r.scope})},{default:e.withCtx(()=>[e.createVNode(s,{id:t.schema.model,ref:"suggestion",modelValue:i.idValue,"onUpdate:modelValue":n[0]||(n[0]=l=>i.idValue=l),clearable:"",disabled:t.schema.disabled,"enable-filtering":"","filter-function":()=>!0,items:i.items,loading:i.loading,placeholder:t.schema.placeholder,width:"100%",onChange:r.onSelected,onQueryChange:r.onQueryChange},{"item-template":e.withCtx(({item:l})=>[e.createElementVNode("span",{class:"first-part","data-testid":l.id&&`${l.id}-0`,"data-testlabel":l.label},e.toDisplayString(r.getSuggestionLabel(l).split(" - ")[0]),9,Sf),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getSuggestionLabel(l).split(" - ").slice(1),(c,m)=>(e.openBlock(),e.createElementBlock("span",{key:m,class:"field-span","data-testid":l.id&&`${l.id}-${m+1}`||m+1},e.toDisplayString(c),9,Tf))),128))]),empty:e.withCtx(()=>[e.createElementVNode("div",xf,[e.createElementVNode("span",null,e.toDisplayString(i.message),1)])]),_:1},8,["id","modelValue","disabled","items","loading","placeholder","onChange","onQueryChange"])]),_:1},8,["text"])}const Sr=Ee(Mf,[["render",vf],["__scopeId","data-v-40a272a2"]]);function Vf(t){const n=e.ref([]),a=e.ref(null),o=f=>Kt(f)?Qt[f]!=null?Qt[f]:(console.warn(`'${f}' is not a validator function!`),null):f,i=e.computed({get(){var f,b;let k;return be(fe(t.schema,"get"))?k=t.schema.get((f=t.model)==null?void 0:f.value):k=fe((b=t.model)==null?void 0:b.value,t.schema.model),h(k)},set(f){const b=i;f=C(f),be(f)?f(f,b):l(f,b)}}),r=f=>{var b;c();const k=fe(t.formOptions,"validateAsync",!1);let O=[];if(t.schema.readonly!==!0&&t.disabled!==!0){const B=[],S=(b=t.schema)==null?void 0:b.validator;S&&(Array.isArray(S)?Ke(S,A=>{B.push(o(A))}):B.push(o(S))),be(t.externalValidator)&&B.push(t.externalValidator),Ke(B,A=>{var y,E;if(k)O.push(A(i.value,t.schema,(y=t.model)==null?void 0:y.value));else{const L=A(i.value,t.schema,(E=t.model)==null?void 0:E.value);L&&be(L.then)?L.then(I=>{I&&(n.value=n.value.concat(I));const x=n.value.length===0;t.emitValidated&&t.emitValidated({isValid:x,errors:n.value,field:t.schema})}):L&&(O=O.concat(L))}})}const w=B=>{var S,A;let y=[];if(Ke(sr(B),E=>{Array.isArray(E)&&E.length>0?y=y.concat(E):Kt(E)&&y.push(E)}),be((S=t.schema)==null?void 0:S.onValidated)&&t.schema.onValidated((A=t.model)==null?void 0:A.value,y,t.schema),!f){const E=y.length===0;t.emitValidated&&t.emitValidated({isValid:E,errors:y,field:t.schema})}return B=y,y};return k?Promise.all(O).then(w):w(O)},s=()=>{be(a.value)?a.value():a.value=Tn(r,fe(t.schema,"validateDebounceTime",fe(t.formOptions,"validateDebounceTime",500)))},l=(f,b)=>{var k,O,w;let B=!1;be(t.schema.set)?(t.schema.set((k=t.model)==null?void 0:k.value,f),B=!0):t.schema.model&&(m(t.schema.model,f),B=!0),B&&(t.emitModelUpdated&&(O=t.model)!=null&&O.value&&t.emitModelUpdated({value:f,model:t.schema.model}),be(t.schema.onChanged)&&t.schema.onChanged((w=t.model)==null?void 0:w.value,f,b,t.schema),fe(t.formOptions,"validateAfterChanged",!1)===!0&&(fe(t.schema,"validateDebounceTime",fe(t.formOptions,"validateDebounceTime",0))>0?s():r()))},c=()=>{n.value.splice(0)},m=(f,b)=>{var k;let O=f.replace(/\[(\w+)\]/g,".$1");O=O.replace(/^\./,"");let w=((k=t.model)==null?void 0:k.value)||{},B=0;const S=O.split("."),A=S.length;for(;B<A;){const y=S[B];if(B<A-1)w[y]!==void 0||(w[y]={}),w=w[y];else{w[y]=b;return}++B}},p=(f,b=!1)=>{const k=fe(t.formOptions,"fieldIdPrefix","");return qa(f,k)+(b?"-"+lr():"")},u=f=>`${p(f)}-label`,g=()=>fe(t.schema,"fieldClasses",[]),h=f=>t.formatValueToField&&typeof t.formatValueToField=="function"?t.formatValueToField(f):f,C=f=>t.formatValueToModel&&typeof t.formatValueToModel=="function"?t.formatValueToModel(f):f;return{value:i,clearValidationErrors:c,getFieldID:p,getLabelId:u,getFieldClasses:g,updateModelValue:l}}function Pf(t){const n=[],a=o=>{const i=["cluster-cache","cluster_cache"];for(const r of i)if(o.model.includes(r))return!1;return new RegExp("(?<=-redis-).*").test(o.model)};return t.fields.forEach(o=>{a(o)&&n.push(o)}),{redis:{id:"_redis",fields:n,model:"__redis_partial",redisType:t._supported_redis_partial_type,redisPath:t._redis_partial_path},redisModels:n.map(o=>o.model)}}function Nf(t,n){const a=new RegExp("(?<=config-redis-).*"),o=/Config\.Redis.*/;return n.filter(i=>{const r=i.model.match(a);return r&&!Object.keys(t).includes(r[0])}).map(i=>{const r=i.label.match(o);return{label:r?r[0]:i.label,key:i.model,value:"N/A",type:"text"}})}const st={useAbstractFields:Vf,useRedisPartial:Pf,useRedisNonStandardFields:Nf},Df={class:"form-field-wrapper"},Lf=e.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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRefs(o),s=e.inject(ze,void 0),{updateModelValue:l,getFieldID:c,clearValidationErrors:m,value:p}=st.useAbstractFields({model:r.model,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}});n({clearValidationErrors:m});const u=e.computed(()=>{var w;const B=(w=o.schema)==null?void 0:w.inputType.toLowerCase();switch(B){case"string":return"text";case"datetime":return"datetime-local";default:return B||"text"}}),g={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss","datetime-local":"YYYY-MM-DDTHH:mm:ss"},h=(w,B)=>{var S,A;let y=w;const E=g[u.value]||"",L=dn.parse(w,E);L&&((S=o.schema)!=null&&S.format?y=dn.format(L,(A=o.schema)==null?void 0:A.format):y=L.valueOf()),l(y,B)},C=(w,B)=>{ua(w)||(w=NaN),l(w,B)},f=w=>{let B=w;switch(u.value){case"number":case"range":ua(parseFloat(w))&&(B=parseFloat(w));break}p.value=B,l(B,w)},b=w=>{p.value=w,l(w,w)},k=e.ref(null),O=()=>{var w;be(k.value)&&((w=k.value)==null||w.flush())};return e.onMounted(()=>{switch(u.value){case"number":case"range":k.value=Tn((w,B)=>{C(w,B)},parseInt(fe(o.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break;case"date":case"datetime":case"datetime-local":k.value=Tn((w,B)=>{h(w,B)},parseInt(fe(o.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break}}),e.onBeforeMount(()=>{u.value==="checkbox"?console.warn("The use of 'checkbox' inputType with 'input' type fields is deprecated. Use 'checkbox' type instead."):u.value==="radio"?console.warn("The use of 'radio' inputType with 'input' type fields is deprecated. Use 'radio' type instead."):u.value==="file"&&console.warn("The 'file' type in input field is deprecated. Use 'file' field instead.")}),(w,B)=>{const S=e.resolveComponent("KInput");return e.openBlock(),e.createElementBlock("div",Df,[e.createVNode(S,e.mergeProps(w.$attrs,{id:e.unref(c)(t.schema),autocomplete:t.schema.autocomplete,class:t.schema.fieldClasses,disabled:t.disabled||void 0,help:t.hint?t.hint:u.value==="color"||u.value==="range"?e.unref(p):void 0,max:t.schema.max,maxlength:t.schema.maxlength,min:t.schema.min,minlength:t.schema.minlength,"model-value":e.unref(p),name:t.schema.inputName,pattern:t.schema.pattern,placeholder:t.schema.placeholder,readonly:t.schema.readonly,required:t.schema.required,"show-password-mask-toggle":u.value==="password",type:u.value,width:t.schema.width,onBlur:O,"onUpdate:modelValue":f}),null,16,["id","autocomplete","class","disabled","help","max","maxlength","min","minlength","model-value","name","pattern","placeholder","readonly","required","show-password-mask-toggle","type","width"]),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(s)),{schema:t.schema,update:b,value:e.unref(p)},null,8,["schema","value"]))])}}}),Tr=Ee(Lf,[["__scopeId","data-v-fe1132bb"]]),Uf={name:"FieldMetric",components:{AddIcon:Te.AddIcon,TrashIcon:Te.TrashIcon},mixins:[Et],emits:["remove-item"],data(){return{contentVisible:!1}}},jf={key:0,class:"content"};function Gf(t,n,a,o,i,r){const s=e.resolveComponent("AddIcon"),l=e.resolveComponent("TrashIcon"),c=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["field-dropdown",{active:i.contentVisible}])},[e.createElementVNode("div",{class:"title",onClick:n[0]||(n[0]=m=>i.contentVisible=!i.contentVisible)},[e.createTextVNode(e.toDisplayString(t.model.name?t.model.name:"New Item")+" ",1),e.createVNode(s,{class:"metric-add-icon"})]),e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[i.contentVisible?(e.openBlock(),e.createElementBlock("div",jf,[e.renderSlot(t.$slots,"default"),e.createVNode(c,{appearance:"tertiary",class:"metric-remove-button",onClick:n[1]||(n[1]=m=>t.$emit("remove-item"))},{default:e.withCtx(()=>[e.createVNode(l)]),_:1})])):e.createCommentVNode("",!0)]),_:3})],2)}const xr=Ee(Uf,[["render",Gf]]),Ff={mixins:[Et],emits:["modelUpdated"],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 t=Object.keys(this.value),n={};for(let a=0;a<t.length;a++){const o=t[a];n[o]=typeof this.value[o]}this.keyTypes=n},methods:{removeElement(t){const n=this.value;delete n[t],this.value=JSON.parse(JSON.stringify(n));const a=this.keyTypes;delete a[t],this.keyTypes=JSON.parse(JSON.stringify(a))},addKey(){this.value[this.newKeyName]=void 0,this.value={...this.value},this.keyTypes[this.newKeyName]=this.newKeyType,this.keyTypes={...this.keyTypes},this.newKeyName=""},updateModel(t,n){this.$emit("modelUpdated",t,n)}}},Hf={class:"field-object-container"},Yf={key:1},Kf=["id"],zf={key:0},Qf=["onUpdate:modelValue"],Xf={key:1},qf=["onUpdate:modelValue"],Jf={key:2},Zf=["onUpdate:modelValue"],Wf=["onClick"];function _f(t,n,a,o,i,r){const s=e.resolveComponent("vue-form-generator"),l=e.resolveDirective("attributes");return e.withDirectives((e.openBlock(),e.createElementBlock("div",Hf,[t.schema.schema?(e.openBlock(),e.createBlock(s,{key:0,model:t.value,options:t.formOptions,schema:t.schema.schema,onModelUpdated:r.updateModel},null,8,["model","options","schema","onModelUpdated"])):(e.openBlock(),e.createElementBlock("div",Yf,[e.createElementVNode("table",{id:t.getFieldID(t.schema),class:e.normalizeClass(t.schema.fieldClasses)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(c,m)=>(e.openBlock(),e.createElementBlock("tr",{key:m},[e.createElementVNode("td",null,e.toDisplayString(m),1),i.keyTypes[m]==="string"?(e.openBlock(),e.createElementBlock("td",zf,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p=>t.value[m]=p,type:"text"},null,8,Qf),[[e.vModelText,t.value[m]]])])):e.createCommentVNode("",!0),i.keyTypes[m]==="boolean"?(e.openBlock(),e.createElementBlock("td",Xf,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p=>t.value[m]=p,type:"checkbox"},null,8,qf),[[e.vModelCheckbox,t.value[m]]])])):e.createCommentVNode("",!0),i.keyTypes[m]==="number"?(e.openBlock(),e.createElementBlock("td",Jf,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p=>t.value[m]=p,type:"number"},null,8,Zf),[[e.vModelText,t.value[m]]])])):e.createCommentVNode("",!0),e.createElementVNode("td",null,[e.createElementVNode("input",{type:"button",value:"x",onClick:p=>r.removeElement(m)},null,8,Wf)])]))),128))],10,Kf),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":n[0]||(n[0]=c=>i.newKeyType=c)},n[3]||(n[3]=[e.createElementVNode("option",{value:"string"}," String ",-1),e.createElementVNode("option",{value:"number"}," Number ",-1),e.createElementVNode("option",{value:"boolean"}," Boolean ",-1)]),512),[[e.vModelSelect,i.newKeyType]]),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":n[1]||(n[1]=c=>i.newKeyName=c),type:"text"},null,512),[[e.vModelText,i.newKeyName]]),e.createElementVNode("input",{type:"button",value:"Add key",onClick:n[2]||(n[2]=(...c)=>r.addKey&&r.addKey(...c))})]))])),[[l,i.attributes]])}const vr=Ee(Ff,[["render",_f],["__scopeId","data-v-b7e3dcd7"]]),$f={components:{TrashIcon:Te.TrashIcon},mixins:[Et],inject:{autofillSlot:{from:ze,default:void 0}},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:(t,n)=>({[this.schema.model]:t[n]}),set:(t,n,a)=>t[n]=a[this.schema.model]}):this.model[this.schema.model]},valueInputType(){var t;return["number","integer"].includes((t=this.schema.values)==null?void 0:t.type)?"number":"text"}},mounted(){this.value||(this.value={});let t=[];this.subSchema?t=this.subSchema.fields:this.subFields&&(t=this.schema.fields[0].schema),this.value=this.transformMapModelValuesToObject(this.model,t,this.schema.model)},methods:{removeElement(t){const n=this.value;delete n[t],this.value={...n}},transformMapModelValuesToObject(t,n,a){let o={};try{o=JSON.parse(JSON.stringify(t??{}))[a]??{}}catch{}return Object.keys(t).map(i=>{const r=i.indexOf(a+"-");if(r>-1&&Array.isArray(n))if(n.length>0){const s=i.split("-").filter(c=>n.find(m=>m.model===c)),l=i.split(`-${s}`)[0].split(`${a}-`)[1];s.length?o[l]={...o[l],[s]:t[i]}:o[i.substring(r+`${a}-`.length)]=t[i]}else o[i.substring(`${a}-`.length)]=t[i];else{const s=i.split("-").filter(c=>c===this.schema.model),l=i.split(`-${s}`)[0].split(`${a}-`)[1];l&&(o[l]=t[i])}return i}),o},addKey(){var t;const n=this.subSchema&&Array.isArray(this.subSchema.fields)&&this.subSchema.fields.length===1&&this.subSchema.fields[0].type==="array",a=((t=this.schema.values)==null?void 0:t.default)??(this.valueInputType==="number"?0:""),o=this.subSchema?n?[""]:{}:a;this.value[this.newKeyName]=o,this.newKeyName=""},updateModel(t,n){this.$emit("model-updated",this.model[this.schema.model],n)}}},eh=["id"],th=["data-testid"],nh={class:"item-wrapper"},ah={class:"index-wrapper"},oh={key:0},ih={key:1},rh=["onUpdate:modelValue","placeholder","type","onInput"],sh={key:0,class:"hint"},lh={class:"input-item"},ch=["placeholder"],dh={key:0,class:"hint"};function uh(t,n,a,o,i,r){const s=e.resolveComponent("TrashIcon"),l=e.resolveComponent("KButton"),c=e.resolveComponent("vue-form-generator");return e.openBlock(),e.createElementBlock("div",{id:t.getFieldID(t.schema),class:e.normalizeClass(["object-advanced-wrapper",t.schema.fieldClasses])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(m,p)=>(e.openBlock(),e.createElementBlock("div",{key:p,"data-testid":`field-object-key-${p}`},[e.createElementVNode("div",null,[e.createElementVNode("div",nh,[e.createElementVNode("div",ah,[e.createElementVNode("strong",null,e.toDisplayString(p),1),e.createElementVNode("div",null,[e.createVNode(l,{appearance:"tertiary",class:"delete",icon:"",type:"button",onClick:u=>r.removeElement(p)},{default:e.withCtx(()=>[e.createVNode(s)]),_:2},1032,["onClick"])])]),n[1]||(n[1]=e.createElementVNode("hr",{class:"divider"},null,-1)),r.subSchema?(e.openBlock(),e.createElementBlock("div",oh,[e.createVNode(c,{model:r.transformedModel[p],options:{helpAsHtml:!0},schema:r.subSchema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])):(e.openBlock(),e.createElementBlock("div",ih,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u=>t.value[p]=u,class:"form-control",placeholder:t.schema.fields&&t.schema.fields[0].schema.placeholder,type:r.valueInputType,onInput:u=>r.updateModel(t.value[p],t.model[t.schema.model])},null,40,rh),[[e.vModelDynamic,t.value[p]]]),t.schema.fields&&t.schema.fields[0].schema.hint?(e.openBlock(),e.createElementBlock("p",sh,e.toDisplayString(t.schema.fields[0].schema.hint),1)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema.fields&&t.schema.fields[0].schema||t.schema.values,update:u=>t.value[p]=u,value:t.value[p]},null,8,["schema","update","value"]))])),n[2]||(n[2]=e.createElementVNode("hr",{class:"wide-divider"},null,-1))])])],8,th))),128)),e.createElementVNode("div",{class:e.normalizeClass(["input-wrapper",{indent:r.hasObjectKeys}])},[e.createElementVNode("div",lh,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=m=>i.newKeyName=m),class:"form-control","data-testid":"keyname-input",placeholder:t.schema.placeholder,type:"text"},null,8,ch),[[e.vModelText,i.newKeyName]]),e.createVNode(l,{appearance:"tertiary","data-testid":"add-key",disabled:!i.newKeyName,onClick:r.addKey},{default:e.withCtx(()=>[e.createTextVNode(" + Add "+e.toDisplayString(t.schema.buttonLabel||t.schema.label),1)]),_:1},8,["disabled","onClick"])]),t.schema.hintText?(e.openBlock(),e.createElementBlock("p",dh,e.toDisplayString(t.schema.hintText),1)):e.createCommentVNode("",!0)],2)],10,eh)}const Vr=Ee($f,[["render",uh],["__scopeId","data-v-9c0cacfc"]]),ph={class:"radio-selection-group"},mh=e.defineComponent({__name:"FieldRadio",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRefs(o),{updateModelValue:s,value:l,clearValidationErrors:c}=st.useAbstractFields({model:r.model,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:p=>{i("modelUpdated",p.value,p.model)}});n({clearValidationErrors:c});const m=p=>{let u=p;typeof p=="string"&&(u=p.split(","),o.schema.array||(u=u.toString())),s(u,p)};return(p,u)=>{const g=e.resolveComponent("KRadio");return e.openBlock(),e.createElementBlock("div",ph,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.schema.values,(h,C)=>(e.openBlock(),e.createBlock(g,{id:t.schema.name+"-"+C,key:h.value,modelValue:e.unref(l),"onUpdate:modelValue":u[0]||(u[0]=f=>e.isRef(l)?l.value=f:null),label:h.name,"label-attributes":{info:t.schema.help},name:t.schema.name,required:t.schema.required||void 0,"selected-value":h.value,onChange:m},null,8,["id","modelValue","label","label-attributes","name","required","selected-value"]))),128))])}}}),Pr=Ee(mh,[["__scopeId","data-v-09b8afda"]]),Nr=e.defineComponent({__name:"FieldSelect",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.computed(()=>o.schema.selectOptions||{}),s=f=>Pe(f)?null:f,l=e.toRefs(o),{getFieldID:c,clearValidationErrors:m,value:p}=st.useAbstractFields({model:l.model,schema:o.schema,formOptions:o.formOptions,formatValueToField:s,emitModelUpdated:f=>{i("modelUpdated",f.value,f.model)}});n({clearValidationErrors:m});const u=e.computed(()=>{const f=o.schema.values;return g(typeof f=="function"?f.apply(this,[o.model,o.schema]):f)}),g=f=>{const b=[];return f.forEach(k=>{b.push({label:C(k),value:h(k),disabled:typeof k=="object"&&k.disabled||void 0,group:typeof k=="object"&&String(k.group||"").toUpperCase()||void 0})}),b},h=f=>{if(Ze(f)){if(r.value&&typeof r.value.value<"u")return f[r.value.value];if(typeof f.id<"u")return String(f.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 f},C=f=>{if(Ze(f)){if(r.value&&typeof r.value.name<"u")return f[r.value.name];if(typeof f.name<"u")return String(f.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 String(f)};return(f,b)=>{const k=e.resolveComponent("KSelect");return e.openBlock(),e.createBlock(k,{id:e.unref(c)(t.schema),modelValue:e.unref(p),"onUpdate:modelValue":b[0]||(b[0]=O=>e.isRef(p)?p.value=O:null),class:e.normalizeClass(t.schema.fieldClasses),clearable:!t.schema.required,disabled:t.disabled||void 0,items:u.value,"kpop-attributes":{"data-testid":`${e.unref(c)(t.schema)}-items`},"label-attributes":{info:t.schema.help},name:t.schema.inputName,placeholder:r.value.hideNoneSelectedText?void 0:r.value.noneSelectedText||"Nothing Selected",required:t.schema.required||void 0,width:"100%"},null,8,["id","modelValue","class","clearable","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),gh={name:"FieldArray",components:{FieldArrayItem:Rr,FieldArrayMultiItem:Mr,FieldSelect:Nr,FieldMetric:xr,FieldObject:vr,FieldObjectAdvanced:Vr,FieldAutoSuggest:Sr,FieldRadio:Pr,FieldArrayCardContainer:Or,FieldInput:Tr},mixins:[Et],inject:{autofillSlot:{from:ze,default:void 0}},props:{newElementButtonLabel:{type:String,default:"New Item"},removeElementButtonLabel:{type:String,default:"x"}},emits:["refreshModel"],methods:{generateSchema(t,n,a){var o,i,r;let s;return n&&(s=JSON.parse(JSON.stringify(n)),(r=(i=(o=s.schema)==null?void 0:o.fields)==null?void 0:i.map)==null||r.call(i,l=>(l.id=`${l.id||l.model}-${a}`,l))),{...s,set(l,c){t[a]=c},get(){return t[a]}}},newElement(){let t=this.value,n;(!t||!t.push)&&(t=[]),this.schema.items&&this.schema.items.default&&(typeof this.schema.items.default=="function"?n=this.schema.items.default():n=this.schema.items.default),t.push(n),this.value=[...t]},removeElement(t){this.value=this.value.filter((n,a)=>a!==t)},getFieldComponent(t){return t.component?t.component:"field-"+t.type},modelUpdated(){this.$emit("refreshModel")},handleInput(t,n){var a,o;let i=t;((o=(a=this.schema)==null?void 0:a.inputAttributes)==null?void 0:o.type)==="number"&&ua(parseFloat(t))&&(i=parseFloat(t)),this.value=this.value.map((r,s)=>s===n?i:r)}}},Ah=["id"],fh={key:1},hh=["onUpdate:modelValue","aria-labelledby","type"],yh=["onUpdate:modelValue","aria-labelledby"];function bh(t,n,a,o,i,r){const s=e.resolveComponent("KTextArea"),l=e.resolveComponent("KInput"),c=e.resolveComponent("KButton");return t.schema?(e.openBlock(),e.createElementBlock("div",{key:0,id:t.getFieldID(t.schema),class:e.normalizeClass(t.schema.fieldClasses)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(m,p)=>(e.openBlock(),e.createElementBlock("div",{key:p,class:e.normalizeClass(t.schema.fieldItemsClasses)},[t.schema.items&&t.schema.itemContainerComponent?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.schema.itemContainerComponent),{key:0,index:p,model:m,schema:r.generateSchema(t.value,t.schema.items,p),onRemoveItem:u=>r.removeElement(p)},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.getFieldComponent(t.schema.items)),{"form-options":t.formOptions,model:m,schema:r.generateSchema(t.value,t.schema.items,p),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))]),_:2},1064,["index","model","schema","onRemoveItem"])):t.schema.items?(e.openBlock(),e.createElementBlock("span",fh,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.getFieldComponent(t.schema.items)),{"form-options":t.formOptions,model:m,schema:r.generateSchema(t.value,t.schema.items,p),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))])):t.schema.itemContainerComponent?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.schema.itemContainerComponent),{key:2,"data-testid":`${t.getFieldID(t.schema)}-item-${p}`,model:m,schema:r.generateSchema(t.value,t.schema.items,p),onRemoveItem:u=>r.removeElement(p)},{after:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema,update:u=>t.value[p]=u,value:t.value[p]},null,8,["schema","update","value"]))]),default:e.withCtx(()=>{var u;return[t.schema.inputAttributes&&t.schema.inputAttributes.type==="textarea"?(e.openBlock(),e.createBlock(s,e.mergeProps({key:0,ref_for:!0},t.schema.inputAttributes,{id:t.getFieldID(t.schema),modelValue:t.value[p],"onUpdate:modelValue":g=>t.value[p]=g,"aria-labelledby":t.getLabelId(t.schema),autosize:"","character-limit":t.schema.inputAttributes.max,class:t.schema.fieldClasses,maxlength:t.schema.max,minlength:t.schema.min,name:t.schema.inputName,placeholder:t.schema.placeholder,readonly:t.schema.readonly,required:t.schema.required,resizable:"",rows:t.schema.rows||3}),null,16,["id","modelValue","onUpdate:modelValue","aria-labelledby","character-limit","class","maxlength","minlength","name","placeholder","readonly","required","rows"])):!t.schema.inputAttributes||!t.schema.inputAttributes.type||t.schema.inputAttributes.type==="text"||t.schema.inputAttributes.type==="number"?(e.openBlock(),e.createBlock(l,e.mergeProps({key:1,"aria-labelledby":t.getLabelId(t.schema),ref_for:!0},t.schema.inputAttributes,{"model-value":t.value[p],type:t.schema.inputAttributes&&t.schema.inputAttributes.type||"text",onInput:g=>{r.handleInput(g,p)}}),null,16,["aria-labelledby","model-value","type","onInput"])):e.withDirectives((e.openBlock(),e.createElementBlock("input",e.mergeProps({key:2,"onUpdate:modelValue":g=>t.value[p]=g,"aria-labelledby":t.getLabelId(t.schema),ref_for:!0},t.schema.inputAttributes,{type:((u=t.schema.inputAttributes)==null?void 0:u.type)||"text"}),null,16,hh)),[[e.vModelDynamic,t.value[p]]])]}),_:2},1064,["data-testid","model","schema","onRemoveItem"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[e.withDirectives(e.createElementVNode("input",e.mergeProps({ref_for:!0},t.schema.inputAttributes,{"onUpdate:modelValue":u=>t.value[p]=u,"aria-labelledby":t.getLabelId(t.schema),type:"text"}),null,16,yh),[[e.vModelText,t.value[p]]]),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema,update:u=>t.value[p]=u,value:t.value[p]},null,8,["schema","update","value"]))],64))],2))),128)),e.createVNode(c,{appearance:"tertiary",class:e.normalizeClass(t.schema.newElementButtonLabelClasses),"data-testid":`add-${t.getFieldID(t.schema)}`,type:"button",onClick:r.newElement},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.schema.newElementButtonLabel||a.newElementButtonLabel),1)]),_:1},8,["class","data-testid","onClick"])],10,Ah)):e.createCommentVNode("",!0)}const Eh=Ee(gh,[["render",bh],["__scopeId","data-v-27efd618"]]),wh={class:"form-field-wrapper field-checkbox"},Ch=e.defineComponent({__name:"FieldCheckbox",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRefs(o),{getFieldID:s,value:l,clearValidationErrors:c}=st.useAbstractFields({model:r.model,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:m=>{i("modelUpdated",m.value,m.model)}});return n({clearValidationErrors:c}),(m,p)=>{const u=e.resolveComponent("KCheckbox");return e.openBlock(),e.createElementBlock("div",wh,[e.createVNode(u,e.mergeProps(m.$attrs,{id:e.unref(s)(t.schema),modelValue:e.unref(l),"onUpdate:modelValue":p[0]||(p[0]=g=>e.isRef(l)?l.value=g:null),autocomplete:t.schema.autocomplete,class:t.schema.fieldClasses,disabled:t.disabled||void 0,help:t.hint?t.hint:void 0,name:t.schema.inputName,readonly:t.schema.readonly,required:t.schema.required,width:t.schema.width}),null,16,["id","modelValue","autocomplete","class","disabled","help","name","readonly","required","width"])])}}}),Bh=Ee(Ch,[["__scopeId","data-v-6b4ee1cd"]]);var kh=4;function Dr(t){return Sn(t,kh)}const Ih={class:"wrapper"},Oh=["disabled"],Rh=["id","checked","disabled","onChange","name"],Mh=["disabled"],Sh={class:"info"},Th={class:"dropList"},xh=["id","checked","disabled","onChange","name"];function vh(t,n,a,o,i,r){const s=e.resolveDirective("attributes");return e.withDirectives((e.openBlock(),e.createElementBlock("div",Ih,[t.schema.listBox?(e.openBlock(),e.createElementBlock("div",{key:0,class:"listbox form-control",disabled:t.disabled||null},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.items,l=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["list-row",{"is-checked":r.isItemChecked(l)}])},[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{id:t.getFieldID(t.schema,!0),type:"checkbox",checked:r.isItemChecked(l)||null,disabled:t.disabled||null,onChange:c=>r.onChanged(c,l),name:r.getInputName(l)},null,40,Rh),[[s,"input"]]),e.createTextVNode(e.toDisplayString(r.getItemName(l)),1)])],2))),256))],8,Oh)):e.createCommentVNode("",!0),t.schema.listBox?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:1,class:"combobox form-control",disabled:t.disabled||null},[e.createElementVNode("div",{class:e.normalizeClass(["mainRow",{expanded:i.comboExpanded}]),onClick:n[0]||(n[0]=(...l)=>r.onExpandCombo&&r.onExpandCombo(...l))},[e.createElementVNode("div",Sh,e.toDisplayString(r.selectedCount)+" selected",1),n[1]||(n[1]=e.createElementVNode("div",{class:"arrow"},null,-1))],2),e.createElementVNode("div",Th,[i.comboExpanded?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(r.items,l=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["list-row",{"is-checked":r.isItemChecked(l)}])},[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{id:t.getFieldID(t.schema,!0),type:"checkbox",checked:r.isItemChecked(l)||null,disabled:t.disabled||null,onChange:c=>r.onChanged(c,l),name:r.getInputName(l)},null,40,xh),[[s,"input"]]),e.createTextVNode(e.toDisplayString(r.getItemName(l)),1)])],2))),256)):e.createCommentVNode("",!0)])],8,Mh))])),[[s,"wrapper"]])}const Vh={mixins:[Et],data(){return{comboExpanded:!1}},computed:{items(){const t=this.schema.values;return typeof t=="function"?t.apply(this,[this.model,this.schema]):t},selectedCount(){return this.value?this.value.length:0}},methods:{getInputName(t){return this.schema&&this.schema.inputName&&this.schema.inputName.length>0?ar(this.schema.inputName+"_"+this.getItemValue(t)):ar(this.getItemValue(t))},getItemValue(t){if(Ze(t)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.value<"u")return t[this.schema.checklistOptions.value];if(typeof t.value<"u")return t.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 t},getItemName(t){if(Ze(t)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.name<"u")return t[this.schema.checklistOptions.name];if(typeof t.name<"u")return t.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 t},isItemChecked(t){return this.value&&this.value.indexOf(this.getItemValue(t))!==-1},onChanged(t,n){if((Pe(this.value)||!Array.isArray(this.value))&&(this.value=[]),t.target.checked){const a=Dr(this.value);a.push(this.getItemValue(n)),this.value=a}else{const a=Dr(this.value);a.splice(this.value.indexOf(this.getItemValue(n)),1),this.value=a}},onExpandCombo(){this.comboExpanded=!this.comboExpanded}}},Ph=Ee(Vh,[["render",vh]]),Nh={name:"FieldKeyValuePairs",components:{TrashIcon:Te.TrashIcon},mixins:[Et],inject:{autofillSlot:{from:ze,default:void 0}},data(){return{pairs:[]}},watch:{pairs:{handler(){this.updateValue()},deep:!0}},created(){var t,n;this.value||(this.value={});const a=((n=this.model)==null?void 0:n[(t=this.schema)==null?void 0:t.model])??{};Object.keys(a).forEach(o=>{this.pairs.push({key:o,value:a[o]})})},methods:{onInput(t,n,a){this.pairs[n][a]=t.target.value},updateValue(){this.value=this.pairs.reduce((t,{key:n,value:a})=>({...t,...n&&a?{[n]:a}:null}),{})},addPair(){this.pairs.push({key:"",value:""})},removePair(t){this.pairs.splice(t,1)}}},Dh={class:"key-value-pairs-editor"},Lh={class:"pair-item-cell"},Uh=["data-testid","placeholder","value","onInput"],jh={class:"pair-item-cell"},Gh=["data-testid","placeholder","value","onInput"];function Fh(t,n,a,o,i,r){const s=e.resolveComponent("TrashIcon"),l=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",Dh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.pairs,(c,m)=>(e.openBlock(),e.createElementBlock("div",{key:m,class:"pair-item"},[e.createElementVNode("div",Lh,[e.createElementVNode("input",{class:"form-control","data-testid":`${t.getFieldID(t.schema)}-pair-key-${m}`,placeholder:t.schema.keyInputPlaceholder??"Key",type:"text",value:c.key,onInput:p=>{r.onInput(p,m,"key")}},null,40,Uh),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema,update:p=>r.onInput({target:{value:p}},m,"key"),value:c.key},null,8,["schema","update","value"]))]),e.createElementVNode("div",jh,[e.createElementVNode("input",{class:"form-control","data-testid":`${t.getFieldID(t.schema)}-pair-value-${m}`,placeholder:t.schema.valueInputPlaceholder??"Value",type:"text",value:c.value,onInput:p=>{r.onInput(p,m,"value")}},null,40,Gh),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.autofillSlot),{schema:t.schema,update:p=>r.onInput({target:{value:p}},m,"value"),value:c.value},null,8,["schema","update","value"]))]),e.createVNode(l,{appearance:"tertiary","data-testid":`${t.getFieldID(t.schema)}-remove-pair-${m}`,onClick:()=>{r.removePair(m)}},{default:e.withCtx(()=>[e.createVNode(s)]),_:2},1032,["data-testid","onClick"])]))),128)),e.createVNode(l,{appearance:"tertiary",class:e.normalizeClass(t.schema.newElementButtonLabelClasses),"data-testid":`${t.getFieldID(t.schema)}-add-pair`,type:"button",onClick:r.addPair},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.schema.newElementButtonLabel??"+ Add Pair"),1)]),_:1},8,["class","data-testid","onClick"])])}const Hh=Ee(Nh,[["render",Fh],["__scopeId","data-v-70998d5b"]]),Yh=e.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(t){const n=t,a=e.toRefs(n),{getFieldID:o,value:i}=st.useAbstractFields({model:a.model,schema:n.schema,formOptions:n.formOptions});return(r,s)=>{const l=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["field-label",t.schema.fieldClasses])},[e.createVNode(l,{id:e.unref(o)(t.schema)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)),1)]),_:1},8,["id"])],2)}}}),Kh=Ee(Yh,[["__scopeId","data-v-d046a15a"]]),zh=e.defineComponent({__name:"FieldMultiselect",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRef(o,"model"),{getLabelId:s,getFieldID:l,clearValidationErrors:c,value:m}=st.useAbstractFields({model:r,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:u=>{i("modelUpdated",u.value,u.model)}});n({clearValidationErrors:c});const p=e.computed(()=>{var u,g;return o.schema.values?o.schema.values:(g=(u=o.schema.elements)==null?void 0:u.one_of)!=null&&g.length?o.schema.elements.one_of.map(h=>({label:String(h),value:String(h)})):[]});return(u,g)=>{const h=e.resolveComponent("KMultiselect");return e.openBlock(),e.createBlock(h,{id:e.unref(l)(t.schema),modelValue:e.unref(m),"onUpdate:modelValue":g[0]||(g[0]=C=>e.isRef(m)?m.value=C:null),"aria-labelledby":e.unref(s)(t.schema),class:e.normalizeClass(t.schema.fieldClasses),"data-testid":"field-multiselect",disabled:t.disabled||void 0,items:p.value,"kpop-attributes":{"data-testid":`${e.unref(l)(t.schema)}-items`},"label-attributes":{info:t.schema.help},name:t.schema.inputName,placeholder:t.schema.placeholder,required:t.schema.required||void 0,width:"100%"},null,8,["id","modelValue","aria-labelledby","class","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),Qh={mixins:[Et],emits:["model-updated"],setup(){const{t}=Ue.createI18n("en-us",dt);return{t}},data(){return{checkedGroup:null,fieldModel:{...this.model},fieldSchema:[],scope:"scope"}},watch:{checkedGroup:{handler(t,n){if(n===null){this.fieldModel={...this.model};return}const a=this.schema.fields[t].fields,o=this.schema.fields[n].fields;o&&o.forEach(i=>this.updateModel("",i.model)),a&&a.forEach(i=>this.updateModel(this.fieldModel[i.model],i.model))}}},async created(){await this.$nextTick(),this.schema.fields.forEach((t,n)=>{t.fields&&t.fields.forEach(a=>{var o;this.model[a.model]&&(this.checkedGroup=n,this.fieldSchema.push(a.model),this.scope=(o=a.label)==null?void 0:o.toLowerCase())})}),this.checkedGroup===null&&(this.checkedGroup=0)},methods:{updateModel(t,n){this.$emit("model-updated",t,n)}}},Xh={class:"selection-group"},qh={class:"form-group horizontal-radios"},Jh={class:"radio-group"},Zh=["disabled","value"],Wh={class:"control-help"},_h={class:"option-field"},$h={class:"option-field-container"};function ey(t,n,a,o,i,r){const s=e.resolveComponent("vue-form-generator");return e.openBlock(),e.createElementBlock("div",Xh,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.$props.disabled?"k-tooltip":"div"),{"max-width":"300",text:o.t("general.disable_global_radio",{scope:i.scope})},{default:e.withCtx(()=>[e.createElementVNode("div",qh,[e.createElementVNode("div",Jh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.schema.fields,(l,c)=>(e.openBlock(),e.createElementBlock("div",{key:c,class:e.normalizeClass(["option-group",{"radio-disabled":t.$props.disabled}])},[e.createElementVNode("label",{class:e.normalizeClass(["k-label",`${l.label}-check`])},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=m=>i.checkedGroup=m),class:"k-input",disabled:t.$props.disabled,type:"radio",value:c},null,8,Zh),[[e.vModelRadio,i.checkedGroup]]),e.createTextVNode(" "+e.toDisplayString(l.label)+" ",1),e.createElementVNode("div",Wh,e.toDisplayString(l.description),1)],2)],2))),128))])])]),_:1},8,["text"])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.schema.fields,(l,c)=>(e.openBlock(),e.createElementBlock("div",{key:c,class:"option-group"},[e.withDirectives(e.createElementVNode("div",_h,[e.createElementVNode("div",$h,[e.createVNode(s,{model:t.model,options:{helpAsHtml:!0},schema:{fields:l.fields},onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])],512),[[e.vShow,l.fields&&i.checkedGroup===c]])]))),128))])}const ty=Ee(Qh,[["render",ey],["__scopeId","data-v-35c8682e"]]),ny={class:"form-field-wrapper"},ay=e.defineComponent({__name:"FieldSwitch",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(t,{expose:n,emit:a}){const o=t,i=a,{t:r}=Ue.createI18n("en-us",dt),s=g=>g!=null&&o.schema.valueOn?g===o.schema.valueOn:g,l=g=>g!=null&&o.schema.valueOn?g?o.schema.valueOn:o.schema.valueOff:g,c=e.toRefs(o),{getFieldID:m,value:p,clearValidationErrors:u}=st.useAbstractFields({model:c.model,schema:o.schema,formOptions:o.formOptions,formatValueToField:s,formatValueToModel:l,emitModelUpdated:g=>{i("modelUpdated",g.value,g.model)}});return n({clearValidationErrors:u}),(g,h)=>{const C=e.resolveComponent("KInputSwitch");return e.openBlock(),e.createElementBlock("div",ny,[e.createVNode(C,{id:e.unref(m)(t.schema),modelValue:e.unref(p),"onUpdate:modelValue":h[0]||(h[0]=f=>e.isRef(p)?p.value=f:null),autocomplete:t.schema.autocomplete,class:e.normalizeClass(t.schema.fieldClasses),disabled:t.disabled||void 0,label:e.unref(p)?t.schema.textOn||e.unref(r)("vfg.labels.on"):t.schema.textOff||e.unref(r)("vfg.labels.off"),"label-attributes":{info:t.schema.help},name:t.schema.inputName,required:t.schema.required||void 0},null,8,["id","modelValue","autocomplete","class","disabled","label","label-attributes","name","required"])])}}}),oy={class:"field-textarea"},iy=e.defineComponent({__name:"FieldTextArea",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(t,{expose:n,emit:a}){const o=t,i=a,r=e.toRefs(o),s=e.inject(ze,void 0),{updateModelValue:l,getFieldID:c,clearValidationErrors:m,value:p}=st.useAbstractFields({model:r.model,schema:o.schema,formOptions:o.formOptions,emitModelUpdated:g=>{i("modelUpdated",g.value,g.model)}});n({clearValidationErrors:m});const u=g=>{p.value=g,l(g,g)};return(g,h)=>{const C=e.resolveComponent("KTextArea");return e.openBlock(),e.createElementBlock("div",oy,[e.createVNode(C,e.mergeProps(g.$attrs,{id:e.unref(c)(t.schema),modelValue:e.unref(p),"onUpdate:modelValue":h[0]||(h[0]=f=>e.isRef(p)?p.value=f:null),autosize:"","character-limit":t.schema.max,class:t.schema.fieldClasses,disabled:t.disabled||void 0,help:t.hint||void 0,minlength:t.schema.min,name:t.schema.inputName,placeholder:t.schema.placeholder,readonly:t.schema.readonly,required:t.schema.required,resizable:"",rows:t.schema.rows||3}),null,16,["id","modelValue","character-limit","class","disabled","help","minlength","name","placeholder","readonly","required","rows"]),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(s)),{schema:t.schema,update:u,value:e.unref(p)},null,8,["schema","value"]))])}}}),ry=Ee(iy,[["__scopeId","data-v-0e146fba"]]),sy=Object.freeze(Object.defineProperty({__proto__:null,FieldAdvanced:ff,FieldArray:Eh,FieldArrayCardContainer:Or,FieldArrayItem:Rr,FieldArrayMultiItem:Mr,FieldAutoSuggest:Sr,FieldCheckbox:Bh,FieldChecklist:Ph,FieldInput:Tr,FieldKeyValuePairs:Hh,FieldLabel:Kh,FieldMetric:xr,FieldMultiselect:zh,FieldObject:vr,FieldObjectAdvanced:Vr,FieldRadio:Pr,FieldSelect:Nr,FieldSelectionGroup:ty,FieldSwitch:ay,FieldTextArea:ry},Symbol.toStringTag,{value:"Module"})),ly={name:"FormGroup",components:sy,mixins:[or],inject:{"vfg-array-item-index":{default:void 0}},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","refreshModel"],data(){return{child:e.ref()}},computed:{schema(){var t;if(!((t=this.field)!=null&&t.schema)||!Array.isArray(this.field.schema.fields))return this.field;const n=this["vfg-array-item-index"];return typeof n!="number"||Number.isNaN(n)?this.field:{...this.field,schema:{...this.field.schema,fields:this.field.schema.fields.map(a=>({...a,...a.id?{id:`${a.id}-${n}`}:void 0}))}}}},methods:{fieldTypeHasLabel(t){if(Pe(t.label))return!1;let n="";switch(t.type==="input"?n=t.inputType:n=t.type,n){case"button":case"submit":case"reset":return!1;default:return!0}},getFieldID(t){const n=fe(this.options,"fieldIdPrefix","");return qa(t,n)},getTooltipId(t){return`${this.getFieldID(t)}-tooltip`},getFieldComponent(t){return t.component?t.component:"field-"+t.type},getButtonType(t){return fe(t,"type","button")},onFieldValidated(t,n,a){this.$emit("validated",t,n,a)},buttonVisibility(t){return t.buttons&&t.buttons.length>0},buttonClickHandler(t,n,a){return t.onclick.call(this,this.model,n,a,this)},fieldHint(t){return be(t.hint)?t.hint.call(this,this.model,t,this):t.hint},fieldErrors(t){return this.errors.filter(n=>n.field.fieldName===t.fieldName).map(n=>n.error)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(t,n){this.$emit("modelUpdated",t,n)},validate(t){return this.$refs.child.validate(t)},clearValidationErrors(){if(this.$refs.child)return this.$refs.child.clearValidationErrors()},formattedLabel(t){return t?t.replace(/^[cC]onfig\./,""):""}}},cy=["innerHTML"],dy={class:"icon-wrapper"},uy=["innerHTML"],py={key:0,class:"link-wrapper"},my={class:"field-wrap"},gy={key:0,class:"buttons"},Ay=["type","onClick","textContent"],fy=["innerHTML"],hy={key:2,class:"errors help-block"},yy=["innerHTML"];function by(t,n,a,o,i,r){const s=e.resolveComponent("KExternalLink"),l=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["form-group",t.getFieldRowClasses(a.field)])},[r.fieldTypeHasLabel(a.field)?(e.openBlock(),e.createBlock(l,{key:0,"aria-describedby":a.field.help?r.getTooltipId(a.field):void 0,class:e.normalizeClass([a.field.labelClasses,"form-group-label"]),for:r.getFieldID(a.field),info:!a.options.helpAsHtml&&a.field.help?a.field.help:void 0,"tooltip-attributes":a.field.help?{maxWidth:"300",placement:"top",tooltipId:r.getTooltipId(a.field)}:void 0},e.createSlots({default:e.withCtx(()=>[e.createElementVNode("div",dy,[e.createElementVNode("span",{innerHTML:r.formattedLabel(a.field.label)},null,8,uy)]),a.field.link?(e.openBlock(),e.createElementBlock("div",py,[e.createVNode(s,{href:a.field.link},{default:e.withCtx(()=>n[0]||(n[0]=[e.createElementVNode("span",{class:"section-header"},"More info",-1)])),_:1},8,["href"])])):e.createCommentVNode("",!0)]),_:2},[a.options.helpAsHtml&&a.field.help?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:a.field.help},null,8,cy)]),key:"0"}:void 0]),1032,["aria-describedby","class","for","info","tooltip-attributes"])):e.createCommentVNode("",!0),e.createElementVNode("div",my,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.getFieldComponent(a.field)),e.mergeProps(t.$attrs,{ref:"child",disabled:t.fieldDisabled(a.field)||null,"form-options":a.options,hint:a.field.hint&&a.field.type==="input"?r.fieldHint(a.field):void 0,model:a.model,schema:r.schema,vfg:a.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated}),null,16,["disabled","form-options","hint","model","schema","vfg","onModelUpdated","onRefreshModel","onValidated"])),r.buttonVisibility(a.field)?(e.openBlock(),e.createElementBlock("div",gy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.field.buttons,(c,m)=>(e.openBlock(),e.createElementBlock("button",{key:m,class:e.normalizeClass(c.classes),type:r.getButtonType(c),onClick:p=>r.buttonClickHandler(c,a.field,p),textContent:e.toDisplayString(c.label)},null,10,Ay))),128))])):e.createCommentVNode("",!0)]),a.field.hint&&a.field.type!=="input"?(e.openBlock(),e.createElementBlock("div",{key:1,class:"hint",innerHTML:r.fieldHint(a.field)},null,8,fy)):e.createCommentVNode("",!0),r.fieldErrors(a.field).length>0?(e.openBlock(),e.createElementBlock("div",hy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.fieldErrors(a.field),(c,m)=>(e.openBlock(),e.createElementBlock("span",{key:m,innerHTML:c},null,8,yy))),128))])):e.createCommentVNode("",!0)],2)}const Lr=Ee(ly,[["render",by],["__scopeId","data-v-172f268b"]]),Ey="12px";var pa=(t=>(t.REDIS_CE="redis-ce",t.REDIS_EE="redis-ee",t))(pa||{});const wy=t=>{var n,a;return t.type===pa.REDIS_CE?"Host/Port":(n=t.config.sentinel_nodes)!=null&&n.length?"Sentinel":(a=t.config.cluster_nodes)!=null&&a.length?"Cluster":"Host/Port"},Cy={[pa.REDIS_CE]:"open source",[pa.REDIS_EE]:"enterprise"},Ur=t=>Cy[t]??"",By={class:"partial-config-card"},ky={class:"config-card-row-label"},Iy={class:"label-text"},Oy=["data-testid"],Ry=["data-testid"],My={key:1},Sy=["data-testid"],Ty=["data-testid"],xy=e.defineComponent({__name:"RedisConfigCard",props:{configFields:{type:Object,required:!0},pluginRedisFields:{type:Array,required:!0}},setup(t){const{t:n,formatUnixTimeStamp:a}=Ue.createI18n("en-us",dt),o={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:a,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:a,order:3}},i=t,r=u=>u!=null,s=(u,g)=>r(g)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:l}=U.useStringHelpers(),c=e.computed(()=>Object.entries(i.configFields).map(([u,g])=>{var h,C,f,b;return{key:u,label:((h=o[u])==null?void 0:h.label)??l(u),value:(C=o[u])!=null&&C.formatter?o[u].formatter(g):g,type:((f=o[u])==null?void 0:f.type)??s(u,g),order:((b=o[u])==null?void 0:b.order)??100}}).sort((u,g)=>u.order-g.order).filter(u=>u.type!=="hidden")),m=st.useRedisNonStandardFields(i.configFields,i.pluginRedisFields),p=e.computed(()=>c.value.concat(m));return(u,g)=>{const h=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",By,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,({key:C,label:f,value:b,type:k})=>(e.openBlock(),e.createElementBlock("div",{key:C,class:"partial-config-card-row"},[e.createElementVNode("div",ky,[e.createElementVNode("div",Iy,e.toDisplayString(f),1)]),e.createElementVNode("div",{class:"config-card-row-value","data-testid":`${C}-property-value`},[r(b)?(e.openBlock(),e.createElementBlock("div",My,[k==="password"?(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${C}-copy-password`},[e.createVNode(h,{format:"redacted",text:String(b)},null,8,["text"])],8,Sy)):(e.openBlock(),e.createElementBlock("div",{key:1,"data-testid":`${C}-plain-text`},e.toDisplayString(b),9,Ty))])):(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${C}-no-value`}," – ",8,Ry))],8,Oy)]))),128))])}}}),vy=Ee(xy,[["__scopeId","data-v-c1eb723f"]]),Vy={class:"redis-config-select","data-testid":"redis-config-select"},Py={class:"selected-redis-config"},Ny=["data-testid"],Dy={class:"select-item-name","data-testid":"selected-redis-config"},Ly={class:"empty-redis-config","data-testid":"empty-redis-config"},Uy={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},jy=e.defineComponent({__name:"RedisConfigSelect",props:{defaultRedisConfigItem:{type:String,required:!1,default:""},updateRedisModel:{type:Function,required:!0},pluginRedisFields:{type:Array,required:!0},redisType:{type:String,default:"all"},isCustomPlugin:{type:Boolean,default:!1}},emits:["showNewPartialModal"],setup(t){const{t:n}=Ue.createI18n("en-us",dt),a=e.inject(Am),o={konnect:{getOne:"/v2/control-planes/{controlPlaneId}/core-entities/partials/{id}",getAll:"/v2/control-planes/{controlPlaneId}/core-entities/partials"},kongManager:{getOne:"/{workspace}/partials/{id}",getAll:"/{workspace}/partials"}},i=t,r=e.ref(null),{getMessageFromError:s}=U.useErrors(),l=e.inject(Ha),{debouncedQueryChange:c,loading:m,error:p,loadItems:u,results:g}=U.useDebouncedFilter(l,o[l.app].getAll,void 0,{fetchedItemsKey:"data",searchKeys:["id","name"]}),h=e.computed(()=>p.value?s(p.value):""),C=O=>{let w=`${l.apiBaseUrl}${o[l.app].getOne}`;return l.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,(l==null?void 0:l.controlPlaneId)||""):l.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,l!=null&&l.workspace?`/${l.workspace}`:"")),w=w.replace(/{id}/gi,String(O)),w},f=e.computed(()=>{var O;const w=((O=g.value)==null?void 0:O.map(B=>({label:B.id,name:B.name,value:B.id,type:B.type,tag:wy(B)})))||[];return i.redisType!=="all"?w.filter(B=>B.type===i.redisType):w}),{axiosInstance:b}=U.useAxios(l==null?void 0:l.axiosRequestConfig),k=async O=>{if(O){i.updateRedisModel(O);try{const w=await b.get(C(O));if(w.data.config){const B=Object.assign(w.data,w.data.config);delete B.config,r.value=B}}catch(w){console.error(w)}}};return e.watch(()=>a==null?void 0:a.value,async O=>{O&&await u()}),e.onBeforeMount(()=>{u(),i.defaultRedisConfigItem&&k(i.defaultRedisConfigItem)}),(O,w)=>{const B=e.resolveComponent("KLabel"),S=e.resolveComponent("KBadge"),A=e.resolveComponent("KSelect");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Vy,[e.createVNode(B,{info:t.isCustomPlugin?e.unref(n)("redis.custom_plugin.tooltip"):e.unref(n)("redis.shared_configuration.tooltip",{type:e.unref(Ur)(t.redisType)}),"tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("redis.shared_configuration.title")),1)]),_:1},8,["info"]),w[2]||(w[2]=e.createElementVNode("div",{class:"shared-redis-config-title"},null,-1)),e.createVNode(A,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:f.value,loading:e.unref(m),"model-value":t.defaultRedisConfigItem,placeholder:e.unref(n)("redis.shared_configuration.selector.placeholder"),onChange:w[1]||(w[1]=y=>k(y==null?void 0:y.value)),onQueryChange:e.unref(c)},{"selected-item-template":e.withCtx(({item:y})=>[e.createElementVNode("div",Py,e.toDisplayString(y.name),1)]),"item-template":e.withCtx(({item:y})=>[e.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${y.name}`},[e.createElementVNode("span",Dy,e.toDisplayString(y.name),1),e.createVNode(S,{appearance:"info",class:"select-item-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.tag),1)]),_:2},1024)],8,Ny)]),empty:e.withCtx(()=>[e.createElementVNode("div",Ly,e.toDisplayString(e.unref(n)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":e.withCtx(()=>[e.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:w[0]||(w[0]=y=>O.$emit("showNewPartialModal"))},[e.createVNode(e.unref(Te.AddIcon),{size:e.unref(Ey)},null,8,["size"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(n)("redis.shared_configuration.create_new_configuration",{type:e.unref(Ur)(t.redisType)})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),r.value?(e.openBlock(),e.createBlock(vy,{key:0,"config-fields":r.value,"plugin-redis-fields":t.pluginRedisFields},null,8,["config-fields","plugin-redis-fields"])):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("p",Uy,e.toDisplayString(h.value||e.unref(n)("redis.shared_configuration.error")),1)):e.createCommentVNode("",!0)],64)}}}),jr=Ee(jy,[["__scopeId","data-v-e0256888"]]),Gy={key:0},Fy={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},Hy={key:0,class:"shared-redis-config"},Yy={key:1,class:"dedicated-redis-config"},Ky={class:"dedicated-redis-config-title"},zy=e.defineComponent({__name:"FormRedis",props:{tag:{type:String,default:"fieldset",validator:function(t){return t.length>0}},model:{type:Object,default:()=>{}},options:{type:Object,required:!0},field:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default(){return[]}},redisPath:{type:String,default:void 0,required:!1},isEditing:{type:Boolean,default:!1}},emits:["modelUpdated","partialToggled","showNewPartialModal","refreshModel","validated"],setup(t,{emit:n}){const a=t,o=n,{t:i}=Ue.createI18n("en-us",dt),r=e.computed(()=>a.field.pluginType==="custom"),s=e.ref(!a.isEditing),l=e.ref(),c=e.ref({}),m=e.ref(),p=f=>be(f.visible)?f.visible.call(this,a.model,f,this):Pe(f.visible)?!0:f.visible,u=async f=>{o("modelUpdated",[{id:f,path:a.redisPath}],"partials"),m.value=[{id:f,path:a.redisPath}],l.value=f},g=(f,b)=>{c.value={...c.value,[b]:f},o("modelUpdated",f,b)},h=()=>{o("refreshModel")},C=(f,b,k)=>{o("validated",f,b,k)};return e.watch(()=>s.value,f=>{f?m.value&&o("partialToggled","redis",{partials:m.value}):o("partialToggled","partials",c.value)}),e.onBeforeMount(()=>{var f,b,k;if(a.model&&(c.value=a.field.fields.reduce((O,w)=>(Object.keys(a.model).includes(w.model)&&(O[w.model]=a.model[w.model]),O),{})),(k=(b=(f=a==null?void 0:a.model)==null?void 0:f.partials)==null?void 0:b[0])!=null&&k.id){const O=a.model.partials[0].id;s.value=!0,l.value=O}}),(f,b)=>{const k=e.resolveComponent("KAlert"),O=e.resolveComponent("KBadge"),w=e.resolveComponent("KRadio"),B=e.resolveComponent("KCard");return e.openBlock(),e.createElementBlock("div",null,[r.value?(e.openBlock(),e.createElementBlock("div",Gy,[e.createVNode(k,{"data-testid":"custom-plugin-redis-config-note",message:e.unref(i)("redis.custom_plugin.alert")},null,8,["message"]),e.createVNode(jr,{"default-redis-config-item":l.value,"is-custom-plugin":"","plugin-redis-fields":t.field.fields,"update-redis-model":u,onShowNewPartialModal:b[0]||(b[0]=S=>f.$emit("showNewPartialModal"))},null,8,["default-redis-config-item","plugin-redis-fields"])])):(e.openBlock(),e.createBlock(B,{key:1,class:"redis-config-card","data-testid":"redis-config-card",title:e.unref(i)("redis.title")},{default:e.withCtx(()=>[e.createElementVNode("div",Fy,[e.createVNode(w,{modelValue:s.value,"onUpdate:modelValue":b[1]||(b[1]=S=>s.value=S),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:e.unref(i)("redis.shared_configuration.description"),label:e.unref(i)("redis.shared_configuration.label"),"selected-value":!0},{default:e.withCtx(()=>[e.createVNode(O,{appearance:"success"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),e.createVNode(w,{modelValue:s.value,"onUpdate:modelValue":b[2]||(b[2]=S=>s.value=S),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:e.unref(i)("redis.dedicated_configuration.description"),label:e.unref(i)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),s.value?(e.openBlock(),e.createElementBlock("div",Hy,[e.createVNode(jr,{"default-redis-config-item":l.value,"plugin-redis-fields":t.field.fields,"redis-type":t.field.redisType,"update-redis-model":u,onShowNewPartialModal:b[3]||(b[3]=S=>f.$emit("showNewPartialModal"))},null,8,["default-redis-config-item","plugin-redis-fields","redis-type"])])):(e.openBlock(),e.createElementBlock("div",Yy,[e.createElementVNode("div",Ky,e.toDisplayString(e.unref(i)("redis.dedicated_configuration.title")),1),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tag),null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.field.fields,S=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:S.model},[p(S)?(e.openBlock(),e.createBlock(Lr,{key:0,ref_for:!0,ref:"children",errors:t.errors,field:S,model:t.model,options:t.options,vfg:t.vfg,onModelUpdated:g,onRefreshModel:h,onValidated:C},null,8,["errors","field","model","options","vfg"])):e.createCommentVNode("",!0)],64))),128))]),_:1}))]))]),_:1},8,["title"]))])}}}),Qy=Ee(zy,[["__scopeId","data-v-b9a17494"]]),Xy={name:"FormGenerator",components:{formGroup:Lr,formRedis:Qy},mixins:[or],inject:{autofillSlot:{from:ze,default:void 0}},provide(){var t;return{...!this.autofillSlot&&{[ze]:(t=this.$slots)==null?void 0:t[ct]}}},props:{schema:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},options:{type:Object,default(){return{validateAfterLoad:!1,validateAfterChanged:!1,child:e.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(t){return t.length>0}},enableRedisPartial:{type:Boolean,default:!1},isEditing:{type:Boolean,default:!1}},emits:["validated","modelUpdated","refreshModel","partialToggled","showNewPartialModal"],data(){return{vfg:this,errors:[],children:e.ref([]),collapseStates:{}}},computed:{fields(){const t=[];return this.schema&&this.schema.fields&&Ke(this.schema.fields,n=>{(!this.multiple||n.multi===!0)&&t.push(n)}),t},groups(){const t=[];return this.schema&&this.schema.groups&&Ke(this.schema.groups.slice(0),n=>{t.push(n)}),t}},watch:{model:{deep:!0,handler(t,n){n!==t&&t!=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(t){return be(t.visible)?t.visible.call(this,this.model,t,this):Pe(t.visible)?!0:t.visible},onFieldValidated(t,n,a){this.errors=this.errors.filter(i=>i.field.fieldName!==a.schema.fieldName),!t&&n&&n.length>0&&Ke(n,i=>{this.errors.push({field:a.schema,error:i})});const o=this.errors.length===0;this.$emit("validated",o,this.errors,this)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(t,n){this.$emit("modelUpdated",t,n)},onPartialToggled(t,n){this.$emit("partialToggled",t,n)},validate(t=null){t===null&&(t=fe(this.options,"validateAsync",!1)),this.clearValidationErrors();const n=[],a=[];Ke(this.$refs.children,i=>{be(i.validate)&&(n.push(i.$refs.child),a.push(i.$refs.child.validate(!0)))});const o=i=>{const r=[];Ke(i,(l,c)=>{Array.isArray(l)&&l.length>0&&Ke(l,m=>{r.push({field:n[c].schema,error:m})})}),this.errors=r;const s=r.length===0;return this.$emit("validated",s,r,this),t?r:s};return t?Promise.all(a).then(o):o(a)},clearValidationErrors(){this.errors.splice(0),Ke(this.$refs.children,t=>{t.clearValidationErrors()})}}},qy={key:0,class:"vue-form-generator"},Jy={key:0};function Zy(t,n,a,o,i,r){const s=e.resolveComponent("form-redis"),l=e.resolveComponent("form-group"),c=e.resolveComponent("KCollapse");return a.schema!=null?(e.openBlock(),e.createElementBlock("div",qy,[a.schema.fields?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.tag),{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.fields,m=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:m.model},[m.model==="__redis_partial"&&a.enableRedisPartial?(e.openBlock(),e.createBlock(s,{key:0,errors:i.errors,field:m,"is-editing":a.isEditing,model:a.model,options:a.options,tag:a.tag,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onPartialToggled:r.onPartialToggled,onShowNewPartialModal:p=>t.$emit("showNewPartialModal",m.redisType),onValidated:r.onFieldValidated},null,8,["errors","field","is-editing","model","options","tag","vfg","onModelUpdated","onPartialToggled","onShowNewPartialModal","onValidated"])):r.fieldVisible(m)?(e.openBlock(),e.createBlock(l,{key:1,ref_for:!0,ref:"children",errors:i.errors,field:m,model:a.model,options:a.options,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):e.createCommentVNode("",!0)],64))),128))]),_:1})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.groups,(m,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`group-${p}`},[m.collapsible!==void 0&&m.collapsible!==!1?(e.openBlock(),e.createBlock(c,{key:0,class:"root-level-collapse","model-value":!1,title:m.collapsible.title},e.createSlots({default:e.withCtx(()=>{var u,g,h,C;return[(u=m.slots)!=null&&u.beforeContent?e.renderSlot(t.$slots,(g=m.slots)==null?void 0:g.beforeContent,{key:0}):e.createCommentVNode("",!0),m.fields.length===0&&(h=m.slots)!=null&&h.emptyState?e.renderSlot(t.$slots,(C=m.slots)==null?void 0:C.emptyState,{key:1}):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.tag),{key:2,class:e.normalizeClass(t.getFieldRowClasses(m))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.fields,f=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f.model},[r.fieldVisible(f)?(e.openBlock(),e.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:f,model:a.model,options:a.options,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):e.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"])),m.collapsible!==!0&&m.collapsible.nestedCollapsible&&m.collapsible.nestedCollapsible.fields.length>0?(e.openBlock(),e.createBlock(c,{key:3,class:"nested-collapse","model-value":i.collapseStates[`group-${p}-nested`]??!0,"trigger-alignment":"leading","trigger-label":i.collapseStates[`group-${p}-nested`]??!0?m.collapsible.nestedCollapsible.triggerLabel.expand:m.collapsible.nestedCollapsible.triggerLabel.collapse,"onUpdate:modelValue":f=>i.collapseStates[`group-${p}-nested`]=f},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.tag),{class:e.normalizeClass(t.getFieldRowClasses(m))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.collapsible.nestedCollapsible.fields,f=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f.model},[f.model==="__redis_partial"&&a.enableRedisPartial?(e.openBlock(),e.createBlock(s,{key:0,errors:i.errors,field:f,"is-editing":a.isEditing,model:a.model,options:a.options,tag:a.tag,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onPartialToggled:r.onPartialToggled,onShowNewPartialModal:b=>t.$emit("showNewPartialModal",f.redisType),onValidated:r.onFieldValidated},null,8,["errors","field","is-editing","model","options","tag","vfg","onModelUpdated","onPartialToggled","onShowNewPartialModal","onValidated"])):r.fieldVisible(f)?(e.openBlock(),e.createBlock(l,{key:1,ref_for:!0,ref:"children",errors:i.errors,field:f,model:a.model,options:a.options,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):e.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))]),_:2},1032,["model-value","trigger-label","onUpdate:modelValue"])):e.createCommentVNode("",!0)]}),_:2},[m.collapsible.description?{name:"visible-content",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.collapsible.description),1)]),key:"0"}:void 0]),1032,["title"])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.tag),{key:1,class:e.normalizeClass(t.getFieldRowClasses(m))},{default:e.withCtx(()=>[m.legend?(e.openBlock(),e.createElementBlock("legend",Jy,e.toDisplayString(m.legend),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.fields,u=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:u.model},[r.fieldVisible(u)?(e.openBlock(),e.createBlock(l,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:u,model:a.model,options:a.options,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):e.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))],64))),128))])):e.createCommentVNode("",!0)}const Le=Ee(Xy,[["render",Zy]]),Gr=new Set(["config-client_id","config-client_secret","config-issuer"]),Fr=new Set(["config-scopes_claim","config-scopes_required","config-audience_claim","config-audience_required","config-roles_claim","config-roles_required","config-groups_claim","config-groups_required","config-authenticated_groups_claim"]),Wy={name:"OIDCForm",components:{VueFormGenerator:Le},provide(){var t;return{[ze]:(t=this.$slots)==null?void 0:t[ct]}},props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},onPartialToggled:{type:Function,required:!0},isEditing:{type:Boolean,required:!0},enableRedisPartial:{type:Boolean,required:!1},showNewPartialModal:{type:Function,default:()=>{}}},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 t;if(!this.init){this.init=!0,this.globalFields={fields:this.formSchema.fields.filter(i=>!i.model.startsWith("config")&&i.model!=="tags")};const n=this.formSchema.fields.reduce((i,r)=>(i[r.model]=r,i),{});this.commonFieldsSchema={fields:Array.from(Gr).reduce((i,r)=>(n[r]&&i.push(n[r]),i),[])},this.authFieldsSchema={fields:Array.from(Fr).reduce((i,r)=>(n[r]&&i.push(n[r]),i),[])};const{redis:a,redisModels:o}=st.useRedisPartial(this.formSchema);this.advancedFieldsSchema={fields:this.formSchema.fields.filter(i=>i.model.startsWith("config")&&i.model!=="config-auth_methods"&&!Gr.has(i.model)&&!Fr.has(i.model)&&(!this.enableRedisPartial||!o.includes(i.model))||i.model==="tags").reduce((i,r)=>{var s,l,c,m;switch(r.model){case"config-client_jwk":{if(Array.isArray((l=(s=r.items)==null?void 0:s.schema)==null?void 0:l.fields))for(const p of r.items.schema.fields)p.label=p.model;i.push({...r,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#jwk-record",newElementButtonLabel:"+ Add Client JWK",...Array.isArray((m=(c=r.items)==null?void 0:c.schema)==null?void 0:m.fields)&&r.items.schema.fields.map(p=>({...p,label:p.model}))});break}case"config-session_redis_cluster_nodes":{i.push({...r,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#host-record",newElementButtonLabel:"+ Add Cluster Node"});break}default:i.push(r)}return i},[])},this.enableRedisPartial&&this.advancedFieldsSchema.fields.unshift(a),this.sessionManagement=this.formModel["config-auth_methods"].includes("session"),this.authMethods=[{label:"Authorization Code Flow",value:"authorization_code",hint:"authorization code flow",prop:this.formModel["config-auth_methods"].includes("authorization_code")},{label:"Bearer Access Token",value:"bearer",hint:"JWT access token verification",prop:this.formModel["config-auth_methods"].includes("bearer")},{label:"Client Credentials Grant",value:"client_credentials",hint:"OAuth client credentials grant",prop:this.formModel["config-auth_methods"].includes("client_credentials")},{label:"Passwords Grant",value:"password",hint:"OAuth legacy password grant",prop:this.formModel["config-auth_methods"].includes("password")},{label:"Introspection",value:"introspection",hint:"OAuth introspection",prop:this.formModel["config-auth_methods"].includes("introspection")},{label:"UserInfo",value:"userinfo",hint:"OpenID Connect user info endpoint authentication",prop:this.formModel["config-auth_methods"].includes("userinfo")},{label:"Kong OAuth",value:"kong_oauth2",hint:"Kong OAuth plugin issued tokens verification",prop:this.formModel["config-auth_methods"].includes("kong_oauth2")},{label:"Refresh Token",value:"refresh_token",hint:"OAuth refresh token grant",prop:this.formModel["config-auth_methods"].includes("refresh_token")}];for(const i of[this.commonFieldsSchema,this.authFieldsSchema,this.advancedFieldsSchema])for(const r of i.fields){const s=(t=n[r.model])==null?void 0:t.help;r.help===void 0&&typeof s=="string"&&(r.help=s)}}},getAuthMethodsValue(t,n){const a=[];for(let o=0;o<this.authMethods.length;o++)this.authMethods[o].prop&&this.authMethods[o].value!==t&&a.push(this.authMethods[o].value);return this.sessionManagement&&t&&a.push("session"),n&&(t?a.push(t):a.push("session")),a},handleUpdate(t,n){this.formModel["config-auth_methods"]=this.getAuthMethodsValue(n,t),this.onModelUpdated()}}},_y={class:"general-settings"},$y={class:"link-wrapper"},eb={class:"auth-method-container"},tb={class:"general-settings"},nb={class:"link-wrapper"},ab={class:"general-settings"},ob={class:"link-wrapper"};function ib(t,n,a,o,i,r){const s=e.resolveComponent("VueFormGenerator"),l=e.resolveComponent("KExternalLink"),c=e.resolveComponent("KLabel"),m=e.resolveComponent("KCheckbox"),p=e.resolveComponent("KInputSwitch"),u=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",null,[a.formModel.id&&a.isEditing||!a.isEditing?(e.openBlock(),e.createBlock(s,{key:0,class:"global-fields",model:a.formModel,options:a.formOptions,schema:i.globalFields,onModelUpdated:a.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),e.createVNode(u,{tabs:i.tabs},{common:e.withCtx(()=>[e.createElementVNode("div",_y,[e.createElementVNode("div",$y,[e.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#important-configuration-parameters"},{default:e.withCtx(()=>n[2]||(n[2]=[e.createElementVNode("span",{class:"section-header"},"Common Configuration Settings",-1)])),_:1})]),n[4]||(n[4]=e.createElementVNode("div",{class:"description"}," Parameters for enabling the OpenID Connect plugin. Set these parameters before adding authorization, authentication, or other advanced configuration details. ",-1)),r.displayForm?(e.openBlock(),e.createBlock(s,{key:0,model:a.formModel,options:a.formOptions,schema:i.commonFieldsSchema,onModelUpdated:a.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),e.createVNode(c,null,{default:e.withCtx(()=>n[3]||(n[3]=[e.createTextVNode("Auth Methods")])),_:1}),e.createElementVNode("div",eb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.authMethods,g=>(e.openBlock(),e.createElementBlock("div",{key:g.value,class:"auth-method"},[e.createVNode(m,{modelValue:g.prop,"onUpdate:modelValue":h=>g.prop=h,onChange:h=>r.handleUpdate(h,g.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.label),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]))),128))]),e.createVNode(p,{modelValue:i.sessionManagement,"onUpdate:modelValue":n[0]||(n[0]=g=>i.sessionManagement=g),label:"Enable Session Management",onChange:r.handleUpdate},null,8,["modelValue","onChange"])])]),authorization:e.withCtx(()=>[e.createElementVNode("div",tb,[e.createElementVNode("div",nb,[e.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#authorization"},{default:e.withCtx(()=>n[5]||(n[5]=[e.createElementVNode("span",{class:"section-header"},"Authorization Configuration Settings",-1)])),_:1})]),n[6]||(n[6]=e.createElementVNode("div",{class:"description"}," Parameters for setting up claims-based authorization. ",-1)),r.displayForm?(e.openBlock(),e.createBlock(s,{key:0,model:a.formModel,options:a.formOptions,schema:i.authFieldsSchema,onModelUpdated:a.onModelUpdated},{"autofill-provider":e.withCtx(g=>[e.renderSlot(t.$slots,"autofill-provider",e.normalizeProps(e.guardReactiveProps(g)),void 0,!0)]),_:3},8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)])]),advanced:e.withCtx(()=>[e.createElementVNode("div",ab,[e.createElementVNode("div",ob,[e.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/"},{default:e.withCtx(()=>n[7]||(n[7]=[e.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings",-1)])),_:1})]),n[8]||(n[8]=e.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the OpenID Connect plugin. ",-1)),r.displayForm?(e.openBlock(),e.createBlock(s,{key:0,"enable-redis-partial":a.enableRedisPartial,"is-editing":a.isEditing,model:a.formModel,options:a.formOptions,schema:i.advancedFieldsSchema,onModelUpdated:a.onModelUpdated,onPartialToggled:a.onPartialToggled,onShowNewPartialModal:n[1]||(n[1]=()=>a.showNewPartialModal(a.formSchema._supported_redis_partial_type))},null,8,["enable-redis-partial","is-editing","model","options","schema","onModelUpdated","onPartialToggled"])):e.createCommentVNode("",!0)])]),_:3},8,["tabs"])])}const rb=Ee(Wy,[["render",ib],["__scopeId","data-v-44df963d"]]),sb=e.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(t){var n;e.provide(ze,(n=e.useSlots())==null?void 0:n[ct]);const{t:a,te:o}=Ue.createI18n("en-us",dt),i=t,r=e.computed(()=>i.formModel.id&&i.isEditing||!i.isEditing),s=e.computed(()=>{const l=i.formSchema;return l.fields.map(c=>{const m=`post-function.${c.model}`;return c.hint=o(`${m}.hint`)&&a(`${m}.hint`)||c.hint,c.help=o(`${m}.help`)&&a(`${m}.help`)||c.help,c.newElementButtonLabel=o(`${m}.newElementButtonLabel`)&&a(`${m}.newElementButtonLabel`)||c.newElementButtonLabel,c.model!=="tags"&&(c.valueType==="array"||c.type==="array")&&(c.type="array",c.valueArrayType="array",c.itemContainerComponent="FieldArrayItem",c.fieldClasses="post-function-array-item-container",c.fieldItemsClasses="post-function-array-item",c.inputAttributes={...c.inputAttributes,type:"textarea"}),c}),l});return(l,c)=>r.value?(e.openBlock(),e.createBlock(Le,{key:0,model:t.formModel,options:t.formOptions,schema:s.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)}}),lb=Ee(sb,[["__scopeId","data-v-f54f37ae"]]),cb=e.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(t){var n;e.provide(ze,(n=e.useSlots())==null?void 0:n[ct]);const{t:a,te:o}=Ue.createI18n("en-us",dt),i=t,r=e.computed(()=>i.formModel.id&&i.isEditing||!i.isEditing),s=e.computed(()=>{const l=i.formSchema;return l.fields.map(c=>{const m=`exit-transformer.${c.model}`;return c.hint=o(`${m}.hint`)&&a(`${m}.hint`)||c.hint,c.help=o(`${m}.help`)&&a(`${m}.help`)||c.help,c.newElementButtonLabel=o(`${m}.newElementButtonLabel`)&&a(`${m}.newElementButtonLabel`)||c.newElementButtonLabel,c.model!=="tags"&&(c.valueType==="array"||c.type==="array")&&(c.type="array",c.valueArrayType="array",c.itemContainerComponent="FieldArrayItem",c.fieldClasses="exit-transformer-array-item-container",c.fieldItemsClasses="exit-transformer-array-item",c.inputAttributes={...c.inputAttributes,type:"textarea"}),c}),l});return(l,c)=>r.value?(e.openBlock(),e.createBlock(Le,{key:0,model:t.formModel,options:t.formOptions,schema:s.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)}}),db=Ee(cb,[["__scopeId","data-v-0d5c541f"]]),ub={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}]},pb={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}]},mb={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}]},gb={class:"general-settings"},Ab={class:"sub-form"},fb={class:"general-settings"},hb={class:"sub-form"},yb={class:"general-settings"},bb=e.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(t){var n;e.provide(ze,(n=e.useSlots())==null?void 0:n[ct]);const a=t,o=e.ref("zeroSsl"),i=e.ref("shm"),r=e.computed(()=>{var A;const y={};if((A=a.formSchema)!=null&&A.fields)for(const E of a.formSchema.fields)y[E.model]=E;return y}),s=e.computed(()=>{var A;const y=bt(ub);for(const E of y.fields){const L=(A=r.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof L=="string"&&(E.help=L)}return y}),l=e.computed(()=>{var A;const y=bt(pb);for(const E of y.fields){const L=(A=r.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof L=="string"&&(E.help=L)}return y}),c=e.computed(()=>{var A;const y=bt(mb);for(const E of y.fields){const L=(A=r.value[E.model])==null?void 0:A.help;E.help===void 0&&typeof L=="string"&&(E.help=L)}return y}),m=e.computed(()=>({fields:a.formSchema.fields.filter(A=>!A.model.startsWith("config")&&A.model!=="tags")})),p=e.computed(()=>({fields:s.value.fields.filter(A=>!l.value.fields.some(y=>y.model===A.model)&&!c.value.fields.some(y=>y.model===A.model))})),u=e.computed(()=>({fields:a.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"))})),g=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-consul"))})),h=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-redis"))})),C=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-shm"))})),f=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config-storage_config-vault"))})),b=e.computed(()=>({fields:a.formSchema.fields.filter(A=>A.model.startsWith("config")&&!p.value.fields.filter(y=>y.model===A.model).length&&!u.value.fields.filter(y=>y.model===A.model).length||A.model==="tags")})),k=e.computed(()=>a.formModel.id&&a.isEditing||!a.isEditing),O=[{hash:"#general",title:"General"},{hash:"#storage",title:"Storage"},{hash:"#advanced",title:"Advanced"}],w=[{label:"Lets Encrypt",value:"letsEncrypt"},{label:"Zero SSL",value:"zeroSsl",selected:!0},{label:"Other",value:"other"}];e.onMounted(()=>{o.value==="zeroSsl"&&(a.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90")});const B=A=>{o.value=A.value,(A.value==="zeroSsl"||A.value==="other")&&(A.value==="zeroSsl"?a.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90":a.formModel["config-api_uri"]="https://acme.example.com/",a.formModel["config-tos_accepted"]=!1),A.value==="letsEncrypt"&&(a.formModel["config-api_uri"]="https://acme-v02.api.letsencrypt.org/directory",a.formModel["config-eab_hmac_key"]="",a.formModel["config-eab_kid"]=""),a.onModelUpdated()},S=(A,y)=>{y==="config-storage"&&(i.value=A),a.onModelUpdated()};return(A,y)=>{const E=e.resolveComponent("KSelect"),L=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",null,[t.formModel.id&&t.isEditing||!t.isEditing?(e.openBlock(),e.createBlock(Le,{key:0,class:"global-fields",model:t.formModel,options:t.formOptions,schema:m.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),e.createVNode(L,{tabs:O},{general:e.withCtx(()=>[e.createElementVNode("div",gb,[y[0]||(y[0]=e.createElementVNode("div",{class:"header-wrapper"},[e.createElementVNode("span",{class:"section-header"},"General Configuration Settings")],-1)),y[1]||(y[1]=e.createElementVNode("div",{class:"description"}," Parameters for enabling the ACME plugin. ",-1)),k.value?(e.openBlock(),e.createBlock(Le,{key:0,model:t.formModel,options:t.formOptions,schema:p.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),y[2]||(y[2]=e.createElementVNode("hr",null,null,-1)),e.createVNode(E,{class:"issuer-select",items:w,label:"Issuer",onChange:B}),e.createElementVNode("div",Ab,[o.value==="letsEncrypt"?(e.openBlock(),e.createBlock(Le,{key:0,model:t.formModel,options:t.formOptions,schema:l.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),o.value==="zeroSsl"||o.value==="other"?(e.openBlock(),e.createBlock(Le,{key:1,model:t.formModel,options:t.formOptions,schema:c.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)])])]),storage:e.withCtx(()=>[e.createElementVNode("div",fb,[y[3]||(y[3]=e.createElementVNode("div",{class:"header-wrapper"},[e.createElementVNode("span",{class:"section-header"},"Storage Configuration Settings")],-1)),y[4]||(y[4]=e.createElementVNode("div",{class:"description"}," Parameters for setting up storage. ",-1)),k.value?(e.openBlock(),e.createBlock(Le,{key:0,model:t.formModel,options:t.formOptions,schema:u.value,onModelUpdated:S},null,8,["model","options","schema"])):e.createCommentVNode("",!0),e.createElementVNode("div",hb,[i.value==="consul"?(e.openBlock(),e.createBlock(Le,{key:0,model:t.formModel,options:t.formOptions,schema:g.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),i.value==="redis"?(e.openBlock(),e.createBlock(Le,{key:1,model:t.formModel,options:t.formOptions,schema:h.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),i.value==="shm"?(e.openBlock(),e.createBlock(Le,{key:2,model:t.formModel,options:t.formOptions,schema:C.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0),i.value==="vault"?(e.openBlock(),e.createBlock(Le,{key:3,model:t.formModel,options:t.formOptions,schema:f.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)])])]),advanced:e.withCtx(()=>[e.createElementVNode("div",yb,[y[5]||(y[5]=e.createElementVNode("div",{class:"header-wrapper"},[e.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings")],-1)),y[6]||(y[6]=e.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the ACME plugin. ",-1)),k.value?(e.openBlock(),e.createBlock(Le,{key:0,model:t.formModel,options:t.formOptions,schema:b.value,onModelUpdated:t.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):e.createCommentVNode("",!0)])]),_:1})])}}}),Eb=Ee(bb,[["__scopeId","data-v-07cecf5b"]]),wb={class:"rla-form-basic-fields"},Cb={class:"rla-form-request-limits-subtitle"},Bb={class:"rla-form-request-limits-content"},kb={class:"rla-form-window-type"},Ib=["innerHTML"],Ob={class:"rla-form-window-type-radios"},Rb={class:"rla-form-request-limits-items"},Mb={class:"rla-form-request-limits-row"},Sb=["id"],Tb={class:"rla-form-request-limits-actions"},xb={key:0,class:"rla-form-request-limits-examples"},vb={class:"rla-form-request-limits-examples-badges"},Vb=["innerHTML"],Pb={id:"rla-form-error-legend",class:"rla-form-error-inputs"},Nb=e.defineComponent({__name:"RLAForm",props:{formSchema:{},formModel:{},formOptions:{},onModelUpdated:{type:Function},onPartialToggled:{type:Function},showNewPartialModal:{type:Function},isEditing:{type:Boolean},enableRedisPartial:{type:Boolean}},setup(t){var n;e.provide(ze,(n=e.useSlots())==null?void 0:n[ct]);const a={fixed:[{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit.",config:{limit:500,window_size:3600}},{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits.",config:{limit:200,window_size:1800}},{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences.",config:{limit:500,window_size:86400}}],sliding:[{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset.",config:{limit:100,window_size:3600}},{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made.",config:{limit:300,window_size:1800}},{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
57
57
|
If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
|
|
58
|
-
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`,config:{limit:500,window_size:3600}}]},o=new Set(["selectionGroup","enabled",...["identifier","limit","window_size","error_code","error_message"].map(M=>`config-${M}`)]),i=M=>M===void 0?!1:o.has(M),{t:r}=De.createI18n("en-us",it),s=t,l=e.computed(()=>{var M,S,Q;const j=(S=(M=s.formSchema)==null?void 0:M.fields)==null?void 0:S.find(z=>z.type==="selectionGroup"&&z.model==="selectionGroup");return{fields:[(Q=s.formSchema)==null?void 0:Q.fields.find(z=>z.model==="enabled"),j].filter(Boolean)}}),d=e.computed(()=>{var M,S;const Q=((S=(M=s.formSchema)==null?void 0:M.fields)==null?void 0:S.filter(K=>!i(K.model)))??[],j=[],z=[],q=[];let G=!1;for(const K of Q){const ae=K.model;if(ae!==void 0){if(ae.startsWith("config-redis-")){(K.model==="config-redis-cluster_addresses"||K.model==="config-redis-sentinel_addresses")&&(K.inputAttributes.help=r("rla.redis.address_example")),z.push(K);continue}G?q.push(K):j.push(K),K.model==="config-strategy"&&(G=!0)}}return{endsWithStrategy:{fields:j},redis:s.enableRedisPartial?{fields:[{fields:z,id:"_redis",model:"__redis_partial",redisType:s.formSchema._supported_redis_partial_type}]}:{fields:z},afterStrategy:{fields:q}}}),m=e.computed(()=>{const M=s.formModel["config-window_type"];return Object.prototype.hasOwnProperty.call(a,M)?a[M]:[]}),p=e.computed(()=>{var M,S;return(S=(M=s.formSchema)==null?void 0:M.fields)==null?void 0:S.find(Q=>Q.model==="config-identifier")}),u=e.computed(()=>{var M,S,Q;return(((Q=(S=(M=s.formSchema)==null?void 0:M.fields)==null?void 0:S.find(j=>j.model==="config-identifier"))==null?void 0:Q.values)??[]).map(j=>({label:r(`rla.identifiers.options.${j}`),value:j}))}),g=e.ref(),h=e.ref(!0),C=e.computed(()=>{var M,S,Q;return s.formModel["config-window_type"]??((Q=(S=(M=s.formSchema)==null?void 0:M.fields)==null?void 0:S.find(j=>j.model==="config-window_type"))==null?void 0:Q.default)}),f=e.computed(()=>{var M,S,Q,j,z,q;const G=(Q=(S=(M=s.formSchema)==null?void 0:M.fields)==null?void 0:S.find(K=>K.model==="config-window_type"))==null?void 0:Q.default;return(((q=(z=(j=s.formSchema)==null?void 0:j.fields)==null?void 0:z.find(K=>K.model==="config-window_type"))==null?void 0:q.values)??[]).sort((K,ae)=>K===G?-1:ae===G?1:0)}),E=e.computed(()=>{var M;const S=(M=s.formModel["config-limit"])==null?void 0:M.map((Q,j)=>{var z,q;return{limit:Q,windowSize:(q=(z=s.formModel)==null?void 0:z["config-window_size"])==null?void 0:q[j]}});return!Array.isArray(S)||S.length===0?[{limit:void 0,windowSize:void 0}]:S}),k=e.computed(()=>{var M,S,Q,j;return((M=s.formModel)==null?void 0:M["config-identifier"])??((j=(Q=(S=s.formSchema)==null?void 0:S.fields)==null?void 0:Q.find(z=>z.model==="config-identifier"))==null?void 0:j.default)}),R=e.computed(()=>{var M,S,Q,j;return((M=s.formModel)==null?void 0:M["config-error_code"])??((j=(Q=(S=s.formSchema)==null?void 0:S.fields)==null?void 0:Q.find(z=>z.model==="config-error_code"))==null?void 0:j.default)}),w=e.computed(()=>{var M,S,Q,j;return((M=s.formModel)==null?void 0:M["config-error_message"])??((j=(Q=(S=s.formSchema)==null?void 0:S.fields)==null?void 0:Q.find(z=>z.model==="config-error_message"))==null?void 0:j.default)}),I=(M,S)=>{if(S===g.value){s.onModelUpdated([],"config-limit"),s.onModelUpdated([],"config-window_size"),e.nextTick(()=>{g.value=void 0});return}s.onModelUpdated([M.config.limit],"config-limit"),s.onModelUpdated([M.config.window_size],"config-window_size"),e.nextTick(()=>{g.value=S})},v=M=>{g.value!==void 0&&(g.value=void 0),M!==null&&s.onModelUpdated(M.toString(),"config-window_type")},A=(M,S)=>{var Q;g.value!==void 0&&(g.value=void 0);const j=At(((Q=s.formModel)==null?void 0:Q["config-limit"])??[]);j[M]=S,s.onModelUpdated(j,"config-limit")},y=(M,S)=>{var Q;g.value!==void 0&&(g.value=void 0);const j=At(((Q=s.formModel)==null?void 0:Q["config-window_size"])??[]);j[M]=S,s.onModelUpdated(j,"config-window_size")},b=M=>{var S,Q;g.value!==void 0&&(g.value=void 0);const j=At(((S=s.formModel)==null?void 0:S["config-limit"])??[]),z=At(((Q=s.formModel)==null?void 0:Q["config-window_size"])??[]);j.length===0&&j.push(void 0),z.length===0&&z.push(void 0),j.splice(M+1,0,void 0),z.splice(M+1,0,void 0),s.onModelUpdated(j,"config-limit"),s.onModelUpdated(z,"config-window_size")},x=M=>{var S,Q;if(E.value.length>1){g.value!==void 0&&(g.value=void 0);const j=At(((S=s.formModel)==null?void 0:S["config-limit"])??[]),z=At(((Q=s.formModel)==null?void 0:Q["config-window_size"])??[]);j.length===0&&j.push(void 0),z.length===0&&z.push(void 0),j.splice(M,1),z.splice(M,1),s.onModelUpdated(j,"config-limit"),s.onModelUpdated(z,"config-window_size")}};return e.watch(()=>s.formModel["config-strategy"],M=>{M!=="redis"&&s.formModel.partials&&s.onModelUpdated(void 0,"partials")}),(M,S)=>{const Q=e.resolveComponent("KLabel"),j=e.resolveComponent("KRadio"),z=e.resolveComponent("KInput"),q=e.resolveComponent("KButton"),G=e.resolveComponent("KBadge"),K=e.resolveComponent("KTooltip"),ae=e.resolveComponent("KCard"),te=e.resolveComponent("KSelect"),N=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",mb,[e.createVNode(Ne,{model:M.formModel,options:M.formOptions,schema:l.value,onModelUpdated:S[0]||(S[0]=(V,X)=>M.onModelUpdated(V,X))},null,8,["model","options","schema"]),e.createVNode(ae,{class:"rla-form-request-limits"},{title:e.withCtx(()=>[e.createVNode(Q,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("rla.request_limits.title")),1)]),_:1}),e.createElementVNode("div",gb,e.toDisplayString(e.unref(r)("rla.request_limits.subtitle")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",Ab,[e.createElementVNode("div",fb,[e.createVNode(Q,{class:"rla-form-window-type-label","tooltip-attributes":{maxWidth:"300",placement:"top"}},{tooltip:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:e.unref(r)("rla.window_type.help")},null,8,hb)]),default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("rla.window_type.label"))+" ",1)]),_:1}),e.createElementVNode("div",yb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,V=>(e.openBlock(),e.createBlock(j,{key:`window-type-${V}`,"model-value":C.value,name:V,"selected-value":V,"onUpdate:modelValue":v},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)(`rla.window_type.options.${V}`)),1)]),_:2},1032,["model-value","name","selected-value"]))),128))])]),e.createElementVNode("div",bb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,(V,X)=>(e.openBlock(),e.createElementBlock("div",{key:X.toString()},[e.createVNode(Q,{for:`rla-form-request-limits-item-${X}-legend`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("rla.request_limits.label_index",{index:X+1})),1)]),_:2},1032,["for"]),e.createElementVNode("div",Eb,[e.createElementVNode("legend",{id:`rla-form-request-limits-item-${X}-legend`,class:"rla-form-request-limits-inputs"},[e.createVNode(z,{"model-value":V.limit&&V.limit.toString(),placeholder:e.unref(r)("rla.request_limits.request_number"),type:"number","onUpdate:modelValue":ce=>A(X,Number.parseInt(ce))},null,8,["model-value","placeholder","onUpdate:modelValue"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.request_limits.interval_determiner")),1),e.createVNode(z,{"model-value":V.windowSize&&V.windowSize.toString(),placeholder:e.unref(r)("rla.request_limits.time_interval"),type:"number","onUpdate:modelValue":ce=>y(X,Number.parseInt(ce))},null,8,["model-value","placeholder","onUpdate:modelValue"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.request_limits.seconds")),1)],8,wb),e.createElementVNode("div",Cb,[e.createVNode(q,{appearance:"tertiary",disabled:E.value.length<=1,onClick:()=>x(X)},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.RemoveIcon))]),_:2},1032,["disabled","onClick"]),e.createVNode(q,{appearance:"tertiary",onClick:()=>b(X)},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),m.value.length>0?(e.openBlock(),e.createElementBlock("div",Bb,[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.start_with_a_use_case")),1),e.createElementVNode("div",kb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(V,X)=>(e.openBlock(),e.createBlock(K,{key:`use-case-${X}`,"max-width":"300"},{content:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(V.description),1),S[10]||(S[10]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.request_limits.label"))+": "+e.toDisplayString(V.config.limit),1),e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.request_limits.time_interval"))+": "+e.toDisplayString(V.config.window_size),1)]),default:e.withCtx(()=>[e.createVNode(G,{appearance:g.value===`${C.value}-${X}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>I(V,`${C.value}-${X}`)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(V.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):e.createCommentVNode("",!0)])]),_:1}),e.createVNode(te,{modelValue:k.value,"onUpdate:modelValue":S[1]||(S[1]=V=>k.value=V),class:"rla-form-identifiers",items:u.value,label:e.unref(r)("rla.identifiers.label"),"label-attributes":{tooltipAttributes:{maxWidth:"300",placement:"top"}},required:"",onSelected:S[2]||(S[2]=V=>s.onModelUpdated(V.value,"config-identifier"))},{"label-tooltip":e.withCtx(()=>[e.createElementVNode("div",{innerHTML:p.value&&p.value.help},null,8,Ib)]),_:1},8,["modelValue","items","label"]),e.createElementVNode("div",null,[e.createVNode(Q,{for:"rla-form-error-legend",info:e.unref(r)("rla.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("rla.error_message.label")),1)]),_:1},8,["info"]),e.createElementVNode("legend",Ob,[e.createVNode(z,{class:"input-error-code","model-value":R.value&&R.value.toString(),placeholder:e.unref(r)("rla.error_message.code_placeholder"),type:"number","onUpdate:modelValue":S[3]||(S[3]=V=>M.onModelUpdated(Number.parseInt(V),"config-error_code"))},null,8,["model-value","placeholder"]),S[11]||(S[11]=e.createElementVNode("div",null,":",-1)),e.createVNode(z,{"model-value":w.value,placeholder:e.unref(r)("rla.error_message.message_placeholder"),"onUpdate:modelValue":S[4]||(S[4]=V=>M.onModelUpdated(V,"config-error_message"))},null,8,["model-value","placeholder"])])])]),e.createVNode(N,{modelValue:h.value,"onUpdate:modelValue":S[9]||(S[9]=V=>h.value=V),"trigger-label":e.unref(r)("rla.view_advanced_fields")},{default:e.withCtx(()=>[e.createVNode(Ne,{model:M.formModel,options:M.formOptions,schema:d.value.endsWithStrategy,onModelUpdated:S[5]||(S[5]=(V,X)=>M.onModelUpdated(V,X))},null,8,["model","options","schema"]),M.formModel["config-strategy"]==="redis"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(M.enableRedisPartial?"div":"KCard"),{key:0,class:"rla-form-redis-card",title:e.unref(r)("rla.redis.title")},{default:e.withCtx(()=>[e.createVNode(Ne,{"enable-redis-partial":M.enableRedisPartial,"is-editing":M.isEditing,model:M.formModel,options:M.formOptions,schema:d.value.redis,onModelUpdated:S[6]||(S[6]=(V,X)=>M.onModelUpdated(V,X)),onPartialToggled:M.onPartialToggled,onShowNewPartialModal:S[7]||(S[7]=()=>M.showNewPartialModal(M.formSchema._supported_redis_partial_type))},null,8,["enable-redis-partial","is-editing","model","options","schema","onPartialToggled"])]),_:1},8,["title"])):e.createCommentVNode("",!0),e.createVNode(Ne,{class:e.normalizeClass({"rla-last-vfg":M.formModel["config-strategy"]!=="redis"}),model:M.formModel,options:M.formOptions,schema:d.value.afterStrategy,onModelUpdated:S[8]||(S[8]=(V,X)=>M.onModelUpdated(V,X))},null,8,["class","model","options","schema"])]),_:1},8,["modelValue","trigger-label"])],64)}}}),Mb=be(Rb,[["__scopeId","data-v-f6dcb65c"]]),Pr=Object.freeze(Object.defineProperty({__proto__:null,ACMEForm:pb,ExitTransformer:nb,OIDCForm:_y,PostFunction:eb,RLAForm:Mb},Symbol.toStringTag,{value:"Module"})),Xa=["array","metric","advanced","selectionGroup","object-advanced"],Nr=t=>({"openid-connect":"OIDCForm","post-function":"PostFunction","pre-function":"PostFunction","exit-transformer":"ExitTransformer","rate-limiting-advanced":"RLAForm"})[t],Sb={class:"field-wrapper"},Tb=e.defineComponent({__name:"KeyAuthIdentityRealms",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(t,{expose:n,emit:a}){const o=t,i=a,{clearValidationErrors:r,value:s}=nt.useAbstractFields({model:e.toRef(()=>o.model),schema:o.schema,formOptions:o.formOptions,emitModelUpdated:R=>{i("modelUpdated",R.value,R.model)}}),{i18n:l}=Oe.useI18n(),{t:d}=l,m={value:"current-cp",label:d("custom_field.key_auth_identity_realms.cp_label"),group:d("custom_field.key_auth_identity_realms.cp_group_label")},p=e.inject(Da),{axiosInstance:u}=L.useAxios(p==null?void 0:p.axiosRequestConfig),g=()=>{if((p==null?void 0:p.app)==="konnect"){const R=/\b(us|eu|au|me|in)\b/.exec((p==null?void 0:p.apiBaseUrl)||"");if(R)return{region:R[1]}}return{}},h=e.ref(!0),C=e.ref([m]),f=async()=>{if((p==null?void 0:p.app)==="konnect")try{h.value=!0;let R=`${p==null?void 0:p.apiBaseUrl}/v1/realms`;const w=[];do{const I=await u.get(R);I&&I.data&&I.data.data&&w.push(...I.data.data.map(v=>({value:v.id,label:v.name,group:d("custom_field.key_auth_identity_realms.realm_group_label")}))),R=I.data.meta.next?`${p==null?void 0:p.apiBaseUrl}${I.data.meta.next}`:null}while(R);C.value=[m,...w]}catch(R){console.error("Failed to fetch Konnect realms",R)}finally{h.value=!1}},E=e.computed(()=>s.value.map(R=>R.id||"current-cp")),k=R=>{const w=R.includes("current-cp")?[{scope:"cp",id:null}]:[],I=s.value.filter(({scope:x})=>x!=="cp").map(({id:x})=>x),v=R.filter(x=>x!=="current-cp"),b=(I.length!==v.length||I.some(x=>!v.includes(x))?v.filter(x=>!I.includes(x)):v).map(x=>({...g(),scope:"realm",id:x}));s.value=[...w,...b]};return e.watch(s,()=>{s.value||(s.value=[{scope:"cp",id:null}])}),e.onMounted(()=>{f()}),n({clearValidationErrors:r}),(R,w)=>{const I=e.resolveComponent("KMultiselect");return e.openBlock(),e.createElementBlock("div",Sb,[e.createVNode(I,{items:C.value,loading:h.value,"model-value":E.value,"onUpdate:modelValue":k},null,8,["items","loading","model-value"])])}}}),Me=(t,n)=>{const a=t.__vccOpts||t;for(const[o,i]of n)a[o]=i;return a},xb=Me(Tb,[["__scopeId","data-v-aa603d42"]]),Dr={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
59
|
-
client. If missing, it will be generated for you.`}},{tags:
|
|
58
|
+
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`,config:{limit:500,window_size:3600}}]},o=new Set(["selectionGroup","enabled",...["identifier","limit","window_size","error_code","error_message"].map(I=>`config-${I}`)]),i=I=>I===void 0?!1:o.has(I),{t:r}=Ue.createI18n("en-us",dt),s=t,l=e.computed(()=>{var I,x,V;const P=(x=(I=s.formSchema)==null?void 0:I.fields)==null?void 0:x.find(Q=>Q.type==="selectionGroup"&&Q.model==="selectionGroup");return{fields:[(V=s.formSchema)==null?void 0:V.fields.find(Q=>Q.model==="enabled"),P].filter(Boolean)}}),c=e.computed(()=>{var I,x;const V=((x=(I=s.formSchema)==null?void 0:I.fields)==null?void 0:x.filter(K=>!i(K.model)))??[],P=[],Q=[],le=[];let G=!1;for(const K of V){const re=K.model;if(re!==void 0){if(re.startsWith("config-redis-")){(K.model==="config-redis-cluster_addresses"||K.model==="config-redis-sentinel_addresses")&&(K.inputAttributes.help=r("rla.redis.address_example")),Q.push(K);continue}G?le.push(K):P.push(K),K.model==="config-strategy"&&(G=!0)}}return{endsWithStrategy:{fields:P},redis:s.enableRedisPartial?{fields:[{fields:Q,id:"_redis",model:"__redis_partial",redisType:s.formSchema._supported_redis_partial_type}]}:{fields:Q},afterStrategy:{fields:le}}}),m=e.computed(()=>{const I=s.formModel["config-window_type"];return Object.prototype.hasOwnProperty.call(a,I)?a[I]:[]}),p=e.computed(()=>{var I,x;return(x=(I=s.formSchema)==null?void 0:I.fields)==null?void 0:x.find(V=>V.model==="config-identifier")}),u=e.computed(()=>{var I,x,V;return(((V=(x=(I=s.formSchema)==null?void 0:I.fields)==null?void 0:x.find(P=>P.model==="config-identifier"))==null?void 0:V.values)??[]).map(P=>({label:r(`rla.identifiers.options.${P}`),value:P}))}),g=e.ref(),h=e.ref(!0),C=e.computed(()=>{var I,x,V;return s.formModel["config-window_type"]??((V=(x=(I=s.formSchema)==null?void 0:I.fields)==null?void 0:x.find(P=>P.model==="config-window_type"))==null?void 0:V.default)}),f=e.computed(()=>{var I,x,V,P,Q,le;const G=(V=(x=(I=s.formSchema)==null?void 0:I.fields)==null?void 0:x.find(K=>K.model==="config-window_type"))==null?void 0:V.default;return(((le=(Q=(P=s.formSchema)==null?void 0:P.fields)==null?void 0:Q.find(K=>K.model==="config-window_type"))==null?void 0:le.values)??[]).sort((K,re)=>K===G?-1:re===G?1:0)}),b=e.computed(()=>{var I;const x=(I=s.formModel["config-limit"])==null?void 0:I.map((V,P)=>{var Q,le;return{limit:V,windowSize:(le=(Q=s.formModel)==null?void 0:Q["config-window_size"])==null?void 0:le[P]}});return!Array.isArray(x)||x.length===0?[{limit:void 0,windowSize:void 0}]:x}),k=e.computed(()=>{var I,x,V,P;return((I=s.formModel)==null?void 0:I["config-identifier"])??((P=(V=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:V.find(Q=>Q.model==="config-identifier"))==null?void 0:P.default)}),O=e.computed(()=>{var I,x,V,P;return((I=s.formModel)==null?void 0:I["config-error_code"])??((P=(V=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:V.find(Q=>Q.model==="config-error_code"))==null?void 0:P.default)}),w=e.computed(()=>{var I,x,V,P;return((I=s.formModel)==null?void 0:I["config-error_message"])??((P=(V=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:V.find(Q=>Q.model==="config-error_message"))==null?void 0:P.default)}),B=(I,x)=>{if(x===g.value){s.onModelUpdated([],"config-limit"),s.onModelUpdated([],"config-window_size"),e.nextTick(()=>{g.value=void 0});return}s.onModelUpdated([I.config.limit],"config-limit"),s.onModelUpdated([I.config.window_size],"config-window_size"),e.nextTick(()=>{g.value=x})},S=I=>{g.value!==void 0&&(g.value=void 0),I!==null&&s.onModelUpdated(I.toString(),"config-window_type")},A=(I,x)=>{var V;g.value!==void 0&&(g.value=void 0);const P=bt(((V=s.formModel)==null?void 0:V["config-limit"])??[]);P[I]=x,s.onModelUpdated(P,"config-limit")},y=(I,x)=>{var V;g.value!==void 0&&(g.value=void 0);const P=bt(((V=s.formModel)==null?void 0:V["config-window_size"])??[]);P[I]=x,s.onModelUpdated(P,"config-window_size")},E=I=>{var x,V;g.value!==void 0&&(g.value=void 0);const P=bt(((x=s.formModel)==null?void 0:x["config-limit"])??[]),Q=bt(((V=s.formModel)==null?void 0:V["config-window_size"])??[]);P.length===0&&P.push(void 0),Q.length===0&&Q.push(void 0),P.splice(I+1,0,void 0),Q.splice(I+1,0,void 0),s.onModelUpdated(P,"config-limit"),s.onModelUpdated(Q,"config-window_size")},L=I=>{var x,V;if(b.value.length>1){g.value!==void 0&&(g.value=void 0);const P=bt(((x=s.formModel)==null?void 0:x["config-limit"])??[]),Q=bt(((V=s.formModel)==null?void 0:V["config-window_size"])??[]);P.length===0&&P.push(void 0),Q.length===0&&Q.push(void 0),P.splice(I,1),Q.splice(I,1),s.onModelUpdated(P,"config-limit"),s.onModelUpdated(Q,"config-window_size")}};return e.watch(()=>s.formModel["config-strategy"],I=>{I!=="redis"&&s.formModel.partials&&s.onModelUpdated(void 0,"partials")}),(I,x)=>{const V=e.resolveComponent("KLabel"),P=e.resolveComponent("KRadio"),Q=e.resolveComponent("KInput"),le=e.resolveComponent("KButton"),G=e.resolveComponent("KBadge"),K=e.resolveComponent("KTooltip"),re=e.resolveComponent("KCard"),X=e.resolveComponent("KSelect"),T=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",wb,[e.createVNode(Le,{model:I.formModel,options:I.formOptions,schema:l.value,onModelUpdated:x[0]||(x[0]=(v,q)=>I.onModelUpdated(v,q))},null,8,["model","options","schema"]),e.createVNode(re,{class:"rla-form-request-limits"},{title:e.withCtx(()=>[e.createVNode(V,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("rla.request_limits.title")),1)]),_:1}),e.createElementVNode("div",Cb,e.toDisplayString(e.unref(r)("rla.request_limits.subtitle")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",Bb,[e.createElementVNode("div",kb,[e.createVNode(V,{class:"rla-form-window-type-label","tooltip-attributes":{maxWidth:"300",placement:"top"}},{tooltip:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:e.unref(r)("rla.window_type.help")},null,8,Ib)]),default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("rla.window_type.label"))+" ",1)]),_:1}),e.createElementVNode("div",Ob,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,v=>(e.openBlock(),e.createBlock(P,{key:`window-type-${v}`,"model-value":C.value,name:v,"selected-value":v,"onUpdate:modelValue":S},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)(`rla.window_type.options.${v}`)),1)]),_:2},1032,["model-value","name","selected-value"]))),128))])]),e.createElementVNode("div",Rb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,(v,q)=>(e.openBlock(),e.createElementBlock("div",{key:q.toString()},[e.createVNode(V,{for:`rla-form-request-limits-item-${q}-legend`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("rla.request_limits.label_index",{index:q+1})),1)]),_:2},1032,["for"]),e.createElementVNode("div",Mb,[e.createElementVNode("legend",{id:`rla-form-request-limits-item-${q}-legend`,class:"rla-form-request-limits-inputs"},[e.createVNode(Q,{"model-value":v.limit&&v.limit.toString(),placeholder:e.unref(r)("rla.request_limits.request_number"),type:"number","onUpdate:modelValue":ue=>A(q,Number.parseInt(ue))},null,8,["model-value","placeholder","onUpdate:modelValue"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.request_limits.interval_determiner")),1),e.createVNode(Q,{"model-value":v.windowSize&&v.windowSize.toString(),placeholder:e.unref(r)("rla.request_limits.time_interval"),type:"number","onUpdate:modelValue":ue=>y(q,Number.parseInt(ue))},null,8,["model-value","placeholder","onUpdate:modelValue"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.request_limits.seconds")),1)],8,Sb),e.createElementVNode("div",Tb,[e.createVNode(le,{appearance:"tertiary",disabled:b.value.length<=1,onClick:()=>L(q)},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.RemoveIcon))]),_:2},1032,["disabled","onClick"]),e.createVNode(le,{appearance:"tertiary",onClick:()=>E(q)},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),m.value.length>0?(e.openBlock(),e.createElementBlock("div",xb,[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.start_with_a_use_case")),1),e.createElementVNode("div",vb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(v,q)=>(e.openBlock(),e.createBlock(K,{key:`use-case-${q}`,"max-width":"300"},{content:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(v.description),1),x[10]||(x[10]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.request_limits.label"))+": "+e.toDisplayString(v.config.limit),1),e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("rla.request_limits.time_interval"))+": "+e.toDisplayString(v.config.window_size),1)]),default:e.withCtx(()=>[e.createVNode(G,{appearance:g.value===`${C.value}-${q}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>B(v,`${C.value}-${q}`)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):e.createCommentVNode("",!0)])]),_:1}),e.createVNode(X,{modelValue:k.value,"onUpdate:modelValue":x[1]||(x[1]=v=>k.value=v),class:"rla-form-identifiers",items:u.value,label:e.unref(r)("rla.identifiers.label"),"label-attributes":{tooltipAttributes:{maxWidth:"300",placement:"top"}},required:"",onSelected:x[2]||(x[2]=v=>s.onModelUpdated(v.value,"config-identifier"))},{"label-tooltip":e.withCtx(()=>[e.createElementVNode("div",{innerHTML:p.value&&p.value.help},null,8,Vb)]),_:1},8,["modelValue","items","label"]),e.createElementVNode("div",null,[e.createVNode(V,{for:"rla-form-error-legend",info:e.unref(r)("rla.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("rla.error_message.label")),1)]),_:1},8,["info"]),e.createElementVNode("legend",Pb,[e.createVNode(Q,{class:"input-error-code","model-value":O.value&&O.value.toString(),placeholder:e.unref(r)("rla.error_message.code_placeholder"),type:"number","onUpdate:modelValue":x[3]||(x[3]=v=>I.onModelUpdated(Number.parseInt(v),"config-error_code"))},null,8,["model-value","placeholder"]),x[11]||(x[11]=e.createElementVNode("div",null,":",-1)),e.createVNode(Q,{"model-value":w.value,placeholder:e.unref(r)("rla.error_message.message_placeholder"),"onUpdate:modelValue":x[4]||(x[4]=v=>I.onModelUpdated(v,"config-error_message"))},null,8,["model-value","placeholder"])])])]),e.createVNode(T,{modelValue:h.value,"onUpdate:modelValue":x[9]||(x[9]=v=>h.value=v),"trigger-label":e.unref(r)("rla.view_advanced_fields")},{default:e.withCtx(()=>[e.createVNode(Le,{model:I.formModel,options:I.formOptions,schema:c.value.endsWithStrategy,onModelUpdated:x[5]||(x[5]=(v,q)=>I.onModelUpdated(v,q))},null,8,["model","options","schema"]),I.formModel["config-strategy"]==="redis"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(I.enableRedisPartial?"div":"KCard"),{key:0,class:"rla-form-redis-card",title:e.unref(r)("rla.redis.title")},{default:e.withCtx(()=>[e.createVNode(Le,{"enable-redis-partial":I.enableRedisPartial,"is-editing":I.isEditing,model:I.formModel,options:I.formOptions,schema:c.value.redis,onModelUpdated:x[6]||(x[6]=(v,q)=>I.onModelUpdated(v,q)),onPartialToggled:I.onPartialToggled,onShowNewPartialModal:x[7]||(x[7]=()=>I.showNewPartialModal(I.formSchema._supported_redis_partial_type))},null,8,["enable-redis-partial","is-editing","model","options","schema","onPartialToggled"])]),_:1},8,["title"])):e.createCommentVNode("",!0),e.createVNode(Le,{class:e.normalizeClass({"rla-last-vfg":I.formModel["config-strategy"]!=="redis"}),model:I.formModel,options:I.formOptions,schema:c.value.afterStrategy,onModelUpdated:x[8]||(x[8]=(v,q)=>I.onModelUpdated(v,q))},null,8,["class","model","options","schema"])]),_:1},8,["modelValue","trigger-label"])],64)}}}),Db=Ee(Nb,[["__scopeId","data-v-f6dcb65c"]]),Hr=Object.freeze(Object.defineProperty({__proto__:null,ACMEForm:Eb,ExitTransformer:db,OIDCForm:rb,PostFunction:lb,RLAForm:Db},Symbol.toStringTag,{value:"Module"})),$a=["array","metric","advanced","selectionGroup","object-advanced"],Yr=t=>({"openid-connect":"OIDCForm","post-function":"PostFunction","pre-function":"PostFunction","exit-transformer":"ExitTransformer","rate-limiting-advanced":"RLAForm"})[t],Lb={class:"field-wrapper"},Ub=e.defineComponent({__name:"KeyAuthIdentityRealms",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(t,{expose:n,emit:a}){const o=t,i=a,{clearValidationErrors:r,value:s}=st.useAbstractFields({model:e.toRef(()=>o.model),schema:o.schema,formOptions:o.formOptions,emitModelUpdated:O=>{i("modelUpdated",O.value,O.model)}}),{i18n:l}=Se.useI18n(),{t:c}=l,m={value:"current-cp",label:c("custom_field.key_auth_identity_realms.cp_label"),group:c("custom_field.key_auth_identity_realms.cp_group_label")},p=e.inject(Ha),{axiosInstance:u}=U.useAxios(p==null?void 0:p.axiosRequestConfig),g=()=>{if((p==null?void 0:p.app)==="konnect"){const O=/\b(us|eu|au|me|in)\b/.exec((p==null?void 0:p.apiBaseUrl)||"");if(O)return{region:O[1]}}return{}},h=e.ref(!0),C=e.ref([m]),f=async()=>{if((p==null?void 0:p.app)==="konnect")try{h.value=!0;let O=`${p==null?void 0:p.apiBaseUrl}/v1/realms`;const w=[];do{const B=await u.get(O);B&&B.data&&B.data.data&&w.push(...B.data.data.map(S=>({value:S.id,label:S.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),O=B.data.meta.next?`${p==null?void 0:p.apiBaseUrl}${B.data.meta.next}`:null}while(O);C.value=[m,...w]}catch(O){console.error("Failed to fetch Konnect realms",O)}finally{h.value=!1}},b=e.computed(()=>s.value.map(O=>O.id||"current-cp")),k=O=>{const w=O.includes("current-cp")?[{scope:"cp",id:null}]:[],B=s.value.filter(({scope:L})=>L!=="cp").map(({id:L})=>L),S=O.filter(L=>L!=="current-cp"),E=(B.length!==S.length||B.some(L=>!S.includes(L))?S.filter(L=>!B.includes(L)):S).map(L=>({...g(),scope:"realm",id:L}));s.value=[...w,...E]};return e.watch(s,()=>{s.value||(s.value=[{scope:"cp",id:null}])}),e.onMounted(()=>{f()}),n({clearValidationErrors:r}),(O,w)=>{const B=e.resolveComponent("KMultiselect");return e.openBlock(),e.createElementBlock("div",Lb,[e.createVNode(B,{items:C.value,loading:h.value,"model-value":b.value,"onUpdate:modelValue":k},null,8,["items","loading","model-value"])])}}}),ve=(t,n)=>{const a=t.__vccOpts||t;for(const[o,i]of n)a[o]=i;return a},jb=ve(Ub,[["__scopeId","data-v-aa603d42"]]),Kr={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
59
|
+
client. If missing, it will be generated for you.`}},{tags:Gt}]},Gb=t=>{var n;return(t==null?void 0:t.app)==="kongManager"?{fieldsToDelete:["config-identity_realms"]}:{"config-identity_realms":{component:((n=t==null?void 0:t.experimentalRenders)==null?void 0:n.keyAuthIdentityRealms)??!1?e.markRaw(jb):null}}},Fb={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},zr={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
|
|
60
60
|
if this parameter isn’t provided, Kong will generate a value for you and
|
|
61
|
-
send it as part of the response body.`}},{tags:
|
|
61
|
+
send it as part of the response body.`}},{tags:Gt}]},Hb={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Yb={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
|
|
62
62
|
be auto-generated.`}},{algorithm:{order:1,hint:"The algorithm used to verify the token’s signature."}},{rsa_public_key:{order:2,type:"textArea",label:"RSA public-key",hint:`If algorithm is RSA or ECDSA, the public key (in PEM format) to
|
|
63
63
|
use to verify the token’s signature.`,rows:10,visible:t=>t&&t.algorithm&&/^((RS|PS|ES)(256|384|512)|EdDSA)$/.test(t.algorithm)}},{secret:{inputType:"text",hint:`If algorithm is HMAC, the secret used to sign JWTs for
|
|
64
|
-
this credential. If left out, will be auto-generated.`}},{tags:
|
|
64
|
+
this credential. If left out, will be auto-generated.`}},{tags:Gt}]},Kb={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string"}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Qr={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
|
|
65
65
|
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,
|
|
66
|
-
it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:
|
|
67
|
-
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:
|
|
68
|
-
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Pt}]},Lb={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."}}]},rt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",...P["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",...P["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",...P["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",isEnterprise:!1,nameKey:"plugins.meta.jwt.name",...P.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",...P["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",...P["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",...P["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",...P["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",...P["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",...P.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",...P["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",...P["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",...P["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",...P["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",isEnterprise:!1,nameKey:"plugins.meta.cors.name",...P.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...P["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",isEnterprise:!0,nameKey:"plugins.meta.opa.name",...P.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...P["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...P["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",isEnterprise:!1,nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...P.acl},canary:{descriptionKey:"plugins.meta.canary.description",isEnterprise:!0,nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...P.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...P["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",...P["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",imageName:"proxy-cache",...P["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",imageName:"graphql",...P["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",...P["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...P["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...P["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",isEnterprise:!0,nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...P.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",...P["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",...P["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",...P["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",...P["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...P["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...P["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...P["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...P["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...P["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...P["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...P["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",isEnterprise:!0,nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...P["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",...P["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",...P["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",...P.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",imageName:"kong-function",...P["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",isEnterprise:!0,nameKey:"plugins.meta.post-function.name",imageName:"kong-function",...P["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",isEnterprise:!1,nameKey:"plugins.meta.datadog.name",...P.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",...P.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",...P.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",isEnterprise:!0,nameKey:"plugins.meta.collector.name",...P.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",...P["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",...P["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",...P["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",...P["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",...P["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...P["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",...P["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",...P.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",...P["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",isEnterprise:!0,nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...P.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",isEnterprise:!1,nameKey:"plugins.meta.file-log.name",...P["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",isEnterprise:!1,nameKey:"plugins.meta.http-log.name",...P["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",isEnterprise:!1,nameKey:"plugins.meta.loggly.name",...P.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",...P["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",isEnterprise:!1,nameKey:"plugins.meta.statsd.name",...P.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",isEnterprise:!1,nameKey:"plugins.meta.syslog.name",...P.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",...P["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",...P["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",...P["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",isEnterprise:!1,nameKey:"plugins.meta.session.name",...P.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",...P["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",...P["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",imageName:"application-registration",...P["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",isEnterprise:!1,nameKey:"plugins.meta.acme.name",...P.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",...P["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",...P["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",...P["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...P.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",...P["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...P["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",...P["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",...P["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",...P["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",...P["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",...P["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",isEnterprise:!0,nameKey:"plugins.meta.saml.name",...P.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",...P["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.json-threat-protection.name",...P["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",...P["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...P["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...P["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...P["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",isEnterprise:!0,nameKey:"plugins.meta.header-cert-auth.name",imageName:"tls-metadata-headers",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...P["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",imageName:"oauth2",...P["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",isEnterprise:!0,nameKey:"plugins.meta.confluent.name",...P.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",...P["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",...P["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",isEnterprise:!1,nameKey:"plugins.meta.redirect.name",...P.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",isEnterprise:!1,nameKey:"plugins.meta.kafka-consume.name",...P["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",isEnterprise:!1,nameKey:"plugins.meta.confluent-consume.name",...P["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",isEnterprise:!1,nameKey:"plugins.meta.request-callout.name",...P["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",isEnterprise:!1,nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...P["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",isEnterprise:!1,nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...P["ai-rag-injector"]}},rn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:ei,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Vt(ei),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:ti,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Vt(ti)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Dr,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Vt(Dr)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Gr,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Vt(Gr)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Lr,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Vt(Lr)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Ur,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Vt(Ur)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Nb,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Gb={acls:Wd,basicauth_credentials:_d,keyauth_credentials:Vb,keyauth_enc_credentials:Lb,oauth2_credentials:Ub,hmacauth_credentials:Pb,jwt_secrets:Db},jr=t=>{var o;const n=((o=rt[t])==null?void 0:o.imageName)||t||"missing",a=new URL(Object.assign({"../assets/images/plugin-icons/acl.png":nc,"../assets/images/plugin-icons/acme.png":ac,"../assets/images/plugin-icons/ai-azure-content-safety.png":oc,"../assets/images/plugin-icons/ai-data-sanitization.png":ic,"../assets/images/plugin-icons/ai-prompt-decorator.png":rc,"../assets/images/plugin-icons/ai-prompt-guard.png":sc,"../assets/images/plugin-icons/ai-prompt-template.png":lc,"../assets/images/plugin-icons/ai-proxy-advanced.png":cc,"../assets/images/plugin-icons/ai-proxy.png":dc,"../assets/images/plugin-icons/ai-rag-injector.png":uc,"../assets/images/plugin-icons/ai-rate-limiting-advanced.png":pc,"../assets/images/plugin-icons/ai-request-transformer.png":mc,"../assets/images/plugin-icons/ai-response-transformer.png":gc,"../assets/images/plugin-icons/ai-sanitizer.png":Ac,"../assets/images/plugin-icons/ai-semantic-cache.png":fc,"../assets/images/plugin-icons/ai-semantic-prompt-guard.png":hc,"../assets/images/plugin-icons/app-dynamics.png":yc,"../assets/images/plugin-icons/application-registration.png":bc,"../assets/images/plugin-icons/aws-lambda.png":Ec,"../assets/images/plugin-icons/azure-functions.png":wc,"../assets/images/plugin-icons/basic-auth.png":Cc,"../assets/images/plugin-icons/bot-detection.png":Bc,"../assets/images/plugin-icons/canary.png":kc,"../assets/images/plugin-icons/collector.png":Ic,"../assets/images/plugin-icons/confluent-consume.png":Oc,"../assets/images/plugin-icons/confluent.png":Rc,"../assets/images/plugin-icons/correlation-id.png":Mc,"../assets/images/plugin-icons/cors.png":Sc,"../assets/images/plugin-icons/datadog.png":Tc,"../assets/images/plugin-icons/degraphql.png":xc,"../assets/images/plugin-icons/dynamic-ssl.png":vc,"../assets/images/plugin-icons/exit-transformer.png":Vc,"../assets/images/plugin-icons/file-log.png":Pc,"../assets/images/plugin-icons/forward-proxy.png":Nc,"../assets/images/plugin-icons/graphql-rate-limiting-advanced.png":Dc,"../assets/images/plugin-icons/graphql.png":Uc,"../assets/images/plugin-icons/grpc-gateway.png":Lc,"../assets/images/plugin-icons/grpc-web.png":Gc,"../assets/images/plugin-icons/hmac-auth.png":jc,"../assets/images/plugin-icons/http-log.png":Fc,"../assets/images/plugin-icons/injection-protection.png":Hc,"../assets/images/plugin-icons/ip-restriction.png":Yc,"../assets/images/plugin-icons/jq.png":Kc,"../assets/images/plugin-icons/json-threat-protection.png":zc,"../assets/images/plugin-icons/jwe-decrypt.png":Qc,"../assets/images/plugin-icons/jwt-signer.png":Xc,"../assets/images/plugin-icons/jwt.png":qc,"../assets/images/plugin-icons/kafka-consume.png":Jc,"../assets/images/plugin-icons/kafka-log.png":Zc,"../assets/images/plugin-icons/kafka-upstream.png":Wc,"../assets/images/plugin-icons/key-auth-enc.png":_c,"../assets/images/plugin-icons/key-auth.png":$c,"../assets/images/plugin-icons/kong-function.png":ed,"../assets/images/plugin-icons/kubernetes-sidecar-injector.png":td,"../assets/images/plugin-icons/ldap-auth-advanced.png":nd,"../assets/images/plugin-icons/ldap-auth.png":ad,"../assets/images/plugin-icons/loggly.png":od,"../assets/images/plugin-icons/missing.png":id,"../assets/images/plugin-icons/mocking.png":rd,"../assets/images/plugin-icons/mtls-auth.png":sd,"../assets/images/plugin-icons/new.png":ld,"../assets/images/plugin-icons/oas-validation.png":cd,"../assets/images/plugin-icons/oauth2-introspection.png":dd,"../assets/images/plugin-icons/oauth2.png":ud,"../assets/images/plugin-icons/opa.png":pd,"../assets/images/plugin-icons/openid-connect.png":md,"../assets/images/plugin-icons/opentelemetry.png":gd,"../assets/images/plugin-icons/openwhisk.png":Ad,"../assets/images/plugin-icons/prometheus.png":fd,"../assets/images/plugin-icons/proxy-cache.png":hd,"../assets/images/plugin-icons/rate-limiting-advanced.png":yd,"../assets/images/plugin-icons/rate-limiting.png":bd,"../assets/images/plugin-icons/redirect.png":Ed,"../assets/images/plugin-icons/request-callout.png":wd,"../assets/images/plugin-icons/request-size-limiting.png":Cd,"../assets/images/plugin-icons/request-termination.png":Bd,"../assets/images/plugin-icons/request-transformer-advanced.png":kd,"../assets/images/plugin-icons/request-transformer.png":Id,"../assets/images/plugin-icons/request-validator.png":Od,"../assets/images/plugin-icons/response-ratelimiting.png":Rd,"../assets/images/plugin-icons/response-transformer-advanced.png":Md,"../assets/images/plugin-icons/response-transformer.png":Sd,"../assets/images/plugin-icons/route-by-header.png":Td,"../assets/images/plugin-icons/route-transformer-advanced.png":xd,"../assets/images/plugin-icons/runscope.png":vd,"../assets/images/plugin-icons/saml.png":Vd,"../assets/images/plugin-icons/service-protection.png":Pd,"../assets/images/plugin-icons/session.png":Nd,"../assets/images/plugin-icons/standard-webhooks.png":Dd,"../assets/images/plugin-icons/statsd-advanced.png":Ud,"../assets/images/plugin-icons/statsd.png":Ld,"../assets/images/plugin-icons/syslog.png":Gd,"../assets/images/plugin-icons/tcp-log.png":jd,"../assets/images/plugin-icons/tls-handshake-modifier.png":Fd,"../assets/images/plugin-icons/tls-metadata-headers.png":Hd,"../assets/images/plugin-icons/udp-log.png":Yd,"../assets/images/plugin-icons/upstream-timeout.png":Kd,"../assets/images/plugin-icons/upstream-tls.png":zd,"../assets/images/plugin-icons/vault-auth.png":Qd,"../assets/images/plugin-icons/websocket-size-limit.png":Xd,"../assets/images/plugin-icons/websocket-validator.png":qd,"../assets/images/plugin-icons/xml-threat-protection.png":Jd,"../assets/images/plugin-icons/zipkin.png":Zd})[`../assets/images/plugin-icons/${n}.png`],typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:ut&&ut.tagName.toUpperCase()==="SCRIPT"&&ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;return a.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.tagName.toUpperCase()==="SCRIPT"&&ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href:a},jb=()=>{const{i18n:{t}}=$t(),n={},a={};for(const[i,r]of Object.entries(rt))n[i]={...r,name:t(r.nameKey),description:t(r.descriptionKey)};for(const[i,r]of Object.entries(rn))a[i]={...r,name:t(r.nameKey),title:t(r.titleKey)};return{pluginMetaData:n,credentialMetaData:a,credentialSchemas:rn,getDisplayName:i=>{var r;return((r=n[i])==null?void 0:r.name)||i}}},Mn={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Fb={"config-prompts-prepend":{...Mn,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...Mn,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},Hb={"config-templates":{...Mn,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},Yb={shamefullyTransformPayload:({originalModel:t,model:n,payload:a,schema:o})=>{const i=s=>{var l;return(l=o[s])!=null&&l.required&&n[s]?!0:t[s]===n[s]?!1:t[s]===null?n[s]!==""&&!Number.isNaN(n[s]):!0},r=s=>Object.keys(t).some(l=>l.startsWith(s)&&i(l));r("config-embeddings")||(a.config.embeddings=null),r("config-vectordb")||(a.config.vectordb=null)}},Kb={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:en.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"}},ke={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"},la={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},zb={"config-metrics":{...la,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"}]}}}},Qb={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Xb={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},qb={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Jb={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Zb={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Fr=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((t,n)=>({...t,[n]:en.fields.arrayItems({newElementButtonLabel:"Add"})}),Zb),ca={"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"}},Wb={"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":{}},_b=["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((t,n)=>({...t,[n]:en.fields.arrayItems({newElementButtonLabel:"Add"})}),Wb),Hr={"config-add-json":{...ke,label:"Config.Add.Json",inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...ke,label:"Config.Append.Json",inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...ke,label:"Config.Remove.Json",inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...ke,label:"Config.Rename.Json",inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...ke,label:"Config.Replace.Json",inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}}},$b={...Hr,"config-allow-json":{...ke,label:"Config.Allow.Json",inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...ke,label:"Config.Transform.Functions",inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...ke,label:"Config.Transform.Json",inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}}},eE={"config-rules":{...Mn,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"}]}}}},tE={"config-session_redis_cluster_nodes":{...Mn,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"}]}}}},nE={"config-metrics":{...la,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"]}]}}}},aE={"config-metrics":{...la,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"]}]}}}},oE={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},iE={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:t=>({id:t}),keyFromObject:"id"}},rE={"config-message_by_lua_functions":{...ke,inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}}},sE={"config-message_by_lua_functions":{...ke,inputAttributes:{...ke.inputAttributes,type:"textarea",max:!1}}},lE={"config-static_tags":{...la,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"}]}}}},cE={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"}};function Yr(t,n){const a=cE[t];if(typeof a=="string")return a;if(n.includes(t))return a.component}const qa=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER");function Kr(){return e.inject(qa,[])}function dE(t){e.provide(qa,t)}const uE=(t,n)=>{const a=t.model.startsWith("config-"),o=n.model.startsWith("config-");return a&&!o?1:!a&&o?-1:0},zr=(t,n)=>(t.order??0)-(n.order??0),Qr=(t,n)=>uE(t,n)||zr(t,n)||t.model.localeCompare(n.model),Oe={useI18n:$t,usePluginMetaData:jb,usePluginHelpers:Wo,useSchemas:t=>{const{capitalize:n}=L.useStringHelpers(),{convertToDotNotation:a}=Wo(),{i18n:{t:o}}=$t(),i=Kr(),r={"application-registration":{overwriteDefault:!0,formSchema:{...Kb}},datadog:{...zb},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...nE},"statsd-advanced":{...aE},"route-by-header":{...eE},"ai-prompt-decorator":{...Fb},"ai-prompt-template":{...Hb},"ai-proxy-advanced":{...Yb},"vault-auth":{...iE},"oas-validation":{...Jb},mocking:{...qb},"rate-limiting":{...ca},"rate-limiting-advanced":(t==null?void 0:t.app)==="kongManager"?{"config-consumer_groups":ca["config-consumer_groups"]}:{...ca},"graphql-rate-limiting-advanced":{...Qb},"injection-protection":{...Xb},"response-ratelimiting":{...ca},"pre-function":{...Fr},"post-function":{...Fr},"request-transformer-advanced":{..._b},"response-transformer":{...Hr},"response-transformer-advanced":{...$b},zipkin:{...lE},"upstream-oauth":{...oE},saml:{...tE},"kafka-upstream":{...rE},"key-auth":vb(t),confluent:{...sE}},s=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],l=(A,y,b)=>{let x={};(y||A)&&(x=y||(A.fields?A.fields:A));const M=s().concat(A.blacklist?A.blacklist:[]),S=Object.keys(x).filter(te=>!M.includes(te)),Q=S.indexOf("comparator");Q>-1&&S.splice(Q,1);let j={fields:[]};const z={};S.forEach(te=>{m(x[te],te,x,z,j,b)});const q=z.name,G=rt[q],K=[],ae=te=>{const N=["cluster-cache"];for(const V of N)if(te.model.includes(V))return!1;return new RegExp("(?<=-redis-).*").test(te.model)};if(j._supported_redis_partial_type=A._supported_redis_partial_type,j._redis_partial_path=A._redis_partial_path,Nr(q)||Yr(q,i)||G!=null&&G.useLegacyForm||t!=null&&t.credential){if(G!=null&&G.useLegacyForm&&(t!=null&&t.enableRedisPartial)&&A._supported_redis_partial_type){for(const te of j.fields)if(ae(te)){K.push(te);continue}j.fields=j.fields.filter(te=>!ae(te)),K.length&&j.fields.push({id:"_redis",fields:K,model:"__redis_partial",pluginType:A._isCustomPlugin?"custom":"bundled",redisType:A._supported_redis_partial_type,redisPath:A._redis_partial_path})}j.fields.sort((te,N)=>(te.order=te.order||0,N.order=N.order||0,te.order-N.order))}else{const te=[],N=[],V=[],X=[],ce={};if(G!=null&&G.fieldRules){const _=[...G.fieldRules.atLeastOneOf??[],...G.fieldRules.onlyOneOf??[],...G.fieldRules.mutuallyRequired??[]];if(G.fieldRules.onlyOneOfMutuallyRequired)for(const se of G.fieldRules.onlyOneOfMutuallyRequired)_.push(...se);for(const se of _)for(const ne of se)ce[ne.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const _ of j.fields){if(t!=null&&t.enableRedisPartial&&A._supported_redis_partial_type&&ae(_)){X.push(_);continue}if(_.pinned){te.push(_);continue}if(_.required||ce[_.model]!==void 0){ce[_.model]===!1&&(ce[_.model]=!0),N.push(_);continue}V.push(_)}X.length&&V.push({id:"_redis",fields:X,model:"__redis_partial",pluginType:A._isCustomPlugin?"custom":"bundled",redisType:A._supported_redis_partial_type,redisPath:A._redis_partial_path,order:-1});const $=Object.entries(ce).filter(([,_])=>!_).map(([_])=>_.replace(/-/g,".").replace(/_/g,"-"));$.length>0&&console.warn(`Unknown checked fields for plugin ${q}: ${$.join(", ")}`);const F=[];te.length>0&&F.push({fields:te.sort(zr)}),(N.length>0||V.length>0)&&F.push({fields:N.sort(Qr),collapsible:{title:o("plugins.form.grouping.plugin_configuration.title"),description:o("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:V.sort(Qr),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"}}),j={groups:F}}return{schema:j,model:z,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},d=A=>Array.isArray(A.default)||A.default!=null&&typeof A.default!="object"&&A.default!=="function",m=(A,y,b,x,M,S)=>{const Q=d(A);return x[y]=Q?A.default:null,A.id=y,A.model=y,A.fields&&A.type==="record"?u(A,y,b,x,M,S):(b[y]=A,I(A,x),S&&S[y]&&p(b[y],S[y]),M.fields.push(A)),b},p=(A,y)=>(y&&(Object.assign(A,y),y.label&&(A.label=y.label)),A),u=(A,y,b,x,M,S)=>{A.fields.forEach(Q=>{Object.keys(Q).forEach(j=>{const z=Q[j];b=m(z,y+"-"+j,b,x,M,S)})})},g=(A,y)=>{A.type="input",A.inputType="hidden",A.styleClasses="kong-form-hidden-field-wrapper";const b=t==null?void 0:t.entityId;y[A.model]=b?{id:b}:null},h=A=>{A.type="input",A.inputType="number",A.between&&A.between.length===2&&(A.min=A.between[0],A.max=A.between[1])},C=A=>{Object.prototype.hasOwnProperty.call(A,"one_of")?(A.type="select",A.values=A.one_of,A.selectOptions={hideNoneSelectedText:!0}):(A.type="input",A.inputType="text")},f=A=>{A.type="checkbox",A.default=!0,A.required=!1},E=A=>{if(A.type="object-advanced",A.values.type==="array"){const{type:y}=A.values.elements||{};A.schema={fields:[{schema:{fields:[{...ke,model:A.model,valueArrayType:y==="integer"?"number":y||"string",inputAttributes:{...ke.inputAttributes,type:y==="integer"?"number":"text",inputMode:y==="integer"?"numeric":"text"}}]}}]}}else A.values.fields&&(A.schema={fields:[{type:"object",model:"object",schema:{fields:A.values.fields.map(y=>{const b=Object.keys(y)[0];return{model:b,type:"input",label:n(b),placeholder:b,inputType:y[b].type}})}}]})},k=A=>A.fields.reduce((y,b)=>(b.fields&&b.fields.forEach(x=>{y[x.model]=x}),b.model&&(y[b.model]=b),y),{}),R=(A,y)=>{if(!Xa.includes(A.model))return;const b=k(A);Xa.forEach(x=>{Object.keys(b).forEach(M=>{const S=d(b[M]);y[M]=S?b[M].default:null}),delete y[x]})},w=(A,y)=>A.inputType==="hidden"?"":a(n(A.label||y.replace(/_/g," "))),I=(A,y)=>{switch(R(A,y),A.type){case"foreign":g(A,y);break;case"number":h(A),A.attributes={step:"any"};break;case"integer":h(A);break;case"string":C(A);break;case"boolean":f(A);break;case"map":E(A);break}A.inputType==="foreign"&&g(A,y),A.label=w(A,A.model)};function v(A,y){if(y==null||y.type&&y.type!=="record"||typeof A!="object"||A==null)return A;const b={};for(const x of y.fields){const M=Object.keys(x)[0],S=x[M];S.type==="record"?b[M]=v(A[M],S):S.type==="array"&&Array.isArray(A[M])&&S.elements.type==="record"?b[M]=A[M].map(Q=>v(Q,S.elements)):b[M]=A[M]}return b}return{buildFormSchema:m,parseSchema:l,customSchemas:r,typedefs:en,pruneRecord:v}},useExperimentalFreeForms:Kr,useProvideExperimentalFreeForms:dE},Le="/v2/control-planes/{controlPlaneId}/core-entities",je="/{workspace}",Te={list:{konnect:{all:`${Le}/plugins`,forEntity:`${Le}/{entityType}/{entityId}/plugins`},kongManager:{all:`${je}/plugins`,forEntity:`${je}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${Le}/v1/available-plugins`,streamingCustomPlugins:`${Le}/custom-plugins`,schemaCustomPluginItem:`${Le}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${Le}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${je}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${Le}/plugins`,forEntity:`${Le}/{entityType}/{entityId}/plugins`},edit:{all:`${Le}/plugins/{id}`,forEntity:`${Le}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${Le}/{resourceEndpoint}`,edit:`${Le}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${Le}/v1/schemas/json/plugin/validate`,entityGetOne:`${Le}/{entity}/{id}`,entityGetAll:`${Le}/{entity}?size=1000`},kongManager:{create:{all:`${je}/plugins`,forEntity:`${je}/{entityType}/{entityId}/plugins`},edit:{all:`${je}/plugins/{id}`,forEntity:`${je}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${je}/schemas/plugins/{plugin}`,credential:{create:`${je}/{resourceEndpoint}`,edit:`${je}/{resourceEndpoint}/{id}`},credentialSchema:`${je}/schemas/{plugin}`,validate:`${je}/schemas/plugins/validate`,entityGetOne:`${je}/{entity}/{id}`,entityGetAll:`${je}/{entity}`}},item:{konnect:{all:`${Le}/plugins/{id}`,forEntity:`${Le}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${je}/plugins/{id}`,forEntity:`${je}/{entityType}/{entityId}/plugins/{id}`}}},pE={create:"New vault",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",view:"View Details",loading:"Loading..."},mE={general:"Vaults could not be retrieved",delete:"The vault could not be deleted at this time.",copy:"Failed to copy to clipboard"},gE={placeholder_for_vaults:{konnect:"Filter by exact prefix or ID"},placeholder_for_secrets:{konnect:"Filter by exact key"}},AE={title:"Vaults",list:{toolbar_actions:{new_vault:"New vault"},table_headers:{prefix:"Prefix",name:"Vault Type",description:"Description",tags:"Tags",id:"ID"},empty_state:{title:"Configure a New Vault",description:"Improve the security of your Kong Gateway deployment with centralized secrets."},empty_state_v2:{title:"Configure your first vault",group:"Vaults created in gateways within this group will automatically appear here.",description:"Vaults securely and centrally store sensitive information, such as credentials, tokens, and keys, to simplify secrets management.",create_cta:"New vault"}}},fE={title:"Secrets",list:{toolbar_actions:{new_secret:"Store New Secret"},table_headers:{key:"Secret Key",updated_at:"Updated At"},empty_state:{title:"No Secrets Stored",description:"Improve the security of your Kong Gateway deployment with centralized secrets."}},form:{info:{title:"Secret",description:"Enter the secret key and secret value to be stored in Konnect vault"},fields:{key:{label:"Key",placeholder:"Enter key"},value:{label:"Value",placeholder:"Enter value here, can be simple values or multi-line"}},hint:"Once saved, the secret value will not be visible"}},hE={success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"},yE={vault_type:"Vault Type"},bE={sections:{general:{title:"General Information",description:"General information helps identify and manage this Vault instance."},config:{title:"Vault Configuration",description:"Select a type of Vault and configure properties specific to each type of Vault."}},fields:{prefix:{label:"Prefix",placeholder:"Enter a unique prefix for this vault",help:"e.g. my-vault",tooltip:"The prefix is used to load the right Vault configuration and implementation when referencing secrets with the other entities."},description:{label:"Description",placeholder:"Enter some description for this vault"},tags:{label:"Tags",placeholder:"Enter a list of tags separated by comma",help:"e.g. tag1, tag2, tag3"}},config:{konnect:{label:"Konnect",description:"Access secrets stored directly in Konnect's unified platform to easily reference in Kong Gateway configuration."},env:{label:"Environment Variables",description:"Access secrets stored via variables to be made available in Kong Gateway at runtime.",fields:{prefix:{label:"Environment Variable Prefix",placeholder:"Enter your environment variable vault prefix",tooltip:"Data plane will access all the environment variables starting with this prefix."}}},aws:{label:"AWS Secrets Manager",description:"Access secrets stored in AWS Secrets Manager for Kong Gateway configuration.",fields:{region:{label:"Region",placeholder:"Select an AWS region",tooltip:"The AWS region your vault is located in",locations:{"us-east-1":{location:"N. Virginia"},"us-east-2":{location:"Ohio"},"us-west-1":{location:"N. California"},"us-west-2":{location:"Oregon"},"af-south-1":{location:"Cape Town"},"ap-east-1":{location:"Hong Kong"},"ap-southeast-3":{location:"Jakarta"},"ap-south-1":{location:"Mumbai"},"ap-northeast-1":{location:"Tokyo"},"ap-northeast-2":{location:"Seoul"},"ap-northeast-3":{location:"Osaka"},"ap-southeast-1":{location:"Singapore"},"ap-southeast-2":{location:"Sydney"},"ca-central-1":{location:"Canada"},"eu-central-1":{location:"Frankfurt"},"eu-west-1":{location:"Ireland"},"eu-west-2":{location:"London"},"eu-west-3":{location:"Paris"},"eu-south-1":{location:"Milan"},"eu-north-1":{location:"Stockholm"},"me-south-1":{location:"Bahrain"},"sa-east-1":{location:"São Paulo"},"us-gov-east-1":{location:"US East"},"us-gov-west-1":{location:"US West"}}},endpoint_url:{label:"Endpoint URL",tooltip:'The AWS SecretsManager service endpoint url. If not specified, the value used by vault will be the official AWS SecretsManager service url which is `https://secretsmanager.<region>.amazonaws.com`. You can specify a complete URL(including the "http/https" scheme) to override the endpoint that vault will connect to.'},assume_role_arn:{label:"Assume Role ARN",tooltip:"The target AWS IAM role ARN that will be assumed. Typically this is used for operating between multiple roles or cross-accounts. If you are not using assume role you should not specify this value."},role_session_name:{label:"Role Session Name",tooltip:"The role session name used for role assuming."},sts_endpoint_url:{label:"STS Endpoint URL",tooltip:"The custom STS endpoint URL used for role assuming in AWS Vault. Note that this value will override the default STS endpoint URL(which should be `https: //sts.amazonaws.com`, or `https: //sts.<region>.amazonaws.com` if you have `AWS_STS_REGIONAL_ENDPOINTS` set to `regional`). If you are not using private VPC endpoint for STS service, you should not specify this value."}}},gcp:{label:"Google Secret Manager",description:"Access secrets stored in Google Secret Manager for Kong Gateway configuration.",fields:{project_id:{label:"Project ID",placeholder:"Enter your Google Cloud Project ID",tooltip:{text:"Visit your Google API Console and select {italic-text} in the projects list to see your project ID",italicText:"Manage all projects"}}}},hcv:{label:"HashiCorp Vault",description:"Access secrets stored in HashiCorp Vault for Kong Gateway configuration.",fields:{protocol:{label:"Protocol"},host:{label:"Host"},port:{label:"Port"},mount:{label:"Mount"},kv:{label:"Kv"},namespace:{label:"Namespace"},auth_method:{label:"Authentication Method"},token:{label:"Token"},kube_role:{label:"Kubernetes Role"},kube_auth_path:{label:"Kubernetes Auth Path"},kube_api_token_file:{label:"Kubernetes API Token File"},approle_auth_path:{label:"App Role Auth Path"},approle_role_id:{label:"App Role Role ID"},approle_secret_id:{label:"App Role Secret ID"},approle_secret_id_file:{label:"App Role Secret ID File"},approle_response_wrapping:{label:"App Role Response Wrapping"}}},azure:{label:"Azure Vault",description:"Access secrets stored in Azure Key Vault for Kong Gateway configuration.",fields:{location:{label:"Location"},vault_uri:{label:"Vault URI"},credential_prefix:{label:"Credential Prefix"},type:{label:"Type",placeholder:"Select a type"},client_id:{label:"Client ID"},tenant_id:{label:"Tenant ID"}}},conjur:{label:"Conjur Vault",description:"Access secrets stored in Conjur Key Vault for Kong Gateway configuration.",fields:{endpoint_url:{label:"Endpoint URL"},login:{label:"Login"},api_key:{label:"API Key"},account:{label:"Account"}}},advancedFields:{title:"View Advanced Fields",ttl:"Time-to-Live",ttlTooltip:"Time-to-live (in seconds) of a secret from a vault when cached by this reference",negTtl:"Negative Time-to-Live",negTtlTooltip:"Time-to-live (in seconds) of a vault miss (no secret)",resurrectTtl:"Time-to-Live Resurrection",resurrectTtlTooltip:"Time (in seconds) for which stale secrets from the vault are resurrected for when they cannot be refreshed"},commonFields:{base64_decode:{label:"Base64 Decode",tooltip:"Decode all secrets in this vault as base64, useful for binary data. If some of the secrets are not base64 encoded, an error will occur when using them. It's recommended to create a separate vault for base64 secrets."}}},unavailable:"This vault provider is available on Enterprise."},EE={title:"Look up Key in Vault",vault:{label:"Vault",placeholder:"Select a vault"},secret_id:{label:"Secret ID",input_placeholder:"Enter a secret ID",select_placeholder:"Select or enter a complete secret ID"},optional_secret_key:{label:"Secret Key",placeholder:"Enter the key or key path to access a nested secret value",help:"Optional. e.g. tokens, tokens/refresh_token"},fetch_error:{vaults:"Could not fetch available vaults",secrets:"Could not fetch available secrets",vaults_and_secrets:"Could not fetch available vaults and secrets"},no_results:"No results found",actions:{use_key:"Use Key"},provider:{complete_action:"Look up {cta}",cta:"Key in Vault"}},wE={actions:pE,delete:{title:"Delete a Vault",title_for_secret:"Delete a Secret",description:"This action cannot be reversed."},errors:mE,search:gE,vaults:AE,secrets:fE,copy:hE,labels:yE,form:bE,vault_secret_picker:EE};function CE(){const t=De.createI18n("en-us",wE);return{i18n:t,i18nT:De.i18nTComponent(t)}}const Xr={useI18n:CE},Ja="/v2/control-planes/{controlPlaneId}/core-entities",qr="/v2/control-planes/{controlPlaneId}/config-stores",Za="/{workspace}",Jr={list:{konnect:{getAll:`${Ja}/vaults`,deleteConfigStore:`${qr}/{id}?force=true`},kongManager:{getAll:`${Za}/vaults`}},form:{konnect:{create:`${Ja}/vaults`,createConfigStore:qr,edit:`${Ja}/vaults/{id}`},kongManager:{create:`${Za}/vaults`,edit:`${Za}/vaults/{id}`}}},Zr=(t,n)=>{const a=t.__vccOpts||t;for(const[o,i]of n)a[o]=i;return a},da="/v2/control-planes/{controlPlaneId}",Wr={getVault:{konnect:`${da}/core-entities/vaults/{id}`},list:{konnect:`${da}/config-stores/{id}/secrets`},form:{konnect:{create:`${da}/config-stores/{id}/secrets`,edit:`${da}/config-stores/{id}/secrets/{secretId}`}}},BE={class:"vault-secret-picker-provider"},kE=e.defineComponent({__name:"VaultSecretPickerProvider",props:{value:{},disabled:{type:Boolean},update:{type:Function}},emits:["open"],setup(t,{emit:n}){const a=t,o=n,{i18n:{t:i},i18nT:r}=Xr.useI18n();return(s,l)=>(e.openBlock(),e.createElementBlock("div",BE,[e.createVNode(e.unref(r),{keypath:"vault_secret_picker.provider.complete_action",scope:"global"},{cta:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass({"vault-secret-picker-provider-action":!0,disabled:a.disabled}),onClick:l[0]||(l[0]=()=>!a.disabled&&o("open",a.value,a.update))},e.toDisplayString(e.unref(i)("vault_secret_picker.provider.cta")),3)]),_:1})]))}}),Wa=Zr(kE,[["__scopeId","data-v-66a1e406"]]),IE=t=>{let n=t.trim();if(!n.startsWith("{")||!n.endsWith("}"))throw new Error("Invalid secret reference: must be enclosed in curly braces");if(n=n.substring(1,n.length-1).trim(),!n.startsWith("vault://"))throw new Error("Invalid secret reference: must start with vault://");const a=new URL(`http://${n.substring(8)}`);if(!a)throw new Error("Invalid secret reference: must have a vault prefix");const o=a.host,[,i,...r]=a.pathname.split("/");if(!o)throw new Error("Invalid secret reference: must have a vault prefix");return{vaultPrefix:o,secretId:i||void 0,optionalSecretKey:r==null?void 0:r.join("/")}},OE=t=>{if(!t.vaultPrefix)throw new Error("Invalid secret reference: must have a vault prefix");let n=`vault://${t.vaultPrefix}`;return t.secretId&&(n=`${n}/${t.secretId}`),t.optionalSecretKey&&(n=`${n}/${t.optionalSecretKey}`),`{${n}}`},RE={key:1,class:"inputs-wrapper"},ME={"data-testid":"no-search-results"},SE={class:"k-select-selected-item-label"},TE={class:"vault-secret-picker-vault-dropdown-item"},xE={class:"select-item-label"},vE={class:"select-item-description"},VE={class:"select-item-description"},PE={"data-testid":"no-search-results"},NE=e.defineComponent({__name:"VaultSecretPicker",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},setup:{type:null,required:!1,default:!1}},emits:["proceed","cancel"],setup(t,{emit:n}){var a;const{i18n:{t:o}}=Xr.useI18n(),i=t,r=n,{axiosInstance:s}=L.useAxios({validateStatus:G=>G===404||G>=200&&G<300,...(a=i.config)==null?void 0:a.axiosRequestConfig}),l=e.ref(!1),d=e.ref(""),m=e.ref(""),p=e.ref(""),u=e.ref(),g=e.computed(()=>{var G,K;return i.config.app==="konnect"?Wr.list[i.config.app].replace(/{id}/gi,((K=(G=u.value)==null?void 0:G.config)==null?void 0:K.config_store_id)??""):"<not_applicable>"}),h=e.computed(()=>{if(E&&v)return o("vault_secret_picker.fetch_error.vaults_and_secrets");if(E)return o("vault_secret_picker.fetch_error.vaults");if(v)return o("vault_secret_picker.fetch_error.secrets")}),{debouncedQueryChange:C,loading:f,error:E,loadItems:k,results:R}=L.useDebouncedFilter(i.config,Jr.list[i.config.app].getAll,void 0,{fetchedItemsKey:"data",searchKeys:["prefix"]}),{debouncedQueryChange:w,loading:I,error:v,loadItems:A,results:y}=L.useDebouncedFilter(i.config,g,void 0,{fetchedItemsKey:"data",searchKeys:["key"],exactMatchKey:"key"}),b=e.computed(()=>{var G;let K=!1;const ae=((G=R.value)==null?void 0:G.map(te=>(te.prefix===d.value&&(K=!0),{label:te.prefix,value:te.prefix,vault:te})))??[];return!K&&u.value&&ae.push({label:u.value.prefix,value:u.value.prefix,vault:u.value}),ae}),x=e.computed(()=>{var G;let K=!1;const ae=((G=y.value)==null?void 0:G.map(te=>(te.key===m.value&&(K=!0),{label:te.key,value:te.key})))??[];return!K&&m.value&&ae.push({label:m.value,value:m.value}),ae}),M=e.computed(()=>{var G;return((G=u==null?void 0:u.value)==null?void 0:G.name)==="konnect"}),S=e.computed(()=>!!u.value&&!!m.value),Q=G=>G.label?`${G.label} - (${G.vault.name} - ${G.vault.id})`:G.value,j=G=>{var K,ae;let te=`${i.config.apiBaseUrl}${Jr.form[i.config.app].edit}`;return i.config.app==="konnect"?te=te.replace(/{controlPlaneId}/gi,((K=i.config)==null?void 0:K.controlPlaneId)||""):i.config.app==="kongManager"&&(te=te.replace(/\/{workspace}/gi,(ae=i.config)!=null&&ae.workspace?`/${i.config.workspace}`:"")),te.replace(/{id}/gi,G)},z=(G,K)=>{var ae;return i.config.app!=="konnect"?"<not_applicable>":`${i.config.apiBaseUrl}${Wr.form[i.config.app].edit}`.replace(/{controlPlaneId}/gi,((ae=i.config)==null?void 0:ae.controlPlaneId)||"").replace(/{id}/gi,K).replace(/{secretId}/gi,G)},q=()=>{r("proceed",OE({vaultPrefix:d.value,secretId:m.value||void 0,optionalSecretKey:p.value||void 0}))};return e.watch(()=>i.setup,async G=>{if(G!==!1){if(l.value=!0,d.value="",u.value=void 0,m.value="",p.value="",typeof G=="string"&&G.trim().length>0)try{let K,ae="",te="",N="";const V=IE(G),{data:X}=await s.get(j(V.vaultPrefix));if(X!=null&&X.name)if(K=X,ae=V.vaultPrefix,K.name==="konnect"){if(V.secretId){const{data:ce}=await s.get(z(V.secretId,X.config.config_store_id));ce.key===V.secretId&&(te=V.secretId,N=V.optionalSecretKey??"")}}else te=V.secretId??"",N=V.optionalSecretKey??"";await e.nextTick(()=>{d.value=ae,u.value=K,m.value=te,p.value=N})}catch(K){console.debug(K)}l.value=!1,await k()}},{immediate:!0}),e.watch(d,async(G,K)=>{var ae;l.value||G===K||(u.value=(ae=b.value.find(te=>te.value===G))==null?void 0:ae.vault,m.value="",p.value="")}),e.watch(g,async()=>{M.value&&await A()},{immediate:!0}),(G,K)=>{const ae=e.resolveComponent("KEmptyState"),te=e.resolveComponent("KSelect"),N=e.resolveComponent("KInput"),V=e.resolveComponent("KModal");return e.openBlock(),e.createBlock(V,{"action-button-disabled":!S.value,"action-button-text":e.unref(o)("vault_secret_picker.actions.use_key"),class:"vault-secret-picker","data-testid":"vault-secret-picker-modal",title:e.unref(o)("vault_secret_picker.title"),visible:i.setup!==!1,onCancel:K[4]||(K[4]=()=>r("cancel")),onProceed:q},{default:e.withCtx(()=>[e.unref(E)||e.unref(v)?(e.openBlock(),e.createBlock(ae,{key:0,"data-testid":"vault-secret-picker-fetch-error","icon-variant":"error",message:h.value},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",RE,[e.createVNode(te,{modelValue:d.value,"onUpdate:modelValue":K[0]||(K[0]=X=>d.value=X),clearable:"","data-testid":"vault-secret-picker-vault-select",disabled:l.value,"enable-filtering":"","filter-function":()=>!0,items:b.value,"kpop-attributes":{"data-testid":"vault-secret-picker-vault-popover"},label:e.unref(o)("vault_secret_picker.vault.label"),loading:e.unref(f),placeholder:e.unref(o)("vault_secret_picker.vault.placeholder"),required:"","reuse-item-template":"",width:"100%",onQueryChange:e.unref(C)},{loading:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(o)("actions.loading")),1)]),empty:e.withCtx(()=>[e.createElementVNode("div",ME,e.toDisplayString(e.unref(o)("vault_secret_picker.no_results")),1)]),"selected-item-template":e.withCtx(({item:X})=>[e.createElementVNode("span",SE,e.toDisplayString(Q(X)),1)]),"item-template":e.withCtx(({item:X})=>[e.createElementVNode("div",TE,[e.createElementVNode("span",xE,e.toDisplayString(X.label),1),e.createElementVNode("span",vE,e.toDisplayString(X.vault.name),1),e.createElementVNode("span",VE,e.toDisplayString(X.vault.id),1)])]),_:1},8,["modelValue","disabled","items","label","loading","placeholder","onQueryChange"]),M.value?(e.openBlock(),e.createBlock(te,{key:0,modelValue:m.value,"onUpdate:modelValue":K[1]||(K[1]=X=>m.value=X),clearable:"","data-testid":"vault-secret-picker-secret-id-select",disabled:l.value||!u.value,"enable-filtering":"","filter-function":()=>!0,items:x.value,"kpop-attributes":{"data-testid":"vault-secret-picker-secret-id-popover"},label:e.unref(o)("vault_secret_picker.secret_id.label"),loading:e.unref(I),placeholder:e.unref(o)("vault_secret_picker.secret_id.select_placeholder"),required:"","reuse-item-template":"",width:"100%",onQueryChange:e.unref(w)},{loading:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(o)("actions.loading")),1)]),empty:e.withCtx(()=>[e.createElementVNode("div",PE,e.toDisplayString(e.unref(o)("vault_secret_picker.no_results")),1)]),_:1},8,["modelValue","disabled","items","label","loading","placeholder","onQueryChange"])):(e.openBlock(),e.createBlock(N,{key:1,modelValue:m.value,"onUpdate:modelValue":K[2]||(K[2]=X=>m.value=X),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"vault-secret-picker-secret-id-input",disabled:l.value||!u.value,label:e.unref(o)("vault_secret_picker.secret_id.label"),placeholder:e.unref(o)("vault_secret_picker.secret_id.input_placeholder"),required:"",type:"text"},null,8,["modelValue","disabled","label","placeholder"])),e.createVNode(N,{modelValue:p.value,"onUpdate:modelValue":K[3]||(K[3]=X=>p.value=X),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"vault-secret-picker-secret-key-input",disabled:l.value||!u.value,help:e.unref(o)("vault_secret_picker.optional_secret_key.help"),label:e.unref(o)("vault_secret_picker.optional_secret_key.label"),placeholder:e.unref(o)("vault_secret_picker.optional_secret_key.placeholder"),type:"text"},null,8,["modelValue","disabled","help","label","placeholder"])]))]),_:1},8,["action-button-disabled","action-button-text","title","visible"])}}}),DE=Zr(NE,[["__scopeId","data-v-df8552cc"]]),UE={key:0},LE=Me(e.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(t){const n=t,{formatPluginFieldLabel:a}=Oe.usePluginHelpers(),{i18n:{t:o}}=Oe.useI18n(),i=l=>l.map(d=>d.replace(/^[cC]onfig\./,"").split(".").map(m=>a(m)).join(".")).join(", "),r=(l,d)=>o(l,{parameters:i(d)}),s=e.computed(()=>{const l=[];if(n.rules.atLeastOneOf)for(const d of n.rules.atLeastOneOf)l.push(r("plugins.form.field_rules.at_least_one_of",d));if(n.rules.onlyOneOf)for(const d of n.rules.onlyOneOf)l.push(r("plugins.form.field_rules.only_one_of",d));if(n.rules.mutuallyRequired)for(const d of n.rules.mutuallyRequired)l.push(r("plugins.form.field_rules.mutually_required",d));return l});return(l,d)=>{const m=e.resolveComponent("KAlert");return e.openBlock(),e.createBlock(m,{class:"plugin-field-rule-alerts"},{default:e.withCtx(()=>[e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(p,u)=>(e.openBlock(),e.createElementBlock("li",{key:`simple-alert-${u}`},e.toDisplayString(p),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(e.openBlock(),e.createElementBlock("li",UE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.rules.onlyOneOfMutuallyRequired,(p,u)=>(e.openBlock(),e.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[e.createElementVNode("div",null,e.toDisplayString(e.unref(o)("plugins.form.field_rules.only_one_of_mutually_required")),1),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p,(g,h)=>(e.openBlock(),e.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${h}`},e.toDisplayString(i(g)),1))),128))])]))),128))])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);var _r=typeof global=="object"&&global&&global.Object===Object&&global,GE=typeof self=="object"&&self&&self.Object===Object&&self,st=_r||GE||Function("return this")(),lt=st.Symbol,$r=Object.prototype,jE=$r.hasOwnProperty,FE=$r.toString,Sn=lt?lt.toStringTag:void 0;function HE(t){var n=jE.call(t,Sn),a=t[Sn];try{t[Sn]=void 0;var o=!0}catch{}var i=FE.call(t);return o&&(n?t[Sn]=a:delete t[Sn]),i}var YE=Object.prototype,KE=YE.toString;function zE(t){return KE.call(t)}var QE="[object Null]",XE="[object Undefined]",es=lt?lt.toStringTag:void 0;function Ht(t){return t==null?t===void 0?XE:QE:es&&es in Object(t)?HE(t):zE(t)}function Yt(t){return t!=null&&typeof t=="object"}var qE="[object Symbol]";function _a(t){return typeof t=="symbol"||Yt(t)&&Ht(t)==qE}function ts(t,n){for(var a=-1,o=t==null?0:t.length,i=Array(o);++a<o;)i[a]=n(t[a],a,t);return i}var ht=Array.isArray,JE=1/0,ns=lt?lt.prototype:void 0,as=ns?ns.toString:void 0;function os(t){if(typeof t=="string")return t;if(ht(t))return ts(t,os)+"";if(_a(t))return as?as.call(t):"";var n=t+"";return n=="0"&&1/t==-JE?"-0":n}function Kt(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}function ZE(t){return t}var WE="[object AsyncFunction]",_E="[object Function]",$E="[object GeneratorFunction]",ew="[object Proxy]";function $a(t){if(!Kt(t))return!1;var n=Ht(t);return n==_E||n==$E||n==WE||n==ew}var eo=st["__core-js_shared__"],is=function(){var t=/[^.]+$/.exec(eo&&eo.keys&&eo.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function tw(t){return!!is&&is in t}var nw=Function.prototype,aw=nw.toString;function zt(t){if(t!=null){try{return aw.call(t)}catch{}try{return t+""}catch{}}return""}var ow=/[\\^$.*+?()[\]{}|]/g,iw=/^\[object .+?Constructor\]$/,rw=Function.prototype,sw=Object.prototype,lw=rw.toString,cw=sw.hasOwnProperty,dw=RegExp("^"+lw.call(cw).replace(ow,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function uw(t){if(!Kt(t)||tw(t))return!1;var n=$a(t)?dw:iw;return n.test(zt(t))}function pw(t,n){return t==null?void 0:t[n]}function Qt(t,n){var a=pw(t,n);return uw(a)?a:void 0}var to=Qt(st,"WeakMap"),rs=Object.create,mw=function(){function t(){}return function(n){if(!Kt(n))return{};if(rs)return rs(n);t.prototype=n;var a=new t;return t.prototype=void 0,a}}();function gw(t,n,a){switch(a.length){case 0:return t.call(n);case 1:return t.call(n,a[0]);case 2:return t.call(n,a[0],a[1]);case 3:return t.call(n,a[0],a[1],a[2])}return t.apply(n,a)}function Aw(t,n){var a=-1,o=t.length;for(n||(n=Array(o));++a<o;)n[a]=t[a];return n}var fw=800,hw=16,yw=Date.now;function bw(t){var n=0,a=0;return function(){var o=yw(),i=hw-(o-a);if(a=o,i>0){if(++n>=fw)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}function Ew(t){return function(){return t}}var ua=function(){try{var t=Qt(Object,"defineProperty");return t({},"",{}),t}catch{}}(),ww=ua?function(t,n){return ua(t,"toString",{configurable:!0,enumerable:!1,value:Ew(n),writable:!0})}:ZE,Cw=bw(ww);function Bw(t,n){for(var a=-1,o=t==null?0:t.length;++a<o&&n(t[a],a,t)!==!1;);return t}var kw=9007199254740991,Iw=/^(?:0|[1-9]\d*)$/;function no(t,n){var a=typeof t;return n=n??kw,!!n&&(a=="number"||a!="symbol"&&Iw.test(t))&&t>-1&&t%1==0&&t<n}function ss(t,n,a){n=="__proto__"&&ua?ua(t,n,{configurable:!0,enumerable:!0,value:a,writable:!0}):t[n]=a}function ls(t,n){return t===n||t!==t&&n!==n}var Ow=Object.prototype,Rw=Ow.hasOwnProperty;function ao(t,n,a){var o=t[n];(!(Rw.call(t,n)&&ls(o,a))||a===void 0&&!(n in t))&&ss(t,n,a)}function Tn(t,n,a,o){var i=!a;a||(a={});for(var r=-1,s=n.length;++r<s;){var l=n[r],d=void 0;d===void 0&&(d=t[l]),i?ss(a,l,d):ao(a,l,d)}return a}var cs=Math.max;function Mw(t,n,a){return n=cs(n===void 0?t.length-1:n,0),function(){for(var o=arguments,i=-1,r=cs(o.length-n,0),s=Array(r);++i<r;)s[i]=o[n+i];i=-1;for(var l=Array(n+1);++i<n;)l[i]=o[i];return l[n]=a(s),gw(t,this,l)}}var Sw=9007199254740991;function oo(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Sw}function io(t){return t!=null&&oo(t.length)&&!$a(t)}var Tw=Object.prototype;function pa(t){var n=t&&t.constructor,a=typeof n=="function"&&n.prototype||Tw;return t===a}function xw(t,n){for(var a=-1,o=Array(t);++a<t;)o[a]=n(a);return o}var vw="[object Arguments]";function ds(t){return Yt(t)&&Ht(t)==vw}var us=Object.prototype,Vw=us.hasOwnProperty,Pw=us.propertyIsEnumerable,ma=ds(function(){return arguments}())?ds:function(t){return Yt(t)&&Vw.call(t,"callee")&&!Pw.call(t,"callee")};function Nw(){return!1}var ps=typeof ee=="object"&&ee&&!ee.nodeType&&ee,ms=ps&&typeof module=="object"&&module&&!module.nodeType&&module,Dw=ms&&ms.exports===ps,gs=Dw?st.Buffer:void 0,Uw=gs?gs.isBuffer:void 0,ro=Uw||Nw,Lw="[object Arguments]",Gw="[object Array]",jw="[object Boolean]",Fw="[object Date]",Hw="[object Error]",Yw="[object Function]",Kw="[object Map]",zw="[object Number]",Qw="[object Object]",Xw="[object RegExp]",qw="[object Set]",Jw="[object String]",Zw="[object WeakMap]",Ww="[object ArrayBuffer]",_w="[object DataView]",$w="[object Float32Array]",eC="[object Float64Array]",tC="[object Int8Array]",nC="[object Int16Array]",aC="[object Int32Array]",oC="[object Uint8Array]",iC="[object Uint8ClampedArray]",rC="[object Uint16Array]",sC="[object Uint32Array]",Ie={};Ie[$w]=Ie[eC]=Ie[tC]=Ie[nC]=Ie[aC]=Ie[oC]=Ie[iC]=Ie[rC]=Ie[sC]=!0,Ie[Lw]=Ie[Gw]=Ie[Ww]=Ie[jw]=Ie[_w]=Ie[Fw]=Ie[Hw]=Ie[Yw]=Ie[Kw]=Ie[zw]=Ie[Qw]=Ie[Xw]=Ie[qw]=Ie[Jw]=Ie[Zw]=!1;function lC(t){return Yt(t)&&oo(t.length)&&!!Ie[Ht(t)]}function so(t){return function(n){return t(n)}}var As=typeof ee=="object"&&ee&&!ee.nodeType&&ee,xn=As&&typeof module=="object"&&module&&!module.nodeType&&module,cC=xn&&xn.exports===As,lo=cC&&_r.process,sn=function(){try{var t=xn&&xn.require&&xn.require("util").types;return t||lo&&lo.binding&&lo.binding("util")}catch{}}(),fs=sn&&sn.isTypedArray,hs=fs?so(fs):lC,dC=Object.prototype,uC=dC.hasOwnProperty;function ys(t,n){var a=ht(t),o=!a&&ma(t),i=!a&&!o&&ro(t),r=!a&&!o&&!i&&hs(t),s=a||o||i||r,l=s?xw(t.length,String):[],d=l.length;for(var m in t)(n||uC.call(t,m))&&!(s&&(m=="length"||i&&(m=="offset"||m=="parent")||r&&(m=="buffer"||m=="byteLength"||m=="byteOffset")||no(m,d)))&&l.push(m);return l}function bs(t,n){return function(a){return t(n(a))}}var pC=bs(Object.keys,Object),mC=Object.prototype,gC=mC.hasOwnProperty;function Es(t){if(!pa(t))return pC(t);var n=[];for(var a in Object(t))gC.call(t,a)&&a!="constructor"&&n.push(a);return n}function co(t){return io(t)?ys(t):Es(t)}function AC(t){var n=[];if(t!=null)for(var a in Object(t))n.push(a);return n}var fC=Object.prototype,hC=fC.hasOwnProperty;function yC(t){if(!Kt(t))return AC(t);var n=pa(t),a=[];for(var o in t)o=="constructor"&&(n||!hC.call(t,o))||a.push(o);return a}function uo(t){return io(t)?ys(t,!0):yC(t)}var bC=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,EC=/^\w*$/;function wC(t,n){if(ht(t))return!1;var a=typeof t;return a=="number"||a=="symbol"||a=="boolean"||t==null||_a(t)?!0:EC.test(t)||!bC.test(t)||n!=null&&t in Object(n)}var vn=Qt(Object,"create");function CC(){this.__data__=vn?vn(null):{},this.size=0}function BC(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var kC="__lodash_hash_undefined__",IC=Object.prototype,OC=IC.hasOwnProperty;function RC(t){var n=this.__data__;if(vn){var a=n[t];return a===kC?void 0:a}return OC.call(n,t)?n[t]:void 0}var MC=Object.prototype,SC=MC.hasOwnProperty;function TC(t){var n=this.__data__;return vn?n[t]!==void 0:SC.call(n,t)}var xC="__lodash_hash_undefined__";function vC(t,n){var a=this.__data__;return this.size+=this.has(t)?0:1,a[t]=vn&&n===void 0?xC:n,this}function Xt(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}Xt.prototype.clear=CC,Xt.prototype.delete=BC,Xt.prototype.get=RC,Xt.prototype.has=TC,Xt.prototype.set=vC;function VC(){this.__data__=[],this.size=0}function ga(t,n){for(var a=t.length;a--;)if(ls(t[a][0],n))return a;return-1}var PC=Array.prototype,NC=PC.splice;function DC(t){var n=this.__data__,a=ga(n,t);if(a<0)return!1;var o=n.length-1;return a==o?n.pop():NC.call(n,a,1),--this.size,!0}function UC(t){var n=this.__data__,a=ga(n,t);return a<0?void 0:n[a][1]}function LC(t){return ga(this.__data__,t)>-1}function GC(t,n){var a=this.__data__,o=ga(a,t);return o<0?(++this.size,a.push([t,n])):a[o][1]=n,this}function yt(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}yt.prototype.clear=VC,yt.prototype.delete=DC,yt.prototype.get=UC,yt.prototype.has=LC,yt.prototype.set=GC;var Vn=Qt(st,"Map");function jC(){this.size=0,this.__data__={hash:new Xt,map:new(Vn||yt),string:new Xt}}function FC(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function Aa(t,n){var a=t.__data__;return FC(n)?a[typeof n=="string"?"string":"hash"]:a.map}function HC(t){var n=Aa(this,t).delete(t);return this.size-=n?1:0,n}function YC(t){return Aa(this,t).get(t)}function KC(t){return Aa(this,t).has(t)}function zC(t,n){var a=Aa(this,t),o=a.size;return a.set(t,n),this.size+=a.size==o?0:1,this}function Mt(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}Mt.prototype.clear=jC,Mt.prototype.delete=HC,Mt.prototype.get=YC,Mt.prototype.has=KC,Mt.prototype.set=zC;var QC="Expected a function";function po(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(QC);var a=function(){var o=arguments,i=n?n.apply(this,o):o[0],r=a.cache;if(r.has(i))return r.get(i);var s=t.apply(this,o);return a.cache=r.set(i,s)||r,s};return a.cache=new(po.Cache||Mt),a}po.Cache=Mt;var XC=500;function qC(t){var n=po(t,function(o){return a.size===XC&&a.clear(),o}),a=n.cache;return n}var JC=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ZC=/\\(\\)?/g,WC=qC(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(JC,function(a,o,i,r){n.push(i?r.replace(ZC,"$1"):o||a)}),n});function fa(t){return t==null?"":os(t)}function ln(t,n){return ht(t)?t:wC(t,n)?[t]:WC(fa(t))}var _C=1/0;function ha(t){if(typeof t=="string"||_a(t))return t;var n=t+"";return n=="0"&&1/t==-_C?"-0":n}function mo(t,n){n=ln(n,t);for(var a=0,o=n.length;t!=null&&a<o;)t=t[ha(n[a++])];return a&&a==o?t:void 0}function $C(t,n,a){var o=t==null?void 0:mo(t,n);return o===void 0?a:o}function go(t,n){for(var a=-1,o=n.length,i=t.length;++a<o;)t[i+a]=n[a];return t}var ws=lt?lt.isConcatSpreadable:void 0;function eB(t){return ht(t)||ma(t)||!!(ws&&t&&t[ws])}function tB(t,n,a,o,i){var r=-1,s=t.length;for(a||(a=eB),i||(i=[]);++r<s;){var l=t[r];a(l)?go(i,l):i[i.length]=l}return i}function nB(t){var n=t==null?0:t.length;return n?tB(t):[]}function Cs(t){return Cw(Mw(t,void 0,nB),t+"")}var Ao=bs(Object.getPrototypeOf,Object),aB="[object Object]",oB=Function.prototype,iB=Object.prototype,Bs=oB.toString,rB=iB.hasOwnProperty,sB=Bs.call(Object);function lB(t){if(!Yt(t)||Ht(t)!=aB)return!1;var n=Ao(t);if(n===null)return!0;var a=rB.call(n,"constructor")&&n.constructor;return typeof a=="function"&&a instanceof a&&Bs.call(a)==sB}function ks(t,n,a){var o=-1,i=t.length;n<0&&(n=-n>i?0:i+n),a=a>i?i:a,a<0&&(a+=i),i=n>a?0:a-n>>>0,n>>>=0;for(var r=Array(i);++o<i;)r[o]=t[o+n];return r}function cB(t,n,a){var o=t.length;return a=a===void 0?o:a,!n&&a>=o?t:ks(t,n,a)}var dB="\\ud800-\\udfff",uB="\\u0300-\\u036f",pB="\\ufe20-\\ufe2f",mB="\\u20d0-\\u20ff",gB=uB+pB+mB,AB="\\ufe0e\\ufe0f",fB="\\u200d",hB=RegExp("["+fB+dB+gB+AB+"]");function Is(t){return hB.test(t)}function yB(t){return t.split("")}var Os="\\ud800-\\udfff",bB="\\u0300-\\u036f",EB="\\ufe20-\\ufe2f",wB="\\u20d0-\\u20ff",CB=bB+EB+wB,BB="\\ufe0e\\ufe0f",kB="["+Os+"]",fo="["+CB+"]",ho="\\ud83c[\\udffb-\\udfff]",IB="(?:"+fo+"|"+ho+")",Rs="[^"+Os+"]",Ms="(?:\\ud83c[\\udde6-\\uddff]){2}",Ss="[\\ud800-\\udbff][\\udc00-\\udfff]",OB="\\u200d",Ts=IB+"?",xs="["+BB+"]?",RB="(?:"+OB+"(?:"+[Rs,Ms,Ss].join("|")+")"+xs+Ts+")*",MB=xs+Ts+RB,SB="(?:"+[Rs+fo+"?",fo,Ms,Ss,kB].join("|")+")",TB=RegExp(ho+"(?="+ho+")|"+SB+MB,"g");function xB(t){return t.match(TB)||[]}function vB(t){return Is(t)?xB(t):yB(t)}function VB(t){return function(n){n=fa(n);var a=Is(n)?vB(n):void 0,o=a?a[0]:n.charAt(0),i=a?cB(a,1).join(""):n.slice(1);return o[t]()+i}}var PB=VB("toUpperCase");function NB(t){return PB(fa(t).toLowerCase())}function DB(){this.__data__=new yt,this.size=0}function UB(t){var n=this.__data__,a=n.delete(t);return this.size=n.size,a}function LB(t){return this.__data__.get(t)}function GB(t){return this.__data__.has(t)}var jB=200;function FB(t,n){var a=this.__data__;if(a instanceof yt){var o=a.__data__;if(!Vn||o.length<jB-1)return o.push([t,n]),this.size=++a.size,this;a=this.__data__=new Mt(o)}return a.set(t,n),this.size=a.size,this}function cn(t){var n=this.__data__=new yt(t);this.size=n.size}cn.prototype.clear=DB,cn.prototype.delete=UB,cn.prototype.get=LB,cn.prototype.has=GB,cn.prototype.set=FB;function HB(t,n){return t&&Tn(n,co(n),t)}function YB(t,n){return t&&Tn(n,uo(n),t)}var vs=typeof ee=="object"&&ee&&!ee.nodeType&&ee,Vs=vs&&typeof module=="object"&&module&&!module.nodeType&&module,KB=Vs&&Vs.exports===vs,Ps=KB?st.Buffer:void 0,Ns=Ps?Ps.allocUnsafe:void 0;function zB(t,n){if(n)return t.slice();var a=t.length,o=Ns?Ns(a):new t.constructor(a);return t.copy(o),o}function QB(t,n){for(var a=-1,o=t==null?0:t.length,i=0,r=[];++a<o;){var s=t[a];n(s,a,t)&&(r[i++]=s)}return r}function Ds(){return[]}var XB=Object.prototype,qB=XB.propertyIsEnumerable,Us=Object.getOwnPropertySymbols,yo=Us?function(t){return t==null?[]:(t=Object(t),QB(Us(t),function(n){return qB.call(t,n)}))}:Ds;function JB(t,n){return Tn(t,yo(t),n)}var ZB=Object.getOwnPropertySymbols,Ls=ZB?function(t){for(var n=[];t;)go(n,yo(t)),t=Ao(t);return n}:Ds;function WB(t,n){return Tn(t,Ls(t),n)}function Gs(t,n,a){var o=n(t);return ht(t)?o:go(o,a(t))}function _B(t){return Gs(t,co,yo)}function js(t){return Gs(t,uo,Ls)}var bo=Qt(st,"DataView"),Eo=Qt(st,"Promise"),wo=Qt(st,"Set"),Fs="[object Map]",$B="[object Object]",Hs="[object Promise]",Ys="[object Set]",Ks="[object WeakMap]",zs="[object DataView]",ek=zt(bo),tk=zt(Vn),nk=zt(Eo),ak=zt(wo),ok=zt(to),ct=Ht;(bo&&ct(new bo(new ArrayBuffer(1)))!=zs||Vn&&ct(new Vn)!=Fs||Eo&&ct(Eo.resolve())!=Hs||wo&&ct(new wo)!=Ys||to&&ct(new to)!=Ks)&&(ct=function(t){var n=Ht(t),a=n==$B?t.constructor:void 0,o=a?zt(a):"";if(o)switch(o){case ek:return zs;case tk:return Fs;case nk:return Hs;case ak:return Ys;case ok:return Ks}return n});var ik=Object.prototype,rk=ik.hasOwnProperty;function sk(t){var n=t.length,a=new t.constructor(n);return n&&typeof t[0]=="string"&&rk.call(t,"index")&&(a.index=t.index,a.input=t.input),a}var Qs=st.Uint8Array;function Co(t){var n=new t.constructor(t.byteLength);return new Qs(n).set(new Qs(t)),n}function lk(t,n){var a=n?Co(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.byteLength)}var ck=/\w*$/;function dk(t){var n=new t.constructor(t.source,ck.exec(t));return n.lastIndex=t.lastIndex,n}var Xs=lt?lt.prototype:void 0,qs=Xs?Xs.valueOf:void 0;function uk(t){return qs?Object(qs.call(t)):{}}function pk(t,n){var a=n?Co(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.length)}var mk="[object Boolean]",gk="[object Date]",Ak="[object Map]",fk="[object Number]",hk="[object RegExp]",yk="[object Set]",bk="[object String]",Ek="[object Symbol]",wk="[object ArrayBuffer]",Ck="[object DataView]",Bk="[object Float32Array]",kk="[object Float64Array]",Ik="[object Int8Array]",Ok="[object Int16Array]",Rk="[object Int32Array]",Mk="[object Uint8Array]",Sk="[object Uint8ClampedArray]",Tk="[object Uint16Array]",xk="[object Uint32Array]";function vk(t,n,a){var o=t.constructor;switch(n){case wk:return Co(t);case mk:case gk:return new o(+t);case Ck:return lk(t,a);case Bk:case kk:case Ik:case Ok:case Rk:case Mk:case Sk:case Tk:case xk:return pk(t,a);case Ak:return new o;case fk:case bk:return new o(t);case hk:return dk(t);case yk:return new o;case Ek:return uk(t)}}function Vk(t){return typeof t.constructor=="function"&&!pa(t)?mw(Ao(t)):{}}var Pk="[object Map]";function Nk(t){return Yt(t)&&ct(t)==Pk}var Js=sn&&sn.isMap,Dk=Js?so(Js):Nk,Uk="[object Set]";function Lk(t){return Yt(t)&&ct(t)==Uk}var Zs=sn&&sn.isSet,Gk=Zs?so(Zs):Lk,jk=1,Fk=2,Hk=4,Ws="[object Arguments]",Yk="[object Array]",Kk="[object Boolean]",zk="[object Date]",Qk="[object Error]",_s="[object Function]",Xk="[object GeneratorFunction]",qk="[object Map]",Jk="[object Number]",$s="[object Object]",Zk="[object RegExp]",Wk="[object Set]",_k="[object String]",$k="[object Symbol]",eI="[object WeakMap]",tI="[object ArrayBuffer]",nI="[object DataView]",aI="[object Float32Array]",oI="[object Float64Array]",iI="[object Int8Array]",rI="[object Int16Array]",sI="[object Int32Array]",lI="[object Uint8Array]",cI="[object Uint8ClampedArray]",dI="[object Uint16Array]",uI="[object Uint32Array]",Ce={};Ce[Ws]=Ce[Yk]=Ce[tI]=Ce[nI]=Ce[Kk]=Ce[zk]=Ce[aI]=Ce[oI]=Ce[iI]=Ce[rI]=Ce[sI]=Ce[qk]=Ce[Jk]=Ce[$s]=Ce[Zk]=Ce[Wk]=Ce[_k]=Ce[$k]=Ce[lI]=Ce[cI]=Ce[dI]=Ce[uI]=!0,Ce[Qk]=Ce[_s]=Ce[eI]=!1;function Pn(t,n,a,o,i,r){var s,l=n&jk,d=n&Fk,m=n&Hk;if(a&&(s=i?a(t,o,i,r):a(t)),s!==void 0)return s;if(!Kt(t))return t;var p=ht(t);if(p){if(s=sk(t),!l)return Aw(t,s)}else{var u=ct(t),g=u==_s||u==Xk;if(ro(t))return zB(t,l);if(u==$s||u==Ws||g&&!i){if(s=d||g?{}:Vk(t),!l)return d?WB(t,YB(s,t)):JB(t,HB(s,t))}else{if(!Ce[u])return i?t:{};s=vk(t,u,l)}}r||(r=new cn);var h=r.get(t);if(h)return h;r.set(t,s),Gk(t)?t.forEach(function(E){s.add(Pn(E,n,a,E,t,r))}):Dk(t)&&t.forEach(function(E,k){s.set(k,Pn(E,n,a,k,t,r))});var C=m?d?js:_B:d?uo:co,f=p?void 0:C(t);return Bw(f||t,function(E,k){f&&(k=E,E=t[k]),ao(s,k,Pn(E,n,a,k,t,r))}),s}var pI=1,mI=4;function gI(t){return Pn(t,pI|mI)}function AI(t,n){return t!=null&&n in Object(t)}function fI(t,n,a){n=ln(n,t);for(var o=-1,i=n.length,r=!1;++o<i;){var s=ha(n[o]);if(!(r=t!=null&&a(t,s)))break;t=t[s]}return r||++o!=i?r:(i=t==null?0:t.length,!!i&&oo(i)&&no(s,i)&&(ht(t)||ma(t)))}function hI(t,n){return t!=null&&fI(t,n,AI)}function yI(t){var n=t==null?0:t.length;return n?t[n-1]:void 0}function bI(t,n){return n.length<2?t:mo(t,ks(n,0,-1))}var EI="[object Map]",wI="[object Set]",CI=Object.prototype,BI=CI.hasOwnProperty;function el(t){if(t==null)return!0;if(io(t)&&(ht(t)||typeof t=="string"||typeof t.splice=="function"||ro(t)||hs(t)||ma(t)))return!t.length;var n=ct(t);if(n==EI||n==wI)return!t.size;if(pa(t))return!Es(t).length;for(var a in t)if(BI.call(t,a))return!1;return!0}function tl(t,n){return n=ln(n,t),t=bI(t,n),t==null||delete t[ha(yI(n))]}function kI(t){return lB(t)?void 0:t}var II=1,OI=2,RI=4,MI=Cs(function(t,n){var a={};if(t==null)return a;var o=!1;n=ts(n,function(r){return r=ln(r,t),o||(o=r.length>1),r}),Tn(t,js(t),a),o&&(a=Pn(a,II|OI|RI,kI));for(var i=n.length;i--;)tl(a,n[i]);return a});function nl(t,n,a,o){if(!Kt(t))return t;n=ln(n,t);for(var i=-1,r=n.length,s=r-1,l=t;l!=null&&++i<r;){var d=ha(n[i]),m=a;if(d==="__proto__"||d==="constructor"||d==="prototype")return t;if(i!=s){var p=l[d];m=void 0,m===void 0&&(m=Kt(p)?p:no(n[i+1])?[]:{})}ao(l,d,m),l=l[d]}return t}function SI(t,n,a){for(var o=-1,i=n.length,r={};++o<i;){var s=n[o],l=mo(t,s);a(l,s)&&nl(r,ln(s,t),l)}return r}function TI(t,n){return SI(t,n,function(a,o){return hI(t,o)})}var xI=Cs(function(t,n){return t==null?{}:TI(t,n)});function vI(t,n,a){return t==null?t:nl(t,n,a)}var VI=0;function ya(t){var n=++VI;return fa(t)+n}function al(t,n){return t==null?!0:tl(t,n)}const{t:ol}=De.createI18n("en-us",Qn);function il(t){return t.map(n=>({value:n,label:n}))}const Bo="*",rl="$",sl=".";function at(...t){return t.join(sl)}function ko(...t){return at(rl,...t)}function ll(t){return t.startsWith(at(rl,""))}function dn(t){return t.split(sl).filter(n=>n!=="")}function Io(t){const n=dn(t);return n[n.length-1]}ol("redis.shared_configuration.open_source"),ol("redis.shared_configuration.enterprise");function PI(t){const n=e.toValue(t);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const cl=Symbol("free-form-data"),dl=Symbol("free-form-schema"),ul=Symbol("free-form-field-path"),Oo=Symbol("free-form-field-renderer-slots"),ba=Symbol("free-form-field-renderer-matchers-map"),pl=Symbol("free-form-config"),ml=Symbol("free-form-field-reset-label-path-setting"),un="free-form-field-renderers-slot",NI={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function Ro(t,n=""){const a={},o=t;if(Array.isArray(o.fields))for(const i of o.fields){const r=Object.keys(i)[0],s=i[r],l=n?at(n,r):r;if(a[l]=s,s.type==="record"&&Array.isArray(s.fields)){const d=Ro(s,l);Object.assign(a,d)}else if(s.type==="array"&&s.elements){const d=s.elements,m=at(l,Bo);if(a[m]=d,d.type==="record"&&Array.isArray(d.fields)){const p=Ro(d,m);Object.assign(a,p)}}}return a}function Mo(t){const n=dn(t).map(a=>/^\d+$/.test(a)?Bo:a);return at(...n)}function DI(t){const n=e.toValue(t),a=e.computed(()=>n?Ro(n):{});function o(p){var u;return p==null?n:(u=a.value)==null?void 0:u[Mo(p)]}function i(p,u=!1){const g=o(p);return g?g.default!==void 0?g.default:u||g.required?g.type==="record"?r(g,p):g.type==="array"?[]:null:null:null}function r(p,u){const g={};if(Array.isArray(p.fields))for(const h of p.fields){const C=Object.keys(h)[0],f=u?`${u}.${C}`:C,E=i(f,!1);E!==void 0&&(g[C]=E)}return g}function s(p){return p?i(p,!0):r(o(),"")}function l(p){const u=o(p),g=u!=null&&u.description?ue.parse(u.description,{async:!1}):void 0;return{...NI,info:g}}function d(p){var g;const u=o(p);return il((u==null?void 0:u.one_of)||((g=u.elements)==null?void 0:g.one_of)||[])}function m(p){var h;const u=(h=o(p))==null?void 0:h.default;let g=null;if(u==null||typeof u=="object"||u==="")return null;if(Array.isArray(u)){if(u.length===0)return null;g=u.join(", ")}else g=u.toString();return`Default: ${g}`}return{getSchema:o,getDefault:s,getSelectItems:d,getLabelAttributes:l,getPlaceholder:m}}function Ze(){const t=e.inject(cl),n=e.inject(dl),a=e.inject(pl,{});if(!t)throw new Error("useFormShared() called without form data provider.");if(!n)throw new Error("useFormShared() called without schema provider.");return{formData:t,formConfig:a,...n}}const gl=t=>{const n=e.inject(ul,e.computed(()=>"")),a=e.computed(()=>{const o=e.toValue(t);let i=o;return!ll(o)&&n.value&&(i=at(n.value,o)),ll(o)&&(i=i.slice(ko("").length)),i});return e.provide(ul,a),a},UI=t=>{const{getSchema:n}=Ze(),{default:a,...o}=e.useSlots(),i=e.inject(Oo),r=e.inject(ba),s=e.computed(()=>{const d=e.toValue(i),m=Object.keys(o).filter(p=>p!==un&&p!=="item").reduce((p,u)=>{const g=Mo(at(e.toValue(t),u));return{...p,[g]:o[u]}},{});return d?{...d,...m}:m});e.provide(Oo,s);const l=e.toValue(t);return e.computed(()=>{if(a)return;const d=s.value[Mo(e.toValue(t))];if(d)return d;for(const[m,p]of r)if(m({path:l,schema:n(l)}))return p})},LI={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function GI(t){return LI[t.toLocaleLowerCase()]??t}function jI(t,n){const a=e.inject(ml,{parentPath:null,isolate:!1}),{parentPath:o,isolate:i}=e.toValue(a),r=e.ref(o?at(o,t):t),s=e.ref({parentPath:r.value,isolate:i});return e.watch([e.toRef(n),e.toRef(a)],([l,d])=>{var g;const{parentPath:m,isolate:p}=d,u=m?at(m,t):t;if(l){const h={isolate:()=>{r.value=t,s.value.isolate=!0,s.value.parentPath=null},"isolate-children":()=>{s.value.isolate=!0,s.value.parentPath=null},reset:()=>{r.value=t,s.value.isolate=!1,s.value.parentPath=null},"reset-children":()=>{s.value.isolate=!1,s.value.parentPath=null},inherit:()=>{r.value=u,s.value.isolate=!1,s.value.parentPath=u}};(g=h[l])==null||g.call(h)}else p&&(r.value=t,s.value.isolate=!0,s.value.parentPath=null)},{deep:!0,immediate:!0}),e.provide(ml,s),r}function FI(t,n){const a=e.toValue(t),o=Io(a),{formConfig:i}=Ze(),r=jI(o,n),{getSchema:s}=Ze(),l=Al(t);return e.computed(()=>{var h;const d=r.value??o,m=dn(d),p=(h=l.value.parent)!=null&&h.path?s(l.value.parent.path):null,g=(p==null?void 0:p.type)==="array"?"":m.map(C=>C.split("_").map(NB).map(GI).join(" ")).join(" › ");return i.transformLabel?i.transformLabel(g,a):g})}function St(t,n){const{getLabelAttributes:a,getPlaceholder:o,getSchema:i}=Ze(),r=e.toValue(t),s=e.toValue(n),l=FI(t,e.toRef(()=>e.toValue(n).resetLabelPath));return e.computed(()=>{var d;return{...s,placeholder:s.placeholder??o(r)??void 0,labelAttributes:s.labelAttributes??a(r),label:s.label??l.value,required:s.required??((d=i(r))==null?void 0:d.required)}})}function Al(t){return e.computed(()=>{var o;const n=dn(e.toValue(t));let a={parent:null};for(n.pop();n.length;){const i=n.shift();a.path=(o=a.parent)!=null&&o.path?at(a.parent.path,i):i,a={parent:a}}return a})}function HI(t){const{formData:n}=Ze(),a=gl(t);return{value:e.computed({get:()=>$C(n,dn(a.value)),set:i=>vI(n,dn(a.value),i)})}}function bt(t){const{getSchema:n}=Ze(),a=gl(t),o=UI(a),{value:i}=HI(t),r=e.computed(()=>n(a.value));return r.value?{schema:r,path:a,renderer:o,value:i,ancestors:Al(a),error:null}:{error:new Error(`path '${a.value}' is not found in schema.`)}}function So(t){const{getSchema:n}=Ze(),a=e.useAttrs();return e.computed(()=>{var i;if(a["data-autofocus"]!==void 0)return!0;if(!t)return!1;const o=e.toValue(t).parent;return o!=null&&o.path?((i=n(o.path))==null?void 0:i.type)==="array":!1})}const YI="__request_callout_";function fl(){return ya(YI)}const KI={key:1},zI=["innerHTML"],hl=Me(e.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{}},emits:["update:modelValue"],setup(t,{emit:n}){const a=e.useAttrs(),o=e.createPropsRestProxy(t,["showVaultSecretPicker","showPasswordMaskToggle","name"]),i=n,{value:r,...s}=bt(e.toRef(()=>t.name)),l=St(s.path,e.toRef({...o,...a})),d=r==null?void 0:r.value;function m(k){d!==void 0&&k===""&&k!==d?(r.value=null,i("update:modelValue",null)):(r.value=k.trim(),i("update:modelValue",k.trim()))}const p=e.computed(()=>{var k;return t.showPasswordMaskToggle!==void 0?t.showPasswordMaskToggle:o.type==="password"?!0:!!((k=s.schema)==null?void 0:k.value).encrypted}),u=e.computed(()=>o.multiline?ze.KTextArea:ze.KInput),g=e.inject(Ke,void 0),h=e.computed(()=>{var k;return t.showVaultSecretPicker!==void 0?t.showVaultSecretPicker:!!((k=s.schema.value)!=null&&k.referenceable)}),C=e.computed(()=>({referenceable:h.value})),f=So(s.ancestors),E=e.computed(()=>a["data-1p-ignore"]!==void 0?a["data-1p-ignore"]:Io(t.name)==="name");return(k,R)=>{var I;const w=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(w,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",KI,[e.createVNode(e.unref(u),e.mergeProps({class:"ff-string-field"},{...e.unref(l),showPasswordMaskToggle:p.value,type:p.value?"password":"text"},{"data-1p-ignore":E.value,"data-autofocus":e.unref(f),"model-value":e.unref(r)??"","onUpdate:modelValue":m}),e.createSlots({_:2},[(I=e.unref(l).labelAttributes)!=null&&I.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(k.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,zI)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","model-value"]),e.unref(g)&&h.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(g)),{key:0,schema:C.value,update:m,value:e.unref(r)??""},null,8,["schema","value"])):e.createCommentVNode("",!0)]))}}}),[["__scopeId","data-v-28ffd43b"]]),QI=["innerHTML"],XI=Me(e.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:n}){const a=e.createPropsRestProxy(t,["name"]),{value:o,...i}=bt(e.toRef(()=>t.name)),r=n,s=d=>{o.value=d,r("update:modelValue",d)},l=St(i.path,a);return(d,m)=>{var u;const p=e.resolveComponent("KAlert");return i.error?(e.openBlock(),e.createBlock(p,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(e.openBlock(),e.createBlock(e.unref(ze.KCheckbox),e.mergeProps({key:1},e.unref(l),{class:"ff-boolean-field","model-value":e.unref(o)??!1,"onUpdate:modelValue":s}),e.createSlots({_:2},[(u=e.unref(l).labelAttributes)!=null&&u.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,QI)],!0)]),key:"0"}:void 0]),1040,["model-value"]))}}}),[["__scopeId","data-v-b2956481"]]),qI=Me(e.defineComponent({__name:"SlideTransition",setup(t){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],a=Object.fromEntries(n.map(g=>[g,""])),o=Object.fromEntries(n.map(g=>[g,"0"]));function i(g){const h=getComputedStyle(g);return Object.fromEntries(n.map(C=>[C,h.getPropertyValue(C)]))}function r(g){["overflow","transition",...n].forEach(h=>g.style.removeProperty(h))}function s(g){Object.assign(g.style,{overflow:"hidden",transition:"none"})}function l(g){const h=g;Object.assign(h.style,a);const C=i(h);Object.assign(h.style,o),requestAnimationFrame(()=>{Object.assign(h.style,{...C,transition:""})})}function d(g){r(g)}function m(g){const h=g;Object.assign(h.style,{...i(h),overflow:"hidden"})}function p(g){Object.assign(g.style,o)}function u(g){r(g)}return(g,h)=>(e.openBlock(),e.createBlock(e.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:d,onAfterLeave:u,onBeforeEnter:s,onBeforeLeave:m,onEnter:l,onLeave:p},{default:e.withCtx(()=>[e.renderSlot(g.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),JI={key:1,class:"ff-object-field ff-object-field-as-child"},ZI={class:"ff-object-field-header"},WI=["innerHTML"],_I={class:"ff-object-field-actions"},$I={key:0,class:"ff-object-field-content"},qt=Me(e.defineComponent({__name:"ObjectField",props:e.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(t){e.useSlots();const n=e.createPropsRestProxy(t,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:a,...o}=bt(e.toRef(n,"name")),{getSchema:i}=Ze(),r=e.useModel(t,"added"),s=e.useModel(t,"expanded"),l=e.computed(()=>u.value&&(t.collapsible?s.value??t.defaultExpanded:!1)),d=e.computed(()=>{var C,f;if((C=o.ancestors)!=null&&C.value){const E=o.ancestors.value.parent;if(E!=null&&E.path)return((f=i(E.path))==null?void 0:f.type)==="array"}return!1}),m=e.computed(()=>t.resetLabelPath!==void 0?t.resetLabelPath:d.value?"reset":"inherit"),p=St(o.path,e.toRef(()=>({required:t.required,...n,resetLabelPath:m.value}))),u=e.computed(()=>p.value.required?!0:r.value??t.defaultAdded),g=e.computed(()=>t.asChild!==void 0?t.asChild:d.value),h=e.computed(()=>{let C=o.schema.value.fields;return t.omit&&(C=C.filter(f=>!t.omit.includes(Object.keys(f)[0]))),t.fieldsOrder?C.sort((f,E)=>{const k=Object.keys(f)[0],R=Object.keys(E)[0],w=t.fieldsOrder.indexOf(k),I=t.fieldsOrder.indexOf(R);return w===-1&&I===-1?0:w===-1?1:I===-1?-1:w-I}):C});return e.watch(u,C=>{t.collapsible&&(s.value=C)}),e.onBeforeMount(()=>{r.value=!!(a!=null&&a.value)}),(C,f)=>{var k;const E=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C.$slots[e.unref(un)]))),o.error?(e.openBlock(),e.createBlock(E,{key:0,appearance:"danger",message:o.error.message},null,8,["message"])):g.value?(e.openBlock(),e.createElementBlock("div",JI,[e.renderSlot(C.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,R=>(e.openBlock(),e.createBlock(Jt,{key:Object.keys(R)[0],name:Object.keys(R)[0]},null,8,["name"]))),128))],!0)])):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["ff-object-field",{"ff-object-field-collapsed":!l.value}])},[e.createElementVNode("header",ZI,[e.createVNode(e.unref(ze.KLabel),e.mergeProps({class:"ff-object-field-label"},{...e.unref(p),required:!1},{"tooltip-attributes":e.unref(p).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(p).label)+" ",1)]),_:2},[(k=e.unref(p).labelAttributes)!=null&&k.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(C.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(p).labelAttributes.info},null,8,WI)],!0)]),key:"0"}:void 0]),1040,["tooltip-attributes"]),e.createElementVNode("div",_I,[C.collapsible&&u.value?(e.openBlock(),e.createBlock(e.unref(ze.KButton),{key:0,appearance:"tertiary",class:e.normalizeClass(`ff-object-field-button-${l.value?"collapse":"expand"}`),icon:"",onClick:f[0]||(f[0]=R=>s.value=!l.value)},{default:e.withCtx(()=>[u.value?(e.openBlock(),e.createBlock(e.unref(Se.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):e.createCommentVNode("",!0)]),_:1},8,["class"])):e.createCommentVNode("",!0),e.unref(p).required?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(ze.KButton),{key:1,appearance:"tertiary",class:e.normalizeClass(`ff-object-field-button-${u.value?"remove":"add"}`),icon:"",onClick:f[1]||(f[1]=R=>r.value=!r.value)},{default:e.withCtx(()=>[u.value?(e.openBlock(),e.createBlock(e.unref(Se.TrashIcon),{key:0})):(e.openBlock(),e.createBlock(e.unref(Se.AddIcon),{key:1}))]),_:1},8,["class"]))])]),e.createVNode(qI,null,{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",$I,[e.renderSlot(C.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,R=>(e.openBlock(),e.createBlock(Jt,{key:Object.keys(R)[0],name:Object.keys(R)[0]},null,8,["name"]))),128))],!0)])):e.createCommentVNode("",!0)]),_:3})],2))],64)}}}),[["__scopeId","data-v-b119978f"]]),eO=["innerHTML"],tO=Me(e.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{}},emits:["update:modelValue"],setup(t,{emit:n}){const a=e.createPropsRestProxy(t,["name"]),{value:o,...i}=bt(e.toRef(()=>t.name)),r=St(i.path,a),s=e.computed(()=>{var h;const[u,g]=((h=i.schema)==null?void 0:h.value).between??[];return{min:a.min??u,max:a.max??g}}),l=n,d=o.value;function m(u){d!==void 0&&u===""&&Number(u)!==d?(o.value=null,l("update:modelValue",null)):(o.value=Number(u),l("update:modelValue",Number(u)))}const p=So(i.ancestors);return(u,g)=>{var C;const h=e.resolveComponent("KAlert");return i.error?(e.openBlock(),e.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(e.openBlock(),e.createBlock(e.unref(ze.KInput),e.mergeProps({key:1,class:"ff-number-field"},{...e.unref(r),min:s.value.min,max:s.value.max},{"data-autofocus":e.unref(p),"model-value":e.unref(o)??"",type:"number","onUpdate:modelValue":m}),e.createSlots({_:2},[(C=e.unref(r).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(r).labelAttributes.info},null,8,eO)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","model-value"]))}}}),[["__scopeId","data-v-63b04fcc"]]),nO=["innerHTML"],pn=Me(e.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},multiple:{type:Boolean,default:()=>{}},items:{},placeholder:{}},setup(t){const n=e.createPropsRestProxy(t,["name","items","multiple"]),{getSelectItems:a}=Ze(),{value:o,...i}=bt(e.toRef(()=>t.name)),r=St(i.path,n),s=e.computed(()=>t.items?t.items:i.path?a(i.path.value):[]),l=e.computed(()=>{var m;return t.multiple!==void 0?t.multiple:((m=i.schema.value)==null?void 0:m.type)==="set"}),d=e.computed(()=>l.value?ze.KMultiselect:ze.KSelect);return(m,p)=>{var g;const u=e.resolveComponent("KAlert");return i.error?(e.openBlock(),e.createBlock(u,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(e.openBlock(),e.createBlock(e.unref(d),e.mergeProps({key:1},e.unref(r),{modelValue:e.unref(o),"onUpdate:modelValue":p[0]||(p[0]=h=>e.isRef(o)?o.value=h:null),class:"ff-enum-field",items:s.value}),e.createSlots({_:2},[(g=e.unref(r).labelAttributes)!=null&&g.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(m.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(r).labelAttributes.info},null,8,nO)],!0)]),key:"0"}:void 0]),1040,["modelValue","items"]))}}}),[["__scopeId","data-v-1d3838ca"]]),aO={class:"ff-kv-field-header"},oO=["innerHTML"],iO=Me(e.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},required:{type:Boolean},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}}},emits:["change"],setup(t,{expose:n,emit:a}){const o=e.createPropsRestProxy(t,["showVaultSecretPicker"]),{value:i,...r}=bt(e.toRef(o,"name")),s=St(r.path,o),l=a,d=e.ref(p(o.initialValue??(i==null?void 0:i.value)??{}));function m(){return ya("ff-kv-field-")}function p(A){return Object.entries(A).map(([y,b])=>({id:m(),key:y,value:b}))}const u=()=>{d.value.push({id:m(),key:o.defaultKey||"",value:o.defaultValue||""})},g=A=>{const y=d.value.findIndex(b=>b.id===A);y!==-1&&d.value.splice(y,1)},h=()=>{const A=Object.fromEntries(d.value.map(({key:y,value:b})=>[y,b]).filter(([y])=>y));i.value=A,l("change",A)},C=e.useTemplateRef("root");async function f(A,y="key"){var b;C.value&&(await e.nextTick(),(b=C.value.querySelector(`[data-${y}-input="${A}"]`))==null||b.focus())}e.watch(d,h,{deep:!0});function E(){u();const A=d.value.findIndex(({key:y})=>!y);f(A===-1?d.value.length-1:A)}function k(A){A===d.value.length-1&&u(),f(A+1)}const R=e.inject(Ke,void 0),w=e.computed(()=>{var A,y;return t.showVaultSecretPicker??!!((y=(A=r.schema.value)==null?void 0:A.values)!=null&&y.referenceable)}),I=e.computed(()=>({referenceable:w.value}));function v(A,y){d.value[A].value=y}return n({reset:()=>{d.value=p(o.initialValue||{})},setValue:A=>{d.value=p(A)}}),(A,y)=>{var Q;const b=e.resolveComponent("KAlert"),x=e.resolveComponent("KLabel"),M=e.resolveComponent("KButton"),S=e.resolveComponent("KInput");return r.error?(e.openBlock(),e.createBlock(b,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:C,class:"ff-kv-field"},[e.createElementVNode("header",aO,[e.createVNode(x,e.mergeProps({class:"ff-kv-field-label"},e.unref(s),{"tooltip-attributes":e.unref(s).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s).label)+" ",1)]),_:2},[(Q=e.unref(s).labelAttributes)!=null&&Q.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(A.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(s).labelAttributes.info},null,8,oO)],!0)]),key:"0"}:void 0]),1040,["tooltip-attributes"]),e.createVNode(M,{appearance:"tertiary",icon:"",onClick:E},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.AddIcon))]),_:1})]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(j,z)=>(e.openBlock(),e.createElementBlock("div",{key:j.id,class:"ff-kv-field-entry"},[e.createVNode(S,{modelValue:j.key,"onUpdate:modelValue":q=>j.key=q,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":z,placeholder:A.keyPlaceholder||"Key",onKeydown:e.withKeys(e.withModifiers(q=>f(z,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","placeholder","onKeydown"]),e.createVNode(S,{modelValue:j.value,"onUpdate:modelValue":q=>j.value=q,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-value-input":z,placeholder:A.valuePlaceholder||"Value",onKeydown:e.withKeys(e.withModifiers(q=>k(z),["prevent"]),["enter"])},{after:e.withCtx(()=>[e.unref(R)&&w.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(R)),{key:0,schema:I.value,update:q=>v(z,q),value:j.value},null,8,["schema","update","value"])):e.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-value-input","placeholder","onKeydown"]),e.createVNode(M,{appearance:"tertiary",icon:"",onClick:q=>g(j.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.TrashIcon))]),_:2},1032,["onClick"])]))),128))],512))}}}),[["__scopeId","data-v-fcec7d1d"]]),rO={key:1},sO=["innerHTML"],yl=Me(e.defineComponent({inheritAttrs:!1,__name:"TagField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},type:{}},emits:["update:modelValue"],setup(t,{emit:n}){const a=e.useAttrs(),o=e.createPropsRestProxy(t,["name"]),i=n,{value:r,...s}=bt(e.toRef(()=>t.name)),l=St(s.path,e.toRef({...o,...a})),d=e.computed(()=>{var h,C;return((C=(h=s.schema)==null?void 0:h.value)==null?void 0:C.len_min)&&s.schema.value.len_min>0});function m(h){const C=h.trim().split(",").map(E=>E.trim()).filter(Boolean),f=!C.length&&d.value?null:C;r.value=f,i("update:modelValue",f)}const p=So(s.ancestors),u=e.computed(()=>a["data-1p-ignore"]!==void 0?a["data-1p-ignore"]:Io(t.name)==="name"),g=e.computed(()=>{if((r==null?void 0:r.value)!=null)return r==null?void 0:r.value.join(", ")});return(h,C)=>{var E;const f=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(f,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",rO,[e.createVNode(e.unref(ze.KInput),e.mergeProps({class:"ff-string-field"},e.unref(l),{"data-1p-ignore":u.value,"data-autofocus":e.unref(p),"model-value":g.value??"","onUpdate:modelValue":m}),e.createSlots({_:2},[(E=e.unref(l).labelAttributes)!=null&&E.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(h.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,sO)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","model-value"])]))}}}),[["__scopeId","data-v-87fade74"]]),Jt=e.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},setup(t){const n=t,a=bt(e.toRef(n,"name")),o=e.computed(()=>{var i,r;switch((r=(i=a.schema)==null?void 0:i.value)==null?void 0:r.type){case"string":return"one_of"in a.schema.value?pn:hl;case"boolean":return"one_of"in a.schema.value?pn:XI;case"number":case"integer":return"one_of"in a.schema.value?pn:tO;case"array":return To;case"set":return PI(a.schema)?yl:pn;case"record":return qt;case"map":return iO;default:return}});return(i,r)=>{const s=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.$slots[e.unref(un)]))),e.unref(a).error?(e.openBlock(),e.createBlock(s,{key:0,appearance:"danger",message:e.unref(a).error.message},null,8,["message"])):e.unref(a).renderer.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(a).renderer.value),{key:1,name:ko(e.unref(a).path.value)},null,8,["name"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[o.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{key:0,name:ko(e.unref(a).path.value)},null,8,["name"])):(e.openBlock(),e.createBlock(s,{key:1,appearance:"warning",message:`${e.unref(a).path.value} ${e.unref(a).schema.value.type} (no renderer yet)`},null,8,["message"])),e.renderSlot(i.$slots,"default")],64))],64)}}}),lO={class:"ff-array-field-header"},cO=["innerHTML"],dO={key:0,class:"ff-array-field-container"},uO={class:"ff-array-field-item-content"},pO=["data-index","data-testid"],To=Me(e.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},required:{type:Boolean},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(t,{emit:n}){var A;e.useCssVars(y=>({26336190:v.value}));const a=t,o=n,{i18n:{t:i}}=$t(),{getDefault:r}=Ze(),{value:s,...l}=bt(e.toRef(a,"name")),d=St(l.path,a),m=e.reactive(new Map),p=e.computed(()=>a.items??e.toValue(s)??[]),u=e.computed(()=>a.appearance==="card"?ze.KCard:"div");function g(){return ya("ff-array-field-")}function h(y,b){return y!=null&&typeof y=="object"?m.get(y):`ff-array-field-${b}`}function C(y,b){return typeof a.itemLabel=="function"?a.itemLabel(y,b):a.itemLabel||d.value.label||`Item #${b}`}e.watch(p,y=>{y.forEach(x=>{m.has(x)||m.set(x,g())});const b=new Set(y);[...m.keys()].forEach(x=>{b.has(x)||m.delete(x)})},{immediate:!0,deep:!0});const f=e.computed(()=>p.value.map((y,b)=>({hash:`#${h(y,b)}`,title:""}))),E=e.ref((A=f.value[0])==null?void 0:A.hash),k=async()=>{var b;const y=r(at(l.path.value,Bo));Array.isArray(s.value)||(s.value=[]),s.value.push(y),o("add"),a.appearance==="tabs"&&(await e.nextTick(),E.value=(b=f.value[f.value.length-1])==null?void 0:b.hash),await e.nextTick(),I(p.value.length+1)},R=async y=>{var b;Array.isArray(s.value)&&s.value.splice(y,1),o("remove",y),a.appearance==="tabs"&&(E.value=(b=f.value[Math.max(0,y-1)])==null?void 0:b.hash)},w=e.useTemplateRef("root");function I(y){var x;if(!w.value)return;const b=Math.max(0,Math.min(y,p.value.length-1));(x=w.value.querySelector(`[data-index="${b}"] [data-autofocus]`))==null||x.focus()}const v=e.computed(()=>{const{appearance:y,stickyTabs:b}=a;return y!=="tabs"||b==null||b===!1?null:typeof b=="number"?`${a.stickyTabs}px`:typeof b=="string"?b:"0"});return(y,b)=>{var j;const x=e.resolveComponent("KAlert"),M=e.resolveComponent("KLabel"),S=e.resolveComponent("KButton"),Q=e.resolveComponent("KTabs");return l.error?(e.openBlock(),e.createBlock(x,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:w,class:e.normalizeClass(["ff-array-field",{[`ff-array-field-${y.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":y.stickyTabs}])},[e.createElementVNode("header",lO,[e.createVNode(M,e.mergeProps({class:"ff-array-field-label"},e.unref(d),{"tooltip-attributes":e.unref(d).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(d).label)+" ",1)]),_:2},[(j=e.unref(d).labelAttributes)!=null&&j.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(d).labelAttributes.info},null,8,cO)],!0)]),key:"0"}:void 0]),1040,["tooltip-attributes"]),e.createVNode(S,{appearance:"tertiary","aria-label":e.unref(i)("actions.add_entity",{entity:e.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`${e.unref(ya)("ff-array-field")}-add-item-btn`,icon:"",onClick:k},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.AddIcon))]),_:1},8,["aria-label","data-testid"])]),p.value.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[y.appearance!=="tabs"?(e.openBlock(),e.createElementBlock("div",dO,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(z,q)=>(e.openBlock(),e.createBlock(e.unref(u),{key:h(z,q),class:"ff-array-field-item","data-index":q,"data-testid":`ff-array-field-item-${q}`},{default:e.withCtx(()=>[e.createElementVNode("div",uO,[y.$slots.item?e.renderSlot(y.$slots,"item",{key:0,fieldName:String(q),index:q},void 0,!0):(e.openBlock(),e.createBlock(Jt,{key:1,name:String(q)},null,8,["name"]))]),e.createVNode(S,{appearance:"tertiary","aria-label":e.unref(i)("actions.remove_entity",{entity:e.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove",icon:"",onClick:G=>R(q)},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.TrashIcon))]),_:2},1032,["aria-label","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))])):(e.openBlock(),e.createBlock(e.unref(ze.KCard),{key:1},{default:e.withCtx(()=>[e.createVNode(Q,{modelValue:E.value,"onUpdate:modelValue":b[0]||(b[0]=z=>E.value=z),tabs:f.value},e.createSlots({_:2},[e.renderList(p.value,(z,q)=>({name:h(z,q),fn:e.withCtx(()=>[e.createElementVNode("div",{class:"ff-array-field-item","data-index":q,"data-testid":`ff-array-field-item-${q}`},[y.$slots.item?e.renderSlot(y.$slots,"item",{key:0,fieldName:String(q),index:q},void 0,!0):(e.openBlock(),e.createBlock(Jt,{key:1,name:String(q)},null,8,["name"]))],8,pO)])})),e.renderList(p.value,(z,q)=>({name:`${h(z,q)}-anchor`,fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C(z,q))+" ",1),e.createVNode(S,{appearance:"tertiary","aria-label":e.unref(i)("actions.remove_entity",{entity:e.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove",icon:"",onClick:e.withModifiers(G=>R(q),["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.TrashIcon))]),_:2},1032,["aria-label","onClick"])])}))]),1032,["modelValue","tabs"])]),_:3}))],64)):e.createCommentVNode("",!0)],2))}}}),[["__scopeId","data-v-e60991d8"]]),mO=e.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(t){const n=t,{formData:a}=Ze(),o=e.computed(()=>{const{callouts:s}=a.config;return s==null?[]:s.filter(({name:l})=>{var d;return l&&l!==((d=s[n.index])==null?void 0:d.name)})}),i=e.computed(()=>o.value.map(({_id:s,name:l})=>({value:s,label:l}))),r=e.computed(()=>a.config.callouts[n.index]);return e.watch(i,()=>{r.value.depends_on=r.value.depends_on.filter(s=>i.value.some(l=>l.value===s))}),(s,l)=>(e.openBlock(),e.createBlock(qt,{name:s.fieldName},{depends_on:e.withCtx(d=>[e.createVNode(pn,e.mergeProps(d,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:e.withCtx(d=>[e.createVNode(qt,e.mergeProps(d,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:e.withCtx(m=>[e.createVNode(pn,e.mergeProps(m,{items:e.unref(il)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),gO=e.defineComponent({__name:"CalloutsForm",setup(t){const{formData:n,getDefault:a}=Ze();function o(){const i=a("config.callouts.*");i.request.body.custom=i.request.body.custom??{};const r=n.config.callouts[n.config.callouts.length-1];r&&(r._id=fl())}return(i,r)=>(e.openBlock(),e.createBlock(To,{appearance:"tabs","item-label":s=>s.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:e.withCtx(({index:s,fieldName:l})=>[e.createVNode(mO,{"field-name":l,index:s},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),bl=e.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(t){const n=t,{default:a}=e.useSlots(),o=e.inject(ba);if(!o)throw new Error(ba.toString()+"not provided");return a&&o.set(n.match,a),(i,r)=>null}}),AO=e.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change"],setup(t,{emit:n}){var m;const a=n,o=e.useSlots(),i=DI(t.schema);e.provide(dl,i);const r=p=>{var u;return $a((u=t.config)==null?void 0:u.hasValue)?t.config.hasValue(p):!!p},s=e.computed(()=>{let p=i.getSchema().fields;return t.fieldsOrder?p.sort((u,g)=>{const h=Object.keys(u)[0],C=Object.keys(g)[0],f=t.fieldsOrder.indexOf(h),E=t.fieldsOrder.indexOf(C);return f===-1&&E===-1?0:f===-1?1:E===-1?-1:f-E}):p}),l=e.reactive((m=t.config)!=null&&m.prepareFormData?t.config.prepareFormData(r(t.data)?t.data:i.getDefault()):r(t.data)?t.data:i.getDefault());e.provide(cl,l),e.provide(Oo,MI(o,"default",un));const d=new Map;return e.provide(ba,d),e.provide(pl,t.config),e.watch(l,p=>{a("change",e.toValue(p))},{deep:!0,immediate:!0}),(p,u)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(p.tag),null,{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(o)[e.unref(un)]))),e.renderSlot(p.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,g=>(e.openBlock(),e.createBlock(Jt,{key:Object.keys(g)[0],name:Object.keys(g)[0]},null,8,["name"]))),128))])]),_:3}))}}),fO={class:"ff-advanced-fields"},hO=Me(e.defineComponent({__name:"AdvancedFields",setup(t){const{t:n}=De.createI18n("en-us",Qn),{getSchema:a}=Ze(),o=e.ref(!0);return(i,r)=>(e.openBlock(),e.createBlock(e.unref(ze.KCollapse),{modelValue:o.value,"onUpdate:modelValue":r[0]||(r[0]=s=>o.value=s),"trigger-label":o.value?e.unref(n)("plugins.form.grouping.advanced_parameters.view"):e.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:e.withCtx(()=>[e.createElementVNode("div",fO,[e.unref(a)("instance_name")?(e.openBlock(),e.createBlock(Jt,{key:0,name:"instance_name"})):e.createCommentVNode("",!0),e.unref(a)("protocols")?(e.openBlock(),e.createBlock(Jt,{key:1,name:"protocols"})):e.createCommentVNode("",!0),e.unref(a)("tags")?(e.openBlock(),e.createBlock(yl,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:e.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-190b1d21"]]),yO=e.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(t,{emit:n}){const a=n,o={prepareFormData:s,hasValue:l},{i18n:{t:i}}=$t();function r(m,p=!1){return m.reduce((u,{_id:g,name:h})=>(p?u[h]=g:u[g]=h,u),{})}function s(m){var h;const p=gI(m);if(!((h=p.config)!=null&&h.callouts))return p;const{callouts:u}=p.config;u.forEach(C=>{C.request.body.custom=C.request.body.custom??{},C._id=fl()});const g=r(u,!0);return u.forEach(C=>{C.depends_on=C.depends_on.map(f=>g[f])}),p}function l(m){return!!(m!=null&&m.config)}function d(m){var g;if(!m)return;const p=JSON.parse(JSON.stringify(m));if(!((g=p.config)!=null&&g.callouts))throw new Error("data is not correct");const u=r(p.config.callouts);p.config.callouts=p.config.callouts.map(h=>{const{_id:C,depends_on:f,...E}=h;return{depends_on:f.map(k=>u[k]).filter(k=>k!=null),...E}}),a("change",p)}return(m,p)=>(e.openBlock(),e.createBlock(AO,{class:"rc-config-form",config:o,data:m.data,schema:m.schema,tag:"div",onChange:d},{[e.unref(un)]:e.withCtx(()=>[e.createVNode(bl,{match:({path:u})=>u.endsWith("by_lua")},{default:e.withCtx(u=>[e.createVNode(hl,e.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:e.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),e.createVNode(bl,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(g=>u.endsWith(g))},{default:e.withCtx(u=>[e.createVNode(To,e.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(qt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(gO),e.createVNode(qt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),e.createVNode(qt,{appearance:"card",name:"cache"},{redis:e.withCtx(u=>[e.createVNode(qt,e.mergeProps(u,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),e.createVNode(hO)]),_:2},1032,["data","schema"]))}}),bO={class:"sc-form-pinned-fields"},EO={class:"sc-form-config-form"},wO=Me(e.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(t){const{t:n}=De.createI18n("en-us",Qn),a=t,o=e.useSlots();e.provide(Ke,o==null?void 0:o[ot]);function i(u){return e.computed(()=>({fields:e.toValue(u).map(g=>{var h;return(h=a.formSchema)==null?void 0:h.fields.find(C=>C.model===g)}).filter(Boolean)}))}const s=i(["enabled","selectionGroup"]),l=["config","protocols"],d=e.computed(()=>{const u=a.schema;u.fields=u.fields.filter(h=>l.includes(Object.keys(h)[0])),u.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const g=u.fields.find(h=>Object.keys(h)[0]==="protocols");return g&&(g.protocols.help=g.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:g.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),g.protocols.description=n("plugins.form.fields.protocols.help")),u}),m=e.ref(!1);function p(u){return xI(u,["config","instance_name","partials","protocols","tags"])}return(u,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",bO,[e.createVNode(e.unref(Ne),{model:u.formModel,options:u.formOptions,schema:e.unref(s),onModelUpdated:u.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),e.createVNode(e.unref(ze.KCollapse),{modelValue:m.value,"onUpdate:modelValue":g[1]||(g[1]=h=>m.value=h),class:"sc-form-config-fields"},{title:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",EO,[e.renderSlot(u.$slots,"default",{data:p(u.model),schema:d.value,onChange:g[0]||(g[0]=(...h)=>u.onFormChange&&u.onFormChange(...h))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-266bdc6c"]]),CO=e.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(t){const n=t;return(a,o)=>(e.openBlock(),e.createBlock(wO,e.normalizeProps(e.guardReactiveProps(n)),{default:e.withCtx(i=>[e.createVNode(yO,e.normalizeProps(e.guardReactiveProps(i)),null,16)]),_:1},16))}}),BO={};function kO(t,n){return e.openBlock(),e.createElementBlock("div",null,"TODO")}const El=Object.freeze(Object.defineProperty({__proto__:null,RequestCalloutForm:CO,ServiceProtectionForm:Me(BO,[["render",kO]])},Symbol.toStringTag,{value:"Module"})),IO={class:"kong-ui-entities-plugin-form"},OO={key:1,class:"entity-form"},RO={class:"plugin-config-empty-state"},wl=Object.keys(Pr),Cl=Object.keys(El);if(new Set([...wl,...Cl]).size!==wl.length+Cl.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const MO=e.defineComponent({components:{...Pr,...El}}),SO=e.defineComponent({...MO,__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1}},emits:["loading","model-updated","showNewPartialModal"],setup(t,{emit:n}){var X,ce;const a=n,o=t,{axiosInstance:i}=L.useAxios((X=o.config)==null?void 0:X.axiosRequestConfig),{parseSchema:r,pruneRecord:s}=Oe.useSchemas({entityId:((ce=o.entityMap.focusedEntity)==null?void 0:ce.id)||void 0,credential:o.credential,enableRedisPartial:o.enableRedisPartial,experimentalRenders:o.config.app==="konnect"?o.config.experimentalRenders:void 0}),{convertToDotNotation:l,unFlattenObject:d,dismissField:m,isObjectEmpty:p,unsetNullForeignKey:u}=Oe.usePluginHelpers(),g=Oe.useExperimentalFreeForms(),{objectsAreEqual:h}=L.useHelpers(),{i18n:{t:C}}=$t(),f=($,F)=>{let _=`${o.config.apiBaseUrl}${Te.form[o.config.app].entityGetOne}`;return o.config.app==="konnect"?_=_.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(_=_.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),_=_.replace(/{entity}/gi,$),_=_.replace(/{id}/gi,F),_},E=$=>{let F=`${o.config.apiBaseUrl}${Te.form[o.config.app].entityGetAll}`;return o.config.app==="konnect"?F=F.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(F=F.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),F=F.replace(/{entity}/gi,$),F},k=($,F)=>{const _=f($,F);return i.get(_)},R=($,F)=>{const _=E($);return o.config.app==="konnect"?i.get(_).then(se=>{const{data:{data:ne}}=se;if(delete F.size,delete F.offset,ne.length&&Object.keys(F).length===1){const ie=Object.keys(F)[0],Xe=ne.filter(Fe=>Fe[ie]?!!Fe[ie].toLowerCase().includes(F[ie].toLowerCase()):!1);se.data.data=Xe}return se}):i.get(_,{params:F})};e.provide(It,{getOne:k,getAll:R}),e.provide(Da,o.config);const w=e.ref(""),I=e.ref(""),v=e.ref(null),A=e.ref({}),y=e.reactive({}),b=e.reactive({}),x=e.computed(()=>{var $;return($=v.value)==null?void 0:$.options}),M=e.ref(!1),S=e.ref(),Q=($,F)=>{M.value=$??"",S.value=F},j=$=>{var F;(F=S.value)==null||F.call(S,$),M.value=!1},z=()=>{var Xe,Fe,dt,Et,Zt;const $={...o.schema},F=b,_=y,se=Object.keys(F),ne={};if(!p(A.value))for(let fe=0;fe<((Fe=(Xe=A.value)==null?void 0:Xe.fields)==null?void 0:Fe.length);fe++)$[A.value.fields[fe].model]=A.value.fields[fe];Xa.forEach(fe=>{$[fe]&&($[fe].fields.forEach(pe=>{pe.fields&&pe.fields.forEach(oe=>{$[oe.model]=oe}),pe.model&&($[pe.model]=pe)}),delete $[fe])}),se.forEach(fe=>{var he;if(!$[fe]){fe==="partials"&&(ne[fe]=F[fe]);return}const pe=$[fe];let oe=F[fe];const Y=_[fe],T=Array.isArray(oe)?"array":typeof oe,B=pe?pe.valueType:null,J=pe?pe.valueArrayType:null,W=pe?pe.transform:null;if(oe==null&&Y==null&&!pe.submitWhenNull)return;if(pe){if(B&&T!==B)switch(B){case"array":T==="string"&&oe.length&&(oe=oe.split(",").map(Z=>{if(Z=Z.trim(),J==="string")return String(Z);if(J==="number")return Number(Z);if(J==="boolean"){if(typeof Z=="string")return Z.toLowerCase()==="true"||Z==="1";if(typeof Z=="number")return Z===1}return Z})),(!oe||!oe.length)&&(oe=pe.submitWhenNull?null:[]);break;case"number":oe=Number(oe);break;case"boolean":T==="string"&&(oe=oe.toLowerCase()==="true"||oe==="1"),T==="number"&&(oe=oe===1);break;case"string":oe=oe==null?"":String(oe);break}else B==="array"&&(!oe||!oe.length?oe=pe.submitWhenNull?null:[]:((he=pe.inputAttributes)==null?void 0:he.type)==="number"&&(oe=oe.map(Z=>Number(Z))));if(pe.type==="array"&&pe.nestedFields){const Z=le=>{Object.keys(le).forEach(H=>{le[H]&&typeof le[H]=="object"&&!Array.isArray(le[H])&&le[H]!==null?Z(le[H]):(le[H]===void 0||le[H]===null||typeof le[H]=="number"&&isNaN(le[H])||typeof le[H]=="string"&&le[H].trim().length===0)&&delete le[H]})};oe&&typeof oe=="object"&&Z(oe)}pe.type==="object-advanced"&&pe.fields&&oe!==null&&(Object.entries(oe).length===0?oe=null:Object.keys(oe).forEach(Z=>{Array.isArray(oe[Z])||(oe[Z]=oe[Z].split(","))}))}let re=l(fe);if(pe.fieldNameHasDashes){const[Z,...le]=re.split(".").reverse();re=[Z.replace(/_/g,"-"),...le].reverse().join(".")}if(B==="object-expand"){let Z;[re,Z]=re.split(".");let le={};ne[re]&&(le=ne[re]),le[Z]=oe,oe=le}Y!==void 0&&oe===""&&oe!==Y?ne[re]=B==="object"?{}:null:pe.type==="checklist"&&oe===""?ne[re]=[]:oe!==""&&(ne[re]=oe),ne[re]=W?W(oe):ne[re],u(re,ne)});const ie=d(ne);if(I.value){const fe=(Zt=(Et=(dt=o.rawSchema)==null?void 0:dt.fields)==null?void 0:Et.find(pe=>"config"in pe))==null?void 0:Zt.config;Object.assign(ie,{...ae.value,config:s(ae.value.config,fe)})}return ie},q=($,F={})=>{m(b,F,$,o.editing),a("model-updated",{model:b,originalModel:y,data:z()})},G=($,F)=>{var ne;const _={[F]:$};typeof((ne=o.schema[F])==null?void 0:ne.modelTransformer)=="function"&&(_[F]=o.schema[F].modelTransformer($));const se=Object.assign({},b,_);Object.assign(b,se),a("model-updated",{model:b,originalModel:y,data:z()})},K=($,F)=>{Object.keys($).forEach(_=>{var Fe,dt;let se=F?`${F}-${_}`:_,ne=o.schema[se];if(!ne){const Et=F?`${F}-${_.replace(/-/g,"_")}`:_.replace(/-/g,"_");(Fe=o.schema[Et])!=null&&Fe.fieldNameHasDashes&&(se=Et,ne=o.schema[se]),F&&((dt=o.schema[F])==null?void 0:dt.keyFromObject)===_&&(se=F,ne=o.schema[se])}const ie=$[_],Xe=typeof ie;if(ne&&ne.type==="object-advanced"&&!ie){b[se]={},y[se]={};return}if(Array.isArray(ie)){b[se]=JSON.parse(JSON.stringify(ie)),y[se]=JSON.parse(JSON.stringify(ie));return}if(Xe==="object"&&ie&&!ie.length)return K(ie,se);if(Xe==="object"&&ie&&ie.length&&ne.type==="input"){b[se]=ie.join(", "),y[se]=ie.join(", ");return}b[se]=ie,y[se]=ie}),a("model-updated",{model:b,originalModel:y,data:z()})},ae=e.shallowRef(o.record),te=$=>{ae.value=$,a("model-updated",{model:{...b,...$},originalModel:y,data:z()})},N=e.ref(!0),V=()=>{var $;if(o.record&&o.schema&&(K({enabled:o.record.enabled??!0,...o.record.instance_name&&{instance_name:o.record.instance_name||""},...o.record.protocols&&{protocols:o.record.protocols},...o.record.tags&&{tags:o.record.tags}}),o.credential?((o.record.consumer_id||o.record.consumer)&&K({consumer_id:o.record.consumer_id||o.record.consumer}),K(o.record)):o.record.config&&((o.record.consumer_id||o.record.consumer||o.record.service_id||o.record.service||o.record.route_id||o.record.route||o.record.consumer_group_id||o.record.consumer_group)&&K({service_id:o.record.service_id||o.record.service,route_id:o.record.route_id||o.record.route,consumer_id:o.record.consumer_id||o.record.consumer,consumer_group_id:o.record.consumer_group_id||o.record.consumer_group}),o.record.partials&&q("redis",{partials:o.record.partials}),I.value?te(o.record):K(o.record.config,"config"))),Object.keys(o.entityMap).length&&!o.entityMap.global&&o.schema){const F={};for(const _ in o.entityMap){const se=o.entityMap[_].id,ne=o.entityMap[_].idField,ie=ne==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(ne).replace("_","-"));Object.prototype.hasOwnProperty.call(b,ie)&&(F[ie]=se)}K(F)}if(($=o.entityMap.consumer)!=null&&$.id&&o.schema&&o.credential){const F={};Object.prototype.hasOwnProperty.call(b,"consumer")&&(F.consumer=o.entityMap.consumer.id),K(F)}N.value=!1};return e.watch(N,$=>{a("loading",$)}),e.watch(()=>o.schema,($,F)=>{var se,ne;if(h($||{},F||{}))return;const _=r($);Object.assign(b,_.model),A.value={fields:(ne=(se=A.value)==null?void 0:se.fields)==null?void 0:ne.map(ie=>({...ie,disabled:ie.disabled||!1}))},Object.assign(y,JSON.parse(JSON.stringify(_.model))),I.value=Yr(_.model.name,g),w.value=Nr(_.model.name),V()},{immediate:!0,deep:!0}),e.onBeforeMount(()=>{var $,F;v.value=r(o.schema),Object.assign(b,(($=v.value)==null?void 0:$.model)||{}),A.value=((F=v.value)==null?void 0:F.schema)||{},V()}),($,F)=>{var ne;const _=e.resolveComponent("KSkeleton"),se=e.resolveComponent("VueFormGenerator");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",IO,[N.value?(e.openBlock(),e.createBlock(_,{key:0,type:"form"})):b.id&&t.editing||!t.editing?(e.openBlock(),e.createElementBlock("div",OO,[I.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(I.value),{key:0,"form-model":b,"form-options":x.value,"form-schema":A.value,"is-editing":t.editing,model:t.record,"on-form-change":te,"on-model-updated":G,schema:t.rawSchema},e.createSlots({_:2},[t.enableVaultSecretPicker?{name:e.unref(ot),fn:e.withCtx(ie=>[ie.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Wa),e.mergeProps({key:0},ie,{onOpen:Q}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):w.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(w.value),{key:1,"enable-redis-partial":t.enableRedisPartial,"form-model":b,"form-options":x.value,"form-schema":A.value,"is-editing":t.editing,"on-model-updated":G,"on-partial-toggled":q,"show-new-partial-modal":ie=>$.$emit("showNewPartialModal",ie)},e.createSlots({_:2},[t.enableVaultSecretPicker?{name:e.unref(ot),fn:e.withCtx(ie=>[ie.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Wa),e.mergeProps({key:0},ie,{onOpen:Q}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(e.openBlock(),e.createBlock(se,{key:2,"enable-redis-partial":t.enableRedisPartial,"is-editing":t.editing,model:b,options:x.value,schema:A.value,onModelUpdated:G,onPartialToggled:q,onRefreshModel:z,onShowNewPartialModal:F[0]||(F[0]=ie=>$.$emit("showNewPartialModal",ie))},e.createSlots({"plugin-config-empty-state":e.withCtx(()=>[e.createElementVNode("div",RO,e.toDisplayString(e.unref(C)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ne=e.unref(rt)[b.name])!=null&&ne.fieldRules&&(o.config.isNewOtelSchema||b.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:e.withCtx(()=>[e.createVNode(LE,{rules:e.unref(rt)[b.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,t.enableVaultSecretPicker?{name:e.unref(ot),fn:e.withCtx(ie=>[ie.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Wa),e.mergeProps({key:0},ie,{onOpen:Q}),null,16)):e.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(DE),{config:o.config,setup:M.value,onCancel:F[1]||(F[1]=()=>M.value=!1),onProceed:j},null,8,["config","setup"])],64)}}}),TO=Me(SO,[["__scopeId","data-v-87bdbef5"]]),xO={key:1},vO=e.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(t){return(n,a)=>t.teleportTarget?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:t.teleportTarget},[e.renderSlot(n.$slots,"default")],8,["to"])):(e.openBlock(),e.createElementBlock("div",xO,[e.renderSlot(n.$slots,"default")]))}}),VO=Symbol("redis-partial-info"),PO={class:"kong-ui-entities-plugin-form-container"},NO={key:0},DO={class:"plugin-form-actions"},UO=Me(e.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal"],setup(t,{emit:n}){var oe;const a=n,o=t,i=gn.useRouter(),{i18n:{t:r}}=Oe.useI18n(),{customSchemas:s,typedefs:l}=Oe.useSchemas({app:o.config.app,credential:o.credential,experimentalRenders:o.config.app==="konnect"?o.config.experimentalRenders:void 0}),{formatPluginFieldLabel:d}=Oe.usePluginHelpers(),{getMessageFromError:m}=L.useErrors(),{capitalize:p}=L.useStringHelpers(),{objectsAreEqual:u}=L.useHelpers(),{axiosInstance:g}=L.useAxios((oe=o.config)==null?void 0:oe.axiosRequestConfig),h=e.ref(!1),C=e.computed(()=>!!o.pluginId),f=e.computed(()=>o.pluginId?L.EntityBaseFormType.Edit:L.EntityBaseFormType.Create),E=e.ref(void 0),k=e.ref(void 0),R=e.computed(()=>!!(o.credential&&o.config.entityId)),w=e.ref(void 0),I=e.ref({}),v=e.ref(),A=e.ref();e.provide(VO,{redisType:v,redisPath:A,isEditing:C.value});const y=e.ref(!1),b=e.reactive({enabled:!0,protocols:[],tags:[]}),x=e.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,errorMessage:""}),M=e.ref([{title:r("view_configuration.json"),hash:"#json"},{title:r("view_configuration.yaml"),hash:"#yaml"}]);o.config.app==="konnect"&&M.value.splice(1,0,{title:r("view_configuration.terraform"),hash:"#terraform"});const S=e.ref(""),Q=e.computed(()=>{if(R.value){let Y=Te.form[o.config.app].credential[f.value];return Y=Y.replace(/{resourceEndpoint}/gi,G.value),Y}return o.config.entityType&&o.config.entityId?Te.form[o.config.app].edit.forEntity.replace(/{entityType}/gi,o.config.entityType).replace(/{entityId}/gi,o.config.entityId):Te.form[o.config.app].edit.all}),j=()=>{h.value=!h.value},z=e.computed(()=>{var re,he,Z,le,H,U,D,xe;const Y=o.config.entityType==="consumers"&&o.config.entityId||((he=(re=w.value)==null?void 0:re.consumer)==null?void 0:he.id),T=o.config.entityType==="consumer_groups"&&o.config.entityId||((le=(Z=w.value)==null?void 0:Z.consumer_group)==null?void 0:le.id),B=o.config.entityType==="services"&&o.config.entityId||((U=(H=w.value)==null?void 0:H.service)==null?void 0:U.id),J=o.config.entityType==="routes"&&o.config.entityId||((xe=(D=w.value)==null?void 0:D.route)==null?void 0:xe.id);if(!(Y||T||B||J))return{global:{entity:c.GLOBAL,entityEndpoint:"plugins"}};const W={};return B&&(W.service={entity:c.SERVICE,entityEndpoint:"services",id:B,idField:vt.SERVICE}),J&&(W.route={entity:c.ROUTE,entityEndpoint:"routes",id:J,idField:vt.ROUTE}),Y&&(W.consumer={entity:c.CONSUMER,entityEndpoint:"consumers",id:Y,idField:vt.CONSUMER}),T&&(W.consumer_group={entity:c.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:T,idField:vt.CONSUMER_GROUP}),o.config.entityType&&(W.focusedEntity={entity:c[o.config.entityType.substring(0,o.config.entityType.length-1).toUpperCase()],entityEndpoint:o.config.entityType,id:o.config.entityId,idField:vt[o.config.entityType.substring(0,o.config.entityType.length-1).toUpperCase()]}),W}),q=e.reactive({name:{default:o.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:o.hideScopeSelection&&(o.hideScopeSelection||f.value===L.EntityBaseFormType.Create&&o.config.entityId)?"foreign":"selectionGroup",disabled:o.disableScopeSelection,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"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:r("plugins.form.fields.instance_name.label"),inputType:"text",help:r("plugins.form.fields.instance_name.help")},tags:l.tags}),G=e.computed(()=>{var B;const Y=o.developer?"developers":"consumers",T=((B=rn[o.pluginType])==null?void 0:B.endpoint)||"/plugins";return`${Y}/${o.config.entityId}${o.developer?"/credentials":""}${T}`}),K=Y=>{const T=Array.from(new Set(Y.map(B=>typeof B)));return T.length>1?"string":T[0]},ae=(Y,T,B,J)=>{var Z,le;let W=T&&T.fields||[];const re=s[o.pluginType],he=(le=(Z=rn[o.pluginType])==null?void 0:Z.schema)==null?void 0:le.fields;return Array.isArray(W)&&(W=W.reduce((H,U)=>{const D=Object.keys(U)[0];return D.match(/-/g)?H[D.replace(/-/g,"_")]={...U[D],fieldNameHasDashes:!0}:H[D]=U[D],H},{})),Object.keys(W).sort().forEach(H=>{var mn,Nn,Dn,Un,Ln,Gn,jn;const U=W[H];U.type==="set"&&(U.type="array");const D=Y?`${Y}-${H}`:`${H}`;if((mn=re==null?void 0:re.fieldsToDelete)!=null&&mn.includes(D)){al(B,D);return}if(Object.prototype.hasOwnProperty.call(U,"overwrite")||U.hidden)return;if(U.type==="table")return ae(D,U.schema,B);if(U.fields)return J&&U.type==="record"?(B[D]={type:"object",model:H,schema:{fields:Object.values(ae(D,U,{},!0))}},B):ae(D,U,B);if(B[D]={id:D,model:H},B[D].type=U.type==="boolean"?"checkbox":"input",B[D].required=U.required,B[D].referenceable=U.referenceable,D.startsWith("config-"))if(!J&&U.type==="array"&&(S.value=D),J&&S.value&&D.startsWith(S.value)){const de=D.slice(S.value.length+1);B[D].label=de.split("-").map(d).join(".")}else B[D].label=d(D);if((Y==="config"||Y.startsWith("config-"))&&(Nn=W[H])!=null&&Nn.description&&(B[D].help=ue.parse(W[H].description,{mangle:!1,headerIds:!1})),U.type==="map"){if(B[D].type="object-advanced",B[D].values=U.values,U.values.type==="array"){const{type:de}=U.values.elements||{};B[D].schema={fields:[{schema:{fields:[{...ke,model:D,valueArrayType:de==="integer"?"number":de||"string",inputAttributes:{...ke.inputAttributes,type:de==="integer"?"number":"text",inputMode:de==="integer"?"numeric":"text"}}]}}]}}else U.values.fields&&(B[D].schema={fields:[{type:"object",model:"object",schema:{fields:U.values.fields.map(de=>{const Ge=Object.keys(de)[0];return{model:Ge,type:"input",label:p(Ge),placeholder:Ge,inputType:de[Ge].type}})}}]});return B}if(U.enum&&U.type==="array"&&(B[D].type="checklist",B[D].values=U.enum,B[D].multi=!0,B[D].multiSelect=!0),U.one_of&&U.type!=="array"&&(B[D].type="select",B[D].values=U.one_of,B[D].selectOptions={noneSelectedText:r("plugins.form.no_selection")}),U.elements&&U.type==="array"){const de=U.elements;if(B[D].referenceable=de.referenceable,B[D].elements=de,["string","integer","number"].includes(de.type)&&!de.one_of){const{id:Ge,help:Pe,label:ge,hint:He,values:We,referenceable:Wt,model:_t}=B[D],{inputAttributes:wa,...NR}=JSON.parse(JSON.stringify(ke));wa.type=de.type==="string"?"text":"number",B[D]={id:Ge,help:Pe,label:ge,hint:He,values:We,referenceable:Wt,model:_t,inputAttributes:wa,...NR}}}if(U.hint&&(B[D].hint=U.hint),re&&!re.overwriteDefault&&Object.keys(re).forEach(de=>{if(de===D){const{help:Ge,label:Pe,hint:ge,values:He,referenceable:We,elements:Wt}=B[D],{help:_t,...wa}=re[de];B[D]={help:Ge,label:Pe,hint:ge,values:He,referenceable:We,elements:Wt,...wa},typeof _t=="string"&&(B[D].help=ue.parse(_t,{mangle:!1,headerIds:!1}))}}),U.type==="array"&&((Dn=U.elements)==null?void 0:Dn.type)==="record"&&Array.isArray(U.elements.fields)){let de={};for(const Pe of U.elements.fields)de={...de,...Pe};const Ge=(Gn=(Ln=(Un=B[D])==null?void 0:Un.items)==null?void 0:Ln.schema)==null?void 0:Gn.fields;if(Array.isArray(Ge))for(const Pe of B[D].items.schema.fields){const ge=(jn=de[Pe.model])==null?void 0:jn.description;Pe.help===void 0&&typeof ge=="string"&&(Pe.help=ue.parse(ge,{mangle:!1,headerIds:!1}))}if(Ge||(B[D].type="array",B[D].newElementButtonLabelClasses="kong-form-new-element-button-label",B[D].fieldClasses="array-card-container-wrapper",B[D].itemContainerComponent="FieldArrayCardContainer",B[D].items={type:"object",schema:{fields:Object.values(ae(D,U.elements,{},!0))}},B[D].items.schema.fields.forEach(Pe=>{var ge,He;for(const We of U.elements.fields){const Wt=Object.keys(We)[0],_t=((He=(ge=Pe.id)==null?void 0:ge.split)==null?void 0:He.call(ge,"-"))??[];if(_t[_t.length-1]===Wt){Pe.model=Wt,Pe.label=d(Wt);break}}}),U.elements.type==="record"&&(B[D].nestedFields=!0)),!B[D].nestedFields)B[D].items.default=()=>U.elements.fields.reduce((Pe,ge)=>{const He=Object.keys(ge)[0];return Pe[He]=ge[He].default,Pe},{});else{const Pe=(ge,He)=>{if(ge.type==="object"){ge.model&&(He[ge.model]={});for(const We of ge.schema.fields)Pe(We,ge.model?He[ge.model]:He)}else ge.model&&(He[ge.model]=ge.default)};B[D].items.default=()=>{const ge={};return Pe(B[D].items,ge),ge}}}if(R.value&&he){for(let de=0;de<he.length;de++)if(he[de][D]){B[D]={...B[D],...he[de][D]};break}}if(U.required&&U.type!=="boolean"&&(B[D].required=!0,B[D].selectOptions={hideNoneSelectedText:!0}),U.required&&U.type==="boolean"&&(B[D].default=U.default??!1),U.default!=null&&typeof U.default!="object"&&U.default!=="function"&&(B[D].default=U.default),B[D].type==="input"){["string","number"].includes(typeof B[D].default)&&o.config.app==="konnect"&&(B[D].placeholder=`Default: ${B[D].default===""?"<empty string>":B[D].default}`);const{type:de}=U.elements||{};de&&(B[D].valueArrayType=de==="integer"?"number":de),B[D].inputType=U.type==="array"||U.type==="string"?U.encrypted?"password":"text":U.type}let xe="string";U.enum?xe=K(U.enum):U.type==="boolean"?xe="boolean":U.type==="number"||U.type==="integer"?(xe="number",B[D].inputType="number"):U.type==="array"?(xe="array",B[D].default=U.default,U.len_min>0&&(B[D].submitWhenNull=!0)):U.type==="foreign"?xe="object":U.default&&Array.isArray(U.default)?(xe="array",B[D].valueArrayType=K(U.default)):U.default&&(xe=typeof U.default),B[D].valueType=xe,U.fieldNameHasDashes&&(B[D].fieldNameHasDashes=!0)}),B},te=()=>{var H,U,D,xe,mn,Nn,Dn,Un,Ln,Gn,jn,de;const Y=((H=rt[o.pluginType])==null?void 0:H.scope.includes(c.SERVICE))??!0,T=((U=rt[o.pluginType])==null?void 0:U.scope.includes(c.ROUTE))??!0,B=((D=rt[o.pluginType])==null?void 0:D.scope.includes(c.CONSUMER))??!0,J=o.config.disableConsumerGroupScope?!1:((xe=rt[o.pluginType])==null?void 0:xe.scope.includes(c.CONSUMER_GROUP))??!0,W=o.config.entityType==="consumers"&&!!o.config.entityId||!!((Nn=(mn=w.value)==null?void 0:mn.consumer)!=null&&Nn.id),re=o.config.entityType==="consumer_groups"&&!!o.config.entityId||!!((Un=(Dn=w.value)==null?void 0:Dn.consumer_group)!=null&&Un.id),he=o.config.entityType==="services"&&!!o.config.entityId||!!((Gn=(Ln=w.value)==null?void 0:Ln.service)!=null&&Gn.id),Z=o.config.entityType==="routes"&&!!o.config.entityId||!!((de=(jn=w.value)==null?void 0:jn.route)!=null&&de.id),le=[];if(Y&&le.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"),disabled:he&&o.disableScopeSelection}),T&&le.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"),disabled:Z&&o.disableScopeSelection}),B&&le.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"),disabled:W&&o.disableScopeSelection}),J&&le.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"),disabled:re&&o.disableScopeSelection}),le.length){const Ge=[...Y?["service"]:[],...T?["route"]:[],...B?["consumer"]:[],...J?["consumer_group"]:[]],ge=Ge.splice(Ge.length-2,2).map(We=>r(We==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${We}.plural`)).join(`${Ge.length>0?",":""} and/or `),He=["Specific",[...Ge.length>0?[Ge.map(We=>r(We==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${We}.plural`)).join(", ")]:[],ge].join(", ")].join(" ");q.selectionGroup.fields.push({label:r("plugins.form.scoping.label"),description:He,fields:[]}),q.selectionGroup.fields[1].fields=le}s[o.pluginType]&&s[o.pluginType].overwriteDefault&&Object.hasOwnProperty.call(s[o.pluginType],"formSchema")&&Object.assign(q,s[o.pluginType].formSchema)},N=e.computed(()=>!u(x.fields,b,!0)),V=e.computed(()=>!fe.value&&!y.value&&(f.value===L.EntityBaseFormType.Create||N.value)),X=e.ref(!1),ce=e.ref(),$=Y=>{o.credential&&Y.password&&(Y.password=""),x.fields.id=(Y==null?void 0:Y.id)||void 0,ce.value=Y==null?void 0:Y.ordering,Object.assign(b,x.fields),w.value=Y,X.value=!0},F=e.ref({}),_=Y=>{var T;x.fields=Y.model,x.fields.id=((T=w.value)==null?void 0:T.id)||void 0,Object.assign(b,Y.originalModel),F.value=Y.data,o.isWizardStep&&a("model-updated",{model:x.fields,data:Y.data,resourceEndpoint:G.value})};e.watch([z,X],(Y,T)=>{const B=Y[0]!==T[0],J=Y[1],W=T[1];if(!R.value&&f.value===L.EntityBaseFormType.Edit&&(B||J&&J!==W)){const re=ae("config",I.value,q);Xe.value&&(re._isCustomPlugin=!0),v.value&&(re._supported_redis_partial_type=v.value),k.value=re}},{deep:!0});const se=()=>{o.config.cancelRoute?i.push(o.config.cancelRoute):a("cancel")},ne=e.computed(()=>{let Y=`${o.config.apiBaseUrl}${Te.form[o.config.app].validate}`;return o.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),Y=Y.replace(/{id}/gi,o.pluginId),Y}),ie=e.computed(()=>{const Y=o.config.entityType&&o.config.entityId&&!o.developer,T=R.value?Te.form[o.config.app].credential[f.value]:Te.form[o.config.app][f.value][Y?"forEntity":"all"];let B=`${o.config.apiBaseUrl}${T}`;return o.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),B=B.replace(/{resourceEndpoint}/gi,G.value),B=B.replace(/{id}/gi,o.pluginId),B=B.replace(/{entityType}/gi,o.config.entityType||""),B=B.replace(/{entityId}/gi,o.config.entityId||""),B}),Xe=e.computed(()=>!Object.keys(rt).includes(o.pluginType)),Fe=e.computed(()=>{const Y=F.value;if(R.value){for(const T in c){const B=c[T];Y[B]&&!Y[B].id&&(Y[B]={id:o.config.entityId})}delete Y.created_at}return F.value.partials&&A.value&&al(Y,A.value),Y}),dt=async()=>{if(!o.isWizardStep)try{x.isReadonly=!0;let Y;const T=JSON.parse(JSON.stringify(Fe.value)),B=s[o.pluginType];typeof(B==null?void 0:B.shamefullyTransformPayload)=="function"&&B.shamefullyTransformPayload({originalModel:b,model:x.fields,payload:T,schema:k.value}),!R.value&&!Xe.value&&await g.post(ne.value,T),f.value==="create"?Y=await g.post(ie.value,T):f.value==="edit"&&(Y=o.config.app==="konnect"||v.value&&T.partials?await g.put(ie.value,Object.assign({ordering:ce.value},T)):await g.patch(ie.value,T)),Object.assign(b,x.fields),a("update",Y==null?void 0:Y.data)}catch(Y){x.errorMessage=m(Y),a("error",Y)}finally{x.isReadonly=!1}},Et=e.computed(()=>{var J;const Y=R.value?(J=rn[o.pluginType])==null?void 0:J.schemaEndpoint:o.pluginType,T=R.value?Te.form[o.config.app].credentialSchema:Te.form[o.config.app].pluginSchema;let B=`${o.config.apiBaseUrl}${T}`;return o.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),B=B.replace(/{plugin}/gi,Y),B}),Zt=e.ref(""),fe=e.ref(!1),pe=e.ref("");return e.onBeforeMount(async()=>{var Y,T,B,J;fe.value=!0;try{if(R.value&&o.config.app==="konnect"){const W=(Y=rn[o.pluginType])==null?void 0:Y.schemaEndpoint,re=Gb[W];Zt.value=W,k.value=ae("",re,{}),fe.value=!1}else{const W=o.schema??(await g.get(Et.value)).data;if(E.value=W,W)if(R.value)k.value=ae("",W,{}),fe.value=!1;else{const re=W.fields.find(Z=>Z.config);I.value=re?re.config:W,W.supported_partials&&(v.value=Object.keys(W.supported_partials).find(Z=>[Xn.REDIS_CE,Xn.REDIS_EE].includes(Z)),A.value=(T=W.supported_partials[v.value])==null?void 0:T[0]),te();const he=(B=W.fields.find(Z=>Z.protocols))==null?void 0:B.protocols;if(he){const{default:Z=[],elements:le={}}=he;q.protocols.default=Z,q.protocols.placeholder=o.config.app==="konnect"?r("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:Z.join(", ")}):r("plugins.form.fields.protocols.placeholder"),(J=le.one_of)!=null&&J.length&&(q.protocols.values=le.one_of.map(H=>({label:H,value:H})))}if(X.value||f.value===L.EntityBaseFormType.Create){const Z=ae("config",I.value,q);v.value&&(Z._supported_redis_partial_type=v.value),Xe.value&&(Z._isCustomPlugin=!0),k.value=Z}}}}catch(W){console.error(W),pe.value=m(W),a("error:fetch-schema",W)}finally{fe.value=!1}}),(Y,T)=>{const B=e.resolveComponent("KSkeleton"),J=e.resolveComponent("KEmptyState"),W=e.resolveComponent("KButton"),re=e.resolveComponent("KTabs"),he=e.resolveComponent("KSlideout");return e.openBlock(),e.createElementBlock("div",PO,[fe.value?(e.openBlock(),e.createBlock(B,{key:0,type:"form"})):pe.value?(e.openBlock(),e.createBlock(J,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(e.unref(r)("errors.load_schema")),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(L.EntityBaseForm),{key:2,"can-submit":V.value,config:t.config,"edit-id":t.pluginId,"entity-type":e.unref(L.SupportedEntityType).Plugin,"error-message":x.errorMessage,"fetch-url":Q.value,"form-fields":Fe.value,"is-readonly":x.isReadonly,"no-validate":"","wrapper-component":t.noCardWrapper?"div":void 0,onCancel:se,"onFetch:error":T[3]||(T[3]=Z=>Y.$emit("error",Z)),"onFetch:success":$,onLoading:T[4]||(T[4]=Z=>Y.$emit("loading",Z))},{"form-actions":e.withCtx(()=>[t.isWizardStep?(e.openBlock(),e.createElementBlock("div",NO)):(e.openBlock(),e.createBlock(vO,{key:1,"teleport-target":t.actionsTeleportTarget},{default:e.withCtx(()=>[e.createElementVNode("div",DO,[t.hideViewConfigAction?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(W,{key:0,appearance:"tertiary","data-testid":`plugin-${C.value?"edit":"create"}-form-view-configuration`,onClick:T[2]||(T[2]=Z=>j())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),e.createVNode(W,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${C.value?"edit":"create"}-form-cancel`,disabled:x.isReadonly,onClick:se},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),e.createVNode(W,{appearance:"primary","data-testid":`plugin-${C.value?"edit":"create"}-form-submit`,disabled:!V.value||x.isReadonly,type:"submit",onClick:dt},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:e.withCtx(()=>[e.createElementVNode("form",{hidden:"",onSubmit:dt},null,32),e.createVNode(TO,{config:t.config,credential:R.value,editing:f.value===e.unref(L.EntityBaseFormType).Edit,"enable-redis-partial":t.enableRedisPartial,"enable-vault-secret-picker":o.enableVaultSecretPicker,"entity-map":z.value,"raw-schema":E.value,record:w.value,schema:k.value,onLoading:T[0]||(T[0]=Z=>y.value=Z),onModelUpdated:_,onShowNewPartialModal:T[1]||(T[1]=Z=>Y.$emit("showNewPartialModal",Z))},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),e.createVNode(he,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:e.unref(r)("view_configuration.title"),visible:h.value,onClose:j},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("view_configuration.message")),1),e.createVNode(re,{"data-testid":"form-view-configuration-slideout-tabs",tabs:M.value},{json:e.withCtx(()=>[e.createVNode(e.unref(L.JsonCodeBlock),{config:t.config,"entity-record":Fe.value,"fetcher-url":ie.value,"request-method":o.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:e.withCtx(()=>[e.createVNode(e.unref(L.YamlCodeBlock),{"entity-record":Fe.value},null,8,["entity-record"])]),terraform:e.withCtx(()=>[e.createVNode(e.unref(L.TerraformCodeBlock),{"credential-type":Zt.value,"entity-record":Fe.value,"entity-type":e.unref(L.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-1cfbbc19"]]),LO=["alt","height","src","width"],Ea=e.defineComponent({__name:"PluginIcon",props:{name:{type:String,required:!0},size:{type:Number,default:32,required:!1},alt:{type:String,default:"",required:!1}},setup(t){const n=t,a=e.ref(),o=e.computed(()=>jr(n.name)),i=()=>{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.tagName.toUpperCase()==="SCRIPT"&&ut.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;a.value&&a.value.src!==r&&(a.value.src=r)};return(r,s)=>(e.openBlock(),e.createElementBlock("img",{ref_key:"img",ref:a,alt:t.alt,height:t.size,src:o.value,width:t.size,onError:i},null,40,LO))}}),GO="#00abd2",jO="16px",FO="24px",HO={class:"kong-ui-entities-plugins-list"},YO={class:"button-row"},KO={class:"empty-state-icon-gateway"},zO={class:"name-cell-wrapper"},QO={class:"info-wrapper"},XO={key:0,class:"info-name"},qO={key:1,class:"info-name"},JO={key:2,class:"info-type"},ZO={key:1},WO=Me(e.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.createRoute||!t.getViewRoute||!t.getEditRoute||!t.getConfigureDynamicOrderingRoute||t.app==="kongManager"&&!t.isExactMatch&&!t.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},enableV2EmptyStates:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(t,{emit:n}){var oe,Y;const a=Oe.usePluginMetaData(),o=n,i=t,{i18n:{t:r}}=Oe.useI18n(),s=gn.useRouter(),{axiosInstance:l}=L.useAxios((oe=i.config)==null?void 0:oe.axiosRequestConfig),{hasRecords:d,handleStateChange:m}=L.useTableState(()=>I.value),p=e.computed(()=>d.value&&i.config.app==="konnect"),u=e.computed(()=>!i.enableV2EmptyStates&&i.config.app==="konnect"),g=e.computed(()=>!!i.config.entityId),h=e.computed(()=>{var T;return((T=i.config)==null?void 0:T.entityType)==="consumers"}),C=e.computed(()=>{var T;return((T=i.config)==null?void 0:T.entityType)==="consumer_groups"}),f=i.config.app==="konnect"||L.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),E=e.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),k={name:{label:r("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(Y=i.config)!=null&&Y.entityId||(k.appliedTo={label:r("plugins.list.table_headers.applied_to"),sortable:!1}),k.enabled={label:r("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},f&&(k.ordering={label:r("plugins.list.table_headers.ordering"),sortable:!0}),k.tags={label:r("plugins.list.table_headers.tags"),sortable:!1};const R=k,w=e.computed(()=>{var B,J,W,re;let T=i.config.entityType?`${i.config.apiBaseUrl}${Te.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Te.list[i.config.app].all}`;return i.config.app==="konnect"?T=T.replace(/{controlPlaneId}/gi,((B=i.config)==null?void 0:B.controlPlaneId)||""):i.config.app==="kongManager"&&(T=T.replace(/\/{workspace}/gi,(J=i.config)!=null&&J.workspace?`/${i.config.workspace}`:"")),T.replace(/{entityType}/gi,((W=i.config)==null?void 0:W.entityType)||"").replace(/{entityId}/gi,((re=i.config)==null?void 0:re.entityId)||"")}),I=e.ref(""),v=e.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:k.name,id:{label:r("plugins.list.table_headers.id"),sortable:!0}},placeholder:r(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...k.enabled,label:r("search.filter.field.enabled")},name:k.name,instance_name:{label:r("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:A,fetcherState:y,fetcherCacheKey:b}=L.useFetcher(e.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),x=()=>{I.value=""},M=()=>{b.value++},S=e.ref(null),Q=T=>{var J,W,re,he;const B=[];return((J=T.route)!=null&&J.id||T.route_id)&&B.push({type:"route",badgeText:r("plugins.list.table_headers.applied_to_badges.route")}),((W=T.service)!=null&&W.id||T.service_id)&&B.push({type:"service",badgeText:r("plugins.list.table_headers.applied_to_badges.service")}),((re=T.consumer)!=null&&re.id||T.consumer_id)&&B.push({type:"consumer",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer")}),((he=T.consumer_group)!=null&&he.id||T.consumer_group_id)&&B.push({type:"consumer_group",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer_group")}),B.length?B:[{type:null,badgeText:r("plugins.list.table_headers.applied_to_badges.global")}]},j=async(T,B)=>{var J;return T===null?!1:await((J=i.canRetrieveScopedEntity)==null?void 0:J.call(i,T,B.id))},z=(T,B)=>{var W,re,he,Z,le;let J=null;switch(T){case"route":J=(W=B.route)==null?void 0:W.id;break;case"service":J=(re=B.service)==null?void 0:re.id;break;case"consumer":J=(he=B.consumer)==null?void 0:he.id;break;case"consumer_group":J=(Z=B.consumer_group)==null?void 0:Z.id;break}J&&((le=i.config)!=null&&le.getScopedEntityViewRoute)&&s.push(i.config.getScopedEntityViewRoute(T,J))},q=e.ref(!1),G=e.ref(null),K=e.computed(()=>{const T={action:"disable",id:"",name:""};if(G.value){const{enabled:B,id:J,name:W}=G.value;T.action=B?"disable":"enable",T.id=J,T.name=a.getDisplayName(W)||J}return T}),ae=T=>{q.value=!0,G.value=T},te=()=>{q.value=!1,G.value=null},N=async()=>{var W,re,he,Z,le,H,U,D;if(!await((W=i.canEdit)==null?void 0:W.call(i,G.value))||!G.value)return;let B=`${i.config.apiBaseUrl}${(le=Te.item[i.config.app])==null?void 0:le[(re=i.config)!=null&&re.entityType?"forEntity":"all"].replace(/{entityType}/gi,((he=i.config)==null?void 0:he.entityType)||"").replace(/{entityId}/gi,((Z=i.config)==null?void 0:Z.entityId)||"")}`.replace(/{id}/gi,G.value.id||"");i.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,((H=i.config)==null?void 0:H.controlPlaneId)||""):i.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,(U=i.config)!=null&&U.workspace?`/${i.config.workspace}`:""));const J=!G.value.enabled;try{const{data:xe}=((D=i.config)==null?void 0:D.app)==="konnect"?await l.put(B,{...G.value,enabled:J},{timeout:12e4}):await l.patch(B,{...G.value,enabled:J},{timeout:12e4});o("toggle-enabled",J,xe),G.value.enabled=J}catch(xe){o("error",xe)}},V=async(T,B)=>{const J=T.id;if(!await B(J)){o("copy:error",{entity:T,field:"id",message:r("errors.copy")});return}o("copy:success",{entity:T,field:"id",message:r("copy.success",{val:J})})},X=async(T,B)=>{const J=JSON.stringify(T);if(!await B(J)){o("copy:error",{entity:T,message:r("errors.copy")});return}o("copy:success",{entity:T,message:r("copy.success_brief")})},ce=async T=>{var J;await((J=i.canRetrieve)==null?void 0:J.call(i,T))&&s.push(i.config.getViewRoute(T))},$=T=>({label:r("actions.view"),to:i.config.getViewRoute(T)}),F=T=>({label:r("actions.edit"),to:i.config.getEditRoute(T)}),_=T=>({label:r("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(T)}),se=e.ref(void 0),ne=e.ref(!1),ie=e.ref(!1),Xe=e.ref(""),Fe=L.useDeleteUrlBuilder(i.config,w.value),dt=T=>{se.value=T,ne.value=!0},Et=()=>{ne.value=!1},Zt=async()=>{var T,B,J;if((T=se.value)!=null&&T.id){ie.value=!0;try{await l.delete(Fe(se.value.id)),ie.value=!1,ne.value=!1,b.value++,o("delete:success",se.value)}catch(W){Xe.value=((J=(B=W.response)==null?void 0:B.data)==null?void 0:J.message)||W.message||r("errors.delete"),o("error",W)}finally{ie.value=!1}}},fe=()=>{s.push(i.config.createRoute)};e.watch(y,T=>{var B,J,W;if(T.status===L.FetcherStatus.Error){S.value={title:r("errors.general")},(W=(J=(B=T.error)==null?void 0:B.response)==null?void 0:J.data)!=null&&W.message&&(S.value.message=T.error.response.data.message),o("error",T.error);return}S.value=null});const pe=e.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${r("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:r("plugins.title")});return e.onBeforeMount(async()=>{await i.canCreate()&&(pe.value.title=r("plugins.list.empty_state.title"),pe.value.ctaText=r("actions.create"))}),(T,B)=>{const J=e.resolveComponent("KButton"),W=e.resolveComponent("KBadge"),re=e.resolveComponent("KTruncate"),he=e.resolveComponent("KInputSwitch"),Z=e.resolveComponent("KDropdownItem"),le=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",HO,[e.createVNode(e.unref(L.EntityBaseTable),{"cache-identifier":t.cacheIdentifier,"disable-sorting":E.value,"empty-state-options":pe.value,"enable-entity-actions":"","error-message":S.value,fetcher:e.unref(A),"fetcher-cache-key":e.unref(b),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:I.value,"table-headers":e.unref(R),title:t.title,"title-tag":t.titleTag,onClearSearchInput:x,"onClick:row":B[5]||(B[5]=H=>ce(H)),onSort:M,onState:e.unref(m)},e.createSlots({"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(L.EntityFilter),{modelValue:I.value,"onUpdate:modelValue":B[0]||(B[0]=H=>I.value=H),config:v.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!t.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createElementVNode("div",YO,[!g.value&&p.value?(e.openBlock(),e.createBlock(J,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:B[1]||(B[1]=H=>T.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.BookIcon),{decorative:""})]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(L.PermissionsWrapper),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(J,{appearance:"primary","data-testid":"toolbar-add-plugin",size:t.useActionOutside?"medium":"large",to:t.config.createRoute},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:e.withCtx(({row:H})=>[e.createElementVNode("div",zO,[e.createVNode(Ea,{class:"plugin-icon",name:H.name,size:24},null,8,["name"]),e.createElementVNode("div",QO,[H.instance_name?(e.openBlock(),e.createElementBlock("span",XO,e.toDisplayString(H.instance_name),1)):(e.openBlock(),e.createElementBlock("span",qO,e.toDisplayString(e.unref(a).getDisplayName(H.name)),1)),H.instance_name?(e.openBlock(),e.createElementBlock("span",JO,e.toDisplayString(e.unref(a).getDisplayName(H.name)),1)):e.createCommentVNode("",!0)])])]),appliedTo:e.withCtx(({row:H})=>[Q(H).length>0?(e.openBlock(),e.createBlock(re,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Q(H),U=>(e.openBlock(),e.createBlock(e.unref(L.PermissionsWrapper),{key:U.badgeText,"auth-function":()=>j(U.type,H),"force-show":""},{default:e.withCtx(({isAllowed:D})=>[e.createVNode(W,{class:e.normalizeClass(D||"disabled"),onClick:e.withModifiers(xe=>D&&U.type&&z(U.type,H),["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(U.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",ZO,"-"))]),enabled:e.withCtx(({row:H})=>[e.createVNode(e.unref(L.PermissionsWrapper),{"auth-function":async()=>!!(await t.canEdit(H)&&await t.canToggle(H)),"force-show":""},{default:e.withCtx(({isAllowed:U})=>{var D,xe;return[e.createElementVNode("div",{onClick:B[4]||(B[4]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(he,{disabled:!U,"disabled-tooltip-text":!U&&((xe=(D=t.config).getToggleDisabledTooltip)==null?void 0:xe.call(D,H))||void 0,"model-value":H.enabled,onClick:e.withModifiers(mn=>U&&ae(H),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:e.withCtx(({rowValue:H})=>[e.createVNode(W,{appearance:e.unref(el)(H)?"info":"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(el)(H)?e.unref(r)("plugins.list.table_headers.ordering_badge.static"):e.unref(r)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:e.withCtx(({rowValue:H})=>[e.createVNode(e.unref(L.TableTags),{tags:H},null,8,["tags"])]),actions:e.withCtx(({row:H})=>[e.createVNode(le,null,{default:e.withCtx(({copyToClipboard:U})=>[e.createVNode(Z,{"data-testid":"action-entity-copy-id",onClick:D=>V(H,U)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(le,null,{default:e.withCtx(({copyToClipboard:U})=>[e.createVNode(Z,{"data-testid":"action-entity-copy-json",onClick:D=>X(H,U)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(L.PermissionsWrapper),{"auth-function":()=>t.canRetrieve(H)},{default:e.withCtx(()=>[e.createVNode(Z,{"data-testid":"action-entity-view","has-divider":"",item:$(H)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(L.PermissionsWrapper),{"auth-function":()=>t.canEdit(H)},{default:e.withCtx(()=>[e.createVNode(Z,{"data-testid":"action-entity-edit",item:F(H)},null,8,["item"])]),_:2},1032,["auth-function"]),!h.value&&!C.value&&e.unref(f)?(e.openBlock(),e.createBlock(e.unref(L.PermissionsWrapper),{key:0,"auth-function":()=>t.canConfigureDynamicOrdering(H)},{default:e.withCtx(()=>[_(H)?(e.openBlock(),e.createBlock(Z,{key:0,"data-testid":"action-entity-config-dyn-order",item:_(H)},null,8,["item"])):e.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):e.createCommentVNode("",!0),e.createVNode(e.unref(L.PermissionsWrapper),{"auth-function":()=>t.canDelete(H)},{default:e.withCtx(()=>[e.createVNode(Z,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:U=>dt(H)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!e.unref(d)&&u.value?{name:"outside-actions",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!t.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createVNode(J,{appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:B[2]||(B[2]=H=>T.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.BookIcon),{decorative:""})]),_:1})],8,["disabled"]))]),key:"0"}:void 0,!I.value&&t.enableV2EmptyStates&&t.config.app==="konnect"?{name:"empty-state",fn:e.withCtx(()=>{var H;return[e.createVNode(e.unref(L.EntityEmptyState),{"action-button-text":e.unref(r)("plugins.list.empty_state_v2.create_cta"),appearance:"secondary","can-create":()=>t.canCreate(),"data-testid":t.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state",description:e.unref(r)("plugins.list.empty_state_v2.description"),"learn-more":t.config.app==="konnect",title:e.unref(r)("plugins.list.empty_state_v2.title"),"onClick:create":fe,"onClick:learnMore":B[3]||(B[3]=U=>T.$emit("click:learn-more"))},e.createSlots({image:e.withCtx(()=>[e.createElementVNode("div",KO,[e.createVNode(e.unref(Se.PlugIcon),{color:e.unref(GO),size:e.unref(FO)},null,8,["color","size"])])]),_:2},[(H=t.config)!=null&&H.isControlPlaneGroup?{name:"message",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["action-button-text","can-create","data-testid","description","learn-more","title"])]}),key:"1"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),e.createVNode(e.unref(L.EntityToggleModal),{action:K.value.action,"entity-id":K.value.id,"entity-name":K.value.name,"entity-type":e.unref(r)("glossary.plugin"),"on-confirm":N,visible:q.value,onCancel:te,onProceed:te},null,8,["action","entity-id","entity-name","entity-type","visible"]),e.createVNode(e.unref(L.EntityDeleteModal),{"action-pending":ie.value,description:e.unref(r)("delete.description"),"entity-name":se.value&&(se.value.instance_name||se.value.name||se.value.id),"entity-type":e.unref(L.EntityTypes).Plugin,error:Xe.value,title:e.unref(r)("delete.title"),visible:ne.value,onCancel:Et,onProceed:Zt},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-149ffaa5"]]),_O={class:"plugin-select-card-wrapper"},$O=["data-testid"],eR={class:"plugin-card-header"},tR={class:"plugin-card-title"},nR={key:0,class:"plugin-card-actions"},aR=["data-testid","title"],oR={key:0,class:"plugin-card-text"},iR={key:0},rR=["title"],xo=Me(e.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){const a=n,o=t,i=gn.useRouter(),{i18n:{t:r}}=Oe.useI18n(),s=e.computed(()=>o.config.app==="konnect"?o.config.controlPlaneId:""),l=e.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),d=e.computed(()=>!!(h.value&&!g.value&&o.navigateOnClick&&s.value&&(o.canDeleteCustomPlugin||o.canEditCustomPlugin))),m=()=>{i.push(o.config.getCreateRoute(o.plugin.id))},p=()=>{o.navigateOnClick?m():u()},u=()=>{a("plugin-clicked",o.plugin)},g=e.computed(()=>o.plugin.id==="custom-plugin-create"),h=e.computed(()=>o.config.app==="konnect"&&o.plugin.group===O.CUSTOM_PLUGINS),C=()=>{o.config.app==="konnect"&&a("custom-plugin-delete")},f=(k,R)=>{const w=o.config;o.config.app==="konnect"&&typeof w.getCustomEditRoute=="function"&&w.getCustomEditRoute&&i.push(w.getCustomEditRoute(k,R))},E=()=>{if(!l.value&&o.config.app==="konnect"){const k=o.config;g.value&&k.createCustomRoute?i.push(k.createCustomRoute):h.value&&m()}};return(k,R)=>{const w=e.resolveComponent("KButton"),I=e.resolveComponent("KDropdownItem"),v=e.resolveComponent("KDropdownMenu"),A=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",_O,[e.createVNode(A,{text:t.plugin.disabledMessage},{default:e.withCtx(()=>[e.createElementVNode("a",{class:e.normalizeClass(["plugin-select-card",{disabled:l.value}]),"data-testid":`${t.plugin.id}-card`,role:"button",onClick:R[1]||(R[1]=y=>l.value||h.value?void 0:p())},[e.createElementVNode("div",eR,[e.createElementVNode("div",tR,[e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!h.value})},e.toDisplayString(t.plugin.name),3)]),d.value?(e.openBlock(),e.createElementBlock("div",nR,[e.createVNode(v,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:e.withCtx(()=>[e.createVNode(w,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(Se.MoreIcon),{size:e.unref(jO)},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[t.canDeleteCustomPlugin?(e.openBlock(),e.createBlock(I,{key:0,"data-testid":"edit-plugin-schema",onClick:R[0]||(R[0]=e.withModifiers(y=>f(t.plugin.name,t.plugin.customPluginType),["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.edit")),1)]),_:1})):e.createCommentVNode("",!0),t.canDeleteCustomPlugin?(e.openBlock(),e.createBlock(I,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:e.withModifiers(C,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:1})):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["plugin-card-body",{"custom-plugin":h.value}]),"data-testid":t.plugin.name,title:t.plugin.available?t.plugin.name:e.unref(r)("plugins.select.unavailable_tooltip"),onClick:E},[e.createVNode(Ea,{alt:t.plugin.name,class:"plugin-card-icon",name:t.plugin.imageName||t.plugin.id,size:55},null,8,["alt","name"]),t.plugin.description||h.value&&!g.value?(e.openBlock(),e.createElementBlock("div",oR,[h.value&&!g.value?(e.openBlock(),e.createElementBlock("p",iR,e.toDisplayString(e.unref(r)("plugins.select.custom_badge_text")),1)):e.createCommentVNode("",!0),t.plugin.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:"plugin-card-text",title:t.plugin.description},e.toDisplayString(t.plugin.description),9,rR)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],10,aR),e.createElementVNode("div",{class:"plugin-card-footer",onClick:E},e.toDisplayString(g.value?e.unref(r)("actions.create_custom"):t.plugin.exists?e.unref(r)("actions.enabled"):e.unref(r)("actions.enable")),1)],10,$O)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-28728a65"]]),sR=Me(e.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(t,{emit:n}){var C;const a=t,o=n,{i18nT:i,i18n:{t:r}}=Oe.useI18n(),{getMessageFromError:s}=L.useErrors(),{axiosInstance:l}=L.useAxios((C=a.config)==null?void 0:C.axiosRequestConfig),d=e.computed(()=>{var f;return u.value?r("delete.plugin_schema_in_use_title"):r("delete.title",{name:((f=a.plugin)==null?void 0:f.name)||r("delete.custom_plugin")})}),m=e.ref(!1),p=e.ref(""),u=e.ref(!1),g=e.computed(()=>{if(a.config.app==="konnect"){const f=a.plugin.customPluginType==="streaming"?Te.select[a.config.app].streamingCustomPluginItem:Te.select[a.config.app].schemaCustomPluginItem;let E=`${a.config.apiBaseUrl}${f}`;return E=E.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""),E=E.replace(/{pluginId}/gi,a.plugin.id),E}return null}),h=async()=>{var f,E,k,R;if(m.value=!0,p.value="",!(!((f=a.plugin)!=null&&f.name)||((E=a.config)==null?void 0:E.app)!=="konnect"))try{g.value&&await l.delete(g.value),o("proceed")}catch(w){const{response:I}=w;(I==null?void 0:I.status)===400&&((R=(k=I.data)==null?void 0:k.message)!=null&&R.includes("plugin schema is currently in use"))?u.value=!0:p.value=s(w)}finally{m.value=!1}};return(f,E)=>{const k=e.resolveComponent("KButton"),R=e.resolveComponent("KModal");return!u.value&&t.plugin?(e.openBlock(),e.createBlock(e.unref(L.EntityDeleteModal),{key:0,"action-pending":m.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:e.unref(r)("delete.description_custom"),"entity-name":t.plugin.name,"entity-type":e.unref(L.EntityTypes).Plugin,error:p.value,"need-confirm":"",title:d.value,visible:"",onCancel:E[0]||(E[0]=w=>f.$emit("closed")),onProceed:h},null,8,["action-pending","description","entity-name","entity-type","error","title"])):t.plugin?(e.openBlock(),e.createBlock(R,{key:1,"action-button-disabled":m.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:d.value,visible:"",onCancel:E[2]||(E[2]=w=>f.$emit("closed"))},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(e.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:e.withCtx(()=>[e.createElementVNode("strong",null,e.toDisplayString(t.plugin.name),1)]),_:1})])]),"footer-actions":e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(k,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:E[1]||(E[1]=w=>f.$emit("closed"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),lR={class:"custom-plugins-grid"},cR={class:"empty-state-title"},dR={class:"empty-state-description"},vo=310,uR=Me(e.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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}},emits:["plugin-clicked","revalidate","delete:success"],setup(t,{emit:n}){const a=t,o=n,{i18n:{t:i}}=Oe.useI18n(),{getTallestPluginCardHeight:r,getToggleVisibility:s}=Oe.usePluginHelpers(),l=e.ref(!0),d=v=>{o("plugin-clicked",v)},m=e.computed(()=>{if(a.config.app==="kongManager")return[];const v=JSON.parse(JSON.stringify(a.pluginList))[O.CUSTOM_PLUGINS]||[];return a.canCreateCustomPlugin&&a.navigateOnClick&&a.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:O.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(v):v}),p=e.ref(!1),u=e.ref(null),g=v=>{p.value=!0,u.value={id:v.id,name:v.name,customPluginType:v.customPluginType}},h=v=>{var A;v&&(o("revalidate"),o("delete:success",((A=u.value)==null?void 0:A.name)||"")),p.value=!1,u.value=null},C=e.ref(vo),f=e.ref(null),E=e.ref(null),k=e.computed(()=>l.value?{overflowY:"hidden",maxHeight:`${C.value}px`}:{}),R=e.ref(!1),w=()=>{C.value=Math.max(r(E.value),vo),I()},I=()=>{var v,A;(v=E.value)!=null&&v.length&&(R.value=s(f.value,(A=E.value)==null?void 0:A.length))};return e.onMounted(async()=>{await e.nextTick(),C.value=Math.max(r(E.value),vo),I(),window==null||window.addEventListener("resize",w)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",w)}),(v,A)=>{const y=e.resolveComponent("KEmptyState"),b=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock("div",lR,[m.value.length?(e.openBlock(),e.createBlock(b,{key:1,modelValue:l.value,"onUpdate:modelValue":A[0]||(A[0]=x=>l.value=x),class:"custom-plugins-collapse","data-testid":`${e.unref(O).CUSTOM_PLUGINS}-collapse`,title:e.unref(O).CUSTOM_PLUGINS,"trigger-label":l.value?e.unref(i)("plugins.select.view_more"):e.unref(i)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:f,class:"plugin-card-container",style:e.normalizeStyle(k.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(x,M)=>(e.openBlock(),e.createBlock(xo,{key:`plugin-card-${M}`,ref_for:!0,ref_key:"pluginCardRef",ref:E,"can-delete-custom-plugin":t.canDeleteCustomPlugin,"can-edit-custom-plugin":t.canEditCustomPlugin,config:t.config,"navigate-on-click":t.navigateOnClick,plugin:x,onCustomPluginDelete:S=>g(x),onPluginClicked:d},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[R.value?void 0:{name:"trigger",fn:e.withCtx(()=>[A[2]||(A[2]=e.createTextVNode(" "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(e.openBlock(),e.createBlock(y,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",cR,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",dR,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),p.value&&u.value?(e.openBlock(),e.createBlock(sR,{key:2,config:t.config,plugin:u.value,onClosed:h,onProceed:A[1]||(A[1]=x=>h(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Vo=310,Bl=Me(e.defineComponent({__name:"PluginSelectGroup",props:e.mergeModels({config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:e.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(t,{emit:n}){const a=e.useModel(t,"modelValue"),o=t,i=n,{i18n:{t:r}}=Oe.useI18n(),{getTallestPluginCardHeight:s,getToggleVisibility:l}=Oe.usePluginHelpers(),d=e.ref(Vo),m=e.ref(null),p=e.ref(null),u=e.computed(()=>a.value?{overflowY:"hidden",maxHeight:`${d.value}px`}:{}),g=e.ref(!1),h=()=>{d.value=Math.max(s(p.value),Vo),C()},C=()=>{var f,E;(f=p.value)!=null&&f.length&&(g.value=l(m.value,(E=p.value)==null?void 0:E.length))};return e.onMounted(async()=>{await e.nextTick(),d.value=Math.max(s(p.value),Vo),C(),window==null||window.addEventListener("resize",h)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",h)}),(f,E)=>{const k=e.resolveComponent("KCollapse");return e.openBlock(),e.createBlock(k,{modelValue:a.value,"onUpdate:modelValue":E[0]||(E[0]=R=>a.value=R),class:"plugins-collapse","data-testid":`${o.name}-collapse`,title:o.name,"trigger-label":a.value?e.unref(r)("plugins.select.view_more"):e.unref(r)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:m,class:"plugin-card-container",style:e.normalizeStyle(u.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.plugins,R=>(e.openBlock(),e.createBlock(xo,{key:`plugin-card-${R.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:p,config:t.config,"navigate-on-click":t.navigateOnClick,plugin:R,onPluginClicked:w=>i("plugin-clicked",R)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[g.value?void 0:{name:"trigger",fn:e.withCtx(()=>[E[1]||(E[1]=e.createTextVNode(" "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),pR={class:"plugin-select-grid"},mR={class:"empty-state-title"},gR={class:"empty-state-description"},Po=e.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(t,{emit:n}){const a=t,o=n,{i18n:{t:i}}=Oe.useI18n(),r=e.ref(!1),s=e.ref($o),l=m=>{o("plugin-clicked",m)},d=e.computed(()=>{const m=JSON.parse(JSON.stringify(a.pluginList));return a.config.app==="konnect"&&delete m[O.CUSTOM_PLUGINS],m});return(m,p)=>{const u=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",pR,[Object.keys(d.value).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",mR,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",gR,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!a.hideHighlightedPlugins&&a.highlightedPlugins.length>0?(e.openBlock(),e.createBlock(Bl,{key:1,modelValue:r.value,"onUpdate:modelValue":p[0]||(p[0]=g=>r.value=g),config:t.config,name:a.highlightedPluginsTitle||e.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":t.navigateOnClick,plugins:a.highlightedPlugins,onPluginClicked:p[1]||(p[1]=g=>l(g))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(_o),g=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[d.value[g]?(e.openBlock(),e.createElementBlock("div",{key:g},[e.createVNode(Bl,{modelValue:s.value[g],"onUpdate:modelValue":h=>s.value[g]=h,config:t.config,name:g,"navigate-on-click":t.navigateOnClick,plugins:d.value[g]||[],onPluginClicked:p[2]||(p[2]=h=>l(h))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):e.createCommentVNode("",!0)],64))),256))])}}}),AR={class:"kong-ui-entities-plugin-select-form"},fR={class:"plugins-filter-input-container"},hR={key:0},yR={key:3,"aria-live":"polite",class:"plugins-results-container"},bR={"data-testid":"kong-tab"},ER={class:"tab-description"},wR={"data-testid":"custom-tab"},CR={class:"tab-description"},BR=Me(e.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.getCreateRoute)},customPluginSupport:{type:String,default:"none"},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:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(t,{emit:n}){var te;const a=t,o=n,i=gn.useRoute(),r=gn.useRouter(),{i18n:{t:s}}=Oe.useI18n(),{pluginMetaData:l}=Oe.usePluginMetaData(),{getMessageFromError:d}=L.useErrors(),{sortAlpha:m,objectsAreEqual:p}=L.useHelpers(),u=e.ref(""),g=e.ref(!0),h=e.ref(!1),C=e.ref(""),f=e.ref([]),E=e.ref([]),k=e.ref({}),R=e.ref([]),{axiosInstance:w}=L.useAxios((te=a.config)==null?void 0:te.axiosRequestConfig),I=e.computed(()=>k.value?Object.entries(k.value).filter(([N])=>N!==O.CUSTOM_PLUGINS).reduce((N,[,V])=>{for(const X of V)N[X.id]=X;return N},{}):{}),v=e.computed(()=>{var X;if(!k.value)return{};const N=u.value.toLowerCase(),V=JSON.parse(JSON.stringify(k.value));for(const ce in k.value){const $=((X=k.value[ce])==null?void 0:X.filter(F=>F.name.toLowerCase().includes(N)||F.id.toLowerCase().includes(N)||F.group.toLowerCase().includes(N)))||[];$.length?V[ce]=$:delete V[ce]}return V}),A=e.computed(()=>a.highlightedPluginIds.reduce((N,V)=>{const X=I.value[V];return X&&N.push(X),N},[])),y=e.computed(()=>Object.keys(v.value).length>0),b=e.computed(()=>Object.keys(k.value).length>0&&!y.value),x=e.computed(()=>a.config.app==="konnect"?[{hash:"#kong",title:s("plugins.select.tabs.kong.title")},{hash:"#custom",title:s("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(a.customPluginSupport)}]:[]),M=e.computed(()=>{var V;let N=x.value.length&&((i==null?void 0:i.hash)||((V=x.value[0])==null?void 0:V.hash))||"";return N==="#custom"&&["none","disabled"].includes(a.customPluginSupport)&&(N="#kong"),N}),S=()=>[...new Set([...Object.keys({...a.availableOnServer?{}:l}),...f.value])].filter(N=>!a.ignoredPlugins.includes(N)).filter(N=>a.config.entityType&&(a.config.entityType==="services"&&l[N]&&!l[N].scope.includes(c.SERVICE)||a.config.entityType==="routes"&&l[N]&&!l[N].scope.includes(c.ROUTE)||a.config.entityType==="consumer_groups"&&l[N]&&!l[N].scope.includes(c.CONSUMER_GROUP)||a.config.entityType==="consumers"&&l[N]&&!l[N].scope.includes(c.CONSUMER))?!1:N).reduce((N,V)=>{var _;const X=l[V]&&l[V].name||V,ce={...l[V],id:V,name:X,available:f.value.includes(V),disabledMessage:"",group:((_=l[V])==null?void 0:_.group)||O.CUSTOM_PLUGINS};ce.group===O.CUSTOM_PLUGINS&&(ce.customPluginType=E.value.find(se=>se.name===V)?"streaming":"schema"),a.disabledPlugins&&(ce.disabledMessage=a.disabledPlugins[V]);const $=ce.group||s("plugins.select.misc_plugins");let F=N[$];return F||(F=[]),F.push(ce),F.sort(m("name")),N[$]=F,N},{}),Q=e.computed(()=>{var V;let N=`${a.config.apiBaseUrl}${Te.select[a.config.app].availablePlugins}`;return a.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(N=((V=a.config.gatewayInfo)==null?void 0:V.edition)==="community"?`${a.config.apiBaseUrl}${Te.select[a.config.app].availablePluginsForOss}`:N.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),N}),j=e.computed(()=>{if(a.config.app==="konnect"&&a.customPluginSupport==="streaming"){let N=`${a.config.apiBaseUrl}${Te.select[a.config.app].streamingCustomPlugins}`;return N=N.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""),N}return null}),z=e.computed(()=>{if(a.config.entityType&&a.config.entityId){let N=`${a.config.apiBaseUrl}${Te.list[a.config.app].forEntity}`;return a.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),N.replace(/{entityType}/gi,a.config.entityType||"").replace(/{entityId}/gi,a.config.entityId||"")}return""}),q=N=>{r.replace({hash:N,query:i.query})};e.watch(()=>a.disabledPlugins,(N,V)=>{!p(N,V)&&!g.value&&(k.value=S())}),e.watch(()=>a.ignoredPlugins,(N,V)=>{!p(N,V)&&!g.value&&(k.value=S())}),e.watch(g,N=>{o("loading",N)});const G=e.ref(!1),K=e.ref(!1),ae=e.ref(!1);return e.onBeforeMount(async()=>{G.value=await a.canCreateCustomPlugin(),K.value=await a.canEditCustomPlugin(),ae.value=await a.canDeleteCustomPlugin()}),e.onMounted(async()=>{try{const{data:N}=await w.get(Q.value);if(a.config.app==="konnect"){const{names:V}=N;if(f.value=V||[],j.value){const{data:X}=await w.get(j.value);E.value=X.data||[]}}else if(a.config.app==="kongManager"){const{plugins:{available_on_server:V}}=N;f.value=V?Object.keys(V):[]}}catch(N){h.value=!0,C.value=d(N)}if(z.value)try{const{data:{data:N}}=await w.get(z.value);if(N!=null&&N.length){const V=N.reduce((X,ce)=>(ce.name&&X.push(ce.name),X),[]);R.value=R.value.concat(V)}}catch{}h.value||(k.value=S()),g.value=!1}),(N,V)=>{const X=e.resolveComponent("KInput"),ce=e.resolveComponent("KSkeletonBox"),$=e.resolveComponent("KSkeleton"),F=e.resolveComponent("KEmptyState"),_=e.resolveComponent("KTooltip"),se=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",AR,[e.createElementVNode("div",fR,[e.createVNode(X,{modelValue:u.value,"onUpdate:modelValue":V[0]||(V[0]=ne=>u.value=ne),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:e.unref(s)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),g.value?(e.openBlock(),e.createElementBlock("section",hR,[e.createVNode(ce,{class:"plugins-skeleton-title",width:"10"}),e.createVNode($,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):h.value?(e.openBlock(),e.createBlock(F,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(C.value),1)]),_:1})):b.value&&u.value?(e.openBlock(),e.createBlock(F,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(s)("search.no_results",{filter:u.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",yR,[x.value.length&&t.customPluginSupport!=="none"?(e.openBlock(),e.createBlock(se,{key:0,modelValue:M.value,"onUpdate:modelValue":V[5]||(V[5]=ne=>M.value=ne),"data-testid":"plugins-tabs",tabs:x.value,onChange:q},e.createSlots({kong:e.withCtx(()=>[e.createElementVNode("div",bR,[e.createElementVNode("p",ER,e.toDisplayString(e.unref(s)("plugins.select.tabs.kong.description")),1),e.createVNode(Po,{config:t.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":A.value,"highlighted-plugins-title":a.highlightedPluginsTitle,"navigate-on-click":t.navigateOnClick,"plugin-list":v.value,onPluginClicked:V[1]||(V[1]=ne=>N.$emit("plugin-clicked",ne))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:e.withCtx(()=>[e.createElementVNode("div",wR,[e.createElementVNode("p",CR,e.toDisplayString(e.unref(s)("plugins.select.tabs.custom.description")),1),e.createVNode(uR,{"can-create-custom-plugin":G.value,"can-delete-custom-plugin":ae.value,"can-edit-custom-plugin":K.value,config:t.config,"navigate-on-click":t.navigateOnClick,"plugin-list":v.value,"onDelete:success":V[2]||(V[2]=ne=>N.$emit("delete-custom:success",ne)),onPluginClicked:V[3]||(V[3]=ne=>N.$emit("plugin-clicked",ne)),onRevalidate:V[4]||(V[4]=()=>k.value=S())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[t.customPluginSupport==="disabled"?{name:"custom-anchor",fn:e.withCtx(()=>[e.createVNode(_,{"max-width":"300",text:e.unref(s)("plugins.select.tabs.custom.disabled_tooltip")},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(s)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(e.openBlock(),e.createBlock(Po,{key:1,config:t.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":A.value,"highlighted-plugins-title":a.highlightedPluginsTitle,"navigate-on-click":t.navigateOnClick,"plugin-list":v.value,onPluginClicked:V[6]||(V[6]=ne=>N.$emit("plugin-clicked",ne))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-d2065987"]]),kR={class:"kong-ui-entity-plugin-config-card"},IR={class:"name-cell-wrapper"},OR={class:"info-name"},RR={key:0},MR={key:0},SR={key:0},TR={key:0},xR={key:0},No="config",vR=Me(e.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.entityId||!t.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:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(t,{emit:n}){var R;const a=n,o=t,{i18n:{t:i}}=Oe.useI18n(),r=Oe.usePluginMetaData(),{setFieldType:s}=Oe.usePluginHelpers(),{getPropValue:l}=L.useHelpers(),d=e.computed(()=>{var w;return(w=Te.item[o.config.app])==null?void 0:w[o.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,o.scopedEntityType).replace(/{entityId}/gi,o.scopedEntityId).concat(o.expandPartial?"?expand_partials=true":"")}),m=e.computed(()=>{var v,A;const w={},I=((v=f.value)==null?void 0:v.fields)||[];for(let y=0;y<I.length;y++){const b=f.value.fields[y],x=(A=Object.keys(b))==null?void 0:A[0];s(w,x,b[x])}return{...w,instance_name:{section:L.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:L.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:L.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:L.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:L.ConfigurationSchemaSection.Basic,order:6},protocols:{type:L.ConfigurationSchemaType.BadgeTag,section:L.ConfigurationSchemaSection.Basic,order:7}}}),p=e.computed(()=>{var I,v,A;if(!((I=f.value)!=null&&I.fields))return[];const w=(v=f.value.fields)==null?void 0:v.find(y=>{var x;return((x=Object.keys(y))==null?void 0:x[0])===No});return((A=w==null?void 0:w[No])==null?void 0:A.fields)||[]}),u=e.computed(()=>{var I,v;const w={};if(!p.value)return w;for(let A=0;A<((I=p.value)==null?void 0:I.length);A++){const y=p.value[A],b=(v=Object.keys(y))==null?void 0:v[0],x=y[b];x.required&&(w[b]={order:1}),s(w,b,x)}return w}),{getMessageFromError:g}=L.useErrors(),{axiosInstance:h}=L.useAxios((R=o.config)==null?void 0:R.axiosRequestConfig),C=e.computed(()=>{var I,v;let w=`${o.config.apiBaseUrl}${Te.form[o.config.app].pluginSchema}`;return o.config.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,((I=o.config)==null?void 0:I.controlPlaneId)||""):o.config.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,(v=o.config)!=null&&v.workspace?`/${o.config.workspace}`:"")),w=w.replace(/{plugin}/gi,o.config.pluginType),w}),f=e.ref({});L.useSchemaProvider(f);const E=e.ref(!1),k=e.ref("");return e.onBeforeMount(async()=>{E.value=!0;try{const{data:w}=await h.get(C.value);f.value=w}catch(w){k.value=g(w),a("error:fetch-schema",w)}finally{E.value=!1}}),(w,I)=>{const v=e.resolveComponent("KSkeleton"),A=e.resolveComponent("KEmptyState"),y=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",kR,[E.value?(e.openBlock(),e.createBlock(v,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):k.value?(e.openBlock(),e.createBlock(A,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(k.value),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(L.EntityBaseConfigCard),{key:2,config:t.config,"config-card-doc":t.configCardDoc,"config-schema":m.value,"entity-type":e.unref(L.SupportedEntityType).Plugin,"fetch-url":d.value,"hide-title":t.hideTitle,"plugin-config-key":No,"plugin-config-schema":u.value,"onFetch:error":I[0]||(I[0]=b=>w.$emit("fetch:error",b)),"onFetch:success":I[1]||(I[1]=b=>w.$emit("fetch:success",b)),onLoading:I[2]||(I[2]=b=>w.$emit("loading",b))},{name:e.withCtx(b=>[e.createElementVNode("div",IR,[e.createVNode(Ea,{class:"plugin-icon",name:e.unref(l)("rowValue",b),size:24},null,8,["name"]),e.createElementVNode("span",OR,e.toDisplayString(e.unref(r).getDisplayName(e.unref(l)("rowValue",b))),1)])]),consumer:e.withCtx(b=>[e.unref(l)("rowValue",b)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(L.InternalLinkItem),{key:1,item:{key:e.unref(l)("rowValue",b).id,value:e.unref(l)("rowValue",b).id,type:e.unref(L.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>w.$emit("navigation-click",e.unref(l)("rowValue",b).id,"consumer")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",b).label}),"data-testid":"consumer-copy-uuid",text:e.unref(l)("rowValue",b).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",RR,"–"))]),route:e.withCtx(b=>[e.unref(l)("rowValue",b)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(L.InternalLinkItem),{key:1,item:{key:e.unref(l)("rowValue",b).id,value:e.unref(l)("rowValue",b).id,type:e.unref(L.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>w.$emit("navigation-click",e.unref(l)("rowValue",b).id,"route")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",b).label}),"data-testid":"route-copy-uuid",text:e.unref(l)("rowValue",b).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",MR,"–"))]),service:e.withCtx(b=>[e.unref(l)("rowValue",b)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(L.InternalLinkItem),{key:1,item:{key:e.unref(l)("rowValue",b).id,value:e.unref(l)("rowValue",b).id,type:e.unref(L.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>w.$emit("navigation-click",e.unref(l)("rowValue",b).id,"service")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",b).label}),"data-testid":"service-copy-uuid",text:e.unref(l)("rowValue",b).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",SR,"–"))]),consumer_group:e.withCtx(b=>[e.unref(l)("rowValue",b)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(L.InternalLinkItem),{key:1,item:{key:e.unref(l)("rowValue",b).id,value:e.unref(l)("rowValue",b).id,type:e.unref(L.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>w.$emit("navigation-click",e.unref(l)("rowValue",b).id,"consumer_group")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",b).label}),"data-testid":"consumer-group-copy-uuid",text:e.unref(l)("rowValue",b).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",TR,"–"))]),partials:e.withCtx(b=>{var x,M,S,Q,j,z,q,G,K;return[e.unref(l)("rowValue",b)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(L.InternalLinkItem),{key:1,item:{key:(M=(x=e.unref(l)("rowValue",b))==null?void 0:x[0])==null?void 0:M.id,value:((Q=(S=e.unref(l)("rowValue",b))==null?void 0:S[0])==null?void 0:Q.id)+((z=(j=e.unref(l)("rowValue",b))==null?void 0:j[0])!=null&&z.name?"/"+((G=(q=e.unref(l)("rowValue",b))==null?void 0:q[0])==null?void 0:G.name):""),type:e.unref(L.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var ae,te;return w.$emit("navigation-click",(te=(ae=e.unref(l)("rowValue",b))==null?void 0:ae[0])==null?void 0:te.id,"partial")}},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",b).label}),"data-testid":"partial-copy-uuid",text:(K=e.unref(l)("rowValue",b))==null?void 0:K[0].id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",xR,"–"))]}),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-949f887c"]]),{usePluginMetaData:VR,useProvideExperimentalFreeForms:PR}=Oe;ee.EXPERIMENTAL_FREE_FORM_PROVIDER=qa,ee.EntityTypeIdField=vt,ee.PLUGIN_GROUPS_COLLAPSE_STATUS=$o,ee.PluginConfigCard=vR,ee.PluginForm=UO,ee.PluginGroup=O,ee.PluginGroupArray=_o,ee.PluginIcon=Ea,ee.PluginList=WO,ee.PluginPartialType=Xn,ee.PluginScope=c,ee.PluginSelect=BR,ee.PluginSelectCard=xo,ee.PluginSelectGrid=Po,ee.VueFormGenerator=Ne,ee.getPluginIconURL=jr,ee.pluginEndpoints=Te,ee.usePluginMetaData=VR,ee.useProvideExperimentalFreeForms=PR,Object.defineProperty(ee,Symbol.toStringTag,{value:"Module"})});
|
|
66
|
+
it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:rn.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
|
|
67
|
+
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:rn.tags}]},zb={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"]}}]},Xr={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
68
|
+
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Gt}]},Qb={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."}}]},ut={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",...N["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",...N["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",...N["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",isEnterprise:!1,nameKey:"plugins.meta.jwt.name",...N.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",...N["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",...N["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",...N["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",...N["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",...N["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",...N.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",...N["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",...N["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",...N["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",...N["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",isEnterprise:!1,nameKey:"plugins.meta.cors.name",...N.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...N["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",isEnterprise:!0,nameKey:"plugins.meta.opa.name",...N.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...N["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...N["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",isEnterprise:!1,nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...N.acl},canary:{descriptionKey:"plugins.meta.canary.description",isEnterprise:!0,nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...N.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...N["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",...N["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",imageName:"proxy-cache",...N["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",imageName:"graphql",...N["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",...N["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...N["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...N["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",isEnterprise:!0,nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...N.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",...N["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",...N["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",...N["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",...N["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...N["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...N["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...N["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...N["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...N["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...N["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...N["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",isEnterprise:!0,nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...N["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",...N["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",...N["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",...N.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",imageName:"kong-function",...N["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",isEnterprise:!0,nameKey:"plugins.meta.post-function.name",imageName:"kong-function",...N["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",isEnterprise:!1,nameKey:"plugins.meta.datadog.name",...N.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",...N.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",...N.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",isEnterprise:!0,nameKey:"plugins.meta.collector.name",...N.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",...N["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",...N["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",...N["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",...N["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",...N["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...N["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",...N["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",...N.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",...N["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",isEnterprise:!0,nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...N.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",isEnterprise:!1,nameKey:"plugins.meta.file-log.name",...N["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",isEnterprise:!1,nameKey:"plugins.meta.http-log.name",...N["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",isEnterprise:!1,nameKey:"plugins.meta.loggly.name",...N.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",...N["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",isEnterprise:!1,nameKey:"plugins.meta.statsd.name",...N.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",isEnterprise:!1,nameKey:"plugins.meta.syslog.name",...N.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",...N["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",...N["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",...N["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",isEnterprise:!1,nameKey:"plugins.meta.session.name",...N.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",...N["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",...N["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",imageName:"application-registration",...N["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",isEnterprise:!1,nameKey:"plugins.meta.acme.name",...N.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",...N["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",...N["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",...N["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...N.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",...N["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...N["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",...N["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",...N["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",...N["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",...N["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",...N["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",isEnterprise:!0,nameKey:"plugins.meta.saml.name",...N.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",...N["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.json-threat-protection.name",...N["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",...N["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...N["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...N["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...N["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",isEnterprise:!0,nameKey:"plugins.meta.header-cert-auth.name",imageName:"tls-metadata-headers",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...N["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",imageName:"oauth2",...N["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",isEnterprise:!0,nameKey:"plugins.meta.confluent.name",...N.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",...N["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",...N["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",isEnterprise:!1,nameKey:"plugins.meta.redirect.name",...N.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",isEnterprise:!1,nameKey:"plugins.meta.kafka-consume.name",...N["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",isEnterprise:!1,nameKey:"plugins.meta.confluent-consume.name",...N["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",isEnterprise:!1,nameKey:"plugins.meta.request-callout.name",...N["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",isEnterprise:!1,nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...N["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",isEnterprise:!1,nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...N["ai-rag-injector"]}},un={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:li,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:jt(li),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:ci,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:jt(ci)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Kr,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:jt(Kr)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Xr,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:jt(Xr)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Qr,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:jt(Qr)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:zr,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:jt(zr)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Yb,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Xb={acls:iu,basicauth_credentials:ru,keyauth_credentials:Fb,keyauth_enc_credentials:Qb,oauth2_credentials:zb,hmacauth_credentials:Hb,jwt_secrets:Kb},qr=t=>{var o;const n=((o=ut[t])==null?void 0:o.imageName)||t||"missing",a=new URL(Object.assign({"../assets/images/plugin-icons/acl.png":dc,"../assets/images/plugin-icons/acme.png":uc,"../assets/images/plugin-icons/ai-azure-content-safety.png":pc,"../assets/images/plugin-icons/ai-data-sanitization.png":mc,"../assets/images/plugin-icons/ai-prompt-decorator.png":gc,"../assets/images/plugin-icons/ai-prompt-guard.png":Ac,"../assets/images/plugin-icons/ai-prompt-template.png":fc,"../assets/images/plugin-icons/ai-proxy-advanced.png":hc,"../assets/images/plugin-icons/ai-proxy.png":yc,"../assets/images/plugin-icons/ai-rag-injector.png":bc,"../assets/images/plugin-icons/ai-rate-limiting-advanced.png":Ec,"../assets/images/plugin-icons/ai-request-transformer.png":wc,"../assets/images/plugin-icons/ai-response-transformer.png":Cc,"../assets/images/plugin-icons/ai-sanitizer.png":Bc,"../assets/images/plugin-icons/ai-semantic-cache.png":kc,"../assets/images/plugin-icons/ai-semantic-prompt-guard.png":Ic,"../assets/images/plugin-icons/app-dynamics.png":Oc,"../assets/images/plugin-icons/application-registration.png":Rc,"../assets/images/plugin-icons/aws-lambda.png":Mc,"../assets/images/plugin-icons/azure-functions.png":Sc,"../assets/images/plugin-icons/basic-auth.png":Tc,"../assets/images/plugin-icons/bot-detection.png":xc,"../assets/images/plugin-icons/canary.png":vc,"../assets/images/plugin-icons/collector.png":Vc,"../assets/images/plugin-icons/confluent-consume.png":Pc,"../assets/images/plugin-icons/confluent.png":Nc,"../assets/images/plugin-icons/correlation-id.png":Dc,"../assets/images/plugin-icons/cors.png":Lc,"../assets/images/plugin-icons/datadog.png":Uc,"../assets/images/plugin-icons/degraphql.png":jc,"../assets/images/plugin-icons/dynamic-ssl.png":Gc,"../assets/images/plugin-icons/exit-transformer.png":Fc,"../assets/images/plugin-icons/file-log.png":Hc,"../assets/images/plugin-icons/forward-proxy.png":Yc,"../assets/images/plugin-icons/graphql-rate-limiting-advanced.png":Kc,"../assets/images/plugin-icons/graphql.png":zc,"../assets/images/plugin-icons/grpc-gateway.png":Qc,"../assets/images/plugin-icons/grpc-web.png":Xc,"../assets/images/plugin-icons/hmac-auth.png":qc,"../assets/images/plugin-icons/http-log.png":Jc,"../assets/images/plugin-icons/injection-protection.png":Zc,"../assets/images/plugin-icons/ip-restriction.png":Wc,"../assets/images/plugin-icons/jq.png":_c,"../assets/images/plugin-icons/json-threat-protection.png":$c,"../assets/images/plugin-icons/jwe-decrypt.png":ed,"../assets/images/plugin-icons/jwt-signer.png":td,"../assets/images/plugin-icons/jwt.png":nd,"../assets/images/plugin-icons/kafka-consume.png":ad,"../assets/images/plugin-icons/kafka-log.png":od,"../assets/images/plugin-icons/kafka-upstream.png":id,"../assets/images/plugin-icons/key-auth-enc.png":rd,"../assets/images/plugin-icons/key-auth.png":sd,"../assets/images/plugin-icons/kong-function.png":ld,"../assets/images/plugin-icons/kubernetes-sidecar-injector.png":cd,"../assets/images/plugin-icons/ldap-auth-advanced.png":dd,"../assets/images/plugin-icons/ldap-auth.png":ud,"../assets/images/plugin-icons/loggly.png":pd,"../assets/images/plugin-icons/missing.png":md,"../assets/images/plugin-icons/mocking.png":gd,"../assets/images/plugin-icons/mtls-auth.png":Ad,"../assets/images/plugin-icons/new.png":fd,"../assets/images/plugin-icons/oas-validation.png":hd,"../assets/images/plugin-icons/oauth2-introspection.png":yd,"../assets/images/plugin-icons/oauth2.png":bd,"../assets/images/plugin-icons/opa.png":Ed,"../assets/images/plugin-icons/openid-connect.png":wd,"../assets/images/plugin-icons/opentelemetry.png":Cd,"../assets/images/plugin-icons/openwhisk.png":Bd,"../assets/images/plugin-icons/prometheus.png":kd,"../assets/images/plugin-icons/proxy-cache.png":Id,"../assets/images/plugin-icons/rate-limiting-advanced.png":Od,"../assets/images/plugin-icons/rate-limiting.png":Rd,"../assets/images/plugin-icons/redirect.png":Md,"../assets/images/plugin-icons/request-callout.png":Sd,"../assets/images/plugin-icons/request-size-limiting.png":Td,"../assets/images/plugin-icons/request-termination.png":xd,"../assets/images/plugin-icons/request-transformer-advanced.png":vd,"../assets/images/plugin-icons/request-transformer.png":Vd,"../assets/images/plugin-icons/request-validator.png":Pd,"../assets/images/plugin-icons/response-ratelimiting.png":Nd,"../assets/images/plugin-icons/response-transformer-advanced.png":Dd,"../assets/images/plugin-icons/response-transformer.png":Ld,"../assets/images/plugin-icons/route-by-header.png":Ud,"../assets/images/plugin-icons/route-transformer-advanced.png":jd,"../assets/images/plugin-icons/runscope.png":Gd,"../assets/images/plugin-icons/saml.png":Fd,"../assets/images/plugin-icons/service-protection.png":Hd,"../assets/images/plugin-icons/session.png":Yd,"../assets/images/plugin-icons/standard-webhooks.png":Kd,"../assets/images/plugin-icons/statsd-advanced.png":zd,"../assets/images/plugin-icons/statsd.png":Qd,"../assets/images/plugin-icons/syslog.png":Xd,"../assets/images/plugin-icons/tcp-log.png":qd,"../assets/images/plugin-icons/tls-handshake-modifier.png":Jd,"../assets/images/plugin-icons/tls-metadata-headers.png":Zd,"../assets/images/plugin-icons/udp-log.png":Wd,"../assets/images/plugin-icons/upstream-timeout.png":_d,"../assets/images/plugin-icons/upstream-tls.png":$d,"../assets/images/plugin-icons/vault-auth.png":eu,"../assets/images/plugin-icons/websocket-size-limit.png":tu,"../assets/images/plugin-icons/websocket-validator.png":nu,"../assets/images/plugin-icons/xml-threat-protection.png":au,"../assets/images/plugin-icons/zipkin.png":ou})[`../assets/images/plugin-icons/${n}.png`],typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:At&&At.tagName.toUpperCase()==="SCRIPT"&&At.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;return a.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:At&&At.tagName.toUpperCase()==="SCRIPT"&&At.src||new URL("entities-plugins.umd.js",document.baseURI).href).href:a},qb=()=>{const{i18n:{t}}=on(),n={},a={};for(const[i,r]of Object.entries(ut))n[i]={...r,name:t(r.nameKey),description:t(r.descriptionKey)};for(const[i,r]of Object.entries(un))a[i]={...r,name:t(r.nameKey),title:t(r.titleKey)};return{pluginMetaData:n,credentialMetaData:a,credentialSchemas:un,getDisplayName:i=>{var r;return((r=n[i])==null?void 0:r.name)||i}}},vn={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Jb={"config-prompts-prepend":{...vn,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...vn,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},Zb={"config-templates":{...vn,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},Wb={shamefullyTransformPayload:({originalModel:t,model:n,payload:a,schema:o})=>{const i=s=>{var l;return(l=o[s])!=null&&l.required&&n[s]?!0:t[s]===n[s]?!1:t[s]===null?n[s]!==""&&!Number.isNaN(n[s]):!0},r=s=>Object.keys(t).some(l=>l.startsWith(s)&&i(l));r("config-embeddings")||(a.config.embeddings=null),r("config-vectordb")||(a.config.vectordb=null)}},_b={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:rn.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"}},Oe={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"},ma={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},$b={"config-metrics":{...ma,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"}]}}}},eE={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},tE={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},nE={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},aE={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},oE={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Jr=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((t,n)=>({...t,[n]:rn.fields.arrayItems({newElementButtonLabel:"Add"})}),oE),ga={"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"}},iE={"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":{}},rE=["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((t,n)=>({...t,[n]:rn.fields.arrayItems({newElementButtonLabel:"Add"})}),iE),Zr={"config-add-json":{...Oe,label:"Config.Add.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Oe,label:"Config.Append.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Oe,label:"Config.Remove.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Oe,label:"Config.Rename.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Oe,label:"Config.Replace.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}}},sE={...Zr,"config-allow-json":{...Oe,label:"Config.Allow.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Oe,label:"Config.Transform.Functions",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Oe,label:"Config.Transform.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}}},lE={"config-rules":{...vn,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"}]}}}},cE={"config-session_redis_cluster_nodes":{...vn,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"}]}}}},dE={"config-metrics":{...ma,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"]}]}}}},uE={"config-metrics":{...ma,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"]}]}}}},pE={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},mE={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:t=>({id:t}),keyFromObject:"id"}},gE={"config-message_by_lua_functions":{...Oe,inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}}},AE={"config-message_by_lua_functions":{...Oe,inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}}},fE={"config-static_tags":{...ma,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"}]}}}},hE={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"}};function Aa(t,n){const a=hE[t];if(typeof a=="string")return a;if(n.includes(t))return a.component}const eo=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER");function to(){return e.inject(eo,[])}function yE(t){e.provide(eo,t)}const bE=(t,n)=>{const a=t.model.startsWith("config-"),o=n.model.startsWith("config-");return a&&!o?1:!a&&o?-1:0},Wr=(t,n)=>(t.order??0)-(n.order??0),_r=(t,n)=>bE(t,n)||Wr(t,n)||t.model.localeCompare(n.model),Se={useI18n:on,usePluginMetaData:qb,usePluginHelpers:ii,useSchemas:t=>{const{capitalize:n}=U.useStringHelpers(),{convertToDotNotation:a}=ii(),{i18n:{t:o}}=on(),i=to(),r={"application-registration":{overwriteDefault:!0,formSchema:{..._b}},datadog:{...$b},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...dE},"statsd-advanced":{...uE},"route-by-header":{...lE},"ai-prompt-decorator":{...Jb},"ai-prompt-template":{...Zb},"ai-proxy-advanced":{...Wb},"vault-auth":{...mE},"oas-validation":{...aE},mocking:{...nE},"rate-limiting":{...ga},"rate-limiting-advanced":(t==null?void 0:t.app)==="kongManager"?{"config-consumer_groups":ga["config-consumer_groups"]}:{...ga},"graphql-rate-limiting-advanced":{...eE},"injection-protection":{...tE},"response-ratelimiting":{...ga},"pre-function":{...Jr},"post-function":{...Jr},"request-transformer-advanced":{...rE},"response-transformer":{...Zr},"response-transformer-advanced":{...sE},zipkin:{...fE},"upstream-oauth":{...pE},saml:{...cE},"kafka-upstream":{...gE},"key-auth":Gb(t),confluent:{...AE}},s=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],l=(A,y,E)=>{let L={};(y||A)&&(L=y||(A.fields?A.fields:A));const I=s().concat(A.blacklist?A.blacklist:[]),x=Object.keys(L).filter(X=>!I.includes(X)),V=x.indexOf("comparator");V>-1&&x.splice(V,1);let P={fields:[]};const Q={};x.forEach(X=>{m(L[X],X,L,Q,P,E)});const le=Q.name,G=ut[le],K=[],re=X=>{const T=["cluster-cache"];for(const v of T)if(X.model.includes(v))return!1;return new RegExp("(?<=-redis-).*").test(X.model)};if(P._supported_redis_partial_type=A._supported_redis_partial_type,P._redis_partial_path=A._redis_partial_path,Yr(le)||Aa(le,i)||G!=null&&G.useLegacyForm||t!=null&&t.credential){if(G!=null&&G.useLegacyForm&&(t!=null&&t.enableRedisPartial)&&A._supported_redis_partial_type){for(const X of P.fields)if(re(X)){K.push(X);continue}P.fields=P.fields.filter(X=>!re(X)),K.length&&P.fields.push({id:"_redis",fields:K,model:"__redis_partial",pluginType:A._isCustomPlugin?"custom":"bundled",redisType:A._supported_redis_partial_type,redisPath:A._redis_partial_path})}P.fields.sort((X,T)=>(X.order=X.order||0,T.order=T.order||0,X.order-T.order))}else{const X=[],T=[],v=[],q=[],ue={};if(G!=null&&G.fieldRules){const W=[...G.fieldRules.atLeastOneOf??[],...G.fieldRules.onlyOneOf??[],...G.fieldRules.mutuallyRequired??[]];if(G.fieldRules.onlyOneOfMutuallyRequired)for(const oe of G.fieldRules.onlyOneOfMutuallyRequired)W.push(...oe);for(const oe of W)for(const ne of oe)ue[ne.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const W of P.fields){if(t!=null&&t.enableRedisPartial&&A._supported_redis_partial_type&&re(W)){q.push(W);continue}if(W.pinned){X.push(W);continue}if(W.required||ue[W.model]!==void 0){ue[W.model]===!1&&(ue[W.model]=!0),T.push(W);continue}v.push(W)}q.length&&v.push({id:"_redis",fields:q,model:"__redis_partial",pluginType:A._isCustomPlugin?"custom":"bundled",redisType:A._supported_redis_partial_type,redisPath:A._redis_partial_path,order:-1});const _=Object.entries(ue).filter(([,W])=>!W).map(([W])=>W.replace(/-/g,".").replace(/_/g,"-"));_.length>0&&console.warn(`Unknown checked fields for plugin ${le}: ${_.join(", ")}`);const Y=[];X.length>0&&Y.push({fields:X.sort(Wr)}),(T.length>0||v.length>0)&&Y.push({fields:T.sort(_r),collapsible:{title:o("plugins.form.grouping.plugin_configuration.title"),description:o("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:v.sort(_r),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"}}),P={groups:Y}}return{schema:P,model:Q,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=A=>Array.isArray(A.default)||A.default!=null&&typeof A.default!="object"&&A.default!=="function",m=(A,y,E,L,I,x)=>{const V=c(A);return L[y]=V?A.default:null,A.id=y,A.model=y,A.fields&&A.type==="record"?u(A,y,E,L,I,x):(E[y]=A,B(A,L),x&&x[y]&&p(E[y],x[y]),I.fields.push(A)),E},p=(A,y)=>(y&&(Object.assign(A,y),y.label&&(A.label=y.label)),A),u=(A,y,E,L,I,x)=>{A.fields.forEach(V=>{Object.keys(V).forEach(P=>{const Q=V[P];E=m(Q,y+"-"+P,E,L,I,x)})})},g=(A,y)=>{A.type="input",A.inputType="hidden",A.styleClasses="kong-form-hidden-field-wrapper";const E=t==null?void 0:t.entityId;y[A.model]=E?{id:E}:null},h=A=>{A.type="input",A.inputType="number",A.between&&A.between.length===2&&(A.min=A.between[0],A.max=A.between[1])},C=A=>{Object.prototype.hasOwnProperty.call(A,"one_of")?(A.type="select",A.values=A.one_of,A.selectOptions={hideNoneSelectedText:!0}):(A.type="input",A.inputType="text")},f=A=>{A.type="checkbox",A.default=!0,A.required=!1},b=A=>{if(A.type="object-advanced",A.values.type==="array"){const{type:y}=A.values.elements||{};A.schema={fields:[{schema:{fields:[{...Oe,model:A.model,valueArrayType:y==="integer"?"number":y||"string",inputAttributes:{...Oe.inputAttributes,type:y==="integer"?"number":"text",inputMode:y==="integer"?"numeric":"text"}}]}}]}}else A.values.fields&&(A.schema={fields:[{type:"object",model:"object",schema:{fields:A.values.fields.map(y=>{const E=Object.keys(y)[0];return{model:E,type:"input",label:n(E),placeholder:E,inputType:y[E].type}})}}]})},k=A=>A.fields.reduce((y,E)=>(E.fields&&E.fields.forEach(L=>{y[L.model]=L}),E.model&&(y[E.model]=E),y),{}),O=(A,y)=>{if(!$a.includes(A.model))return;const E=k(A);$a.forEach(L=>{Object.keys(E).forEach(I=>{const x=c(E[I]);y[I]=x?E[I].default:null}),delete y[L]})},w=(A,y)=>A.inputType==="hidden"?"":a(n(A.label||y.replace(/_/g," "))),B=(A,y)=>{switch(O(A,y),A.type){case"foreign":g(A,y);break;case"number":h(A),A.attributes={step:"any"};break;case"integer":h(A);break;case"string":C(A);break;case"boolean":f(A);break;case"map":b(A);break}A.inputType==="foreign"&&g(A,y),A.label=w(A,A.model)};function S(A,y){if(y==null||y.type&&y.type!=="record"||typeof A!="object"||A==null)return A;const E={};for(const L of y.fields){const I=Object.keys(L)[0],x=L[I];x.type==="record"?E[I]=S(A[I],x):x.type==="array"&&Array.isArray(A[I])&&x.elements.type==="record"?E[I]=A[I].map(V=>S(V,x.elements)):E[I]=A[I]}return E}return{buildFormSchema:m,parseSchema:l,customSchemas:r,typedefs:rn,pruneRecord:S}},useExperimentalFreeForms:to,useProvideExperimentalFreeForms:yE},Ge="/v2/control-planes/{controlPlaneId}/core-entities",He="/{workspace}",Ve={list:{konnect:{all:`${Ge}/plugins`,forEntity:`${Ge}/{entityType}/{entityId}/plugins`},kongManager:{all:`${He}/plugins`,forEntity:`${He}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${Ge}/v1/available-plugins`,streamingCustomPlugins:`${Ge}/custom-plugins`,schemaCustomPluginItem:`${Ge}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${Ge}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${He}/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:`${He}/plugins`,forEntity:`${He}/{entityType}/{entityId}/plugins`},edit:{all:`${He}/plugins/{id}`,forEntity:`${He}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${He}/schemas/plugins/{plugin}`,credential:{create:`${He}/{resourceEndpoint}`,edit:`${He}/{resourceEndpoint}/{id}`},credentialSchema:`${He}/schemas/{plugin}`,validate:`${He}/schemas/plugins/validate`,entityGetOne:`${He}/{entity}/{id}`,entityGetAll:`${He}/{entity}`}},item:{konnect:{all:`${Ge}/plugins/{id}`,forEntity:`${Ge}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${He}/plugins/{id}`,forEntity:`${He}/{entityType}/{entityId}/plugins/{id}`}}},EE={create:"New vault",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",view:"View Details",loading:"Loading..."},wE={general:"Vaults could not be retrieved",delete:"The vault could not be deleted at this time.",copy:"Failed to copy to clipboard"},CE={placeholder_for_vaults:{konnect:"Filter by exact prefix or ID"},placeholder_for_secrets:{konnect:"Filter by exact key"}},BE={title:"Vaults",list:{toolbar_actions:{new_vault:"New vault"},table_headers:{prefix:"Prefix",name:"Vault Type",description:"Description",tags:"Tags",id:"ID"},empty_state:{title:"Configure a New Vault",description:"Improve the security of your Kong Gateway deployment with centralized secrets."},empty_state_v2:{title:"Configure your first vault",group:"Vaults created in gateways within this group will automatically appear here.",description:"Vaults securely and centrally store sensitive information, such as credentials, tokens, and keys, to simplify secrets management.",create_cta:"New vault"}}},kE={title:"Secrets",list:{toolbar_actions:{new_secret:"Store New Secret"},table_headers:{key:"Secret Key",updated_at:"Updated At"},empty_state:{title:"No Secrets Stored",description:"Improve the security of your Kong Gateway deployment with centralized secrets."}},form:{info:{title:"Secret",description:"Enter the secret key and secret value to be stored in Konnect vault"},fields:{key:{label:"Key",placeholder:"Enter key"},value:{label:"Value",placeholder:"Enter value here, can be simple values or multi-line"}},hint:"Once saved, the secret value will not be visible"}},IE={success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"},OE={vault_type:"Vault Type"},RE={sections:{general:{title:"General Information",description:"General information helps identify and manage this Vault instance."},config:{title:"Vault Configuration",description:"Select a type of Vault and configure properties specific to each type of Vault."}},fields:{prefix:{label:"Prefix",placeholder:"Enter a unique prefix for this vault",help:"e.g. my-vault",tooltip:"The prefix is used to load the right Vault configuration and implementation when referencing secrets with the other entities."},description:{label:"Description",placeholder:"Enter some description for this vault"},tags:{label:"Tags",placeholder:"Enter a list of tags separated by comma",help:"e.g. tag1, tag2, tag3"}},config:{konnect:{label:"Konnect",description:"Access secrets stored directly in Konnect's unified platform to easily reference in Kong Gateway configuration."},env:{label:"Environment Variables",description:"Access secrets stored via variables to be made available in Kong Gateway at runtime.",fields:{prefix:{label:"Environment Variable Prefix",placeholder:"Enter your environment variable vault prefix",tooltip:"Data plane will access all the environment variables starting with this prefix."}}},aws:{label:"AWS Secrets Manager",description:"Access secrets stored in AWS Secrets Manager for Kong Gateway configuration.",fields:{region:{label:"Region",placeholder:"Select an AWS region",tooltip:"The AWS region your vault is located in",locations:{"us-east-1":{location:"N. Virginia"},"us-east-2":{location:"Ohio"},"us-west-1":{location:"N. California"},"us-west-2":{location:"Oregon"},"af-south-1":{location:"Cape Town"},"ap-east-1":{location:"Hong Kong"},"ap-southeast-3":{location:"Jakarta"},"ap-south-1":{location:"Mumbai"},"ap-northeast-1":{location:"Tokyo"},"ap-northeast-2":{location:"Seoul"},"ap-northeast-3":{location:"Osaka"},"ap-southeast-1":{location:"Singapore"},"ap-southeast-2":{location:"Sydney"},"ca-central-1":{location:"Canada"},"eu-central-1":{location:"Frankfurt"},"eu-west-1":{location:"Ireland"},"eu-west-2":{location:"London"},"eu-west-3":{location:"Paris"},"eu-south-1":{location:"Milan"},"eu-north-1":{location:"Stockholm"},"me-south-1":{location:"Bahrain"},"sa-east-1":{location:"São Paulo"},"us-gov-east-1":{location:"US East"},"us-gov-west-1":{location:"US West"}}},endpoint_url:{label:"Endpoint URL",tooltip:'The AWS SecretsManager service endpoint url. If not specified, the value used by vault will be the official AWS SecretsManager service url which is `https://secretsmanager.<region>.amazonaws.com`. You can specify a complete URL(including the "http/https" scheme) to override the endpoint that vault will connect to.'},assume_role_arn:{label:"Assume Role ARN",tooltip:"The target AWS IAM role ARN that will be assumed. Typically this is used for operating between multiple roles or cross-accounts. If you are not using assume role you should not specify this value."},role_session_name:{label:"Role Session Name",tooltip:"The role session name used for role assuming."},sts_endpoint_url:{label:"STS Endpoint URL",tooltip:"The custom STS endpoint URL used for role assuming in AWS Vault. Note that this value will override the default STS endpoint URL(which should be `https: //sts.amazonaws.com`, or `https: //sts.<region>.amazonaws.com` if you have `AWS_STS_REGIONAL_ENDPOINTS` set to `regional`). If you are not using private VPC endpoint for STS service, you should not specify this value."}}},gcp:{label:"Google Secret Manager",description:"Access secrets stored in Google Secret Manager for Kong Gateway configuration.",fields:{project_id:{label:"Project ID",placeholder:"Enter your Google Cloud Project ID",tooltip:{text:"Visit your Google API Console and select {italic-text} in the projects list to see your project ID",italicText:"Manage all projects"}}}},hcv:{label:"HashiCorp Vault",description:"Access secrets stored in HashiCorp Vault for Kong Gateway configuration.",fields:{protocol:{label:"Protocol"},host:{label:"Host"},port:{label:"Port"},mount:{label:"Mount"},kv:{label:"Kv"},namespace:{label:"Namespace"},auth_method:{label:"Authentication Method"},token:{label:"Token"},kube_role:{label:"Kubernetes Role"},kube_auth_path:{label:"Kubernetes Auth Path"},kube_api_token_file:{label:"Kubernetes API Token File"},approle_auth_path:{label:"App Role Auth Path"},approle_role_id:{label:"App Role Role ID"},approle_secret_id:{label:"App Role Secret ID"},approle_secret_id_file:{label:"App Role Secret ID File"},approle_response_wrapping:{label:"App Role Response Wrapping"}}},azure:{label:"Azure Vault",description:"Access secrets stored in Azure Key Vault for Kong Gateway configuration.",fields:{location:{label:"Location"},vault_uri:{label:"Vault URI"},credential_prefix:{label:"Credential Prefix"},type:{label:"Type",placeholder:"Select a type"},client_id:{label:"Client ID"},tenant_id:{label:"Tenant ID"}}},conjur:{label:"Conjur Vault",description:"Access secrets stored in Conjur Key Vault for Kong Gateway configuration.",fields:{endpoint_url:{label:"Endpoint URL"},login:{label:"Login"},api_key:{label:"API Key"},account:{label:"Account"}}},advancedFields:{title:"View Advanced Fields",ttl:"Time-to-Live",ttlTooltip:"Time-to-live (in seconds) of a secret from a vault when cached by this reference",negTtl:"Negative Time-to-Live",negTtlTooltip:"Time-to-live (in seconds) of a vault miss (no secret)",resurrectTtl:"Time-to-Live Resurrection",resurrectTtlTooltip:"Time (in seconds) for which stale secrets from the vault are resurrected for when they cannot be refreshed"},commonFields:{base64_decode:{label:"Base64 Decode",tooltip:"Decode all secrets in this vault as base64, useful for binary data. If some of the secrets are not base64 encoded, an error will occur when using them. It's recommended to create a separate vault for base64 secrets."}}},unavailable:"This vault provider is available on Enterprise."},ME={title:"Look up Key in Vault",vault:{label:"Vault",placeholder:"Select a vault"},secret_id:{label:"Secret ID",input_placeholder:"Enter a secret ID",select_placeholder:"Select or enter a complete secret ID"},optional_secret_key:{label:"Secret Key",placeholder:"Enter the key or key path to access a nested secret value",help:"Optional. e.g. tokens, tokens/refresh_token"},fetch_error:{vaults:"Could not fetch available vaults",secrets:"Could not fetch available secrets",vaults_and_secrets:"Could not fetch available vaults and secrets"},no_results:"No results found",actions:{use_key:"Use Key"},provider:{complete_action:"Look up {cta}",cta:"Key in Vault"}},SE={actions:EE,delete:{title:"Delete a Vault",title_for_secret:"Delete a Secret",description:"This action cannot be reversed."},errors:wE,search:CE,vaults:BE,secrets:kE,copy:IE,labels:OE,form:RE,vault_secret_picker:ME};function TE(){const t=Ue.createI18n("en-us",SE);return{i18n:t,i18nT:Ue.i18nTComponent(t)}}const $r={useI18n:TE},no="/v2/control-planes/{controlPlaneId}/core-entities",es="/v2/control-planes/{controlPlaneId}/config-stores",ao="/{workspace}",ts={list:{konnect:{getAll:`${no}/vaults`,deleteConfigStore:`${es}/{id}?force=true`},kongManager:{getAll:`${ao}/vaults`}},form:{konnect:{create:`${no}/vaults`,createConfigStore:es,edit:`${no}/vaults/{id}`},kongManager:{create:`${ao}/vaults`,edit:`${ao}/vaults/{id}`}}},ns=(t,n)=>{const a=t.__vccOpts||t;for(const[o,i]of n)a[o]=i;return a},fa="/v2/control-planes/{controlPlaneId}",as={getVault:{konnect:`${fa}/core-entities/vaults/{id}`},list:{konnect:`${fa}/config-stores/{id}/secrets`},form:{konnect:{create:`${fa}/config-stores/{id}/secrets`,edit:`${fa}/config-stores/{id}/secrets/{secretId}`}}},xE={class:"vault-secret-picker-provider"},vE=e.defineComponent({__name:"VaultSecretPickerProvider",props:{value:{},disabled:{type:Boolean},update:{type:Function}},emits:["open"],setup(t,{emit:n}){const a=t,o=n,{i18n:{t:i},i18nT:r}=$r.useI18n();return(s,l)=>(e.openBlock(),e.createElementBlock("div",xE,[e.createVNode(e.unref(r),{keypath:"vault_secret_picker.provider.complete_action",scope:"global"},{cta:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass({"vault-secret-picker-provider-action":!0,disabled:a.disabled}),onClick:l[0]||(l[0]=()=>!a.disabled&&o("open",a.value,a.update))},e.toDisplayString(e.unref(i)("vault_secret_picker.provider.cta")),3)]),_:1})]))}}),oo=ns(vE,[["__scopeId","data-v-66a1e406"]]),VE=t=>{let n=t.trim();if(!n.startsWith("{")||!n.endsWith("}"))throw new Error("Invalid secret reference: must be enclosed in curly braces");if(n=n.substring(1,n.length-1).trim(),!n.startsWith("vault://"))throw new Error("Invalid secret reference: must start with vault://");const a=new URL(`http://${n.substring(8)}`);if(!a)throw new Error("Invalid secret reference: must have a vault prefix");const o=a.host,[,i,...r]=a.pathname.split("/");if(!o)throw new Error("Invalid secret reference: must have a vault prefix");return{vaultPrefix:o,secretId:i||void 0,optionalSecretKey:r==null?void 0:r.join("/")}},PE=t=>{if(!t.vaultPrefix)throw new Error("Invalid secret reference: must have a vault prefix");let n=`vault://${t.vaultPrefix}`;return t.secretId&&(n=`${n}/${t.secretId}`),t.optionalSecretKey&&(n=`${n}/${t.optionalSecretKey}`),`{${n}}`},NE={key:1,class:"inputs-wrapper"},DE={"data-testid":"no-search-results"},LE={class:"k-select-selected-item-label"},UE={class:"vault-secret-picker-vault-dropdown-item"},jE={class:"select-item-label"},GE={class:"select-item-description"},FE={class:"select-item-description"},HE={"data-testid":"no-search-results"},YE=e.defineComponent({__name:"VaultSecretPicker",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},setup:{type:null,required:!1,default:!1}},emits:["proceed","cancel"],setup(t,{emit:n}){var a;const{i18n:{t:o}}=$r.useI18n(),i=t,r=n,{axiosInstance:s}=U.useAxios({validateStatus:G=>G===404||G>=200&&G<300,...(a=i.config)==null?void 0:a.axiosRequestConfig}),l=e.ref(!1),c=e.ref(""),m=e.ref(""),p=e.ref(""),u=e.ref(),g=e.computed(()=>{var G,K;return i.config.app==="konnect"?as.list[i.config.app].replace(/{id}/gi,((K=(G=u.value)==null?void 0:G.config)==null?void 0:K.config_store_id)??""):"<not_applicable>"}),h=e.computed(()=>{if(b&&S)return o("vault_secret_picker.fetch_error.vaults_and_secrets");if(b)return o("vault_secret_picker.fetch_error.vaults");if(S)return o("vault_secret_picker.fetch_error.secrets")}),{debouncedQueryChange:C,loading:f,error:b,loadItems:k,results:O}=U.useDebouncedFilter(i.config,ts.list[i.config.app].getAll,void 0,{fetchedItemsKey:"data",searchKeys:["prefix"]}),{debouncedQueryChange:w,loading:B,error:S,loadItems:A,results:y}=U.useDebouncedFilter(i.config,g,void 0,{fetchedItemsKey:"data",searchKeys:["key"],exactMatchKey:"key"}),E=e.computed(()=>{var G;let K=!1;const re=((G=O.value)==null?void 0:G.map(X=>(X.prefix===c.value&&(K=!0),{label:X.prefix,value:X.prefix,vault:X})))??[];return!K&&u.value&&re.push({label:u.value.prefix,value:u.value.prefix,vault:u.value}),re}),L=e.computed(()=>{var G;let K=!1;const re=((G=y.value)==null?void 0:G.map(X=>(X.key===m.value&&(K=!0),{label:X.key,value:X.key})))??[];return!K&&m.value&&re.push({label:m.value,value:m.value}),re}),I=e.computed(()=>{var G;return((G=u==null?void 0:u.value)==null?void 0:G.name)==="konnect"}),x=e.computed(()=>!!u.value&&!!m.value),V=G=>G.label?`${G.label} - (${G.vault.name} - ${G.vault.id})`:G.value,P=G=>{var K,re;let X=`${i.config.apiBaseUrl}${ts.form[i.config.app].edit}`;return i.config.app==="konnect"?X=X.replace(/{controlPlaneId}/gi,((K=i.config)==null?void 0:K.controlPlaneId)||""):i.config.app==="kongManager"&&(X=X.replace(/\/{workspace}/gi,(re=i.config)!=null&&re.workspace?`/${i.config.workspace}`:"")),X.replace(/{id}/gi,G)},Q=(G,K)=>{var re;return i.config.app!=="konnect"?"<not_applicable>":`${i.config.apiBaseUrl}${as.form[i.config.app].edit}`.replace(/{controlPlaneId}/gi,((re=i.config)==null?void 0:re.controlPlaneId)||"").replace(/{id}/gi,K).replace(/{secretId}/gi,G)},le=()=>{r("proceed",PE({vaultPrefix:c.value,secretId:m.value||void 0,optionalSecretKey:p.value||void 0}))};return e.watch(()=>i.setup,async G=>{if(G!==!1){if(l.value=!0,c.value="",u.value=void 0,m.value="",p.value="",typeof G=="string"&&G.trim().length>0)try{let K,re="",X="",T="";const v=VE(G),{data:q}=await s.get(P(v.vaultPrefix));if(q!=null&&q.name)if(K=q,re=v.vaultPrefix,K.name==="konnect"){if(v.secretId){const{data:ue}=await s.get(Q(v.secretId,q.config.config_store_id));ue.key===v.secretId&&(X=v.secretId,T=v.optionalSecretKey??"")}}else X=v.secretId??"",T=v.optionalSecretKey??"";await e.nextTick(()=>{c.value=re,u.value=K,m.value=X,p.value=T})}catch(K){console.debug(K)}l.value=!1,await k()}},{immediate:!0}),e.watch(c,async(G,K)=>{var re;l.value||G===K||(u.value=(re=E.value.find(X=>X.value===G))==null?void 0:re.vault,m.value="",p.value="")}),e.watch(g,async()=>{I.value&&await A()},{immediate:!0}),(G,K)=>{const re=e.resolveComponent("KEmptyState"),X=e.resolveComponent("KSelect"),T=e.resolveComponent("KInput"),v=e.resolveComponent("KModal");return e.openBlock(),e.createBlock(v,{"action-button-disabled":!x.value,"action-button-text":e.unref(o)("vault_secret_picker.actions.use_key"),class:"vault-secret-picker","data-testid":"vault-secret-picker-modal",title:e.unref(o)("vault_secret_picker.title"),visible:i.setup!==!1,onCancel:K[4]||(K[4]=()=>r("cancel")),onProceed:le},{default:e.withCtx(()=>[e.unref(b)||e.unref(S)?(e.openBlock(),e.createBlock(re,{key:0,"data-testid":"vault-secret-picker-fetch-error","icon-variant":"error",message:h.value},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",NE,[e.createVNode(X,{modelValue:c.value,"onUpdate:modelValue":K[0]||(K[0]=q=>c.value=q),clearable:"","data-testid":"vault-secret-picker-vault-select",disabled:l.value,"enable-filtering":"","filter-function":()=>!0,items:E.value,"kpop-attributes":{"data-testid":"vault-secret-picker-vault-popover"},label:e.unref(o)("vault_secret_picker.vault.label"),loading:e.unref(f),placeholder:e.unref(o)("vault_secret_picker.vault.placeholder"),required:"","reuse-item-template":"",width:"100%",onQueryChange:e.unref(C)},{loading:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(o)("actions.loading")),1)]),empty:e.withCtx(()=>[e.createElementVNode("div",DE,e.toDisplayString(e.unref(o)("vault_secret_picker.no_results")),1)]),"selected-item-template":e.withCtx(({item:q})=>[e.createElementVNode("span",LE,e.toDisplayString(V(q)),1)]),"item-template":e.withCtx(({item:q})=>[e.createElementVNode("div",UE,[e.createElementVNode("span",jE,e.toDisplayString(q.label),1),e.createElementVNode("span",GE,e.toDisplayString(q.vault.name),1),e.createElementVNode("span",FE,e.toDisplayString(q.vault.id),1)])]),_:1},8,["modelValue","disabled","items","label","loading","placeholder","onQueryChange"]),I.value?(e.openBlock(),e.createBlock(X,{key:0,modelValue:m.value,"onUpdate:modelValue":K[1]||(K[1]=q=>m.value=q),clearable:"","data-testid":"vault-secret-picker-secret-id-select",disabled:l.value||!u.value,"enable-filtering":"","filter-function":()=>!0,items:L.value,"kpop-attributes":{"data-testid":"vault-secret-picker-secret-id-popover"},label:e.unref(o)("vault_secret_picker.secret_id.label"),loading:e.unref(B),placeholder:e.unref(o)("vault_secret_picker.secret_id.select_placeholder"),required:"","reuse-item-template":"",width:"100%",onQueryChange:e.unref(w)},{loading:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(o)("actions.loading")),1)]),empty:e.withCtx(()=>[e.createElementVNode("div",HE,e.toDisplayString(e.unref(o)("vault_secret_picker.no_results")),1)]),_:1},8,["modelValue","disabled","items","label","loading","placeholder","onQueryChange"])):(e.openBlock(),e.createBlock(T,{key:1,modelValue:m.value,"onUpdate:modelValue":K[2]||(K[2]=q=>m.value=q),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"vault-secret-picker-secret-id-input",disabled:l.value||!u.value,label:e.unref(o)("vault_secret_picker.secret_id.label"),placeholder:e.unref(o)("vault_secret_picker.secret_id.input_placeholder"),required:"",type:"text"},null,8,["modelValue","disabled","label","placeholder"])),e.createVNode(T,{modelValue:p.value,"onUpdate:modelValue":K[3]||(K[3]=q=>p.value=q),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"vault-secret-picker-secret-key-input",disabled:l.value||!u.value,help:e.unref(o)("vault_secret_picker.optional_secret_key.help"),label:e.unref(o)("vault_secret_picker.optional_secret_key.label"),placeholder:e.unref(o)("vault_secret_picker.optional_secret_key.placeholder"),type:"text"},null,8,["modelValue","disabled","help","label","placeholder"])]))]),_:1},8,["action-button-disabled","action-button-text","title","visible"])}}}),KE=ns(YE,[["__scopeId","data-v-df8552cc"]]),zE={key:0},QE=ve(e.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(t){const n=t,{formatPluginFieldLabel:a}=Se.usePluginHelpers(),{i18n:{t:o}}=Se.useI18n(),i=l=>l.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(m=>a(m)).join(".")).join(", "),r=(l,c)=>o(l,{parameters:i(c)}),s=e.computed(()=>{const l=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)l.push(r("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)l.push(r("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)l.push(r("plugins.form.field_rules.mutually_required",c));return l});return(l,c)=>{const m=e.resolveComponent("KAlert");return e.openBlock(),e.createBlock(m,{class:"plugin-field-rule-alerts"},{default:e.withCtx(()=>[e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(p,u)=>(e.openBlock(),e.createElementBlock("li",{key:`simple-alert-${u}`},e.toDisplayString(p),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(e.openBlock(),e.createElementBlock("li",zE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.rules.onlyOneOfMutuallyRequired,(p,u)=>(e.openBlock(),e.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[e.createElementVNode("div",null,e.toDisplayString(e.unref(o)("plugins.form.field_rules.only_one_of_mutually_required")),1),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p,(g,h)=>(e.openBlock(),e.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${h}`},e.toDisplayString(i(g)),1))),128))])]))),128))])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);var os=typeof global=="object"&&global&&global.Object===Object&&global,XE=typeof self=="object"&&self&&self.Object===Object&&self,pt=os||XE||Function("return this")(),mt=pt.Symbol,is=Object.prototype,qE=is.hasOwnProperty,JE=is.toString,Vn=mt?mt.toStringTag:void 0;function ZE(t){var n=qE.call(t,Vn),a=t[Vn];try{t[Vn]=void 0;var o=!0}catch{}var i=JE.call(t);return o&&(n?t[Vn]=a:delete t[Vn]),i}var WE=Object.prototype,_E=WE.toString;function $E(t){return _E.call(t)}var ew="[object Null]",tw="[object Undefined]",rs=mt?mt.toStringTag:void 0;function qt(t){return t==null?t===void 0?tw:ew:rs&&rs in Object(t)?ZE(t):$E(t)}function Jt(t){return t!=null&&typeof t=="object"}var nw="[object Symbol]";function io(t){return typeof t=="symbol"||Jt(t)&&qt(t)==nw}function ss(t,n){for(var a=-1,o=t==null?0:t.length,i=Array(o);++a<o;)i[a]=n(t[a],a,t);return i}var wt=Array.isArray,aw=1/0,ls=mt?mt.prototype:void 0,cs=ls?ls.toString:void 0;function ds(t){if(typeof t=="string")return t;if(wt(t))return ss(t,ds)+"";if(io(t))return cs?cs.call(t):"";var n=t+"";return n=="0"&&1/t==-aw?"-0":n}function Zt(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}function ow(t){return t}var iw="[object AsyncFunction]",rw="[object Function]",sw="[object GeneratorFunction]",lw="[object Proxy]";function ro(t){if(!Zt(t))return!1;var n=qt(t);return n==rw||n==sw||n==iw||n==lw}var so=pt["__core-js_shared__"],us=function(){var t=/[^.]+$/.exec(so&&so.keys&&so.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function cw(t){return!!us&&us in t}var dw=Function.prototype,uw=dw.toString;function Wt(t){if(t!=null){try{return uw.call(t)}catch{}try{return t+""}catch{}}return""}var pw=/[\\^$.*+?()[\]{}|]/g,mw=/^\[object .+?Constructor\]$/,gw=Function.prototype,Aw=Object.prototype,fw=gw.toString,hw=Aw.hasOwnProperty,yw=RegExp("^"+fw.call(hw).replace(pw,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function bw(t){if(!Zt(t)||cw(t))return!1;var n=ro(t)?yw:mw;return n.test(Wt(t))}function Ew(t,n){return t==null?void 0:t[n]}function _t(t,n){var a=Ew(t,n);return bw(a)?a:void 0}var lo=_t(pt,"WeakMap"),ps=Object.create,ww=function(){function t(){}return function(n){if(!Zt(n))return{};if(ps)return ps(n);t.prototype=n;var a=new t;return t.prototype=void 0,a}}();function Cw(t,n,a){switch(a.length){case 0:return t.call(n);case 1:return t.call(n,a[0]);case 2:return t.call(n,a[0],a[1]);case 3:return t.call(n,a[0],a[1],a[2])}return t.apply(n,a)}function Bw(t,n){var a=-1,o=t.length;for(n||(n=Array(o));++a<o;)n[a]=t[a];return n}var kw=800,Iw=16,Ow=Date.now;function Rw(t){var n=0,a=0;return function(){var o=Ow(),i=Iw-(o-a);if(a=o,i>0){if(++n>=kw)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}function Mw(t){return function(){return t}}var ha=function(){try{var t=_t(Object,"defineProperty");return t({},"",{}),t}catch{}}(),Sw=ha?function(t,n){return ha(t,"toString",{configurable:!0,enumerable:!1,value:Mw(n),writable:!0})}:ow,Tw=Rw(Sw);function xw(t,n){for(var a=-1,o=t==null?0:t.length;++a<o&&n(t[a],a,t)!==!1;);return t}var vw=9007199254740991,Vw=/^(?:0|[1-9]\d*)$/;function co(t,n){var a=typeof t;return n=n??vw,!!n&&(a=="number"||a!="symbol"&&Vw.test(t))&&t>-1&&t%1==0&&t<n}function ms(t,n,a){n=="__proto__"&&ha?ha(t,n,{configurable:!0,enumerable:!0,value:a,writable:!0}):t[n]=a}function gs(t,n){return t===n||t!==t&&n!==n}var Pw=Object.prototype,Nw=Pw.hasOwnProperty;function uo(t,n,a){var o=t[n];(!(Nw.call(t,n)&&gs(o,a))||a===void 0&&!(n in t))&&ms(t,n,a)}function Pn(t,n,a,o){var i=!a;a||(a={});for(var r=-1,s=n.length;++r<s;){var l=n[r],c=void 0;c===void 0&&(c=t[l]),i?ms(a,l,c):uo(a,l,c)}return a}var As=Math.max;function Dw(t,n,a){return n=As(n===void 0?t.length-1:n,0),function(){for(var o=arguments,i=-1,r=As(o.length-n,0),s=Array(r);++i<r;)s[i]=o[n+i];i=-1;for(var l=Array(n+1);++i<n;)l[i]=o[i];return l[n]=a(s),Cw(t,this,l)}}var Lw=9007199254740991;function po(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Lw}function mo(t){return t!=null&&po(t.length)&&!ro(t)}var Uw=Object.prototype;function ya(t){var n=t&&t.constructor,a=typeof n=="function"&&n.prototype||Uw;return t===a}function jw(t,n){for(var a=-1,o=Array(t);++a<t;)o[a]=n(a);return o}var Gw="[object Arguments]";function fs(t){return Jt(t)&&qt(t)==Gw}var hs=Object.prototype,Fw=hs.hasOwnProperty,Hw=hs.propertyIsEnumerable,ba=fs(function(){return arguments}())?fs:function(t){return Jt(t)&&Fw.call(t,"callee")&&!Hw.call(t,"callee")};function Yw(){return!1}var ys=typeof $=="object"&&$&&!$.nodeType&&$,bs=ys&&typeof module=="object"&&module&&!module.nodeType&&module,Kw=bs&&bs.exports===ys,Es=Kw?pt.Buffer:void 0,zw=Es?Es.isBuffer:void 0,go=zw||Yw,Qw="[object Arguments]",Xw="[object Array]",qw="[object Boolean]",Jw="[object Date]",Zw="[object Error]",Ww="[object Function]",_w="[object Map]",$w="[object Number]",eC="[object Object]",tC="[object RegExp]",nC="[object Set]",aC="[object String]",oC="[object WeakMap]",iC="[object ArrayBuffer]",rC="[object DataView]",sC="[object Float32Array]",lC="[object Float64Array]",cC="[object Int8Array]",dC="[object Int16Array]",uC="[object Int32Array]",pC="[object Uint8Array]",mC="[object Uint8ClampedArray]",gC="[object Uint16Array]",AC="[object Uint32Array]",Re={};Re[sC]=Re[lC]=Re[cC]=Re[dC]=Re[uC]=Re[pC]=Re[mC]=Re[gC]=Re[AC]=!0,Re[Qw]=Re[Xw]=Re[iC]=Re[qw]=Re[rC]=Re[Jw]=Re[Zw]=Re[Ww]=Re[_w]=Re[$w]=Re[eC]=Re[tC]=Re[nC]=Re[aC]=Re[oC]=!1;function fC(t){return Jt(t)&&po(t.length)&&!!Re[qt(t)]}function Ao(t){return function(n){return t(n)}}var ws=typeof $=="object"&&$&&!$.nodeType&&$,Nn=ws&&typeof module=="object"&&module&&!module.nodeType&&module,hC=Nn&&Nn.exports===ws,fo=hC&&os.process,pn=function(){try{var t=Nn&&Nn.require&&Nn.require("util").types;return t||fo&&fo.binding&&fo.binding("util")}catch{}}(),Cs=pn&&pn.isTypedArray,Bs=Cs?Ao(Cs):fC,yC=Object.prototype,bC=yC.hasOwnProperty;function ks(t,n){var a=wt(t),o=!a&&ba(t),i=!a&&!o&&go(t),r=!a&&!o&&!i&&Bs(t),s=a||o||i||r,l=s?jw(t.length,String):[],c=l.length;for(var m in t)(n||bC.call(t,m))&&!(s&&(m=="length"||i&&(m=="offset"||m=="parent")||r&&(m=="buffer"||m=="byteLength"||m=="byteOffset")||co(m,c)))&&l.push(m);return l}function Is(t,n){return function(a){return t(n(a))}}var EC=Is(Object.keys,Object),wC=Object.prototype,CC=wC.hasOwnProperty;function Os(t){if(!ya(t))return EC(t);var n=[];for(var a in Object(t))CC.call(t,a)&&a!="constructor"&&n.push(a);return n}function ho(t){return mo(t)?ks(t):Os(t)}function BC(t){var n=[];if(t!=null)for(var a in Object(t))n.push(a);return n}var kC=Object.prototype,IC=kC.hasOwnProperty;function OC(t){if(!Zt(t))return BC(t);var n=ya(t),a=[];for(var o in t)o=="constructor"&&(n||!IC.call(t,o))||a.push(o);return a}function yo(t){return mo(t)?ks(t,!0):OC(t)}var RC=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,MC=/^\w*$/;function SC(t,n){if(wt(t))return!1;var a=typeof t;return a=="number"||a=="symbol"||a=="boolean"||t==null||io(t)?!0:MC.test(t)||!RC.test(t)||n!=null&&t in Object(n)}var Dn=_t(Object,"create");function TC(){this.__data__=Dn?Dn(null):{},this.size=0}function xC(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var vC="__lodash_hash_undefined__",VC=Object.prototype,PC=VC.hasOwnProperty;function NC(t){var n=this.__data__;if(Dn){var a=n[t];return a===vC?void 0:a}return PC.call(n,t)?n[t]:void 0}var DC=Object.prototype,LC=DC.hasOwnProperty;function UC(t){var n=this.__data__;return Dn?n[t]!==void 0:LC.call(n,t)}var jC="__lodash_hash_undefined__";function GC(t,n){var a=this.__data__;return this.size+=this.has(t)?0:1,a[t]=Dn&&n===void 0?jC:n,this}function $t(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}$t.prototype.clear=TC,$t.prototype.delete=xC,$t.prototype.get=NC,$t.prototype.has=UC,$t.prototype.set=GC;function FC(){this.__data__=[],this.size=0}function Ea(t,n){for(var a=t.length;a--;)if(gs(t[a][0],n))return a;return-1}var HC=Array.prototype,YC=HC.splice;function KC(t){var n=this.__data__,a=Ea(n,t);if(a<0)return!1;var o=n.length-1;return a==o?n.pop():YC.call(n,a,1),--this.size,!0}function zC(t){var n=this.__data__,a=Ea(n,t);return a<0?void 0:n[a][1]}function QC(t){return Ea(this.__data__,t)>-1}function XC(t,n){var a=this.__data__,o=Ea(a,t);return o<0?(++this.size,a.push([t,n])):a[o][1]=n,this}function Ct(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}Ct.prototype.clear=FC,Ct.prototype.delete=KC,Ct.prototype.get=zC,Ct.prototype.has=QC,Ct.prototype.set=XC;var Ln=_t(pt,"Map");function qC(){this.size=0,this.__data__={hash:new $t,map:new(Ln||Ct),string:new $t}}function JC(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function wa(t,n){var a=t.__data__;return JC(n)?a[typeof n=="string"?"string":"hash"]:a.map}function ZC(t){var n=wa(this,t).delete(t);return this.size-=n?1:0,n}function WC(t){return wa(this,t).get(t)}function _C(t){return wa(this,t).has(t)}function $C(t,n){var a=wa(this,t),o=a.size;return a.set(t,n),this.size+=a.size==o?0:1,this}function Vt(t){var n=-1,a=t==null?0:t.length;for(this.clear();++n<a;){var o=t[n];this.set(o[0],o[1])}}Vt.prototype.clear=qC,Vt.prototype.delete=ZC,Vt.prototype.get=WC,Vt.prototype.has=_C,Vt.prototype.set=$C;var eB="Expected a function";function bo(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(eB);var a=function(){var o=arguments,i=n?n.apply(this,o):o[0],r=a.cache;if(r.has(i))return r.get(i);var s=t.apply(this,o);return a.cache=r.set(i,s)||r,s};return a.cache=new(bo.Cache||Vt),a}bo.Cache=Vt;var tB=500;function nB(t){var n=bo(t,function(o){return a.size===tB&&a.clear(),o}),a=n.cache;return n}var aB=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,oB=/\\(\\)?/g,iB=nB(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(aB,function(a,o,i,r){n.push(i?r.replace(oB,"$1"):o||a)}),n});function Ca(t){return t==null?"":ds(t)}function mn(t,n){return wt(t)?t:SC(t,n)?[t]:iB(Ca(t))}var rB=1/0;function Ba(t){if(typeof t=="string"||io(t))return t;var n=t+"";return n=="0"&&1/t==-rB?"-0":n}function Eo(t,n){n=mn(n,t);for(var a=0,o=n.length;t!=null&&a<o;)t=t[Ba(n[a++])];return a&&a==o?t:void 0}function sB(t,n,a){var o=t==null?void 0:Eo(t,n);return o===void 0?a:o}function wo(t,n){for(var a=-1,o=n.length,i=t.length;++a<o;)t[i+a]=n[a];return t}var Rs=mt?mt.isConcatSpreadable:void 0;function lB(t){return wt(t)||ba(t)||!!(Rs&&t&&t[Rs])}function cB(t,n,a,o,i){var r=-1,s=t.length;for(a||(a=lB),i||(i=[]);++r<s;){var l=t[r];a(l)?wo(i,l):i[i.length]=l}return i}function dB(t){var n=t==null?0:t.length;return n?cB(t):[]}function Ms(t){return Tw(Dw(t,void 0,dB),t+"")}var Co=Is(Object.getPrototypeOf,Object),uB="[object Object]",pB=Function.prototype,mB=Object.prototype,Ss=pB.toString,gB=mB.hasOwnProperty,AB=Ss.call(Object);function fB(t){if(!Jt(t)||qt(t)!=uB)return!1;var n=Co(t);if(n===null)return!0;var a=gB.call(n,"constructor")&&n.constructor;return typeof a=="function"&&a instanceof a&&Ss.call(a)==AB}function Ts(t,n,a){var o=-1,i=t.length;n<0&&(n=-n>i?0:i+n),a=a>i?i:a,a<0&&(a+=i),i=n>a?0:a-n>>>0,n>>>=0;for(var r=Array(i);++o<i;)r[o]=t[o+n];return r}function hB(t,n,a){var o=t.length;return a=a===void 0?o:a,!n&&a>=o?t:Ts(t,n,a)}var yB="\\ud800-\\udfff",bB="\\u0300-\\u036f",EB="\\ufe20-\\ufe2f",wB="\\u20d0-\\u20ff",CB=bB+EB+wB,BB="\\ufe0e\\ufe0f",kB="\\u200d",IB=RegExp("["+kB+yB+CB+BB+"]");function xs(t){return IB.test(t)}function OB(t){return t.split("")}var vs="\\ud800-\\udfff",RB="\\u0300-\\u036f",MB="\\ufe20-\\ufe2f",SB="\\u20d0-\\u20ff",TB=RB+MB+SB,xB="\\ufe0e\\ufe0f",vB="["+vs+"]",Bo="["+TB+"]",ko="\\ud83c[\\udffb-\\udfff]",VB="(?:"+Bo+"|"+ko+")",Vs="[^"+vs+"]",Ps="(?:\\ud83c[\\udde6-\\uddff]){2}",Ns="[\\ud800-\\udbff][\\udc00-\\udfff]",PB="\\u200d",Ds=VB+"?",Ls="["+xB+"]?",NB="(?:"+PB+"(?:"+[Vs,Ps,Ns].join("|")+")"+Ls+Ds+")*",DB=Ls+Ds+NB,LB="(?:"+[Vs+Bo+"?",Bo,Ps,Ns,vB].join("|")+")",UB=RegExp(ko+"(?="+ko+")|"+LB+DB,"g");function jB(t){return t.match(UB)||[]}function GB(t){return xs(t)?jB(t):OB(t)}function FB(t){return function(n){n=Ca(n);var a=xs(n)?GB(n):void 0,o=a?a[0]:n.charAt(0),i=a?hB(a,1).join(""):n.slice(1);return o[t]()+i}}var HB=FB("toUpperCase");function YB(t){return HB(Ca(t).toLowerCase())}function KB(){this.__data__=new Ct,this.size=0}function zB(t){var n=this.__data__,a=n.delete(t);return this.size=n.size,a}function QB(t){return this.__data__.get(t)}function XB(t){return this.__data__.has(t)}var qB=200;function JB(t,n){var a=this.__data__;if(a instanceof Ct){var o=a.__data__;if(!Ln||o.length<qB-1)return o.push([t,n]),this.size=++a.size,this;a=this.__data__=new Vt(o)}return a.set(t,n),this.size=a.size,this}function gn(t){var n=this.__data__=new Ct(t);this.size=n.size}gn.prototype.clear=KB,gn.prototype.delete=zB,gn.prototype.get=QB,gn.prototype.has=XB,gn.prototype.set=JB;function ZB(t,n){return t&&Pn(n,ho(n),t)}function WB(t,n){return t&&Pn(n,yo(n),t)}var Us=typeof $=="object"&&$&&!$.nodeType&&$,js=Us&&typeof module=="object"&&module&&!module.nodeType&&module,_B=js&&js.exports===Us,Gs=_B?pt.Buffer:void 0,Fs=Gs?Gs.allocUnsafe:void 0;function $B(t,n){if(n)return t.slice();var a=t.length,o=Fs?Fs(a):new t.constructor(a);return t.copy(o),o}function ek(t,n){for(var a=-1,o=t==null?0:t.length,i=0,r=[];++a<o;){var s=t[a];n(s,a,t)&&(r[i++]=s)}return r}function Hs(){return[]}var tk=Object.prototype,nk=tk.propertyIsEnumerable,Ys=Object.getOwnPropertySymbols,Io=Ys?function(t){return t==null?[]:(t=Object(t),ek(Ys(t),function(n){return nk.call(t,n)}))}:Hs;function ak(t,n){return Pn(t,Io(t),n)}var ok=Object.getOwnPropertySymbols,Ks=ok?function(t){for(var n=[];t;)wo(n,Io(t)),t=Co(t);return n}:Hs;function ik(t,n){return Pn(t,Ks(t),n)}function zs(t,n,a){var o=n(t);return wt(t)?o:wo(o,a(t))}function rk(t){return zs(t,ho,Io)}function Qs(t){return zs(t,yo,Ks)}var Oo=_t(pt,"DataView"),Ro=_t(pt,"Promise"),Mo=_t(pt,"Set"),Xs="[object Map]",sk="[object Object]",qs="[object Promise]",Js="[object Set]",Zs="[object WeakMap]",Ws="[object DataView]",lk=Wt(Oo),ck=Wt(Ln),dk=Wt(Ro),uk=Wt(Mo),pk=Wt(lo),gt=qt;(Oo&>(new Oo(new ArrayBuffer(1)))!=Ws||Ln&>(new Ln)!=Xs||Ro&>(Ro.resolve())!=qs||Mo&>(new Mo)!=Js||lo&>(new lo)!=Zs)&&(gt=function(t){var n=qt(t),a=n==sk?t.constructor:void 0,o=a?Wt(a):"";if(o)switch(o){case lk:return Ws;case ck:return Xs;case dk:return qs;case uk:return Js;case pk:return Zs}return n});var mk=Object.prototype,gk=mk.hasOwnProperty;function Ak(t){var n=t.length,a=new t.constructor(n);return n&&typeof t[0]=="string"&&gk.call(t,"index")&&(a.index=t.index,a.input=t.input),a}var _s=pt.Uint8Array;function So(t){var n=new t.constructor(t.byteLength);return new _s(n).set(new _s(t)),n}function fk(t,n){var a=n?So(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.byteLength)}var hk=/\w*$/;function yk(t){var n=new t.constructor(t.source,hk.exec(t));return n.lastIndex=t.lastIndex,n}var $s=mt?mt.prototype:void 0,el=$s?$s.valueOf:void 0;function bk(t){return el?Object(el.call(t)):{}}function Ek(t,n){var a=n?So(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.length)}var wk="[object Boolean]",Ck="[object Date]",Bk="[object Map]",kk="[object Number]",Ik="[object RegExp]",Ok="[object Set]",Rk="[object String]",Mk="[object Symbol]",Sk="[object ArrayBuffer]",Tk="[object DataView]",xk="[object Float32Array]",vk="[object Float64Array]",Vk="[object Int8Array]",Pk="[object Int16Array]",Nk="[object Int32Array]",Dk="[object Uint8Array]",Lk="[object Uint8ClampedArray]",Uk="[object Uint16Array]",jk="[object Uint32Array]";function Gk(t,n,a){var o=t.constructor;switch(n){case Sk:return So(t);case wk:case Ck:return new o(+t);case Tk:return fk(t,a);case xk:case vk:case Vk:case Pk:case Nk:case Dk:case Lk:case Uk:case jk:return Ek(t,a);case Bk:return new o;case kk:case Rk:return new o(t);case Ik:return yk(t);case Ok:return new o;case Mk:return bk(t)}}function Fk(t){return typeof t.constructor=="function"&&!ya(t)?ww(Co(t)):{}}var Hk="[object Map]";function Yk(t){return Jt(t)&>(t)==Hk}var tl=pn&&pn.isMap,Kk=tl?Ao(tl):Yk,zk="[object Set]";function Qk(t){return Jt(t)&>(t)==zk}var nl=pn&&pn.isSet,Xk=nl?Ao(nl):Qk,qk=1,Jk=2,Zk=4,al="[object Arguments]",Wk="[object Array]",_k="[object Boolean]",$k="[object Date]",eI="[object Error]",ol="[object Function]",tI="[object GeneratorFunction]",nI="[object Map]",aI="[object Number]",il="[object Object]",oI="[object RegExp]",iI="[object Set]",rI="[object String]",sI="[object Symbol]",lI="[object WeakMap]",cI="[object ArrayBuffer]",dI="[object DataView]",uI="[object Float32Array]",pI="[object Float64Array]",mI="[object Int8Array]",gI="[object Int16Array]",AI="[object Int32Array]",fI="[object Uint8Array]",hI="[object Uint8ClampedArray]",yI="[object Uint16Array]",bI="[object Uint32Array]",ke={};ke[al]=ke[Wk]=ke[cI]=ke[dI]=ke[_k]=ke[$k]=ke[uI]=ke[pI]=ke[mI]=ke[gI]=ke[AI]=ke[nI]=ke[aI]=ke[il]=ke[oI]=ke[iI]=ke[rI]=ke[sI]=ke[fI]=ke[hI]=ke[yI]=ke[bI]=!0,ke[eI]=ke[ol]=ke[lI]=!1;function Un(t,n,a,o,i,r){var s,l=n&qk,c=n&Jk,m=n&Zk;if(a&&(s=i?a(t,o,i,r):a(t)),s!==void 0)return s;if(!Zt(t))return t;var p=wt(t);if(p){if(s=Ak(t),!l)return Bw(t,s)}else{var u=gt(t),g=u==ol||u==tI;if(go(t))return $B(t,l);if(u==il||u==al||g&&!i){if(s=c||g?{}:Fk(t),!l)return c?ik(t,WB(s,t)):ak(t,ZB(s,t))}else{if(!ke[u])return i?t:{};s=Gk(t,u,l)}}r||(r=new gn);var h=r.get(t);if(h)return h;r.set(t,s),Xk(t)?t.forEach(function(b){s.add(Un(b,n,a,b,t,r))}):Kk(t)&&t.forEach(function(b,k){s.set(k,Un(b,n,a,k,t,r))});var C=m?c?Qs:rk:c?yo:ho,f=p?void 0:C(t);return xw(f||t,function(b,k){f&&(k=b,b=t[k]),uo(s,k,Un(b,n,a,k,t,r))}),s}var EI=1,wI=4;function CI(t){return Un(t,EI|wI)}function BI(t,n){return t!=null&&n in Object(t)}function kI(t,n,a){n=mn(n,t);for(var o=-1,i=n.length,r=!1;++o<i;){var s=Ba(n[o]);if(!(r=t!=null&&a(t,s)))break;t=t[s]}return r||++o!=i?r:(i=t==null?0:t.length,!!i&&po(i)&&co(s,i)&&(wt(t)||ba(t)))}function II(t,n){return t!=null&&kI(t,n,BI)}function OI(t){var n=t==null?0:t.length;return n?t[n-1]:void 0}function RI(t,n){return n.length<2?t:Eo(t,Ts(n,0,-1))}var MI="[object Map]",SI="[object Set]",TI=Object.prototype,xI=TI.hasOwnProperty;function rl(t){if(t==null)return!0;if(mo(t)&&(wt(t)||typeof t=="string"||typeof t.splice=="function"||go(t)||Bs(t)||ba(t)))return!t.length;var n=gt(t);if(n==MI||n==SI)return!t.size;if(ya(t))return!Os(t).length;for(var a in t)if(xI.call(t,a))return!1;return!0}function sl(t,n){return n=mn(n,t),t=RI(t,n),t==null||delete t[Ba(OI(n))]}function vI(t){return fB(t)?void 0:t}var VI=1,PI=2,NI=4,DI=Ms(function(t,n){var a={};if(t==null)return a;var o=!1;n=ss(n,function(r){return r=mn(r,t),o||(o=r.length>1),r}),Pn(t,Qs(t),a),o&&(a=Un(a,VI|PI|NI,vI));for(var i=n.length;i--;)sl(a,n[i]);return a});function ll(t,n,a,o){if(!Zt(t))return t;n=mn(n,t);for(var i=-1,r=n.length,s=r-1,l=t;l!=null&&++i<r;){var c=Ba(n[i]),m=a;if(c==="__proto__"||c==="constructor"||c==="prototype")return t;if(i!=s){var p=l[c];m=void 0,m===void 0&&(m=Zt(p)?p:co(n[i+1])?[]:{})}uo(l,c,m),l=l[c]}return t}function LI(t,n,a){for(var o=-1,i=n.length,r={};++o<i;){var s=n[o],l=Eo(t,s);a(l,s)&&ll(r,mn(s,t),l)}return r}function UI(t,n){return LI(t,n,function(a,o){return II(t,o)})}var jI=Ms(function(t,n){return t==null?{}:UI(t,n)});function GI(t,n,a){return t==null?t:ll(t,n,a)}var FI=0;function ka(t){var n=++FI;return Ca(t)+n}function cl(t,n){return t==null?!0:sl(t,n)}const{t:dl}=Ue.createI18n("en-us",Wn);function ul(t){return t.map(n=>({value:n,label:n}))}const To="*",pl="$",ml=".";function We(...t){return t.join(ml)}function xo(...t){return We(pl,...t)}function gl(t){return t.startsWith(We(pl,""))}function An(t){return t.split(ml).filter(n=>n!=="")}function vo(t){const n=An(t);return n[n.length-1]}dl("redis.shared_configuration.open_source"),dl("redis.shared_configuration.enterprise");function HI(t){const n=e.toValue(t);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const Al=Symbol("free-form-data"),fl=Symbol("free-form-field-validation-errors"),hl=Symbol("free-form-field-activation-handler"),yl=Symbol("free-form-schema"),bl=Symbol("free-form-field-path"),Vo=Symbol("free-form-field-renderer-slots"),Ia=Symbol("free-form-field-renderer-matchers-map"),El=Symbol("free-form-config"),wl=Symbol("free-form-field-reset-label-path-setting"),fn="free-form-field-renderers-slot",YI={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function Po(t,n=""){const a={},o=t;if(Array.isArray(o.fields))for(const i of o.fields){const r=Object.keys(i)[0],s=i[r],l=n?We(n,r):r;if(a[l]=s,s.type==="record"&&Array.isArray(s.fields)){const c=Po(s,l);Object.assign(a,c)}else if(s.type==="array"&&s.elements){const c=s.elements,m=We(l,To);if(a[m]=c,c.type==="record"&&Array.isArray(c.fields)){const p=Po(c,m);Object.assign(a,p)}}}return a}function No(t){const n=An(t).map(a=>/^\d+$/.test(a)?To:a);return We(...n)}function KI(t){const n=e.toValue(t),a=e.computed(()=>n?Po(n):{});function o(p){var u;return p==null?n:(u=a.value)==null?void 0:u[No(p)]}function i(p,u=!1){const g=o(p);return g?g.default!==void 0?g.default:u||g.required?g.type==="record"?r(g,p):g.type==="array"?[]:null:null:null}function r(p,u){const g={};if(Array.isArray(p.fields))for(const h of p.fields){const C=Object.keys(h)[0],f=u?`${u}.${C}`:C,b=i(f,!1);b!==void 0&&(g[C]=b)}return g}function s(p){return p?i(p,!0):r(o(),"")}function l(p){const u=o(p),g=u!=null&&u.description?ge.parse(u.description,{async:!1}):void 0;return{...YI,info:g}}function c(p){var g;const u=o(p);return ul((u==null?void 0:u.one_of)||((g=u.elements)==null?void 0:g.one_of)||[])}function m(p){var h;const u=(h=o(p))==null?void 0:h.default;let g=null;if(u==null||typeof u=="object"||u==="")return null;if(Array.isArray(u)){if(u.length===0)return null;g=u.join(", ")}else g=u.toString();return`Default: ${g}`}return{getSchema:o,getDefault:s,getSelectItems:c,getLabelAttributes:l,getPlaceholder:m}}function _e(){const t=e.inject(Al),n=e.inject(yl),a=e.inject(El,{}),o=e.inject(fl),i=e.inject(hl);if(!t)throw new Error("useFormShared() called without form data provider.");if(!n)throw new Error("useFormShared() called without schema provider.");return{formData:t,formConfig:a,fieldValidationErrors:o,fieldHandlers:i,...n}}const Cl=t=>{const n=e.inject(bl,e.computed(()=>"")),a=e.computed(()=>{const o=e.toValue(t);let i=o;return!gl(o)&&n.value&&(i=We(n.value,o)),gl(o)&&(i=i.slice(xo("").length)),i});return e.provide(bl,a),a},zI=t=>{const{getSchema:n}=_e(),{default:a,...o}=e.useSlots(),i=e.inject(Vo),r=e.inject(Ia),s=e.computed(()=>{const c=e.toValue(i),m=Object.keys(o).filter(p=>p!==fn&&p!=="item").reduce((p,u)=>{const g=No(We(e.toValue(t),u));return{...p,[g]:o[u]}},{});return c?{...c,...m}:m});e.provide(Vo,s);const l=e.toValue(t);return e.computed(()=>{if(a)return;const c=s.value[No(e.toValue(t))];if(c)return c;for(const[m,p]of r)if(m({path:l,schema:n(l)}))return p})},QI={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function XI(t){return QI[t.toLocaleLowerCase()]??t}function qI(t,n){const a=e.inject(wl,{parentPath:null,isolate:!1}),{parentPath:o,isolate:i}=e.toValue(a),r=e.ref(o?We(o,t):t),s=e.ref({parentPath:r.value,isolate:i});return e.watch([e.toRef(n),e.toRef(a)],([l,c])=>{var g;const{parentPath:m,isolate:p}=c,u=m?We(m,t):t;if(l){const h={isolate:()=>{r.value=t,s.value.isolate=!0,s.value.parentPath=null},"isolate-children":()=>{s.value.isolate=!0,s.value.parentPath=null},reset:()=>{r.value=t,s.value.isolate=!1,s.value.parentPath=null},"reset-children":()=>{s.value.isolate=!1,s.value.parentPath=null},inherit:()=>{r.value=u,s.value.isolate=!1,s.value.parentPath=u}};(g=h[l])==null||g.call(h)}else p&&(r.value=t,s.value.isolate=!0,s.value.parentPath=null)},{deep:!0,immediate:!0}),e.provide(wl,s),r}function JI(t,n){const a=e.toValue(t),o=vo(a),{formConfig:i}=_e(),r=qI(o,n),{getSchema:s}=_e(),l=Bl(t);return e.computed(()=>{var h;const c=r.value??o,m=An(c),p=(h=l.value.parent)!=null&&h.path?s(l.value.parent.path):null,g=(p==null?void 0:p.type)==="array"?"":m.map(C=>C.split("_").map(YB).map(XI).join(" ")).join(" › ");return i.transformLabel?i.transformLabel(g,a):g})}function Pt(t,n){const{getLabelAttributes:a,getPlaceholder:o,getSchema:i}=_e(),r=e.toValue(t),s=e.toValue(n),l=JI(t,e.toRef(()=>e.toValue(n).resetLabelPath));return e.computed(()=>{var c;return{...s,placeholder:s.placeholder??o(r)??void 0,labelAttributes:s.labelAttributes??a(r),label:s.label??l.value,required:s.required??((c=i(r))==null?void 0:c.required)}})}function Bl(t){return e.computed(()=>{var o;const n=An(e.toValue(t));let a={parent:null};for(n.pop();n.length;){const i=n.shift();a.path=(o=a.parent)!=null&&o.path?We(a.parent.path,i):i,a={parent:a}}return a})}function ZI(t){const{formData:n}=_e(),a=Cl(t);return{value:e.computed({get:()=>sB(n,An(a.value)),set:i=>GI(n,An(a.value),i)})}}function Bt(t,n){const{getSchema:a,fieldValidationErrors:o,fieldHandlers:i}=_e(),r=Cl(t),s=zI(r),{value:l}=ZI(t),c=e.computed(()=>a(r.value));if(!c.value)return{error:new Error(`path '${r.value}' is not found in schema.`)};n&&i.set(r.value,n);const m=e.computed(()=>{var u,g;return(g=(u=o.value)==null?void 0:u.get(r.value))==null?void 0:g.message});e.watch(m,(u,g)=>{u&&u!==g&&o.value.set(r.value,{message:u})});const p=()=>{o.value&&o.value.delete(r.value)};return{schema:c,path:r,renderer:s,value:l,ancestors:Bl(r),error:null,validationError:m,clearValidationError:p}}function Do(t){const{getSchema:n}=_e(),a=e.useAttrs();return e.computed(()=>{var i;if(a["data-autofocus"]!==void 0)return!0;if(!t)return!1;const o=e.toValue(t).parent;return o!=null&&o.path?((i=n(o.path))==null?void 0:i.type)==="array":!1})}const WI="__request_callout_";function kl(){return ka(WI)}const _I={key:1,ref:"input-component"},$I=["innerHTML"],Il=ve(e.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{}},emits:["update:modelValue"],setup(t,{emit:n}){const a=e.useAttrs(),o=e.createPropsRestProxy(t,["showVaultSecretPicker","showPasswordMaskToggle","name"]),i=n,r=e.useTemplateRef("input-component"),s=async()=>{var B,S,A;(B=r.value)==null||B.scrollIntoView({behavior:"smooth",block:"center"}),await e.nextTick(),(A=document.getElementById(((S=m.path)==null?void 0:S.value)||""))==null||A.focus()},{value:l,clearValidationError:c,...m}=Bt(e.toRef(()=>t.name),s),p=Pt(m.path,e.toRef({...o,...a})),u=l==null?void 0:l.value;function g(B){u!==void 0&&B===""&&B!==u?(l.value=null,i("update:modelValue",null)):(l.value=B.trim(),i("update:modelValue",B.trim())),c==null||c()}const h=e.computed(()=>{var B;return t.showPasswordMaskToggle!==void 0?t.showPasswordMaskToggle:o.type==="password"?!0:!!((B=m.schema)==null?void 0:B.value).encrypted}),C=e.computed(()=>o.multiline?Xe.KTextArea:Xe.KInput),f=e.inject(ze,void 0),b=e.computed(()=>{var B;return t.showVaultSecretPicker!==void 0?t.showVaultSecretPicker:!!((B=m.schema.value)!=null&&B.referenceable)}),k=e.computed(()=>({referenceable:b.value})),O=Do(m.ancestors),w=e.computed(()=>a["data-1p-ignore"]!==void 0?a["data-1p-ignore"]:vo(t.name)==="name");return(B,S)=>{var y;const A=e.resolveComponent("KAlert");return m.error?(e.openBlock(),e.createBlock(A,{key:0,appearance:"danger",message:m.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",_I,[e.createVNode(e.unref(C),e.mergeProps({...e.unref(p),showPasswordMaskToggle:h.value,type:h.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":w.value,"data-autofocus":e.unref(O),error:!!m.validationError.value,"error-message":m.validationError.value,"model-value":e.unref(l)??"","onUpdate:modelValue":g}),e.createSlots({_:2},[(y=e.unref(p).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(B.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(p).labelAttributes.info},null,8,$I)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","error","error-message","model-value"]),e.unref(f)&&b.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(f)),{key:0,schema:k.value,update:g,value:e.unref(l)??""},null,8,["schema","value"])):e.createCommentVNode("",!0)],512))}}}),[["__scopeId","data-v-90e8969d"]]),eO=["innerHTML"],tO=ve(e.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:n}){const a=e.createPropsRestProxy(t,["name"]),{value:o,...i}=Bt(e.toRef(()=>t.name)),r=n,s=c=>{o.value=c,r("update:modelValue",c)},l=Pt(i.path,a);return(c,m)=>{var u;const p=e.resolveComponent("KAlert");return i.error?(e.openBlock(),e.createBlock(p,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(e.openBlock(),e.createBlock(e.unref(Xe.KCheckbox),e.mergeProps({key:1},e.unref(l),{class:"ff-boolean-field","model-value":e.unref(o)??!1,"onUpdate:modelValue":s}),e.createSlots({_:2},[(u=e.unref(l).labelAttributes)!=null&&u.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,eO)],!0)]),key:"0"}:void 0]),1040,["model-value"]))}}}),[["__scopeId","data-v-b2956481"]]),nO=ve(e.defineComponent({__name:"SlideTransition",setup(t){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],a=Object.fromEntries(n.map(g=>[g,""])),o=Object.fromEntries(n.map(g=>[g,"0"]));function i(g){const h=getComputedStyle(g);return Object.fromEntries(n.map(C=>[C,h.getPropertyValue(C)]))}function r(g){["overflow","transition",...n].forEach(h=>g.style.removeProperty(h))}function s(g){Object.assign(g.style,{overflow:"hidden",transition:"none"})}function l(g){const h=g;Object.assign(h.style,a);const C=i(h);Object.assign(h.style,o),requestAnimationFrame(()=>{Object.assign(h.style,{...C,transition:""})})}function c(g){r(g)}function m(g){const h=g;Object.assign(h.style,{...i(h),overflow:"hidden"})}function p(g){Object.assign(g.style,o)}function u(g){r(g)}return(g,h)=>(e.openBlock(),e.createBlock(e.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:s,onBeforeLeave:m,onEnter:l,onLeave:p},{default:e.withCtx(()=>[e.renderSlot(g.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),aO={key:1,class:"ff-object-field ff-object-field-as-child"},oO=["innerHTML"],iO={class:"ff-object-field-actions"},rO={key:0,class:"ff-object-field-content"},en=ve(e.defineComponent({__name:"ObjectField",props:e.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(t){e.useSlots();const n=e.createPropsRestProxy(t,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),a=e.useTemplateRef("ObjectHeaderRef"),o=()=>{var b;(b=a.value)==null||b.scrollIntoView({behavior:"smooth",block:"nearest"}),c.value=!0},{value:i,...r}=Bt(e.toRef(n,"name"),o),{getSchema:s}=_e(),l=e.useModel(t,"added"),c=e.useModel(t,"expanded"),m=e.computed(()=>h.value&&(t.collapsible?c.value??t.defaultExpanded:!1)),p=e.computed(()=>{var b,k;if((b=r.ancestors)!=null&&b.value){const O=r.ancestors.value.parent;if(O!=null&&O.path)return((k=s(O.path))==null?void 0:k.type)==="array"}return!1}),u=e.computed(()=>t.resetLabelPath!==void 0?t.resetLabelPath:p.value?"reset":"inherit"),g=Pt(r.path,e.toRef(()=>({required:t.required,...n,resetLabelPath:u.value}))),h=e.computed(()=>g.value.required?!0:l.value??t.defaultAdded),C=e.computed(()=>t.asChild!==void 0?t.asChild:p.value),f=e.computed(()=>{let b=r.schema.value.fields;return t.omit&&(b=b.filter(k=>!t.omit.includes(Object.keys(k)[0]))),t.fieldsOrder?b.sort((k,O)=>{const w=Object.keys(k)[0],B=Object.keys(O)[0],S=t.fieldsOrder.indexOf(w),A=t.fieldsOrder.indexOf(B);return S===-1&&A===-1?0:S===-1?1:A===-1?-1:S-A}):b});return e.watch(h,b=>{t.collapsible&&(c.value=b)}),e.onBeforeMount(()=>{l.value=!!(i!=null&&i.value)}),(b,k)=>{var w;const O=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b.$slots[e.unref(fn)]))),r.error?(e.openBlock(),e.createBlock(O,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):C.value?(e.openBlock(),e.createElementBlock("div",aO,[e.renderSlot(b.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,B=>(e.openBlock(),e.createBlock(tn,{key:Object.keys(B)[0],name:Object.keys(B)[0]},null,8,["name"]))),128))],!0)])):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["ff-object-field",{"ff-object-field-collapsed":!m.value}])},[e.createElementVNode("header",{ref_key:"ObjectHeaderRef",ref:a,class:"ff-object-field-header"},[e.createVNode(e.unref(Xe.KLabel),e.mergeProps({class:"ff-object-field-label"},{...e.unref(g),required:!1},{"tooltip-attributes":e.unref(g).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(g).label)+" ",1)]),_:2},[(w=e.unref(g).labelAttributes)!=null&&w.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(b.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(g).labelAttributes.info},null,8,oO)],!0)]),key:"0"}:void 0]),1040,["tooltip-attributes"]),e.createElementVNode("div",iO,[b.collapsible&&h.value?(e.openBlock(),e.createBlock(e.unref(Xe.KButton),{key:0,appearance:"tertiary",class:e.normalizeClass(`ff-object-field-button-${m.value?"collapse":"expand"}`),icon:"",onClick:k[0]||(k[0]=B=>c.value=!m.value)},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock(e.unref(Te.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):e.createCommentVNode("",!0)]),_:1},8,["class"])):e.createCommentVNode("",!0),e.unref(g).required?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(Xe.KButton),{key:1,appearance:"tertiary",class:e.normalizeClass(`ff-object-field-button-${h.value?"remove":"add"}`),icon:"",onClick:k[1]||(k[1]=B=>l.value=!l.value)},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock(e.unref(Te.TrashIcon),{key:0})):(e.openBlock(),e.createBlock(e.unref(Te.AddIcon),{key:1}))]),_:1},8,["class"]))])],512),e.createVNode(nO,null,{default:e.withCtx(()=>[m.value?(e.openBlock(),e.createElementBlock("div",rO,[e.renderSlot(b.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,B=>(e.openBlock(),e.createBlock(tn,{key:Object.keys(B)[0],name:Object.keys(B)[0]},null,8,["name"]))),128))],!0)])):e.createCommentVNode("",!0)]),_:3})],2))],64)}}}),[["__scopeId","data-v-ede4c73a"]]),sO=["innerHTML"],lO=ve(e.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{}},emits:["update:modelValue"],setup(t,{emit:n}){const a=e.createPropsRestProxy(t,["name"]),{value:o,...i}=Bt(e.toRef(()=>t.name)),r=Pt(i.path,a),s=e.computed(()=>{var h;const[u,g]=((h=i.schema)==null?void 0:h.value).between??[];return{min:a.min??u,max:a.max??g}}),l=n,c=o.value;function m(u){c!==void 0&&u===""&&Number(u)!==c?(o.value=null,l("update:modelValue",null)):(o.value=Number(u),l("update:modelValue",Number(u)))}const p=Do(i.ancestors);return(u,g)=>{var C;const h=e.resolveComponent("KAlert");return i.error?(e.openBlock(),e.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(e.openBlock(),e.createBlock(e.unref(Xe.KInput),e.mergeProps({key:1,class:"ff-number-field"},{...e.unref(r),min:s.value.min,max:s.value.max},{"data-autofocus":e.unref(p),"model-value":e.unref(o)??"",type:"number","onUpdate:modelValue":m}),e.createSlots({_:2},[(C=e.unref(r).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(r).labelAttributes.info},null,8,sO)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","model-value"]))}}}),[["__scopeId","data-v-63b04fcc"]]),cO={key:1,ref:"select-component"},dO=["innerHTML"],hn=ve(e.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},multiple:{type:Boolean,default:()=>{}},items:{},placeholder:{}},setup(t){const n=async()=>{var u,g,h;(u=a.value)==null||u.scrollIntoView({behavior:"smooth",block:"center"}),await e.nextTick(),(h=document.getElementById(((g=s.path)==null?void 0:g.value)||""))==null||h.focus()},a=e.useTemplateRef("select-component"),o=e.createPropsRestProxy(t,["name","items","multiple"]),{getSelectItems:i}=_e(),{value:r,...s}=Bt(e.toRef(()=>t.name),n),l=Pt(s.path,o),c=e.computed(()=>t.items?t.items:s.path?i(s.path.value):[]),m=e.computed(()=>{var u;return t.multiple!==void 0?t.multiple:((u=s.schema.value)==null?void 0:u.type)==="set"}),p=e.computed(()=>m.value?Xe.KMultiselect:Xe.KSelect);return(u,g)=>{var C;const h=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(h,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",cO,[e.createVNode(e.unref(p),e.mergeProps(e.unref(l),{modelValue:e.unref(r),"onUpdate:modelValue":g[0]||(g[0]=f=>e.isRef(r)?r.value=f:null),class:"ff-enum-field",items:c.value}),e.createSlots({_:2},[(C=e.unref(l).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,dO)],!0)]),key:"0"}:void 0]),1040,["modelValue","items"])],512))}}}),[["__scopeId","data-v-c8311d63"]]),uO={class:"ff-kv-field-header"},pO=["innerHTML"],mO=ve(e.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},required:{type:Boolean},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}}},emits:["change"],setup(t,{expose:n,emit:a}){const o=e.createPropsRestProxy(t,["showVaultSecretPicker"]),{value:i,...r}=Bt(e.toRef(o,"name")),s=Pt(r.path,o),l=a,c=e.ref(p(o.initialValue??(i==null?void 0:i.value)??{}));function m(){return ka("ff-kv-field-")}function p(A){return Object.entries(A).map(([y,E])=>({id:m(),key:y,value:E}))}const u=()=>{c.value.push({id:m(),key:o.defaultKey||"",value:o.defaultValue||""})},g=A=>{const y=c.value.findIndex(E=>E.id===A);y!==-1&&c.value.splice(y,1)},h=()=>{const A=Object.fromEntries(c.value.map(({key:y,value:E})=>[y,E]).filter(([y])=>y));i.value=A,l("change",A)},C=e.useTemplateRef("root");async function f(A,y="key"){var E;C.value&&(await e.nextTick(),(E=C.value.querySelector(`[data-${y}-input="${A}"]`))==null||E.focus())}e.watch(c,h,{deep:!0});function b(){u();const A=c.value.findIndex(({key:y})=>!y);f(A===-1?c.value.length-1:A)}function k(A){A===c.value.length-1&&u(),f(A+1)}const O=e.inject(ze,void 0),w=e.computed(()=>{var A,y;return t.showVaultSecretPicker??!!((y=(A=r.schema.value)==null?void 0:A.values)!=null&&y.referenceable)}),B=e.computed(()=>({referenceable:w.value}));function S(A,y){c.value[A].value=y}return n({reset:()=>{c.value=p(o.initialValue||{})},setValue:A=>{c.value=p(A)}}),(A,y)=>{var V;const E=e.resolveComponent("KAlert"),L=e.resolveComponent("KLabel"),I=e.resolveComponent("KButton"),x=e.resolveComponent("KInput");return r.error?(e.openBlock(),e.createBlock(E,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:C,class:"ff-kv-field"},[e.createElementVNode("header",uO,[e.createVNode(L,e.mergeProps({class:"ff-kv-field-label"},e.unref(s),{"tooltip-attributes":e.unref(s).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s).label)+" ",1)]),_:2},[(V=e.unref(s).labelAttributes)!=null&&V.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(A.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(s).labelAttributes.info},null,8,pO)],!0)]),key:"0"}:void 0]),1040,["tooltip-attributes"]),e.createVNode(I,{appearance:"tertiary",icon:"",onClick:b},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.AddIcon))]),_:1})]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(P,Q)=>(e.openBlock(),e.createElementBlock("div",{key:P.id,class:"ff-kv-field-entry"},[e.createVNode(x,{modelValue:P.key,"onUpdate:modelValue":le=>P.key=le,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Q,placeholder:A.keyPlaceholder||"Key",onKeydown:e.withKeys(e.withModifiers(le=>f(Q,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","placeholder","onKeydown"]),e.createVNode(x,{modelValue:P.value,"onUpdate:modelValue":le=>P.value=le,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-value-input":Q,placeholder:A.valuePlaceholder||"Value",onKeydown:e.withKeys(e.withModifiers(le=>k(Q),["prevent"]),["enter"])},{after:e.withCtx(()=>[e.unref(O)&&w.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(O)),{key:0,schema:B.value,update:le=>S(Q,le),value:P.value},null,8,["schema","update","value"])):e.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-value-input","placeholder","onKeydown"]),e.createVNode(I,{appearance:"tertiary",icon:"",onClick:le=>g(P.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.TrashIcon))]),_:2},1032,["onClick"])]))),128))],512))}}}),[["__scopeId","data-v-fcec7d1d"]]),gO={key:1},AO=["innerHTML"],Ol=ve(e.defineComponent({inheritAttrs:!1,__name:"TagField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},type:{}},emits:["update:modelValue"],setup(t,{emit:n}){const a=e.useAttrs(),o=e.createPropsRestProxy(t,["name"]),i=n,{value:r,...s}=Bt(e.toRef(()=>t.name)),l=Pt(s.path,e.toRef({...o,...a})),c=e.computed(()=>{var h,C;return((C=(h=s.schema)==null?void 0:h.value)==null?void 0:C.len_min)&&s.schema.value.len_min>0});function m(h){const C=h.trim().split(",").map(b=>b.trim()).filter(Boolean),f=!C.length&&c.value?null:C;r.value=f,i("update:modelValue",f)}const p=Do(s.ancestors),u=e.computed(()=>a["data-1p-ignore"]!==void 0?a["data-1p-ignore"]:vo(t.name)==="name"),g=e.computed(()=>{if((r==null?void 0:r.value)!=null)return r==null?void 0:r.value.join(", ")});return(h,C)=>{var b;const f=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(f,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",gO,[e.createVNode(e.unref(Xe.KInput),e.mergeProps({class:"ff-string-field"},e.unref(l),{"data-1p-ignore":u.value,"data-autofocus":e.unref(p),"model-value":g.value??"","onUpdate:modelValue":m}),e.createSlots({_:2},[(b=e.unref(l).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(h.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,AO)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","model-value"])]))}}}),[["__scopeId","data-v-87fade74"]]),tn=e.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},setup(t){const n=t,a=Bt(e.toRef(n,"name")),o=e.computed(()=>{var i,r;switch((r=(i=a.schema)==null?void 0:i.value)==null?void 0:r.type){case"string":return"one_of"in a.schema.value?hn:Il;case"boolean":return"one_of"in a.schema.value?hn:tO;case"number":case"integer":return"one_of"in a.schema.value?hn:lO;case"array":return Uo;case"set":return HI(a.schema)?Ol:hn;case"record":return en;case"map":return mO;default:return}});return(i,r)=>{const s=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.$slots[e.unref(fn)]))),e.unref(a).error?(e.openBlock(),e.createBlock(s,{key:0,appearance:"danger",message:e.unref(a).error.message},null,8,["message"])):e.unref(a).renderer.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(a).renderer.value),{key:1,id:We(e.unref(a).path.value),name:xo(e.unref(a).path.value)},null,8,["id","name"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[o.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{key:0,id:We(e.unref(a).path.value),name:xo(e.unref(a).path.value)},{default:e.withCtx(()=>[e.unref(a).validationError.value?(e.openBlock(),e.createBlock(s,{key:0,appearance:"danger",message:e.unref(a).validationError.value},null,8,["message"])):e.createCommentVNode("",!0)]),_:1},8,["id","name"])):(e.openBlock(),e.createBlock(s,{key:1,appearance:"warning",message:`${e.unref(a).path.value} ${e.unref(a).schema.value.type} (no renderer yet)`},null,8,["message"])),e.renderSlot(i.$slots,"default")],64))],64)}}}),Lo=new Map,fO=(t,n)=>{if(lt.value)if(n===void 0){const a=[...lt.value.keys()].filter(o=>o===t||o.startsWith(t+"."));console.log("result",a),a.forEach(o=>lt.value.delete(o))}else{const a=`${t}.${n}`,o=[];for(const i of lt.value.keys())if(i===a||i.startsWith(`${a}.`))lt.value.delete(i);else{const r=i.match(new RegExp(`^${t}\\.(\\d+)(.*)`));if(r){const s=Number(r[1]),l=r[2];if(s>n){const c=`${t}.${s-1}${l}`;o.push({oldKey:i,newKey:c})}}}for(const{oldKey:i,newKey:r}of o){const s=lt.value.get(i);lt.value.delete(i),lt.value.set(r,s)}}};function hO(t){const n=[];if(t.length===0)return n;for(let a=0;a<t.length;a++){const o=t.slice(0,a+1).join(".");n.push(o)}return n}function yO(t){const n=t.match(/^(.*?)(?:\[(\d+)\]|\.([0-9]+))$/);return n?{prefix:n[1],index:Number(n[2]??n[3])}:null}const bO=t=>{var n,a;if(t!=null&&t.length)for(let o=0;o<t.length;o++){const i=t[o],r=yO(i);if(r!==null){const{prefix:s,index:l}=r;(n=Lo.get(s))==null||n(l)}else(a=Lo.get(i))==null||a()}},EO=t=>{const n=t==null?void 0:t.split("."),a=hO(n);bO(a)},lt=e.ref(),wO=t=>{const n=/['"]?(config(?:\.[a-zA-Z_]\w*(?:\[\d+\])?)*)['"]?\s*-\s*([^;]+)/g;return e.watch(t,async a=>{var o,i;if(!a){console.log("errorMessage is empty",a);return}if((o=a==null?void 0:a.response)!=null&&o.data){if((i=a.response.data.details)!=null&&i.length){const l=a.response.data.details;lt.value=l.reduce((c,m)=>{var p;if(m.field){const u=m.field.replace(/\[(\d+)\]/g,".$1");c.set(u,{message:(p=m.messages)==null?void 0:p.join(", ")})}return c},new Map);return}let r="";a.response.data.detail&&typeof a.response.data.detail=="string"?r=a.response.data.detail:a.response.data.message&&typeof a.response.data.message=="string"?r=a.response.data.message:typeof a.response.data=="string"?r=a.response.data:typeof a.response.data=="object"&&(r=Object.keys(a.response.data).map(l=>`${l} ${a.response.data[l]}`).join(", "));const s=[...r.matchAll(n)].map(([,l,c])=>({key:l.replace(/\[(\d+)\]/g,".$1"),message:c}));lt.value=s.reduce((l,c)=>(l.set(c.key,{message:c.message}),l),new Map);return}}),{fieldValidationErrors:lt,fieldActivationHandlers:Lo}},CO={ref:"arrayHeader",class:"ff-array-field-header"},BO=["innerHTML"],kO={key:0,class:"ff-array-field-validation-error"},IO={key:0,class:"ff-array-field-container"},OO={class:"ff-array-field-item-content"},RO=["data-index","data-testid"],Uo=ve(e.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},required:{type:Boolean},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(t,{emit:n}){var x;e.useCssVars(V=>({"2c443005":I.value}));const a=t,o=n,{getDefault:i,fieldHandlers:r}=_e(),s=e.useTemplateRef("arrayHeader"),{value:l,validationError:c,clearValidationError:m,...p}=Bt(e.toRef(a,"name")),u=V=>{var P;s.value&&s.value.scrollIntoView({behavior:"smooth",block:"start"}),V!=null&&(S.value=(P=B.value[V])==null?void 0:P.hash)};r==null||r.set(p.path.value,u);const{i18n:{t:g}}=on(),h=Pt(p.path,a),C=e.reactive(new Map),f=e.computed(()=>a.items??e.toValue(l)??[]),b=e.computed(()=>a.appearance==="card"?Xe.KCard:"div");function k(){return ka("ff-array-field-")}function O(V,P){return V!=null&&typeof V=="object"?C.get(V):`ff-array-field-${P}`}function w(V,P){return typeof a.itemLabel=="function"?a.itemLabel(V,P):a.itemLabel||h.value.label||`Item #${P}`}e.watch(f,V=>{V.forEach(Q=>{C.has(Q)||C.set(Q,k())});const P=new Set(V);[...C.keys()].forEach(Q=>{P.has(Q)||C.delete(Q)})},{immediate:!0,deep:!0});const B=e.computed(()=>f.value.map((V,P)=>({hash:`#${O(V,P)}`,title:""}))),S=e.ref((x=B.value[0])==null?void 0:x.hash),A=async()=>{var P;const V=i(We(p.path.value,To));Array.isArray(l.value)||(l.value=[]),l.value.push(V),o("add"),m==null||m(),a.appearance==="tabs"&&(await e.nextTick(),S.value=(P=B.value[B.value.length-1])==null?void 0:P.hash),await e.nextTick(),L(f.value.length+1)},y=async V=>{var P;Array.isArray(l.value)&&l.value.splice(V,1),fO(p.path.value,V),o("remove",V),a.appearance==="tabs"&&(S.value=(P=B.value[Math.max(0,V-1)])==null?void 0:P.hash)},E=e.useTemplateRef("root");function L(V){var Q;if(!E.value)return;const P=Math.max(0,Math.min(V,f.value.length-1));(Q=E.value.querySelector(`[data-index="${P}"] [data-autofocus]`))==null||Q.focus()}const I=e.computed(()=>{const{appearance:V,stickyTabs:P}=a;return V!=="tabs"||P==null||P===!1?null:typeof P=="number"?`${a.stickyTabs}px`:typeof P=="string"?P:"0"});return(V,P)=>{var re;const Q=e.resolveComponent("KAlert"),le=e.resolveComponent("KLabel"),G=e.resolveComponent("KButton"),K=e.resolveComponent("KTabs");return p.error?(e.openBlock(),e.createBlock(Q,{key:0,appearance:"danger",message:p.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:E,class:e.normalizeClass(["ff-array-field",{[`ff-array-field-${V.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":V.stickyTabs}])},[e.createElementVNode("header",CO,[e.createVNode(le,e.mergeProps({class:"ff-array-field-label"},e.unref(h),{"tooltip-attributes":e.unref(h).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).label)+" ",1)]),_:2},[(re=e.unref(h).labelAttributes)!=null&&re.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(V.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(h).labelAttributes.info},null,8,BO)],!0)]),key:"0"}:void 0]),1040,["tooltip-attributes"]),e.createVNode(G,{appearance:"tertiary","aria-label":e.unref(g)("actions.add_entity",{entity:e.unref(g)("plugins.free-form.request-callout.entity_name")}),"data-testid":`${e.unref(ka)("ff-array-field")}-add-item-btn`,icon:"",onClick:A},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.AddIcon))]),_:1},8,["aria-label","data-testid"])],512),e.unref(c)?(e.openBlock(),e.createElementBlock("div",kO,e.toDisplayString(e.unref(c)),1)):e.createCommentVNode("",!0),f.value.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[V.appearance!=="tabs"?(e.openBlock(),e.createElementBlock("div",IO,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,(X,T)=>(e.openBlock(),e.createBlock(e.unref(b),{key:O(X,T),class:"ff-array-field-item","data-index":T,"data-testid":`ff-array-field-item-${T}`},{default:e.withCtx(()=>[e.createElementVNode("div",OO,[V.$slots.item?e.renderSlot(V.$slots,"item",{key:0,fieldName:String(T),index:T},void 0,!0):(e.openBlock(),e.createBlock(tn,{key:1,name:String(T)},null,8,["name"]))]),e.createVNode(G,{appearance:"tertiary","aria-label":e.unref(g)("actions.remove_entity",{entity:e.unref(g)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove",icon:"",onClick:v=>y(T)},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.TrashIcon))]),_:2},1032,["aria-label","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))])):(e.openBlock(),e.createBlock(e.unref(Xe.KCard),{key:1},{default:e.withCtx(()=>[e.createVNode(K,{modelValue:S.value,"onUpdate:modelValue":P[0]||(P[0]=X=>S.value=X),tabs:B.value},e.createSlots({_:2},[e.renderList(f.value,(X,T)=>({name:O(X,T),fn:e.withCtx(()=>[e.createElementVNode("div",{class:"ff-array-field-item","data-index":T,"data-testid":`ff-array-field-item-${T}`},[V.$slots.item?e.renderSlot(V.$slots,"item",{key:0,fieldName:String(T),index:T},void 0,!0):(e.openBlock(),e.createBlock(tn,{key:1,name:String(T)},null,8,["name"]))],8,RO)])})),e.renderList(f.value,(X,T)=>({name:`${O(X,T)}-anchor`,fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(w(X,T))+" ",1),e.createVNode(G,{appearance:"tertiary","aria-label":e.unref(g)("actions.remove_entity",{entity:e.unref(g)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove",icon:"",onClick:e.withModifiers(v=>y(T),["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.TrashIcon))]),_:2},1032,["aria-label","onClick"])])}))]),1032,["modelValue","tabs"])]),_:3}))],64)):e.createCommentVNode("",!0)],2))}}}),[["__scopeId","data-v-8ccfbc68"]]),MO=e.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(t){const n=t,{formData:a}=_e(),o=e.computed(()=>{const{callouts:s}=a.config;return s==null?[]:s.filter(({name:l})=>{var c;return l&&l!==((c=s[n.index])==null?void 0:c.name)})}),i=e.computed(()=>o.value.map(({_id:s,name:l})=>({value:s,label:l}))),r=e.computed(()=>a.config.callouts[n.index]);return e.watch(i,()=>{r.value.depends_on=r.value.depends_on.filter(s=>i.value.some(l=>l.value===s))}),(s,l)=>(e.openBlock(),e.createBlock(en,{name:s.fieldName},{depends_on:e.withCtx(c=>[e.createVNode(hn,e.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:e.withCtx(c=>[e.createVNode(en,e.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:e.withCtx(m=>[e.createVNode(hn,e.mergeProps(m,{items:e.unref(ul)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),SO=e.defineComponent({__name:"CalloutsForm",setup(t){const{formData:n,getDefault:a}=_e();function o(){const i=a("config.callouts.*");i.request.body.custom=i.request.body.custom??{};const r=n.config.callouts[n.config.callouts.length-1];r&&(r._id=kl())}return(i,r)=>(e.openBlock(),e.createBlock(Uo,{appearance:"tabs","item-label":s=>s.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:e.withCtx(({index:s,fieldName:l})=>[e.createVNode(MO,{"field-name":l,index:s},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),Rl=e.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(t){const n=t,{default:a}=e.useSlots(),o=e.inject(Ia);if(!o)throw new Error(Ia.toString()+"not provided");return a&&o.set(n.match,a),(i,r)=>null}}),TO=e.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change"],setup(t,{emit:n}){var m;const a=n,o=e.useSlots(),i=KI(t.schema);e.provide(yl,i);const r=p=>{var u;return ro((u=t.config)==null?void 0:u.hasValue)?t.config.hasValue(p):!!p},s=e.computed(()=>{let p=i.getSchema().fields;return t.fieldsOrder?p.sort((u,g)=>{const h=Object.keys(u)[0],C=Object.keys(g)[0],f=t.fieldsOrder.indexOf(h),b=t.fieldsOrder.indexOf(C);return f===-1&&b===-1?0:f===-1?1:b===-1?-1:f-b}):p}),l=e.reactive((m=t.config)!=null&&m.prepareFormData?t.config.prepareFormData(r(t.data)?t.data:i.getDefault()):r(t.data)?t.data:i.getDefault());e.provide(Al,l),e.provide(Vo,DI(o,"default",fn));const c=new Map;return e.provide(Ia,c),e.provide(El,t.config),e.watch(l,p=>{a("change",e.toValue(p))},{deep:!0,immediate:!0}),(p,u)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(p.tag),null,{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(o)[e.unref(fn)]))),e.renderSlot(p.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,g=>(e.openBlock(),e.createBlock(tn,{key:Object.keys(g)[0],name:Object.keys(g)[0]},null,8,["name"]))),128))])]),_:3}))}}),xO={class:"ff-advanced-fields"},vO=ve(e.defineComponent({__name:"AdvancedFields",setup(t){const{t:n}=Ue.createI18n("en-us",Wn),{getSchema:a}=_e(),o=e.ref(!0);return(i,r)=>(e.openBlock(),e.createBlock(e.unref(Xe.KCollapse),{modelValue:o.value,"onUpdate:modelValue":r[0]||(r[0]=s=>o.value=s),"trigger-label":o.value?e.unref(n)("plugins.form.grouping.advanced_parameters.view"):e.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:e.withCtx(()=>[e.createElementVNode("div",xO,[e.unref(a)("instance_name")?(e.openBlock(),e.createBlock(tn,{key:0,name:"instance_name"})):e.createCommentVNode("",!0),e.unref(a)("protocols")?(e.openBlock(),e.createBlock(tn,{key:1,name:"protocols"})):e.createCommentVNode("",!0),e.unref(a)("tags")?(e.openBlock(),e.createBlock(Ol,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:e.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-190b1d21"]]),VO=e.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(t,{emit:n}){const a=n,o={prepareFormData:s,hasValue:l},{i18n:{t:i}}=on();function r(m,p=!1){return m.reduce((u,{_id:g,name:h})=>(p?u[h]=g:u[g]=h,u),{})}function s(m){var h;const p=CI(m);if(!((h=p.config)!=null&&h.callouts))return p;const{callouts:u}=p.config;u.forEach(C=>{C.request.body.custom=C.request.body.custom??{},C._id=kl()});const g=r(u,!0);return u.forEach(C=>{C.depends_on=C.depends_on.map(f=>g[f])}),p}function l(m){return!!(m!=null&&m.config)}function c(m){var g;if(!m)return;const p=JSON.parse(JSON.stringify(m));if(!((g=p.config)!=null&&g.callouts))throw new Error("data is not correct");const u=r(p.config.callouts);p.config.callouts=p.config.callouts.map(h=>{const{_id:C,depends_on:f,...b}=h;return{depends_on:f.map(k=>u[k]).filter(k=>k!=null),...b}}),a("change",p)}return(m,p)=>(e.openBlock(),e.createBlock(TO,{class:"rc-config-form",config:o,data:m.data,schema:m.schema,tag:"div",onChange:c},{[e.unref(fn)]:e.withCtx(()=>[e.createVNode(Rl,{match:({path:u})=>u.endsWith("by_lua")},{default:e.withCtx(u=>[e.createVNode(Il,e.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:e.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),e.createVNode(Rl,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(g=>u.endsWith(g))},{default:e.withCtx(u=>[e.createVNode(Uo,e.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(en,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(SO),e.createVNode(en,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),e.createVNode(en,{appearance:"card",name:"cache"},{redis:e.withCtx(u=>[e.createVNode(en,e.mergeProps(u,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),e.createVNode(vO)]),_:2},1032,["data","schema"]))}}),PO={class:"sc-form-pinned-fields"},NO={class:"sc-form-config-form"},DO=ve(e.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(t){const{t:n}=Ue.createI18n("en-us",Wn),a=t,o=e.useSlots();e.provide(ze,o==null?void 0:o[ct]);function i(u){return e.computed(()=>({fields:e.toValue(u).map(g=>{var h;return(h=a.formSchema)==null?void 0:h.fields.find(C=>C.model===g)}).filter(Boolean)}))}const s=i(["enabled","selectionGroup"]),l=["config","protocols"],c=e.computed(()=>{const u=a.schema;u.fields=u.fields.filter(h=>l.includes(Object.keys(h)[0])),u.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const g=u.fields.find(h=>Object.keys(h)[0]==="protocols");return g&&(g.protocols.help=g.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:g.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),g.protocols.description=n("plugins.form.fields.protocols.help")),u}),m=e.ref(!1);function p(u){return jI(u,["config","instance_name","partials","protocols","tags"])}return(u,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",PO,[e.createVNode(e.unref(Le),{model:u.formModel,options:u.formOptions,schema:e.unref(s),onModelUpdated:u.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),e.createVNode(e.unref(Xe.KCollapse),{modelValue:m.value,"onUpdate:modelValue":g[1]||(g[1]=h=>m.value=h),class:"sc-form-config-fields"},{title:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",NO,[e.renderSlot(u.$slots,"default",{data:p(u.model),schema:c.value,onChange:g[0]||(g[0]=(...h)=>u.onFormChange&&u.onFormChange(...h))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-266bdc6c"]]),LO=e.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(t){const n=t;return(a,o)=>(e.openBlock(),e.createBlock(DO,e.normalizeProps(e.guardReactiveProps(n)),{default:e.withCtx(i=>[e.createVNode(VO,e.normalizeProps(e.guardReactiveProps(i)),null,16)]),_:1},16))}}),UO={};function jO(t,n){return e.openBlock(),e.createElementBlock("div",null,"TODO")}const Ml=Object.freeze(Object.defineProperty({__proto__:null,RequestCalloutForm:LO,ServiceProtectionForm:ve(UO,[["render",jO]])},Symbol.toStringTag,{value:"Module"})),GO={class:"kong-ui-entities-plugin-form"},FO={key:1,class:"entity-form"},HO={class:"plugin-config-empty-state"},Sl=Object.keys(Hr),Tl=Object.keys(Ml);if(new Set([...Sl,...Tl]).size!==Sl.length+Tl.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const YO=e.defineComponent({components:{...Hr,...Ml}}),KO=e.defineComponent({...YO,__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1}},emits:["loading","model-updated","showNewPartialModal"],setup(t,{emit:n}){var q,ue;const a=n,o=t,{axiosInstance:i}=U.useAxios((q=o.config)==null?void 0:q.axiosRequestConfig),{parseSchema:r,pruneRecord:s}=Se.useSchemas({entityId:((ue=o.entityMap.focusedEntity)==null?void 0:ue.id)||void 0,credential:o.credential,enableRedisPartial:o.enableRedisPartial,experimentalRenders:o.config.app==="konnect"?o.config.experimentalRenders:void 0}),{convertToDotNotation:l,unFlattenObject:c,dismissField:m,isObjectEmpty:p,unsetNullForeignKey:u}=Se.usePluginHelpers(),g=Se.useExperimentalFreeForms(),{objectsAreEqual:h}=U.useHelpers(),{i18n:{t:C}}=on(),f=(_,Y)=>{let W=`${o.config.apiBaseUrl}${Ve.form[o.config.app].entityGetOne}`;return o.config.app==="konnect"?W=W.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(W=W.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),W=W.replace(/{entity}/gi,_),W=W.replace(/{id}/gi,Y),W},b=_=>{let Y=`${o.config.apiBaseUrl}${Ve.form[o.config.app].entityGetAll}`;return o.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),Y=Y.replace(/{entity}/gi,_),Y},k=(_,Y)=>{const W=f(_,Y);return i.get(W)},O=(_,Y)=>{const W=b(_);return o.config.app==="konnect"?i.get(W).then(oe=>{const{data:{data:ne}}=oe;if(delete Y.size,delete Y.offset,ne.length&&Object.keys(Y).length===1){const ie=Object.keys(Y)[0],it=ne.filter($e=>$e[ie]?!!$e[ie].toLowerCase().includes(Y[ie].toLowerCase()):!1);oe.data.data=it}return oe}):i.get(W,{params:Y})};e.provide(Tt,{getOne:k,getAll:O}),e.provide(Ha,o.config);const w=e.ref(""),B=e.ref(""),S=e.ref(null),A=e.ref({}),y=e.reactive({}),E=e.reactive({}),L=e.computed(()=>{var _;return(_=S.value)==null?void 0:_.options}),I=e.ref(!1),x=e.ref(),V=(_,Y)=>{I.value=_??"",x.value=Y},P=_=>{var Y;(Y=x.value)==null||Y.call(x,_),I.value=!1},Q=()=>{var it,$e,kt,rt,Nt;const _={...o.schema},Y=E,W=y,oe=Object.keys(Y),ne={};if(!p(A.value))for(let we=0;we<(($e=(it=A.value)==null?void 0:it.fields)==null?void 0:$e.length);we++)_[A.value.fields[we].model]=A.value.fields[we];$a.forEach(we=>{_[we]&&(_[we].fields.forEach(Ae=>{Ae.fields&&Ae.fields.forEach(ae=>{_[ae.model]=ae}),Ae.model&&(_[Ae.model]=Ae)}),delete _[we])}),oe.forEach(we=>{var M;if(!_[we]){we==="partials"&&(ne[we]=Y[we]);return}const Ae=_[we];let ae=Y[we];const It=W[we],z=Array.isArray(ae)?"array":typeof ae,ee=Ae?Ae.valueType:null,se=Ae?Ae.valueArrayType:null,D=Ae?Ae.transform:null;if(ae==null&&It==null&&!Ae.submitWhenNull)return;if(Ae){if(ee&&z!==ee)switch(ee){case"array":z==="string"&&ae.length&&(ae=ae.split(",").map(te=>{if(te=te.trim(),se==="string")return String(te);if(se==="number")return Number(te);if(se==="boolean"){if(typeof te=="string")return te.toLowerCase()==="true"||te==="1";if(typeof te=="number")return te===1}return te})),(!ae||!ae.length)&&(ae=Ae.submitWhenNull?null:[]);break;case"number":ae=Number(ae);break;case"boolean":z==="string"&&(ae=ae.toLowerCase()==="true"||ae==="1"),z==="number"&&(ae=ae===1);break;case"string":ae=ae==null?"":String(ae);break}else ee==="array"&&(!ae||!ae.length?ae=Ae.submitWhenNull?null:[]:((M=Ae.inputAttributes)==null?void 0:M.type)==="number"&&(ae=ae.map(te=>Number(te))));if(Ae.type==="array"&&Ae.nestedFields){const te=Z=>{Object.keys(Z).forEach(F=>{Z[F]&&typeof Z[F]=="object"&&!Array.isArray(Z[F])&&Z[F]!==null?te(Z[F]):(Z[F]===void 0||Z[F]===null||typeof Z[F]=="number"&&isNaN(Z[F])||typeof Z[F]=="string"&&Z[F].trim().length===0)&&delete Z[F]})};ae&&typeof ae=="object"&&te(ae)}Ae.type==="object-advanced"&&Ae.fields&&ae!==null&&(Object.entries(ae).length===0?ae=null:Object.keys(ae).forEach(te=>{Array.isArray(ae[te])||(ae[te]=ae[te].split(","))}))}let J=l(we);if(Ae.fieldNameHasDashes){const[te,...Z]=J.split(".").reverse();J=[te.replace(/_/g,"-"),...Z].reverse().join(".")}if(ee==="object-expand"){let te;[J,te]=J.split(".");let Z={};ne[J]&&(Z=ne[J]),Z[te]=ae,ae=Z}It!==void 0&&ae===""&&ae!==It?ne[J]=ee==="object"?{}:null:Ae.type==="checklist"&&ae===""?ne[J]=[]:ae!==""&&(ne[J]=ae),ne[J]=D?D(ae):ne[J],u(J,ne)});const ie=c(ne);if(B.value){const we=(Nt=(rt=(kt=o.rawSchema)==null?void 0:kt.fields)==null?void 0:rt.find(Ae=>"config"in Ae))==null?void 0:Nt.config;Object.assign(ie,{...re.value,config:s(re.value.config,we)})}return ie},le=(_,Y={})=>{m(E,Y,_,o.editing),a("model-updated",{model:E,originalModel:y,data:Q()})},G=(_,Y)=>{var ne;const W={[Y]:_};typeof((ne=o.schema[Y])==null?void 0:ne.modelTransformer)=="function"&&(W[Y]=o.schema[Y].modelTransformer(_));const oe=Object.assign({},E,W);Object.assign(E,oe),a("model-updated",{model:E,originalModel:y,data:Q()})},K=(_,Y)=>{Object.keys(_).forEach(W=>{var $e,kt;let oe=Y?`${Y}-${W}`:W,ne=o.schema[oe];if(!ne){const rt=Y?`${Y}-${W.replace(/-/g,"_")}`:W.replace(/-/g,"_");($e=o.schema[rt])!=null&&$e.fieldNameHasDashes&&(oe=rt,ne=o.schema[oe]),Y&&((kt=o.schema[Y])==null?void 0:kt.keyFromObject)===W&&(oe=Y,ne=o.schema[oe])}const ie=_[W],it=typeof ie;if(ne&&ne.type==="object-advanced"&&!ie){E[oe]={},y[oe]={};return}if(Array.isArray(ie)){E[oe]=JSON.parse(JSON.stringify(ie)),y[oe]=JSON.parse(JSON.stringify(ie));return}if(it==="object"&&ie&&!ie.length)return K(ie,oe);if(it==="object"&&ie&&ie.length&&ne.type==="input"){E[oe]=ie.join(", "),y[oe]=ie.join(", ");return}E[oe]=ie,y[oe]=ie}),a("model-updated",{model:E,originalModel:y,data:Q()})},re=e.shallowRef(o.record),X=_=>{re.value=_,a("model-updated",{model:{...E,..._},originalModel:y,data:Q()})},T=e.ref(!0),v=()=>{var _;if(o.record&&o.schema&&(K({enabled:o.record.enabled??!0,...o.record.instance_name&&{instance_name:o.record.instance_name||""},...o.record.protocols&&{protocols:o.record.protocols},...o.record.tags&&{tags:o.record.tags}}),o.credential?((o.record.consumer_id||o.record.consumer)&&K({consumer_id:o.record.consumer_id||o.record.consumer}),K(o.record)):o.record.config&&((o.record.consumer_id||o.record.consumer||o.record.service_id||o.record.service||o.record.route_id||o.record.route||o.record.consumer_group_id||o.record.consumer_group)&&K({service_id:o.record.service_id||o.record.service,route_id:o.record.route_id||o.record.route,consumer_id:o.record.consumer_id||o.record.consumer,consumer_group_id:o.record.consumer_group_id||o.record.consumer_group}),o.record.partials&&le("redis",{partials:o.record.partials}),B.value?X(o.record):K(o.record.config,"config"))),Object.keys(o.entityMap).length&&!o.entityMap.global&&o.schema){const Y={};for(const W in o.entityMap){const oe=o.entityMap[W].id,ne=o.entityMap[W].idField,ie=ne==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(ne).replace("_","-"));Object.prototype.hasOwnProperty.call(E,ie)&&(Y[ie]=oe)}K(Y)}if((_=o.entityMap.consumer)!=null&&_.id&&o.schema&&o.credential){const Y={};Object.prototype.hasOwnProperty.call(E,"consumer")&&(Y.consumer=o.entityMap.consumer.id),K(Y)}T.value=!1};return e.watch(T,_=>{a("loading",_)}),e.watch(()=>o.schema,(_,Y)=>{var oe,ne;if(h(_||{},Y||{}))return;const W=r(_);Object.assign(E,W.model),A.value={fields:(ne=(oe=A.value)==null?void 0:oe.fields)==null?void 0:ne.map(ie=>({...ie,disabled:ie.disabled||!1}))},Object.assign(y,JSON.parse(JSON.stringify(W.model))),B.value=Aa(W.model.name,g),w.value=Yr(W.model.name),v()},{immediate:!0,deep:!0}),e.onBeforeMount(()=>{var _,Y;S.value=r(o.schema),Object.assign(E,((_=S.value)==null?void 0:_.model)||{}),A.value=((Y=S.value)==null?void 0:Y.schema)||{},v()}),(_,Y)=>{var ne;const W=e.resolveComponent("KSkeleton"),oe=e.resolveComponent("VueFormGenerator");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",GO,[T.value?(e.openBlock(),e.createBlock(W,{key:0,type:"form"})):E.id&&t.editing||!t.editing?(e.openBlock(),e.createElementBlock("div",FO,[B.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(B.value),{key:0,"form-model":E,"form-options":L.value,"form-schema":A.value,"is-editing":t.editing,model:t.record,"on-form-change":X,"on-model-updated":G,schema:t.rawSchema},e.createSlots({_:2},[t.enableVaultSecretPicker?{name:e.unref(ct),fn:e.withCtx(ie=>[ie.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(oo),e.mergeProps({key:0},ie,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):w.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(w.value),{key:1,"enable-redis-partial":t.enableRedisPartial,"form-model":E,"form-options":L.value,"form-schema":A.value,"is-editing":t.editing,"on-model-updated":G,"on-partial-toggled":le,"show-new-partial-modal":ie=>_.$emit("showNewPartialModal",ie)},e.createSlots({_:2},[t.enableVaultSecretPicker?{name:e.unref(ct),fn:e.withCtx(ie=>[ie.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(oo),e.mergeProps({key:0},ie,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(e.openBlock(),e.createBlock(oe,{key:2,"enable-redis-partial":t.enableRedisPartial,"is-editing":t.editing,model:E,options:L.value,schema:A.value,onModelUpdated:G,onPartialToggled:le,onRefreshModel:Q,onShowNewPartialModal:Y[0]||(Y[0]=ie=>_.$emit("showNewPartialModal",ie))},e.createSlots({"plugin-config-empty-state":e.withCtx(()=>[e.createElementVNode("div",HO,e.toDisplayString(e.unref(C)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ne=e.unref(ut)[E.name])!=null&&ne.fieldRules&&(o.config.isNewOtelSchema||E.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:e.withCtx(()=>[e.createVNode(QE,{rules:e.unref(ut)[E.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,t.enableVaultSecretPicker?{name:e.unref(ct),fn:e.withCtx(ie=>[ie.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(oo),e.mergeProps({key:0},ie,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(KE),{config:o.config,setup:I.value,onCancel:Y[1]||(Y[1]=()=>I.value=!1),onProceed:P},null,8,["config","setup"])],64)}}}),zO=ve(KO,[["__scopeId","data-v-87bdbef5"]]),QO={key:1},XO=e.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(t){return(n,a)=>t.teleportTarget?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:t.teleportTarget},[e.renderSlot(n.$slots,"default")],8,["to"])):(e.openBlock(),e.createElementBlock("div",QO,[e.renderSlot(n.$slots,"default")]))}}),qO=Symbol("redis-partial-info"),JO={class:"kong-ui-entities-plugin-form-container"},ZO={key:0},WO={class:"plugin-form-actions"},_O=ve(e.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal"],setup(t,{emit:n}){var se;const a=n,o=t,i=yn.useRouter(),{i18n:{t:r}}=Se.useI18n(),{customSchemas:s,typedefs:l}=Se.useSchemas({app:o.config.app,credential:o.credential,experimentalRenders:o.config.app==="konnect"?o.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Se.usePluginHelpers(),{getMessageFromError:m}=U.useErrors(),{capitalize:p}=U.useStringHelpers(),{objectsAreEqual:u}=U.useHelpers(),{axiosInstance:g}=U.useAxios((se=o.config)==null?void 0:se.axiosRequestConfig),h=e.ref(!1),C=e.computed(()=>!!o.pluginId),f=e.computed(()=>o.pluginId?U.EntityBaseFormType.Edit:U.EntityBaseFormType.Create),b=e.ref(void 0),k=e.ref(void 0),O=e.computed(()=>!!(o.credential&&o.config.entityId)),w=e.ref(void 0),B=e.ref({}),S=to(),A=e.ref(),y=e.ref();e.provide(qO,{redisType:A,redisPath:y,isEditing:C.value});const E=e.ref(!1),L=e.reactive({enabled:!0,protocols:[],tags:[]}),I=e.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,errorMessage:""}),x=e.ref(),{fieldValidationErrors:V,fieldActivationHandlers:P}=wO(x);console.log("fieldValidationErrors",V),e.provide(fl,V),e.provide(hl,P);const Q=e.ref([{title:r("view_configuration.json"),hash:"#json"},{title:r("view_configuration.yaml"),hash:"#yaml"}]);o.config.app==="konnect"&&Q.value.splice(1,0,{title:r("view_configuration.terraform"),hash:"#terraform"});const le=e.ref(""),G=e.computed(()=>{if(O.value){let D=Ve.form[o.config.app].credential[f.value];return D=D.replace(/{resourceEndpoint}/gi,T.value),D}return o.config.entityType&&o.config.entityId?Ve.form[o.config.app].edit.forEntity.replace(/{entityType}/gi,o.config.entityType).replace(/{entityId}/gi,o.config.entityId):Ve.form[o.config.app].edit.all}),K=()=>{h.value=!h.value},re=e.computed(()=>{var F,ce,pe,Me,me,H,j,Qe;const D=o.config.entityType==="consumers"&&o.config.entityId||((ce=(F=w.value)==null?void 0:F.consumer)==null?void 0:ce.id),J=o.config.entityType==="consumer_groups"&&o.config.entityId||((Me=(pe=w.value)==null?void 0:pe.consumer_group)==null?void 0:Me.id),M=o.config.entityType==="services"&&o.config.entityId||((H=(me=w.value)==null?void 0:me.service)==null?void 0:H.id),te=o.config.entityType==="routes"&&o.config.entityId||((Qe=(j=w.value)==null?void 0:j.route)==null?void 0:Qe.id);if(!(D||J||M||te))return{global:{entity:d.GLOBAL,entityEndpoint:"plugins"}};const Z={};return M&&(Z.service={entity:d.SERVICE,entityEndpoint:"services",id:M,idField:Ut.SERVICE}),te&&(Z.route={entity:d.ROUTE,entityEndpoint:"routes",id:te,idField:Ut.ROUTE}),D&&(Z.consumer={entity:d.CONSUMER,entityEndpoint:"consumers",id:D,idField:Ut.CONSUMER}),J&&(Z.consumer_group={entity:d.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:J,idField:Ut.CONSUMER_GROUP}),o.config.entityType&&(Z.focusedEntity={entity:d[o.config.entityType.substring(0,o.config.entityType.length-1).toUpperCase()],entityEndpoint:o.config.entityType,id:o.config.entityId,idField:Ut[o.config.entityType.substring(0,o.config.entityType.length-1).toUpperCase()]}),Z}),X=e.reactive({name:{default:o.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:o.hideScopeSelection&&(o.hideScopeSelection||f.value===U.EntityBaseFormType.Create&&o.config.entityId)?"foreign":"selectionGroup",disabled:o.disableScopeSelection,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"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:r("plugins.form.fields.instance_name.label"),inputType:"text",help:r("plugins.form.fields.instance_name.help")},tags:l.tags}),T=e.computed(()=>{var M;const D=o.developer?"developers":"consumers",J=((M=un[o.pluginType])==null?void 0:M.endpoint)||"/plugins";return`${D}/${o.config.entityId}${o.developer?"/credentials":""}${J}`}),v=D=>{const J=Array.from(new Set(D.map(M=>typeof M)));return J.length>1?"string":J[0]},q=(D,J,M,te)=>{var pe,Me;let Z=J&&J.fields||[];const F=s[o.pluginType],ce=(Me=(pe=un[o.pluginType])==null?void 0:pe.schema)==null?void 0:Me.fields;return Array.isArray(Z)&&(Z=Z.reduce((me,H)=>{const j=Object.keys(H)[0];return j.match(/-/g)?me[j.replace(/-/g,"_")]={...H[j],fieldNameHasDashes:!0}:me[j]=H[j],me},{})),Object.keys(Z).sort().forEach(me=>{var jn,Gn,Fn,Hn,Yn,Kn,zn;const H=Z[me];H.type==="set"&&(H.type="array");const j=D?`${D}-${me}`:`${me}`;if((jn=F==null?void 0:F.fieldsToDelete)!=null&&jn.includes(j)){cl(M,j);return}if(Object.prototype.hasOwnProperty.call(H,"overwrite")||H.hidden)return;if(H.type==="table")return q(j,H.schema,M);if(H.fields)return te&&H.type==="record"?(M[j]={type:"object",model:me,schema:{fields:Object.values(q(j,H,{},!0))}},M):q(j,H,M);if(M[j]={id:j,model:me},M[j].type=H.type==="boolean"?"checkbox":"input",M[j].required=H.required,M[j].referenceable=H.referenceable,j.startsWith("config-"))if(!te&&H.type==="array"&&(le.value=j),te&&le.value&&j.startsWith(le.value)){const de=j.slice(le.value.length+1);M[j].label=de.split("-").map(c).join(".")}else M[j].label=c(j);if((D==="config"||D.startsWith("config-"))&&(Gn=Z[me])!=null&&Gn.description&&(M[j].help=ge.parse(Z[me].description,{mangle:!1,headerIds:!1})),H.type==="map"){if(M[j].type="object-advanced",M[j].values=H.values,H.values.type==="array"){const{type:de}=H.values.elements||{};M[j].schema={fields:[{schema:{fields:[{...Oe,model:j,valueArrayType:de==="integer"?"number":de||"string",inputAttributes:{...Oe.inputAttributes,type:de==="integer"?"number":"text",inputMode:de==="integer"?"numeric":"text"}}]}}]}}else H.values.fields&&(M[j].schema={fields:[{type:"object",model:"object",schema:{fields:H.values.fields.map(de=>{const Fe=Object.keys(de)[0];return{model:Fe,type:"input",label:p(Fe),placeholder:Fe,inputType:de[Fe].type}})}}]});return M}if(H.enum&&H.type==="array"&&(M[j].type="checklist",M[j].values=H.enum,M[j].multi=!0,M[j].multiSelect=!0),H.one_of&&H.type!=="array"&&(M[j].type="select",M[j].values=H.one_of,M[j].selectOptions={noneSelectedText:r("plugins.form.no_selection")}),H.elements&&H.type==="array"){const de=H.elements;if(M[j].referenceable=de.referenceable,M[j].elements=de,["string","integer","number"].includes(de.type)&&!de.one_of){const{id:Fe,help:De,label:he,hint:Ye,values:et,referenceable:nn,model:an}=M[j],{inputAttributes:Ra,...ZR}=JSON.parse(JSON.stringify(Oe));Ra.type=de.type==="string"?"text":"number",M[j]={id:Fe,help:De,label:he,hint:Ye,values:et,referenceable:nn,model:an,inputAttributes:Ra,...ZR}}}if(H.hint&&(M[j].hint=H.hint),F&&!F.overwriteDefault&&Object.keys(F).forEach(de=>{if(de===j){const{help:Fe,label:De,hint:he,values:Ye,referenceable:et,elements:nn}=M[j],{help:an,...Ra}=F[de];M[j]={help:Fe,label:De,hint:he,values:Ye,referenceable:et,elements:nn,...Ra},typeof an=="string"&&(M[j].help=ge.parse(an,{mangle:!1,headerIds:!1}))}}),H.type==="array"&&((Fn=H.elements)==null?void 0:Fn.type)==="record"&&Array.isArray(H.elements.fields)){let de={};for(const De of H.elements.fields)de={...de,...De};const Fe=(Kn=(Yn=(Hn=M[j])==null?void 0:Hn.items)==null?void 0:Yn.schema)==null?void 0:Kn.fields;if(Array.isArray(Fe))for(const De of M[j].items.schema.fields){const he=(zn=de[De.model])==null?void 0:zn.description;De.help===void 0&&typeof he=="string"&&(De.help=ge.parse(he,{mangle:!1,headerIds:!1}))}if(Fe||(M[j].type="array",M[j].newElementButtonLabelClasses="kong-form-new-element-button-label",M[j].fieldClasses="array-card-container-wrapper",M[j].itemContainerComponent="FieldArrayCardContainer",M[j].items={type:"object",schema:{fields:Object.values(q(j,H.elements,{},!0))}},M[j].items.schema.fields.forEach(De=>{var he,Ye;for(const et of H.elements.fields){const nn=Object.keys(et)[0],an=((Ye=(he=De.id)==null?void 0:he.split)==null?void 0:Ye.call(he,"-"))??[];if(an[an.length-1]===nn){De.model=nn,De.label=c(nn);break}}}),H.elements.type==="record"&&(M[j].nestedFields=!0)),!M[j].nestedFields)M[j].items.default=()=>H.elements.fields.reduce((De,he)=>{const Ye=Object.keys(he)[0];return De[Ye]=he[Ye].default,De},{});else{const De=(he,Ye)=>{if(he.type==="object"){he.model&&(Ye[he.model]={});for(const et of he.schema.fields)De(et,he.model?Ye[he.model]:Ye)}else he.model&&(Ye[he.model]=he.default)};M[j].items.default=()=>{const he={};return De(M[j].items,he),he}}}if(O.value&&ce){for(let de=0;de<ce.length;de++)if(ce[de][j]){M[j]={...M[j],...ce[de][j]};break}}if(H.required&&H.type!=="boolean"&&(M[j].required=!0,M[j].selectOptions={hideNoneSelectedText:!0}),H.required&&H.type==="boolean"&&(M[j].default=H.default??!1),H.default!=null&&typeof H.default!="object"&&H.default!=="function"&&(M[j].default=H.default),M[j].type==="input"){["string","number"].includes(typeof M[j].default)&&o.config.app==="konnect"&&(M[j].placeholder=`Default: ${M[j].default===""?"<empty string>":M[j].default}`);const{type:de}=H.elements||{};de&&(M[j].valueArrayType=de==="integer"?"number":de),M[j].inputType=H.type==="array"||H.type==="string"?H.encrypted?"password":"text":H.type}let Qe="string";H.enum?Qe=v(H.enum):H.type==="boolean"?Qe="boolean":H.type==="number"||H.type==="integer"?(Qe="number",M[j].inputType="number"):H.type==="array"?(Qe="array",M[j].default=H.default,H.len_min>0&&(M[j].submitWhenNull=!0)):H.type==="foreign"?Qe="object":H.default&&Array.isArray(H.default)?(Qe="array",M[j].valueArrayType=v(H.default)):H.default&&(Qe=typeof H.default),M[j].valueType=Qe,H.fieldNameHasDashes&&(M[j].fieldNameHasDashes=!0)}),M},ue=()=>{var me,H,j,Qe,jn,Gn,Fn,Hn,Yn,Kn,zn,de;const D=((me=ut[o.pluginType])==null?void 0:me.scope.includes(d.SERVICE))??!0,J=((H=ut[o.pluginType])==null?void 0:H.scope.includes(d.ROUTE))??!0,M=((j=ut[o.pluginType])==null?void 0:j.scope.includes(d.CONSUMER))??!0,te=o.config.disableConsumerGroupScope?!1:((Qe=ut[o.pluginType])==null?void 0:Qe.scope.includes(d.CONSUMER_GROUP))??!0,Z=o.config.entityType==="consumers"&&!!o.config.entityId||!!((Gn=(jn=w.value)==null?void 0:jn.consumer)!=null&&Gn.id),F=o.config.entityType==="consumer_groups"&&!!o.config.entityId||!!((Hn=(Fn=w.value)==null?void 0:Fn.consumer_group)!=null&&Hn.id),ce=o.config.entityType==="services"&&!!o.config.entityId||!!((Kn=(Yn=w.value)==null?void 0:Yn.service)!=null&&Kn.id),pe=o.config.entityType==="routes"&&!!o.config.entityId||!!((de=(zn=w.value)==null?void 0:zn.route)!=null&&de.id),Me=[];if(D&&Me.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"),disabled:ce&&o.disableScopeSelection}),J&&Me.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"),disabled:pe&&o.disableScopeSelection}),M&&Me.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"),disabled:Z&&o.disableScopeSelection}),te&&Me.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"),disabled:F&&o.disableScopeSelection}),Me.length){const Fe=[...D?["service"]:[],...J?["route"]:[],...M?["consumer"]:[],...te?["consumer_group"]:[]],he=Fe.splice(Fe.length-2,2).map(et=>r(et==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${et}.plural`)).join(`${Fe.length>0?",":""} and/or `),Ye=["Specific",[...Fe.length>0?[Fe.map(et=>r(et==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${et}.plural`)).join(", ")]:[],he].join(", ")].join(" ");X.selectionGroup.fields.push({label:r("plugins.form.scoping.label"),description:Ye,fields:[]}),X.selectionGroup.fields[1].fields=Me}s[o.pluginType]&&s[o.pluginType].overwriteDefault&&Object.hasOwnProperty.call(s[o.pluginType],"formSchema")&&Object.assign(X,s[o.pluginType].formSchema)},_=e.computed(()=>!u(I.fields,L,!0)),Y=e.computed(()=>!z.value&&!E.value&&(f.value===U.EntityBaseFormType.Create||_.value)),W=e.ref(!1),oe=e.ref(),ne=D=>{o.credential&&D.password&&(D.password=""),I.fields.id=(D==null?void 0:D.id)||void 0,oe.value=D==null?void 0:D.ordering,Object.assign(L,I.fields),w.value=D,W.value=!0},ie=e.ref({}),it=D=>{var J;I.fields=D.model,I.fields.id=((J=w.value)==null?void 0:J.id)||void 0,Object.assign(L,D.originalModel),ie.value=D.data,o.isWizardStep&&a("model-updated",{model:I.fields,data:D.data,resourceEndpoint:T.value})};e.watch([re,W],(D,J)=>{const M=D[0]!==J[0],te=D[1],Z=J[1];if(!O.value&&f.value===U.EntityBaseFormType.Edit&&(M||te&&te!==Z)){const F=q("config",B.value,X);Nt.value&&(F._isCustomPlugin=!0),A.value&&(F._supported_redis_partial_type=A.value),k.value=F}},{deep:!0});const $e=()=>{o.config.cancelRoute?i.push(o.config.cancelRoute):a("cancel")},kt=e.computed(()=>{let D=`${o.config.apiBaseUrl}${Ve.form[o.config.app].validate}`;return o.config.app==="konnect"?D=D.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(D=D.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),D=D.replace(/{id}/gi,o.pluginId),D}),rt=e.computed(()=>{const D=o.config.entityType&&o.config.entityId&&!o.developer,J=O.value?Ve.form[o.config.app].credential[f.value]:Ve.form[o.config.app][f.value][D?"forEntity":"all"];let M=`${o.config.apiBaseUrl}${J}`;return o.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),M=M.replace(/{resourceEndpoint}/gi,T.value),M=M.replace(/{id}/gi,o.pluginId),M=M.replace(/{entityType}/gi,o.config.entityType||""),M=M.replace(/{entityId}/gi,o.config.entityId||""),M}),Nt=e.computed(()=>!Object.keys(ut).includes(o.pluginType)),we=e.computed(()=>{const D=ie.value;if(O.value){for(const J in d){const M=d[J];D[M]&&!D[M].id&&(D[M]={id:o.config.entityId})}delete D.created_at}return ie.value.partials&&y.value&&cl(D,y.value),D}),Ae=async()=>{if(!o.isWizardStep)try{I.isReadonly=!0;let D;const J=JSON.parse(JSON.stringify(we.value)),M=s[o.pluginType];typeof(M==null?void 0:M.shamefullyTransformPayload)=="function"&&M.shamefullyTransformPayload({originalModel:L,model:I.fields,payload:J,schema:k.value}),!O.value&&!Nt.value&&await g.post(kt.value,J),f.value==="create"?D=await g.post(rt.value,J):f.value==="edit"&&(D=o.config.app==="konnect"||A.value&&J.partials?await g.put(rt.value,Object.assign({ordering:oe.value},J)):await g.patch(rt.value,J)),Object.assign(L,I.fields),a("update",D==null?void 0:D.data)}catch(D){I.errorMessage=m(D),x.value=D,a("error",D)}finally{I.isReadonly=!1}},ae=e.computed(()=>{var te;const D=O.value?(te=un[o.pluginType])==null?void 0:te.schemaEndpoint:o.pluginType,J=O.value?Ve.form[o.config.app].credentialSchema:Ve.form[o.config.app].pluginSchema;let M=`${o.config.apiBaseUrl}${J}`;return o.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),M=M.replace(/{plugin}/gi,D),M}),It=e.ref(""),z=e.ref(!1),ee=e.ref("");return e.onBeforeMount(async()=>{var D,J,M,te;z.value=!0;try{if(O.value&&o.config.app==="konnect"){const Z=(D=un[o.pluginType])==null?void 0:D.schemaEndpoint,F=Xb[Z];It.value=Z,k.value=q("",F,{}),z.value=!1}else{const Z=o.schema??(await g.get(ae.value)).data;if(b.value=Z,Z)if(O.value)k.value=q("",Z,{}),z.value=!1;else{const F=Z.fields.find(pe=>pe.config);B.value=F?F.config:Z,Z.supported_partials&&(A.value=Object.keys(Z.supported_partials).find(pe=>[_n.REDIS_CE,_n.REDIS_EE].includes(pe)),y.value=(J=Z.supported_partials[A.value])==null?void 0:J[0]),ue();const ce=(M=Z.fields.find(pe=>pe.protocols))==null?void 0:M.protocols;if(ce){const{default:pe=[],elements:Me={}}=ce;X.protocols.default=pe,X.protocols.placeholder=o.config.app==="konnect"?r("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:pe.join(", ")}):r("plugins.form.fields.protocols.placeholder"),(te=Me.one_of)!=null&&te.length&&(X.protocols.values=Me.one_of.map(me=>({label:me,value:me})))}if(W.value||f.value===U.EntityBaseFormType.Create){const pe=q("config",B.value,X);A.value&&(pe._supported_redis_partial_type=A.value),Nt.value&&(pe._isCustomPlugin=!0),k.value=pe}}}}catch(Z){console.error(Z),ee.value=m(Z),a("error:fetch-schema",Z)}finally{z.value=!1}}),(D,J)=>{const M=e.resolveComponent("KSkeleton"),te=e.resolveComponent("KEmptyState"),Z=e.resolveComponent("KButton"),F=e.resolveComponent("KCollapse"),ce=e.resolveComponent("KAlert"),pe=e.resolveComponent("KTabs"),Me=e.resolveComponent("KSlideout");return e.openBlock(),e.createElementBlock("div",JO,[z.value?(e.openBlock(),e.createBlock(M,{key:0,type:"form"})):ee.value?(e.openBlock(),e.createBlock(te,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(e.unref(r)("errors.load_schema")),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(U.EntityBaseForm),{key:2,"can-submit":Y.value,config:t.config,"edit-id":t.pluginId,"entity-type":e.unref(U.SupportedEntityType).Plugin,"error-message":I.errorMessage,"fetch-url":G.value,"form-fields":we.value,"is-readonly":I.isReadonly,"no-validate":"","use-sticky-error-message":"","wrapper-component":t.noCardWrapper?"div":void 0,onCancel:$e,"onFetch:error":J[3]||(J[3]=me=>D.$emit("error",me)),"onFetch:success":ne,onLoading:J[4]||(J[4]=me=>D.$emit("loading",me))},e.createSlots({"form-actions":e.withCtx(()=>[t.isWizardStep?(e.openBlock(),e.createElementBlock("div",ZO)):(e.openBlock(),e.createBlock(XO,{key:1,"teleport-target":t.actionsTeleportTarget},{default:e.withCtx(()=>[e.createElementVNode("div",WO,[t.hideViewConfigAction?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Z,{key:0,appearance:"tertiary","data-testid":`plugin-${C.value?"edit":"create"}-form-view-configuration`,onClick:J[2]||(J[2]=me=>K())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),e.createVNode(Z,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${C.value?"edit":"create"}-form-cancel`,disabled:I.isReadonly,onClick:$e},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),e.createVNode(Z,{appearance:"primary","data-testid":`plugin-${C.value?"edit":"create"}-form-submit`,disabled:!Y.value||I.isReadonly,type:"submit",onClick:Ae},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:e.withCtx(()=>[e.createElementVNode("form",{hidden:"",onSubmit:Ae},null,32),e.createVNode(zO,{config:t.config,credential:O.value,editing:f.value===e.unref(U.EntityBaseFormType).Edit,"enable-redis-partial":t.enableRedisPartial,"enable-vault-secret-picker":o.enableVaultSecretPicker,"entity-map":re.value,"raw-schema":b.value,record:w.value,schema:k.value,onLoading:J[0]||(J[0]=me=>E.value=me),onModelUpdated:it,onShowNewPartialModal:J[1]||(J[1]=me=>D.$emit("showNewPartialModal",me))},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","entity-map","raw-schema","record","schema"])]),_:2},[I.errorMessage?{name:"errorMessage",fn:e.withCtx(()=>{var me;return[(me=e.unref(V))!=null&&me.size&&e.unref(Aa)(t.pluginType,e.unref(S))?(e.openBlock(),e.createBlock(ce,{key:0,appearance:"danger",class:"plugin-form-error-message","data-testid":`plugin-${C.value?"edit":"create"}-form-error-message`},{default:e.withCtx(()=>[e.createVNode(F,{"model-value":!1,"trigger-label":"Form Errors"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(V),([H,j])=>(e.openBlock(),e.createElementBlock("div",{key:H,class:"plugin-form-error-message-item"},[e.createTextVNode(e.toDisplayString(H)+": "+e.toDisplayString(j.message)+" ",1),e.createVNode(Z,{appearance:"tertiary",onClick:Qe=>e.unref(EO)(H)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.jump_to_error"))+" ",1),e.createVNode(e.unref(Te.ArrowUpIcon))]),_:2},1032,["onClick"])]))),128))]),_:1})]),_:1},8,["data-testid"])):e.unref(Aa)(t.pluginType,e.unref(S))?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ce,{key:1,appearance:"danger","data-testid":"form-error",message:I.errorMessage},null,8,["message"]))]}),key:"0"}:void 0]),1032,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),e.createVNode(Me,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:e.unref(r)("view_configuration.title"),visible:h.value,onClose:K},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("view_configuration.message")),1),e.createVNode(pe,{"data-testid":"form-view-configuration-slideout-tabs",tabs:Q.value},{json:e.withCtx(()=>[e.createVNode(e.unref(U.JsonCodeBlock),{config:t.config,"entity-record":we.value,"fetcher-url":rt.value,"request-method":o.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:e.withCtx(()=>[e.createVNode(e.unref(U.YamlCodeBlock),{"entity-record":we.value},null,8,["entity-record"])]),terraform:e.withCtx(()=>[e.createVNode(e.unref(U.TerraformCodeBlock),{"credential-type":It.value,"entity-record":we.value,"entity-type":e.unref(U.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-5fbceba6"]]),$O=["alt","height","src","width"],Oa=e.defineComponent({__name:"PluginIcon",props:{name:{type:String,required:!0},size:{type:Number,default:32,required:!1},alt:{type:String,default:"",required:!1}},setup(t){const n=t,a=e.ref(),o=e.computed(()=>qr(n.name)),i=()=>{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:At&&At.tagName.toUpperCase()==="SCRIPT"&&At.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;a.value&&a.value.src!==r&&(a.value.src=r)};return(r,s)=>(e.openBlock(),e.createElementBlock("img",{ref_key:"img",ref:a,alt:t.alt,height:t.size,src:o.value,width:t.size,onError:i},null,40,$O))}}),eR="#00abd2",tR="16px",nR="24px",aR={class:"kong-ui-entities-plugins-list"},oR={class:"button-row"},iR={class:"empty-state-icon-gateway"},rR={class:"name-cell-wrapper"},sR={class:"info-wrapper"},lR={key:0,class:"info-name"},cR={key:1,class:"info-name"},dR={key:2,class:"info-type"},uR={key:1},pR=ve(e.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.createRoute||!t.getViewRoute||!t.getEditRoute||!t.getConfigureDynamicOrderingRoute||t.app==="kongManager"&&!t.isExactMatch&&!t.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},enableV2EmptyStates:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(t,{emit:n}){var ae,It;const a=Se.usePluginMetaData(),o=n,i=t,{i18n:{t:r}}=Se.useI18n(),s=yn.useRouter(),{axiosInstance:l}=U.useAxios((ae=i.config)==null?void 0:ae.axiosRequestConfig),{hasRecords:c,handleStateChange:m}=U.useTableState(()=>B.value),p=e.computed(()=>c.value&&i.config.app==="konnect"),u=e.computed(()=>!i.enableV2EmptyStates&&i.config.app==="konnect"),g=e.computed(()=>!!i.config.entityId),h=e.computed(()=>{var z;return((z=i.config)==null?void 0:z.entityType)==="consumers"}),C=e.computed(()=>{var z;return((z=i.config)==null?void 0:z.entityType)==="consumer_groups"}),f=i.config.app==="konnect"||U.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),b=e.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),k={name:{label:r("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(It=i.config)!=null&&It.entityId||(k.appliedTo={label:r("plugins.list.table_headers.applied_to"),sortable:!1}),k.enabled={label:r("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},f&&(k.ordering={label:r("plugins.list.table_headers.ordering"),sortable:!0}),k.tags={label:r("plugins.list.table_headers.tags"),sortable:!1};const O=k,w=e.computed(()=>{var ee,se,D,J;let z=i.config.entityType?`${i.config.apiBaseUrl}${Ve.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Ve.list[i.config.app].all}`;return i.config.app==="konnect"?z=z.replace(/{controlPlaneId}/gi,((ee=i.config)==null?void 0:ee.controlPlaneId)||""):i.config.app==="kongManager"&&(z=z.replace(/\/{workspace}/gi,(se=i.config)!=null&&se.workspace?`/${i.config.workspace}`:"")),z.replace(/{entityType}/gi,((D=i.config)==null?void 0:D.entityType)||"").replace(/{entityId}/gi,((J=i.config)==null?void 0:J.entityId)||"")}),B=e.ref(""),S=e.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:k.name,id:{label:r("plugins.list.table_headers.id"),sortable:!0}},placeholder:r(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...k.enabled,label:r("search.filter.field.enabled")},name:k.name,instance_name:{label:r("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:A,fetcherState:y,fetcherCacheKey:E}=U.useFetcher(e.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),L=()=>{B.value=""},I=()=>{E.value++},x=e.ref(null),V=z=>{var se,D,J,M;const ee=[];return((se=z.route)!=null&&se.id||z.route_id)&&ee.push({type:"route",badgeText:r("plugins.list.table_headers.applied_to_badges.route")}),((D=z.service)!=null&&D.id||z.service_id)&&ee.push({type:"service",badgeText:r("plugins.list.table_headers.applied_to_badges.service")}),((J=z.consumer)!=null&&J.id||z.consumer_id)&&ee.push({type:"consumer",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer")}),((M=z.consumer_group)!=null&&M.id||z.consumer_group_id)&&ee.push({type:"consumer_group",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer_group")}),ee.length?ee:[{type:null,badgeText:r("plugins.list.table_headers.applied_to_badges.global")}]},P=async(z,ee)=>{var se;return z===null?!1:await((se=i.canRetrieveScopedEntity)==null?void 0:se.call(i,z,ee.id))},Q=(z,ee)=>{var D,J,M,te,Z;let se=null;switch(z){case"route":se=(D=ee.route)==null?void 0:D.id;break;case"service":se=(J=ee.service)==null?void 0:J.id;break;case"consumer":se=(M=ee.consumer)==null?void 0:M.id;break;case"consumer_group":se=(te=ee.consumer_group)==null?void 0:te.id;break}se&&((Z=i.config)!=null&&Z.getScopedEntityViewRoute)&&s.push(i.config.getScopedEntityViewRoute(z,se))},le=e.ref(!1),G=e.ref(null),K=e.computed(()=>{const z={action:"disable",id:"",name:""};if(G.value){const{enabled:ee,id:se,name:D}=G.value;z.action=ee?"disable":"enable",z.id=se,z.name=a.getDisplayName(D)||se}return z}),re=z=>{le.value=!0,G.value=z},X=()=>{le.value=!1,G.value=null},T=async()=>{var D,J,M,te,Z,F,ce,pe;if(!await((D=i.canEdit)==null?void 0:D.call(i,G.value))||!G.value)return;let ee=`${i.config.apiBaseUrl}${(Z=Ve.item[i.config.app])==null?void 0:Z[(J=i.config)!=null&&J.entityType?"forEntity":"all"].replace(/{entityType}/gi,((M=i.config)==null?void 0:M.entityType)||"").replace(/{entityId}/gi,((te=i.config)==null?void 0:te.entityId)||"")}`.replace(/{id}/gi,G.value.id||"");i.config.app==="konnect"?ee=ee.replace(/{controlPlaneId}/gi,((F=i.config)==null?void 0:F.controlPlaneId)||""):i.config.app==="kongManager"&&(ee=ee.replace(/\/{workspace}/gi,(ce=i.config)!=null&&ce.workspace?`/${i.config.workspace}`:""));const se=!G.value.enabled;try{const{data:Me}=((pe=i.config)==null?void 0:pe.app)==="konnect"?await l.put(ee,{...G.value,enabled:se},{timeout:12e4}):await l.patch(ee,{...G.value,enabled:se},{timeout:12e4});o("toggle-enabled",se,Me),G.value.enabled=se}catch(Me){o("error",Me)}},v=async(z,ee)=>{const se=z.id;if(!await ee(se)){o("copy:error",{entity:z,field:"id",message:r("errors.copy")});return}o("copy:success",{entity:z,field:"id",message:r("copy.success",{val:se})})},q=async(z,ee)=>{const se=JSON.stringify(z);if(!await ee(se)){o("copy:error",{entity:z,message:r("errors.copy")});return}o("copy:success",{entity:z,message:r("copy.success_brief")})},ue=async z=>{var se;await((se=i.canRetrieve)==null?void 0:se.call(i,z))&&s.push(i.config.getViewRoute(z))},_=z=>({label:r("actions.view"),to:i.config.getViewRoute(z)}),Y=z=>({label:r("actions.edit"),to:i.config.getEditRoute(z)}),W=z=>({label:r("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(z)}),oe=e.ref(void 0),ne=e.ref(!1),ie=e.ref(!1),it=e.ref(""),$e=U.useDeleteUrlBuilder(i.config,w.value),kt=z=>{oe.value=z,ne.value=!0},rt=()=>{ne.value=!1},Nt=async()=>{var z,ee,se;if((z=oe.value)!=null&&z.id){ie.value=!0;try{await l.delete($e(oe.value.id)),ie.value=!1,ne.value=!1,E.value++,o("delete:success",oe.value)}catch(D){it.value=((se=(ee=D.response)==null?void 0:ee.data)==null?void 0:se.message)||D.message||r("errors.delete"),o("error",D)}finally{ie.value=!1}}},we=()=>{s.push(i.config.createRoute)};e.watch(y,z=>{var ee,se,D;if(z.status===U.FetcherStatus.Error){x.value={title:r("errors.general")},(D=(se=(ee=z.error)==null?void 0:ee.response)==null?void 0:se.data)!=null&&D.message&&(x.value.message=z.error.response.data.message),o("error",z.error);return}x.value=null});const Ae=e.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${r("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:r("plugins.title")});return e.onBeforeMount(async()=>{await i.canCreate()&&(Ae.value.title=r("plugins.list.empty_state.title"),Ae.value.ctaText=r("actions.create"))}),(z,ee)=>{const se=e.resolveComponent("KButton"),D=e.resolveComponent("KBadge"),J=e.resolveComponent("KTruncate"),M=e.resolveComponent("KInputSwitch"),te=e.resolveComponent("KDropdownItem"),Z=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",aR,[e.createVNode(e.unref(U.EntityBaseTable),{"cache-identifier":t.cacheIdentifier,"disable-sorting":b.value,"empty-state-options":Ae.value,"enable-entity-actions":"","error-message":x.value,fetcher:e.unref(A),"fetcher-cache-key":e.unref(E),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:B.value,"table-headers":e.unref(O),title:t.title,"title-tag":t.titleTag,onClearSearchInput:L,"onClick:row":ee[5]||(ee[5]=F=>ue(F)),onSort:I,onState:e.unref(m)},e.createSlots({"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(U.EntityFilter),{modelValue:B.value,"onUpdate:modelValue":ee[0]||(ee[0]=F=>B.value=F),config:S.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!t.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createElementVNode("div",oR,[!g.value&&p.value?(e.openBlock(),e.createBlock(se,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ee[1]||(ee[1]=F=>z.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.BookIcon),{decorative:""})]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(U.PermissionsWrapper),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(se,{appearance:"primary","data-testid":"toolbar-add-plugin",size:t.useActionOutside?"medium":"large",to:t.config.createRoute},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:e.withCtx(({row:F})=>[e.createElementVNode("div",rR,[e.createVNode(Oa,{class:"plugin-icon",name:F.name,size:24},null,8,["name"]),e.createElementVNode("div",sR,[F.instance_name?(e.openBlock(),e.createElementBlock("span",lR,e.toDisplayString(F.instance_name),1)):(e.openBlock(),e.createElementBlock("span",cR,e.toDisplayString(e.unref(a).getDisplayName(F.name)),1)),F.instance_name?(e.openBlock(),e.createElementBlock("span",dR,e.toDisplayString(e.unref(a).getDisplayName(F.name)),1)):e.createCommentVNode("",!0)])])]),appliedTo:e.withCtx(({row:F})=>[V(F).length>0?(e.openBlock(),e.createBlock(J,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V(F),ce=>(e.openBlock(),e.createBlock(e.unref(U.PermissionsWrapper),{key:ce.badgeText,"auth-function":()=>P(ce.type,F),"force-show":""},{default:e.withCtx(({isAllowed:pe})=>[e.createVNode(D,{class:e.normalizeClass(pe||"disabled"),onClick:e.withModifiers(Me=>pe&&ce.type&&Q(ce.type,F),["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(ce.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",uR,"-"))]),enabled:e.withCtx(({row:F})=>[e.createVNode(e.unref(U.PermissionsWrapper),{"auth-function":async()=>!!(await t.canEdit(F)&&await t.canToggle(F)),"force-show":""},{default:e.withCtx(({isAllowed:ce})=>{var pe,Me;return[e.createElementVNode("div",{onClick:ee[4]||(ee[4]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(M,{disabled:!ce,"disabled-tooltip-text":!ce&&((Me=(pe=t.config).getToggleDisabledTooltip)==null?void 0:Me.call(pe,F))||void 0,"model-value":F.enabled,onClick:e.withModifiers(me=>ce&&re(F),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:e.withCtx(({rowValue:F})=>[e.createVNode(D,{appearance:e.unref(rl)(F)?"info":"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(rl)(F)?e.unref(r)("plugins.list.table_headers.ordering_badge.static"):e.unref(r)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:e.withCtx(({rowValue:F})=>[e.createVNode(e.unref(U.TableTags),{tags:F},null,8,["tags"])]),actions:e.withCtx(({row:F})=>[e.createVNode(Z,null,{default:e.withCtx(({copyToClipboard:ce})=>[e.createVNode(te,{"data-testid":"action-entity-copy-id",onClick:pe=>v(F,ce)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(Z,null,{default:e.withCtx(({copyToClipboard:ce})=>[e.createVNode(te,{"data-testid":"action-entity-copy-json",onClick:pe=>q(F,ce)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(U.PermissionsWrapper),{"auth-function":()=>t.canRetrieve(F)},{default:e.withCtx(()=>[e.createVNode(te,{"data-testid":"action-entity-view","has-divider":"",item:_(F)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(U.PermissionsWrapper),{"auth-function":()=>t.canEdit(F)},{default:e.withCtx(()=>[e.createVNode(te,{"data-testid":"action-entity-edit",item:Y(F)},null,8,["item"])]),_:2},1032,["auth-function"]),!h.value&&!C.value&&e.unref(f)?(e.openBlock(),e.createBlock(e.unref(U.PermissionsWrapper),{key:0,"auth-function":()=>t.canConfigureDynamicOrdering(F)},{default:e.withCtx(()=>[W(F)?(e.openBlock(),e.createBlock(te,{key:0,"data-testid":"action-entity-config-dyn-order",item:W(F)},null,8,["item"])):e.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):e.createCommentVNode("",!0),e.createVNode(e.unref(U.PermissionsWrapper),{"auth-function":()=>t.canDelete(F)},{default:e.withCtx(()=>[e.createVNode(te,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:ce=>kt(F)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!e.unref(c)&&u.value?{name:"outside-actions",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!t.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createVNode(se,{appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ee[2]||(ee[2]=F=>z.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.BookIcon),{decorative:""})]),_:1})],8,["disabled"]))]),key:"0"}:void 0,!B.value&&t.enableV2EmptyStates&&t.config.app==="konnect"?{name:"empty-state",fn:e.withCtx(()=>{var F;return[e.createVNode(e.unref(U.EntityEmptyState),{"action-button-text":e.unref(r)("plugins.list.empty_state_v2.create_cta"),appearance:"secondary","can-create":()=>t.canCreate(),"data-testid":t.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state",description:e.unref(r)("plugins.list.empty_state_v2.description"),"learn-more":t.config.app==="konnect",title:e.unref(r)("plugins.list.empty_state_v2.title"),"onClick:create":we,"onClick:learnMore":ee[3]||(ee[3]=ce=>z.$emit("click:learn-more"))},e.createSlots({image:e.withCtx(()=>[e.createElementVNode("div",iR,[e.createVNode(e.unref(Te.PlugIcon),{color:e.unref(eR),size:e.unref(nR)},null,8,["color","size"])])]),_:2},[(F=t.config)!=null&&F.isControlPlaneGroup?{name:"message",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["action-button-text","can-create","data-testid","description","learn-more","title"])]}),key:"1"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),e.createVNode(e.unref(U.EntityToggleModal),{action:K.value.action,"entity-id":K.value.id,"entity-name":K.value.name,"entity-type":e.unref(r)("glossary.plugin"),"on-confirm":T,visible:le.value,onCancel:X,onProceed:X},null,8,["action","entity-id","entity-name","entity-type","visible"]),e.createVNode(e.unref(U.EntityDeleteModal),{"action-pending":ie.value,description:e.unref(r)("delete.description"),"entity-name":oe.value&&(oe.value.instance_name||oe.value.name||oe.value.id),"entity-type":e.unref(U.EntityTypes).Plugin,error:it.value,title:e.unref(r)("delete.title"),visible:ne.value,onCancel:rt,onProceed:Nt},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-149ffaa5"]]),mR={class:"plugin-select-card-wrapper"},gR=["data-testid"],AR={class:"plugin-card-header"},fR={class:"plugin-card-title"},hR={key:0,class:"plugin-card-actions"},yR=["data-testid","title"],bR={key:0,class:"plugin-card-text"},ER={key:0},wR=["title"],jo=ve(e.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){const a=n,o=t,i=yn.useRouter(),{i18n:{t:r}}=Se.useI18n(),s=e.computed(()=>o.config.app==="konnect"?o.config.controlPlaneId:""),l=e.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),c=e.computed(()=>!!(h.value&&!g.value&&o.navigateOnClick&&s.value&&(o.canDeleteCustomPlugin||o.canEditCustomPlugin))),m=()=>{i.push(o.config.getCreateRoute(o.plugin.id))},p=()=>{o.navigateOnClick?m():u()},u=()=>{a("plugin-clicked",o.plugin)},g=e.computed(()=>o.plugin.id==="custom-plugin-create"),h=e.computed(()=>o.config.app==="konnect"&&o.plugin.group===R.CUSTOM_PLUGINS),C=()=>{o.config.app==="konnect"&&a("custom-plugin-delete")},f=(k,O)=>{const w=o.config;o.config.app==="konnect"&&typeof w.getCustomEditRoute=="function"&&w.getCustomEditRoute&&i.push(w.getCustomEditRoute(k,O))},b=()=>{if(!l.value&&o.config.app==="konnect"){const k=o.config;g.value&&k.createCustomRoute?i.push(k.createCustomRoute):h.value&&m()}};return(k,O)=>{const w=e.resolveComponent("KButton"),B=e.resolveComponent("KDropdownItem"),S=e.resolveComponent("KDropdownMenu"),A=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",mR,[e.createVNode(A,{text:t.plugin.disabledMessage},{default:e.withCtx(()=>[e.createElementVNode("a",{class:e.normalizeClass(["plugin-select-card",{disabled:l.value}]),"data-testid":`${t.plugin.id}-card`,role:"button",onClick:O[1]||(O[1]=y=>l.value||h.value?void 0:p())},[e.createElementVNode("div",AR,[e.createElementVNode("div",fR,[e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!h.value})},e.toDisplayString(t.plugin.name),3)]),c.value?(e.openBlock(),e.createElementBlock("div",hR,[e.createVNode(S,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:e.withCtx(()=>[e.createVNode(w,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(Te.MoreIcon),{size:e.unref(tR)},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[t.canDeleteCustomPlugin?(e.openBlock(),e.createBlock(B,{key:0,"data-testid":"edit-plugin-schema",onClick:O[0]||(O[0]=e.withModifiers(y=>f(t.plugin.name,t.plugin.customPluginType),["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.edit")),1)]),_:1})):e.createCommentVNode("",!0),t.canDeleteCustomPlugin?(e.openBlock(),e.createBlock(B,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:e.withModifiers(C,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:1})):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["plugin-card-body",{"custom-plugin":h.value}]),"data-testid":t.plugin.name,title:t.plugin.available?t.plugin.name:e.unref(r)("plugins.select.unavailable_tooltip"),onClick:b},[e.createVNode(Oa,{alt:t.plugin.name,class:"plugin-card-icon",name:t.plugin.imageName||t.plugin.id,size:55},null,8,["alt","name"]),t.plugin.description||h.value&&!g.value?(e.openBlock(),e.createElementBlock("div",bR,[h.value&&!g.value?(e.openBlock(),e.createElementBlock("p",ER,e.toDisplayString(e.unref(r)("plugins.select.custom_badge_text")),1)):e.createCommentVNode("",!0),t.plugin.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:"plugin-card-text",title:t.plugin.description},e.toDisplayString(t.plugin.description),9,wR)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],10,yR),e.createElementVNode("div",{class:"plugin-card-footer",onClick:b},e.toDisplayString(g.value?e.unref(r)("actions.create_custom"):t.plugin.exists?e.unref(r)("actions.enabled"):e.unref(r)("actions.enable")),1)],10,gR)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-28728a65"]]),CR=ve(e.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(t,{emit:n}){var C;const a=t,o=n,{i18nT:i,i18n:{t:r}}=Se.useI18n(),{getMessageFromError:s}=U.useErrors(),{axiosInstance:l}=U.useAxios((C=a.config)==null?void 0:C.axiosRequestConfig),c=e.computed(()=>{var f;return u.value?r("delete.plugin_schema_in_use_title"):r("delete.title",{name:((f=a.plugin)==null?void 0:f.name)||r("delete.custom_plugin")})}),m=e.ref(!1),p=e.ref(""),u=e.ref(!1),g=e.computed(()=>{if(a.config.app==="konnect"){const f=a.plugin.customPluginType==="streaming"?Ve.select[a.config.app].streamingCustomPluginItem:Ve.select[a.config.app].schemaCustomPluginItem;let b=`${a.config.apiBaseUrl}${f}`;return b=b.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""),b=b.replace(/{pluginId}/gi,a.plugin.id),b}return null}),h=async()=>{var f,b,k,O;if(m.value=!0,p.value="",!(!((f=a.plugin)!=null&&f.name)||((b=a.config)==null?void 0:b.app)!=="konnect"))try{g.value&&await l.delete(g.value),o("proceed")}catch(w){const{response:B}=w;(B==null?void 0:B.status)===400&&((O=(k=B.data)==null?void 0:k.message)!=null&&O.includes("plugin schema is currently in use"))?u.value=!0:p.value=s(w)}finally{m.value=!1}};return(f,b)=>{const k=e.resolveComponent("KButton"),O=e.resolveComponent("KModal");return!u.value&&t.plugin?(e.openBlock(),e.createBlock(e.unref(U.EntityDeleteModal),{key:0,"action-pending":m.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:e.unref(r)("delete.description_custom"),"entity-name":t.plugin.name,"entity-type":e.unref(U.EntityTypes).Plugin,error:p.value,"need-confirm":"",title:c.value,visible:"",onCancel:b[0]||(b[0]=w=>f.$emit("closed")),onProceed:h},null,8,["action-pending","description","entity-name","entity-type","error","title"])):t.plugin?(e.openBlock(),e.createBlock(O,{key:1,"action-button-disabled":m.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:b[2]||(b[2]=w=>f.$emit("closed"))},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(e.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:e.withCtx(()=>[e.createElementVNode("strong",null,e.toDisplayString(t.plugin.name),1)]),_:1})])]),"footer-actions":e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(k,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:b[1]||(b[1]=w=>f.$emit("closed"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),BR={class:"custom-plugins-grid"},kR={class:"empty-state-title"},IR={class:"empty-state-description"},Go=310,OR=ve(e.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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}},emits:["plugin-clicked","revalidate","delete:success"],setup(t,{emit:n}){const a=t,o=n,{i18n:{t:i}}=Se.useI18n(),{getTallestPluginCardHeight:r,getToggleVisibility:s}=Se.usePluginHelpers(),l=e.ref(!0),c=S=>{o("plugin-clicked",S)},m=e.computed(()=>{if(a.config.app==="kongManager")return[];const S=JSON.parse(JSON.stringify(a.pluginList))[R.CUSTOM_PLUGINS]||[];return a.canCreateCustomPlugin&&a.navigateOnClick&&a.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:R.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(S):S}),p=e.ref(!1),u=e.ref(null),g=S=>{p.value=!0,u.value={id:S.id,name:S.name,customPluginType:S.customPluginType}},h=S=>{var A;S&&(o("revalidate"),o("delete:success",((A=u.value)==null?void 0:A.name)||"")),p.value=!1,u.value=null},C=e.ref(Go),f=e.ref(null),b=e.ref(null),k=e.computed(()=>l.value?{overflowY:"hidden",maxHeight:`${C.value}px`}:{}),O=e.ref(!1),w=()=>{C.value=Math.max(r(b.value),Go),B()},B=()=>{var S,A;(S=b.value)!=null&&S.length&&(O.value=s(f.value,(A=b.value)==null?void 0:A.length))};return e.onMounted(async()=>{await e.nextTick(),C.value=Math.max(r(b.value),Go),B(),window==null||window.addEventListener("resize",w)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",w)}),(S,A)=>{const y=e.resolveComponent("KEmptyState"),E=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock("div",BR,[m.value.length?(e.openBlock(),e.createBlock(E,{key:1,modelValue:l.value,"onUpdate:modelValue":A[0]||(A[0]=L=>l.value=L),class:"custom-plugins-collapse","data-testid":`${e.unref(R).CUSTOM_PLUGINS}-collapse`,title:e.unref(R).CUSTOM_PLUGINS,"trigger-label":l.value?e.unref(i)("plugins.select.view_more"):e.unref(i)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:f,class:"plugin-card-container",style:e.normalizeStyle(k.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(L,I)=>(e.openBlock(),e.createBlock(jo,{key:`plugin-card-${I}`,ref_for:!0,ref_key:"pluginCardRef",ref:b,"can-delete-custom-plugin":t.canDeleteCustomPlugin,"can-edit-custom-plugin":t.canEditCustomPlugin,config:t.config,"navigate-on-click":t.navigateOnClick,plugin:L,onCustomPluginDelete:x=>g(L),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[O.value?void 0:{name:"trigger",fn:e.withCtx(()=>[A[2]||(A[2]=e.createTextVNode(" "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(e.openBlock(),e.createBlock(y,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",kR,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",IR,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),p.value&&u.value?(e.openBlock(),e.createBlock(CR,{key:2,config:t.config,plugin:u.value,onClosed:h,onProceed:A[1]||(A[1]=L=>h(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Fo=310,xl=ve(e.defineComponent({__name:"PluginSelectGroup",props:e.mergeModels({config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:e.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(t,{emit:n}){const a=e.useModel(t,"modelValue"),o=t,i=n,{i18n:{t:r}}=Se.useI18n(),{getTallestPluginCardHeight:s,getToggleVisibility:l}=Se.usePluginHelpers(),c=e.ref(Fo),m=e.ref(null),p=e.ref(null),u=e.computed(()=>a.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),g=e.ref(!1),h=()=>{c.value=Math.max(s(p.value),Fo),C()},C=()=>{var f,b;(f=p.value)!=null&&f.length&&(g.value=l(m.value,(b=p.value)==null?void 0:b.length))};return e.onMounted(async()=>{await e.nextTick(),c.value=Math.max(s(p.value),Fo),C(),window==null||window.addEventListener("resize",h)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",h)}),(f,b)=>{const k=e.resolveComponent("KCollapse");return e.openBlock(),e.createBlock(k,{modelValue:a.value,"onUpdate:modelValue":b[0]||(b[0]=O=>a.value=O),class:"plugins-collapse","data-testid":`${o.name}-collapse`,title:o.name,"trigger-label":a.value?e.unref(r)("plugins.select.view_more"):e.unref(r)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:m,class:"plugin-card-container",style:e.normalizeStyle(u.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.plugins,O=>(e.openBlock(),e.createBlock(jo,{key:`plugin-card-${O.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:p,config:t.config,"navigate-on-click":t.navigateOnClick,plugin:O,onPluginClicked:w=>i("plugin-clicked",O)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[g.value?void 0:{name:"trigger",fn:e.withCtx(()=>[b[1]||(b[1]=e.createTextVNode(" "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),RR={class:"plugin-select-grid"},MR={class:"empty-state-title"},SR={class:"empty-state-description"},Ho=e.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(t,{emit:n}){const a=t,o=n,{i18n:{t:i}}=Se.useI18n(),r=e.ref(!1),s=e.ref(si),l=m=>{o("plugin-clicked",m)},c=e.computed(()=>{const m=JSON.parse(JSON.stringify(a.pluginList));return a.config.app==="konnect"&&delete m[R.CUSTOM_PLUGINS],m});return(m,p)=>{const u=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",RR,[Object.keys(c.value).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",MR,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",SR,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!a.hideHighlightedPlugins&&a.highlightedPlugins.length>0?(e.openBlock(),e.createBlock(xl,{key:1,modelValue:r.value,"onUpdate:modelValue":p[0]||(p[0]=g=>r.value=g),config:t.config,name:a.highlightedPluginsTitle||e.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":t.navigateOnClick,plugins:a.highlightedPlugins,onPluginClicked:p[1]||(p[1]=g=>l(g))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(ri),g=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[c.value[g]?(e.openBlock(),e.createElementBlock("div",{key:g},[e.createVNode(xl,{modelValue:s.value[g],"onUpdate:modelValue":h=>s.value[g]=h,config:t.config,name:g,"navigate-on-click":t.navigateOnClick,plugins:c.value[g]||[],onPluginClicked:p[2]||(p[2]=h=>l(h))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):e.createCommentVNode("",!0)],64))),256))])}}}),TR={class:"kong-ui-entities-plugin-select-form"},xR={class:"plugins-filter-input-container"},vR={key:0},VR={key:3,"aria-live":"polite",class:"plugins-results-container"},PR={"data-testid":"kong-tab"},NR={class:"tab-description"},DR={"data-testid":"custom-tab"},LR={class:"tab-description"},UR=ve(e.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.getCreateRoute)},customPluginSupport:{type:String,default:"none"},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:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(t,{emit:n}){var X;const a=t,o=n,i=yn.useRoute(),r=yn.useRouter(),{i18n:{t:s}}=Se.useI18n(),{pluginMetaData:l}=Se.usePluginMetaData(),{getMessageFromError:c}=U.useErrors(),{sortAlpha:m,objectsAreEqual:p}=U.useHelpers(),u=e.ref(""),g=e.ref(!0),h=e.ref(!1),C=e.ref(""),f=e.ref([]),b=e.ref([]),k=e.ref({}),O=e.ref([]),{axiosInstance:w}=U.useAxios((X=a.config)==null?void 0:X.axiosRequestConfig),B=e.computed(()=>k.value?Object.entries(k.value).filter(([T])=>T!==R.CUSTOM_PLUGINS).reduce((T,[,v])=>{for(const q of v)T[q.id]=q;return T},{}):{}),S=e.computed(()=>{var q;if(!k.value)return{};const T=u.value.toLowerCase(),v=JSON.parse(JSON.stringify(k.value));for(const ue in k.value){const _=((q=k.value[ue])==null?void 0:q.filter(Y=>Y.name.toLowerCase().includes(T)||Y.id.toLowerCase().includes(T)||Y.group.toLowerCase().includes(T)))||[];_.length?v[ue]=_:delete v[ue]}return v}),A=e.computed(()=>a.highlightedPluginIds.reduce((T,v)=>{const q=B.value[v];return q&&T.push(q),T},[])),y=e.computed(()=>Object.keys(S.value).length>0),E=e.computed(()=>Object.keys(k.value).length>0&&!y.value),L=e.computed(()=>a.config.app==="konnect"?[{hash:"#kong",title:s("plugins.select.tabs.kong.title")},{hash:"#custom",title:s("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(a.customPluginSupport)}]:[]),I=e.computed(()=>{var v;let T=L.value.length&&((i==null?void 0:i.hash)||((v=L.value[0])==null?void 0:v.hash))||"";return T==="#custom"&&["none","disabled"].includes(a.customPluginSupport)&&(T="#kong"),T}),x=()=>[...new Set([...Object.keys({...a.availableOnServer?{}:l}),...f.value])].filter(T=>!a.ignoredPlugins.includes(T)).filter(T=>a.config.entityType&&(a.config.entityType==="services"&&l[T]&&!l[T].scope.includes(d.SERVICE)||a.config.entityType==="routes"&&l[T]&&!l[T].scope.includes(d.ROUTE)||a.config.entityType==="consumer_groups"&&l[T]&&!l[T].scope.includes(d.CONSUMER_GROUP)||a.config.entityType==="consumers"&&l[T]&&!l[T].scope.includes(d.CONSUMER))?!1:T).reduce((T,v)=>{var W;const q=l[v]&&l[v].name||v,ue={...l[v],id:v,name:q,available:f.value.includes(v),disabledMessage:"",group:((W=l[v])==null?void 0:W.group)||R.CUSTOM_PLUGINS};ue.group===R.CUSTOM_PLUGINS&&(ue.customPluginType=b.value.find(oe=>oe.name===v)?"streaming":"schema"),a.disabledPlugins&&(ue.disabledMessage=a.disabledPlugins[v]);const _=ue.group||s("plugins.select.misc_plugins");let Y=T[_];return Y||(Y=[]),Y.push(ue),Y.sort(m("name")),T[_]=Y,T},{}),V=e.computed(()=>{var v;let T=`${a.config.apiBaseUrl}${Ve.select[a.config.app].availablePlugins}`;return a.config.app==="konnect"?T=T.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(T=((v=a.config.gatewayInfo)==null?void 0:v.edition)==="community"?`${a.config.apiBaseUrl}${Ve.select[a.config.app].availablePluginsForOss}`:T.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),T}),P=e.computed(()=>{if(a.config.app==="konnect"&&a.customPluginSupport==="streaming"){let T=`${a.config.apiBaseUrl}${Ve.select[a.config.app].streamingCustomPlugins}`;return T=T.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""),T}return null}),Q=e.computed(()=>{if(a.config.entityType&&a.config.entityId){let T=`${a.config.apiBaseUrl}${Ve.list[a.config.app].forEntity}`;return a.config.app==="konnect"?T=T.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(T=T.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),T.replace(/{entityType}/gi,a.config.entityType||"").replace(/{entityId}/gi,a.config.entityId||"")}return""}),le=T=>{r.replace({hash:T,query:i.query})};e.watch(()=>a.disabledPlugins,(T,v)=>{!p(T,v)&&!g.value&&(k.value=x())}),e.watch(()=>a.ignoredPlugins,(T,v)=>{!p(T,v)&&!g.value&&(k.value=x())}),e.watch(g,T=>{o("loading",T)});const G=e.ref(!1),K=e.ref(!1),re=e.ref(!1);return e.onBeforeMount(async()=>{G.value=await a.canCreateCustomPlugin(),K.value=await a.canEditCustomPlugin(),re.value=await a.canDeleteCustomPlugin()}),e.onMounted(async()=>{try{const{data:T}=await w.get(V.value);if(a.config.app==="konnect"){const{names:v}=T;if(f.value=v||[],P.value){const{data:q}=await w.get(P.value);b.value=q.data||[]}}else if(a.config.app==="kongManager"){const{plugins:{available_on_server:v}}=T;f.value=v?Object.keys(v):[]}}catch(T){h.value=!0,C.value=c(T)}if(Q.value)try{const{data:{data:T}}=await w.get(Q.value);if(T!=null&&T.length){const v=T.reduce((q,ue)=>(ue.name&&q.push(ue.name),q),[]);O.value=O.value.concat(v)}}catch{}h.value||(k.value=x()),g.value=!1}),(T,v)=>{const q=e.resolveComponent("KInput"),ue=e.resolveComponent("KSkeletonBox"),_=e.resolveComponent("KSkeleton"),Y=e.resolveComponent("KEmptyState"),W=e.resolveComponent("KTooltip"),oe=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",TR,[e.createElementVNode("div",xR,[e.createVNode(q,{modelValue:u.value,"onUpdate:modelValue":v[0]||(v[0]=ne=>u.value=ne),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:e.unref(s)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),g.value?(e.openBlock(),e.createElementBlock("section",vR,[e.createVNode(ue,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(_,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):h.value?(e.openBlock(),e.createBlock(Y,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(C.value),1)]),_:1})):E.value&&u.value?(e.openBlock(),e.createBlock(Y,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(s)("search.no_results",{filter:u.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",VR,[L.value.length&&t.customPluginSupport!=="none"?(e.openBlock(),e.createBlock(oe,{key:0,modelValue:I.value,"onUpdate:modelValue":v[5]||(v[5]=ne=>I.value=ne),"data-testid":"plugins-tabs",tabs:L.value,onChange:le},e.createSlots({kong:e.withCtx(()=>[e.createElementVNode("div",PR,[e.createElementVNode("p",NR,e.toDisplayString(e.unref(s)("plugins.select.tabs.kong.description")),1),e.createVNode(Ho,{config:t.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":A.value,"highlighted-plugins-title":a.highlightedPluginsTitle,"navigate-on-click":t.navigateOnClick,"plugin-list":S.value,onPluginClicked:v[1]||(v[1]=ne=>T.$emit("plugin-clicked",ne))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:e.withCtx(()=>[e.createElementVNode("div",DR,[e.createElementVNode("p",LR,e.toDisplayString(e.unref(s)("plugins.select.tabs.custom.description")),1),e.createVNode(OR,{"can-create-custom-plugin":G.value,"can-delete-custom-plugin":re.value,"can-edit-custom-plugin":K.value,config:t.config,"navigate-on-click":t.navigateOnClick,"plugin-list":S.value,"onDelete:success":v[2]||(v[2]=ne=>T.$emit("delete-custom:success",ne)),onPluginClicked:v[3]||(v[3]=ne=>T.$emit("plugin-clicked",ne)),onRevalidate:v[4]||(v[4]=()=>k.value=x())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[t.customPluginSupport==="disabled"?{name:"custom-anchor",fn:e.withCtx(()=>[e.createVNode(W,{"max-width":"300",text:e.unref(s)("plugins.select.tabs.custom.disabled_tooltip")},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(s)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(e.openBlock(),e.createBlock(Ho,{key:1,config:t.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":A.value,"highlighted-plugins-title":a.highlightedPluginsTitle,"navigate-on-click":t.navigateOnClick,"plugin-list":S.value,onPluginClicked:v[6]||(v[6]=ne=>T.$emit("plugin-clicked",ne))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-d2065987"]]),jR={class:"kong-ui-entity-plugin-config-card"},GR={class:"name-cell-wrapper"},FR={class:"info-name"},HR={key:0},YR={key:0},KR={key:0},zR={key:0},QR={key:0},Yo="config",XR=ve(e.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.entityId||!t.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:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(t,{emit:n}){var O;const a=n,o=t,{i18n:{t:i}}=Se.useI18n(),r=Se.usePluginMetaData(),{setFieldType:s}=Se.usePluginHelpers(),{getPropValue:l}=U.useHelpers(),c=e.computed(()=>{var w;return(w=Ve.item[o.config.app])==null?void 0:w[o.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,o.scopedEntityType).replace(/{entityId}/gi,o.scopedEntityId).concat(o.expandPartial?"?expand_partials=true":"")}),m=e.computed(()=>{var S,A;const w={},B=((S=f.value)==null?void 0:S.fields)||[];for(let y=0;y<B.length;y++){const E=f.value.fields[y],L=(A=Object.keys(E))==null?void 0:A[0];s(w,L,E[L])}return{...w,instance_name:{section:U.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:U.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:U.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:U.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:U.ConfigurationSchemaSection.Basic,order:6},protocols:{type:U.ConfigurationSchemaType.BadgeTag,section:U.ConfigurationSchemaSection.Basic,order:7}}}),p=e.computed(()=>{var B,S,A;if(!((B=f.value)!=null&&B.fields))return[];const w=(S=f.value.fields)==null?void 0:S.find(y=>{var L;return((L=Object.keys(y))==null?void 0:L[0])===Yo});return((A=w==null?void 0:w[Yo])==null?void 0:A.fields)||[]}),u=e.computed(()=>{var B,S;const w={};if(!p.value)return w;for(let A=0;A<((B=p.value)==null?void 0:B.length);A++){const y=p.value[A],E=(S=Object.keys(y))==null?void 0:S[0],L=y[E];L.required&&(w[E]={order:1}),s(w,E,L)}return w}),{getMessageFromError:g}=U.useErrors(),{axiosInstance:h}=U.useAxios((O=o.config)==null?void 0:O.axiosRequestConfig),C=e.computed(()=>{var B,S;let w=`${o.config.apiBaseUrl}${Ve.form[o.config.app].pluginSchema}`;return o.config.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,((B=o.config)==null?void 0:B.controlPlaneId)||""):o.config.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,(S=o.config)!=null&&S.workspace?`/${o.config.workspace}`:"")),w=w.replace(/{plugin}/gi,o.config.pluginType),w}),f=e.ref({});U.useSchemaProvider(f);const b=e.ref(!1),k=e.ref("");return e.onBeforeMount(async()=>{b.value=!0;try{const{data:w}=await h.get(C.value);f.value=w}catch(w){k.value=g(w),a("error:fetch-schema",w)}finally{b.value=!1}}),(w,B)=>{const S=e.resolveComponent("KSkeleton"),A=e.resolveComponent("KEmptyState"),y=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",jR,[b.value?(e.openBlock(),e.createBlock(S,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):k.value?(e.openBlock(),e.createBlock(A,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(k.value),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(U.EntityBaseConfigCard),{key:2,config:t.config,"config-card-doc":t.configCardDoc,"config-schema":m.value,"entity-type":e.unref(U.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":t.hideTitle,"plugin-config-key":Yo,"plugin-config-schema":u.value,"onFetch:error":B[0]||(B[0]=E=>w.$emit("fetch:error",E)),"onFetch:success":B[1]||(B[1]=E=>w.$emit("fetch:success",E)),onLoading:B[2]||(B[2]=E=>w.$emit("loading",E))},{name:e.withCtx(E=>[e.createElementVNode("div",GR,[e.createVNode(Oa,{class:"plugin-icon",name:e.unref(l)("rowValue",E),size:24},null,8,["name"]),e.createElementVNode("span",FR,e.toDisplayString(e.unref(r).getDisplayName(e.unref(l)("rowValue",E))),1)])]),consumer:e.withCtx(E=>[e.unref(l)("rowValue",E)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(U.InternalLinkItem),{key:1,item:{key:e.unref(l)("rowValue",E).id,value:e.unref(l)("rowValue",E).id,type:e.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>w.$emit("navigation-click",e.unref(l)("rowValue",E).id,"consumer")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",E).label}),"data-testid":"consumer-copy-uuid",text:e.unref(l)("rowValue",E).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",HR,"–"))]),route:e.withCtx(E=>[e.unref(l)("rowValue",E)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(U.InternalLinkItem),{key:1,item:{key:e.unref(l)("rowValue",E).id,value:e.unref(l)("rowValue",E).id,type:e.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>w.$emit("navigation-click",e.unref(l)("rowValue",E).id,"route")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",E).label}),"data-testid":"route-copy-uuid",text:e.unref(l)("rowValue",E).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",YR,"–"))]),service:e.withCtx(E=>[e.unref(l)("rowValue",E)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(U.InternalLinkItem),{key:1,item:{key:e.unref(l)("rowValue",E).id,value:e.unref(l)("rowValue",E).id,type:e.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>w.$emit("navigation-click",e.unref(l)("rowValue",E).id,"service")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",E).label}),"data-testid":"service-copy-uuid",text:e.unref(l)("rowValue",E).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",KR,"–"))]),consumer_group:e.withCtx(E=>[e.unref(l)("rowValue",E)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(U.InternalLinkItem),{key:1,item:{key:e.unref(l)("rowValue",E).id,value:e.unref(l)("rowValue",E).id,type:e.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>w.$emit("navigation-click",e.unref(l)("rowValue",E).id,"consumer_group")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",E).label}),"data-testid":"consumer-group-copy-uuid",text:e.unref(l)("rowValue",E).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",zR,"–"))]),partials:e.withCtx(E=>{var L,I,x,V,P,Q,le,G,K;return[e.unref(l)("rowValue",E)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(U.InternalLinkItem),{key:1,item:{key:(I=(L=e.unref(l)("rowValue",E))==null?void 0:L[0])==null?void 0:I.id,value:((V=(x=e.unref(l)("rowValue",E))==null?void 0:x[0])==null?void 0:V.id)+((Q=(P=e.unref(l)("rowValue",E))==null?void 0:P[0])!=null&&Q.name?"/"+((G=(le=e.unref(l)("rowValue",E))==null?void 0:le[0])==null?void 0:G.name):""),type:e.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var re,X;return w.$emit("navigation-click",(X=(re=e.unref(l)("rowValue",E))==null?void 0:re[0])==null?void 0:X.id,"partial")}},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(y,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(l)("row",E).label}),"data-testid":"partial-copy-uuid",text:(K=e.unref(l)("rowValue",E))==null?void 0:K[0].id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",QR,"–"))]}),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-949f887c"]]),{usePluginMetaData:qR,useProvideExperimentalFreeForms:JR}=Se;$.EXPERIMENTAL_FREE_FORM_PROVIDER=eo,$.EntityTypeIdField=Ut,$.PLUGIN_GROUPS_COLLAPSE_STATUS=si,$.PluginConfigCard=XR,$.PluginForm=_O,$.PluginGroup=R,$.PluginGroupArray=ri,$.PluginIcon=Oa,$.PluginList=pR,$.PluginPartialType=_n,$.PluginScope=d,$.PluginSelect=UR,$.PluginSelectCard=jo,$.PluginSelectGrid=Ho,$.VueFormGenerator=Le,$.getPluginIconURL=qr,$.pluginEndpoints=Ve,$.usePluginMetaData=qR,$.useProvideExperimentalFreeForms=JR,Object.defineProperty($,Symbol.toStringTag,{value:"Module"})});
|