@kong-ui-public/entities-plugins 2.12.11 → 2.12.12

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.
@@ -1453,7 +1453,7 @@ function V1() {
1453
1453
  return {
1454
1454
  getAxiosInstance: (e = {}) => {
1455
1455
  try {
1456
- const a = Do("get-axios-instance");
1456
+ const a = Do("get-axios-instance", void 0);
1457
1457
  return typeof a == "function" ? a(e) : Nc.create({
1458
1458
  withCredentials: !0,
1459
1459
  timeout: 3e4,
@@ -42,7 +42,7 @@ ${o}</tr>
42
42
  `}tablecell(o,i){const a=i.header?"th":"td";return(i.align?`<${a} align="${i.align}">`:`<${a}>`)+o+`</${a}>
43
43
  `}strong(o){return`<strong>${o}</strong>`}em(o){return`<em>${o}</em>`}codespan(o){return`<code>${o}</code>`}br(){return"<br>"}del(o){return`<del>${o}</del>`}link(o,i,a){const s=Ts(o);if(s===null)return a;o=s;let c='<a href="'+o+'"';return i&&(c+=' title="'+i+'"'),c+=">"+a+"</a>",c}image(o,i,a){const s=Ts(o);if(s===null)return a;o=s;let c=`<img src="${o}" alt="${a}"`;return i&&(c+=` title="${i}"`),c+=">",c}text(o){return o}}class Yo{strong(o){return o}em(o){return o}codespan(o){return o}del(o){return o}html(o){return o}text(o){return o}link(o,i,a){return""+a}image(o,i,a){return""+a}br(){return""}}class ln{constructor(o){Xe(this,"options");Xe(this,"renderer");Xe(this,"textRenderer");this.options=o||Xn,this.options.renderer=this.options.renderer||new Er,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new Yo}static parse(o,i){return new ln(i).parse(o)}static parseInline(o,i){return new ln(i).parseInline(o)}parse(o,i=!0){let a="";for(let s=0;s<o.length;s++){const c=o[s];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[c.type]){const d=c,u=this.options.extensions.renderers[d.type].call({parser:this},d);if(u!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(d.type)){a+=u||"";continue}}switch(c.type){case"space":continue;case"hr":{a+=this.renderer.hr();continue}case"heading":{const d=c;a+=this.renderer.heading(this.parseInline(d.tokens),d.depth,Yp(this.parseInline(d.tokens,this.textRenderer)));continue}case"code":{const d=c;a+=this.renderer.code(d.text,d.lang,!!d.escaped);continue}case"table":{const d=c;let u="",m="";for(let k=0;k<d.header.length;k++)m+=this.renderer.tablecell(this.parseInline(d.header[k].tokens),{header:!0,align:d.align[k]});u+=this.renderer.tablerow(m);let y="";for(let k=0;k<d.rows.length;k++){const b=d.rows[k];m="";for(let B=0;B<b.length;B++)m+=this.renderer.tablecell(this.parseInline(b[B].tokens),{header:!1,align:d.align[B]});y+=this.renderer.tablerow(m)}a+=this.renderer.table(u,y);continue}case"blockquote":{const d=c,u=this.parse(d.tokens);a+=this.renderer.blockquote(u);continue}case"list":{const d=c,u=d.ordered,m=d.start,y=d.loose;let k="";for(let b=0;b<d.items.length;b++){const B=d.items[b],x=B.checked,L=B.task;let S="";if(B.task){const R=this.renderer.checkbox(!!x);y?B.tokens.length>0&&B.tokens[0].type==="paragraph"?(B.tokens[0].text=R+" "+B.tokens[0].text,B.tokens[0].tokens&&B.tokens[0].tokens.length>0&&B.tokens[0].tokens[0].type==="text"&&(B.tokens[0].tokens[0].text=R+" "+B.tokens[0].tokens[0].text)):B.tokens.unshift({type:"text",text:R+" "}):S+=R+" "}S+=this.parse(B.tokens,y),k+=this.renderer.listitem(S,L,!!x)}a+=this.renderer.list(k,u,m);continue}case"html":{const d=c;a+=this.renderer.html(d.text,d.block);continue}case"paragraph":{const d=c;a+=this.renderer.paragraph(this.parseInline(d.tokens));continue}case"text":{let d=c,u=d.tokens?this.parseInline(d.tokens):d.text;for(;s+1<o.length&&o[s+1].type==="text";)d=o[++s],u+=`
44
44
  `+(d.tokens?this.parseInline(d.tokens):d.text);a+=i?this.renderer.paragraph(u):u;continue}default:{const d='Token with "'+c.type+'" type was not found.';if(this.options.silent)return console.error(d),"";throw new Error(d)}}}return a}parseInline(o,i){i=i||this.renderer;let a="";for(let s=0;s<o.length;s++){const c=o[s];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[c.type]){const d=this.options.extensions.renderers[c.type].call({parser:this},c);if(d!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(c.type)){a+=d||"";continue}}switch(c.type){case"escape":{const d=c;a+=i.text(d.text);break}case"html":{const d=c;a+=i.html(d.text);break}case"link":{const d=c;a+=i.link(d.href,d.title,this.parseInline(d.tokens,i));break}case"image":{const d=c;a+=i.image(d.href,d.title,d.text);break}case"strong":{const d=c;a+=i.strong(this.parseInline(d.tokens,i));break}case"em":{const d=c;a+=i.em(this.parseInline(d.tokens,i));break}case"codespan":{const d=c;a+=i.codespan(d.text);break}case"br":{a+=i.br();break}case"del":{const d=c;a+=i.del(this.parseInline(d.tokens,i));break}case"text":{const d=c;a+=i.text(d.text);break}default:{const d='Token with "'+c.type+'" type was not found.';if(this.options.silent)return console.error(d),"";throw new Error(d)}}}return a}}class Hi{constructor(o){Xe(this,"options");this.options=o||Xn}preprocess(o){return o}postprocess(o){return o}processAllTokens(o){return o}}Xe(Hi,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens"]));class fm{constructor(...o){Bs(this,tr);Bs(this,Gr);Xe(this,"defaults",No());Xe(this,"options",this.setOptions);Xe(this,"parse",To(this,tr,vs).call(this,sn.lex,ln.parse));Xe(this,"parseInline",To(this,tr,vs).call(this,sn.lexInline,ln.parseInline));Xe(this,"Parser",ln);Xe(this,"Renderer",Er);Xe(this,"TextRenderer",Yo);Xe(this,"Lexer",sn);Xe(this,"Tokenizer",br);Xe(this,"Hooks",Hi);this.use(...o)}walkTokens(o,i){var s,c;let a=[];for(const d of o)switch(a=a.concat(i.call(this,d)),d.type){case"table":{const u=d;for(const m of u.header)a=a.concat(this.walkTokens(m.tokens,i));for(const m of u.rows)for(const y of m)a=a.concat(this.walkTokens(y.tokens,i));break}case"list":{const u=d;a=a.concat(this.walkTokens(u.items,i));break}default:{const u=d;(c=(s=this.defaults.extensions)==null?void 0:s.childTokens)!=null&&c[u.type]?this.defaults.extensions.childTokens[u.type].forEach(m=>{const y=u[m].flat(1/0);a=a.concat(this.walkTokens(y,i))}):u.tokens&&(a=a.concat(this.walkTokens(u.tokens,i)))}}return a}use(...o){const i=this.defaults.extensions||{renderers:{},childTokens:{}};return o.forEach(a=>{const s={...a};if(s.async=this.defaults.async||s.async||!1,a.extensions&&(a.extensions.forEach(c=>{if(!c.name)throw new Error("extension name required");if("renderer"in c){const d=i.renderers[c.name];d?i.renderers[c.name]=function(...u){let m=c.renderer.apply(this,u);return m===!1&&(m=d.apply(this,u)),m}:i.renderers[c.name]=c.renderer}if("tokenizer"in c){if(!c.level||c.level!=="block"&&c.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const d=i[c.level];d?d.unshift(c.tokenizer):i[c.level]=[c.tokenizer],c.start&&(c.level==="block"?i.startBlock?i.startBlock.push(c.start):i.startBlock=[c.start]:c.level==="inline"&&(i.startInline?i.startInline.push(c.start):i.startInline=[c.start]))}"childTokens"in c&&c.childTokens&&(i.childTokens[c.name]=c.childTokens)}),s.extensions=i),a.renderer){const c=this.defaults.renderer||new Er(this.defaults);for(const d in a.renderer){if(!(d in c))throw new Error(`renderer '${d}' does not exist`);if(d==="options")continue;const u=d,m=a.renderer[u],y=c[u];c[u]=(...k)=>{let b=m.apply(c,k);return b===!1&&(b=y.apply(c,k)),b||""}}s.renderer=c}if(a.tokenizer){const c=this.defaults.tokenizer||new br(this.defaults);for(const d in a.tokenizer){if(!(d in c))throw new Error(`tokenizer '${d}' does not exist`);if(["options","rules","lexer"].includes(d))continue;const u=d,m=a.tokenizer[u],y=c[u];c[u]=(...k)=>{let b=m.apply(c,k);return b===!1&&(b=y.apply(c,k)),b}}s.tokenizer=c}if(a.hooks){const c=this.defaults.hooks||new Hi;for(const d in a.hooks){if(!(d in c))throw new Error(`hook '${d}' does not exist`);if(d==="options")continue;const u=d,m=a.hooks[u],y=c[u];Hi.passThroughHooks.has(d)?c[u]=k=>{if(this.defaults.async)return Promise.resolve(m.call(c,k)).then(B=>y.call(c,B));const b=m.call(c,k);return y.call(c,b)}:c[u]=(...k)=>{let b=m.apply(c,k);return b===!1&&(b=y.apply(c,k)),b}}s.hooks=c}if(a.walkTokens){const c=this.defaults.walkTokens,d=a.walkTokens;s.walkTokens=function(u){let m=[];return m.push(d.call(this,u)),c&&(m=m.concat(c.call(this,u))),m}}this.defaults={...this.defaults,...s}}),this}setOptions(o){return this.defaults={...this.defaults,...o},this}lexer(o,i){return sn.lex(o,i??this.defaults)}parser(o,i){return ln.parse(o,i??this.defaults)}}tr=new WeakSet,vs=function(o,i){return(a,s)=>{const c={...s},d={...this.defaults,...c};this.defaults.async===!0&&c.async===!1&&(d.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),d.async=!0);const u=To(this,Gr,Rp).call(this,!!d.silent,!!d.async);if(typeof a>"u"||a===null)return u(new Error("marked(): input parameter is undefined or null"));if(typeof a!="string")return u(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(a)+", string expected"));if(d.hooks&&(d.hooks.options=d),d.async)return Promise.resolve(d.hooks?d.hooks.preprocess(a):a).then(m=>o(m,d)).then(m=>d.hooks?d.hooks.processAllTokens(m):m).then(m=>d.walkTokens?Promise.all(this.walkTokens(m,d.walkTokens)).then(()=>m):m).then(m=>i(m,d)).then(m=>d.hooks?d.hooks.postprocess(m):m).catch(u);try{d.hooks&&(a=d.hooks.preprocess(a));let m=o(a,d);d.hooks&&(m=d.hooks.processAllTokens(m)),d.walkTokens&&this.walkTokens(m,d.walkTokens);let y=i(m,d);return d.hooks&&(y=d.hooks.postprocess(y)),y}catch(m){return u(m)}}},Gr=new WeakSet,Rp=function(o,i){return a=>{if(a.message+=`
45
- Please report this to https://github.com/markedjs/marked.`,o){const s="<p>An error occurred:</p><pre>"+Lt(a.message+"",!0)+"</pre>";return i?Promise.resolve(s):s}if(i)return Promise.reject(a);throw a}};const Jn=new fm;function Re(e,o){return Jn.parse(e,o)}Re.options=Re.setOptions=function(e){return Jn.setOptions(e),Re.defaults=Jn.defaults,Is(Re.defaults),Re},Re.getDefaults=No,Re.defaults=Xn,Re.use=function(...e){return Jn.use(...e),Re.defaults=Jn.defaults,Is(Re.defaults),Re},Re.walkTokens=function(e,o){return Jn.walkTokens(e,o)},Re.parseInline=Jn.parseInline,Re.Parser=ln,Re.parser=ln.parse,Re.Renderer=Er,Re.TextRenderer=Yo,Re.Lexer=sn,Re.lexer=sn.lex,Re.Tokenizer=br,Re.Hooks=Hi,Re.parse=Re,Re.options,Re.setOptions,Re.use,Re.walkTokens,Re.parseInline,ln.parse,sn.lex;var Uo=(e=>(e.GatewayService="service",e.Route="route",e.Consumer="consumer",e.ConsumerGroup="consumer group",e.Plugin="plugin",e.Upstream="upstream",e.Certificate="certificate",e.CACertificate="ca certificate",e.SNI="SNI",e.Key="key",e.KeySet="key set",e.Vault="vault",e.Application="application",e.Developer="developer",e.acls="ACL Credential",e["basic-auth"]="Basic Auth Credential",e["key-auth"]="Key Auth Credential",e["key-auth-enc"]="Key Auth Encrypted Credential",e.oauth2="OAuth 2.0 Credential",e["hmac-auth"]="HMAC Credential",e.jwt="JWT Credential",e.Target="target",e.Policy="policy",e))(Uo||{}),hn=(e=>(e.Edit="edit",e.Create="create",e))(hn||{}),Wn=(e=>(e[e.Loading=0]="Loading",e[e.Idle=1]="Idle",e[e.NoResults=2]="NoResults",e[e.Error=3]="Error",e))(Wn||{}),Se=(e=>(e.ID="id",e.IdArray="id-array",e.Text="plain-text",e.Date="date",e.Redacted="redacted",e.RedactedArray="redacted-array",e.Json="json",e.JsonArray="json-array",e.BadgeTag="badge-tag",e.BadgeStatus="badge-status",e.BadgeMethod="badge-method",e.LinkInternal="link-internal",e.LinkExternal="link-external",e))(Se||{}),ut=(e=>(e.Basic="basic",e.Advanced="advanced",e.Plugin="plugin",e))(ut||{});function gm(){return{getAxiosInstance:(e={})=>{try{const o=t.inject("get-axios-instance");return typeof o=="function"?o(e):xs.create({withCredentials:!0,timeout:3e4,...e})}catch(o){return console.warn("getAxiosInstance:",o.message||o),xs.create({withCredentials:!0,timeout:3e4,...e})}},getTraceIdFromError:e=>{var o;return((o=e==null?void 0:e.response)==null?void 0:o.headers["x-datadog-trace-id"])||""}}}function hm(){return{debounce:(e,o)=>{let i;return(...a)=>{clearTimeout(i),i=window==null?void 0:window.setTimeout(()=>{e(...a)},o)}}}}const Go="khcp-user-table-preferences",Am={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function ym(){const e=i=>{if(typeof i=="string")try{return JSON.parse(i)}catch(a){console.error("useTablePreferences(tryParseJson)",a);return}},o=()=>{const i=e(localStorage.getItem(Go));return!i||!Object.keys(i).length?new Map:new Map(Object.entries(i))};return{setTablePreferences:(i,a)=>{try{const s=o();s.set(i,a),localStorage.setItem(Go,JSON.stringify(Object.fromEntries(s.entries())))}catch(s){console.error("useTablePreferences(setTablePreferences)",s)}},getTablePreferences:i=>{const a=o();return(a==null?void 0:a.get(i))||void 0||Am},deleteAllTablePreferences:()=>{localStorage.removeItem(Go)}}}function Ho(e={}){const{getAxiosInstance:o}=gm();return{axiosInstance:o(e)}}const bm={actions:{copyId:"Copy ID",copied_id:'Copied "{id}" to the clipboard',copyToClipboard:"Copied successfully!",copyToClipboardFailed:"Failed to copy to the clipboard"}},wm={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},Cm={actions:{viewConfiguration:"View Configuration",save:"Save",cancel:"Cancel",back:"Back"},configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML or JSON. This allows for straightforward importing into APIOps tools like decK with YAML, or Insomnia and cURL with JSON.",yaml:"YAML",json:"JSON"},errors:{edit:"The entity could not be edited at this time."}},km={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Em={title:"Configuration",actions:{copy:"Copy JSON"},sections:{advanced:"Advanced",plugin:"Plugin Specific Configuration"},commonFields:{id_label:"ID",name_label:"Name",enabled_label:"Enabled",enabled_tooltip:"Enabled is FTW",updated_at_label:"Last Updated",created_at_label:"Created",tags_label:"Tags",link:"Link"},statusBadge:{enabledLabel:"Enabled",disabledLabel:"Disabled"},copy:{tooltip:"Copy {label}",success:"Copied!"},errors:{load:"The entity configuration data could not be loaded at this time.",copy:"Failed to copy to clipboard"},general:{entryTitle:"Entry {index}",structuredFormat:"Structured"}},Bm={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},vm={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},xm={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Im={enable:{title:"Enable {entityType}",message:"Are you sure you want to enable the {entityType} {entityName}?",confirmText:"Yes, enable"},disable:{title:"Disable {entityType}",message:"Are you sure you want to disable the {entityType} {entityName}?",confirmText:"Yes, disable"}},Sm={global:bm,deleteModal:wm,baseForm:Cm,baseTable:km,baseConfigCard:Em,filter:Bm,debouncedFilter:vm,errors:xm,toggleModal:Im};function Fo(){const e=Tn.createI18n("en-us",Sm);return{i18n:e,i18nT:Tn.i18nTComponent(e)}}function Hs(){const e=(i,a)=>(a==null?void 0:a[i])??void 0,o=(i,a)=>{if(i.length!==a.length)return!1;const s=new Set([...i,...a]);for(const c of s){const d=i.filter(m=>m===c).length,u=a.filter(m=>m===c).length;if(d!==u)return!1}return!0};return{getPropValue:e,objectsAreEqual:(i,a,s)=>{if(s){if(Object.keys(i).length===Object.keys(a).length)for(const c in i)if(Array.isArray(i[c])&&Array.isArray(a[c])){if(o(i[c],a[c]))continue;return!1}else{if(i[c]===a[c])continue;return!1}else return!1;return!0}try{return JSON.stringify(i)===JSON.stringify(a)}catch{return!1}},sortAlpha:i=>(a,s)=>{let c=a[i]===void 0||a[i]===null?"":a[i],d=s[i]===void 0||s[i]===null?"":s[i];return Array.isArray(a[i])&&(c=a[i][0]),Array.isArray(s[i])&&(d=s[i][0]),c.localeCompare(d)},isValidUuid:i=>i?/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/.test(i):!1}}function Om(e,o,i,a={fetchedItemsKey:"data",searchKeys:["id"]}){i||(i="100");const{axiosInstance:s}=Ho({headers:e.requestHeaders}),{i18n:{t:c}}=Fo(),{debounce:d}=hm(),u=d(async Y=>{await D(Y)},200),m=t.ref(!1),y=t.ref(""),k=t.ref(""),b=t.ref([]),B=t.ref([]),x=t.ref(void 0),L=t.unref(o);let S=`${e.apiBaseUrl}${L}`;e.app==="konnect"?S=S.replace(/{controlPlaneId}/gi,(e==null?void 0:e.controlPlaneId)||""):e.app==="kongManager"&&(S=S.replace(/\/{workspace}/gi,e!=null&&e.workspace?`/${e.workspace}`:""));const{isValidUuid:R}=Hs(),T=async()=>{try{m.value=!0;const{data:Y}=await s.get(`${S}?size=${i}`);Y!=null&&Y.next||(x.value=a.fetchedItemsKey in Y?Y[a.fetchedItemsKey]:[]),B.value=a.fetchedItemsKey in Y?Y[a.fetchedItemsKey]:[],b.value=B.value}catch{b.value=[],y.value=c("debouncedFilter.errors.fetch")}finally{m.value=!1}},V=t.ref(""),D=async Y=>{var C,M,O;if(V.value!==Y)if(V.value=Y||"",x.value===void 0)try{if(m.value=!0,y.value="",k.value="",e.app==="konnect"){let Z=S+"";Y&&(Z+=`/${Y}`);const{data:J}=await s.get(`${Z}?size=${i}`);a.fetchedItemsKey in J?b.value=J[a.fetchedItemsKey]:J!=null&&J.id?b.value=[J]:b.value=[]}else if(Y){const Z=[];R(Y)&&a.searchKeys.includes("id")?Z.push((async()=>{const{data:X}=await s.get(`${S}/${Y}`);return[X[a.fetchedItemsKey]??X]})()):Z.push(...a.searchKeys.filter(X=>X!=="id").map(async X=>{const{data:K}=await s.get(`${S}?${X}=${Y}`);return K[a.fetchedItemsKey]}));const J=await Promise.all(Z),ae=new Set;b.value=[],(C=J==null?void 0:J.forEach)==null||C.call(J,X=>{var K;(K=X==null?void 0:X.forEach)==null||K.call(X,te=>{ae.has(te.id)||(ae.add(te.id),b.value.push(te))})})}else b.value=B.value}catch(Z){((M=Z==null?void 0:Z.response)==null?void 0:M.status)===404?k.value=c("debouncedFilter.errors.invalid"):(b.value=[],y.value=c("debouncedFilter.errors.fetch"))}finally{m.value=!1}else m.value=!0,k.value="",Y?(b.value=(O=x.value)==null?void 0:O.filter(Z=>{var J;let ae=!1;for(const X of a.searchKeys){const K=typeof Z[X]=="string"?(J=Z[X])==null?void 0:J.toLowerCase():Z[X];K!=null&&K.includes(Y.toLowerCase())&&(ae=!0)}return ae}),(!b.value||!b.value.length)&&(k.value=c("debouncedFilter.errors.invalid"))):b.value=x.value,m.value=!1};return{loading:m,error:y,validationError:k,results:b,allRecords:x,loadItems:T,debouncedQueryChange:u}}function Mm(e,o){const i=t.unref(o),a=t.computed(()=>e.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${i}`):new URL(i));return a.value.search="",s=>`${a.value.href}/${s}`}function Tm(){const{i18n:{t:e}}=Fo();return{getMessageFromError:o=>{var i,a,s,c;if(!o)return e("errors.unexpected");if(((i=o==null?void 0:o.response)==null?void 0:i.status)===401)return console.warn("getMessageFromError: User auth token is expired or missing, returning empty message."),"";if((a=o==null?void 0:o.response)!=null&&a.data){if(o.response.data.detail)return o.response.data.detail;if((s=o.response.data.details)!=null&&s.length)return o.response.data.details.map(d=>{let u=e("errors.unexpected");return d.messages&&typeof d.messages=="object"&&d.messages.length&&(u=d.messages.join(", ")),d.field?`${d.field} - ${u}`:u}).join("; ");if(o.response.data.message){const{message:d}=o.response.data;return Array.isArray(d)?(c=d[0])!=null&&c.constraints?Object.values(d[0].constraints)[0]:d[0]:d}if(typeof o.response.data=="string")return o.response.data;if(typeof o.response.data=="object")return Object.keys(o.response.data).map(d=>`${d} ${o.response.data[d]}`).join(", ")}return o.message||e("errors.unexpected")}}}function Nm(e){const o=window.location.origin,i=o.endsWith("/")?o:`${o}/`;try{const a=e.join("/"),s=`${i}${a}`,c=e.some(d=>d.trim()==="");if(/^(https:\/\/(www\.)?([a-zA-Z0-9-]+\.){1,}[a-zA-Z]{2,}(:[0-9]+)?(\/[^\/]+)*)$|^(https|http):\/\/localhost(:[0-9]+)?(\/[^\/]+)*$/.test(s)&&!c&&new URL(s))return`${i}${a}`;throw new Error("Invalid url")}catch(a){return console.warn("Failed to build valid URL:",a),""}}function Fs(e,o){const i=t.ref(t.unref(e)),a=t.ref(t.unref(o)),s=t.computed(()=>!!(i.value.app==="konnect"||i.value.isExactMatch)),c=t.computed(()=>a.value.startsWith("/")?new URL(`${window.location.origin}${a.value}`):new URL(a.value));return d=>{const{page:u,pageSize:m,offset:y,sortColumnKey:k,sortColumnOrder:b,query:B}=d;try{let x=new URL(c.value.href);return s.value&&B?(x.search="",x=i.value.app==="konnect"?new URL(`${x.href}?filter[name][contains]=${B}`):new URL(`${x.href}/${B}/`)):(s.value||new URLSearchParams(B).forEach((L,S)=>{x.searchParams.append(S,L)}),k&&x.searchParams.append("sort_by",k),b==="desc"&&x.searchParams.append("sort_desc","1"),x.searchParams.append("size",String(m))),y&&u!==1&&x.searchParams.append("offset",String(y)),x.href}catch(x){return console.error("RouteList(fetcher)",x),a.value}}}function Rm(e,o,i="data"){const a=t.unref(o),{axiosInstance:s}=Ho({headers:e.requestHeaders}),c=Fs(e,a),d=t.ref({status:Wn.Idle});return{fetcher:async u=>{try{d.value={status:Wn.Loading};let m=c(u);m.includes("filter[name]")&&(m=`${m}&page[size]=${u.pageSize}&page[number]=${u.page}`);const{data:y}=await s.get(m),k=i&&i.replace(/[^\w-_]/gi,"");let b;y[k]&&Array.isArray(y[k])?b=y[k]:Array.isArray(y)?b=y:b=Object.keys(y).length?[y]:[];const B={data:b,total:b.length,...y.offset?{pagination:{offset:y.offset}}:null};return d.value={status:Wn.Idle,response:B},B}catch(m){const y={data:[],total:0};return u.query&&m.response.status===404?(d.value={status:Wn.NoResults,response:y,error:m},y):(d.value={status:Wn.Error,response:y,error:m},y)}},fetcherState:d}}function Vm(){const e=(i,a="_")=>i?i.split(a).map(s=>s.toLowerCase()==="id"?s.toUpperCase():s.charAt(0).toUpperCase()+s.substring(1)).join(" "):"",o=/(?:^|[\s-:'"])\w/g;return{capitalize:i=>i?i.replace(o,a=>a.toUpperCase()):"",convertKeyToTitle:e}}const zs=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,Ks=e=>{if(typeof e!="string")throw new TypeError("Invalid argument expected string");const o=e.match(zs);if(!o)throw new Error(`Invalid argument not valid semver ('${e}' received)`);return o.shift(),o},qs=e=>e==="*"||e==="x"||e==="X",Xs=e=>{const o=parseInt(e,10);return isNaN(o)?e:o},Dm=(e,o)=>typeof e!=typeof o?[String(e),String(o)]:[e,o],Lm=(e,o)=>{if(qs(e)||qs(o))return 0;const[i,a]=Dm(Xs(e),Xs(o));return i>a?1:i<a?-1:0},Js=(e,o)=>{for(let i=0;i<Math.max(e.length,o.length);i++){const a=Lm(e[i]||"0",o[i]||"0");if(a!==0)return a}return 0},jm=(e,o)=>{const i=Ks(e),a=Ks(o),s=i.pop(),c=a.pop(),d=Js(i,a);return d!==0?d:s&&c?Js(s.split("."),c.split(".")):s||c?s?-1:1:0},Ws=(e,o,i)=>{Pm(i);const a=jm(e,o);return Zs[i].includes(a)},Zs={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},Qs=Object.keys(Zs),Pm=e=>{if(typeof e!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof e}`);if(Qs.indexOf(e)===-1)throw new Error(`Invalid operator, expected one of ${Qs.join("|")}`)},Ym=e=>typeof e=="string"&&/^[v\d]/.test(e)&&zs.test(e);function Um(e){const{gatewayInfo:o,supportedRange:i}=e;if(!o)return!0;const{edition:a,version:s}=o;if(!Ym(s))return console.error("Invalid version"),!1;const c=i[a];if(!c)return!1;const[d,u]=c;return!(d&&Ws(s,d,"<")||u&&Ws(s,u,">"))}function Gm(e){const o=t.ref(0),i=t.ref(0),a=t.ref(!1);return t.watch(e,s=>{s&&!a.value&&(o.value=s.offsetWidth,i.value=s.scrollWidth,a.value=!0)}),{isTruncated:t.computed(()=>o.value<i.value)}}const rt={useAxios:Ho,useDebouncedFilter:Om,useDeleteUrlBuilder:Mm,useErrors:Tm,useExternalLinkCreator:Nm,useFetcher:Rm,useFetchUrlBuilder:Fs,useHelpers:Hs,useStringHelpers:Vm,useI18n:Fo,useGatewayFeatureSupported:Um,useTruncationDetector:Gm},Hm={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},Fm="Copy to clipboard",zm={message:Hm,iconTitle:Fm},Km="kong-ui-copy-uuid-notify",_s="24px",qm=(e,o)=>{const i=e.__vccOpts||e;for(const[a,s]of o)i[a]=s;return i},Xm=e=>(t.pushScopeId("data-v-13f41aa3"),e=e(),t.popScopeId(),e),Jm=["aria-hidden"],Wm={key:0,"data-testid":"kui-icon-svg-title"},Zm=Xm(()=>t.createElementVNode("path",{d:"M5 22C4.45 22 3.97917 21.8042 3.5875 21.4125C3.19583 21.0208 3 20.55 3 20V6H5V20H16V22H5ZM9 18C8.45 18 7.97917 17.8042 7.5875 17.4125C7.19583 17.0208 7 16.55 7 16V4C7 3.45 7.19583 2.97917 7.5875 2.5875C7.97917 2.19583 8.45 2 9 2H18C18.55 2 19.0208 2.19583 19.4125 2.5875C19.8042 2.97917 20 3.45 20 4V16C20 16.55 19.8042 17.0208 19.4125 17.4125C19.0208 17.8042 18.55 18 18 18H9ZM9 16H18V4H9V16Z",fill:"currentColor"},null,-1)),Qm=t.defineComponent({__name:"CopyIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:_s,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const o=String(e).replace(/px/gi,""),i=Number(o);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const o=e,i=t.computed(()=>{if(typeof o.size=="number"&&o.size>0)return`${o.size}px`;if(typeof o.size=="string"){const s=String(o.size).replace(/px/gi,""),c=Number(s);if(c&&!isNaN(c)&&Number.isInteger(c)&&c>0)return`${c}px`}return _s}),a=t.computed(()=>({boxSizing:"border-box",color:o.color,display:o.display,height:i.value,lineHeight:"0",width:i.value}));return(s,c)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon copy-icon","data-testid":"kui-icon-wrapper-copy-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-copy-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Wm,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Zm],8,Jm))]),_:1},8,["aria-hidden","style"]))}}),_m=qm(Qm,[["__scopeId","data-v-13f41aa3"]]),$m="16px",ef={class:"kong-ui-copy-uuid"},tf=["onClick"],$s=15,nf=t.defineComponent({__name:"CopyUuid",props:{uuid:{type:String,required:!0},idTooltip:{type:String,default:""},truncated:{type:Boolean,default:!0},useMono:{type:Boolean,default:!0},notify:{type:Function,default:void 0},iconColor:{type:String,default:"rgba(0, 0, 0, 0.45)"},tooltip:{type:String,default:""},successTooltip:{type:String,default:""},format:{type:String,required:!1,default:"uuid",validator:e=>["uuid","hidden","redacted","deleted"].includes(e)}},emits:["success","error"],setup(e,{emit:o}){const{t:i}=Tn.createI18n("en-us",zm),a=e,s=o,c=a.notify||t.inject(Km,()=>{}),d=t.computed(()=>a.idTooltip?{label:a.idTooltip,positionFixed:!0,placement:"bottomStart"}:{title:a.uuid}),u=t.computed(()=>!!(a.tooltip&&a.successTooltip)),m=t.ref(a.tooltip),y=t.computed(()=>a.tooltip?{label:m.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),k=t.computed(()=>{var x;return a.format==="redacted"?"*****":a.format==="deleted"?`*${(x=a.uuid)==null?void 0:x.substring(0,5)}`:a.uuid}),b=x=>{m.value=x,setTimeout(()=>{m.value=a.tooltip},1800)},B=x=>{var L,S;if(!x(a.uuid)){typeof c=="function"&&c({type:"error",message:i("message.fail")}),u.value?b(i("message.fail")):s("error",a.uuid);return}const R=((L=a.uuid)==null?void 0:L.length)>$s,T=a.format==="hidden"||a.format==="redacted"?i("message.success.prefix"):`"${((S=a.uuid)==null?void 0:S.substring(0,$s))+(R?"...":"")}"`;typeof c=="function"&&c({type:"success",message:`${T}${i("message.success.content")}`}),u.value?b(a.successTooltip):s("success",a.uuid)};return(x,L)=>{const S=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",ef,[e.format!=="hidden"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.idTooltip?"KTooltip":"div"),t.mergeProps({key:0},d.value,{"data-testid":"copy-id"}),{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["uuid-container",e.truncated?"truncated-uuid":null,e.useMono?"mono":null])},t.toDisplayString(k.value),3)]),_:1},16)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tooltip?"KTooltip":"div"),t.mergeProps(y.value,{class:"uuid-icon-wrapper"}),{default:t.withCtx(()=>[t.createVNode(S,null,{default:t.withCtx(({copyToClipboard:R})=>[t.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:t.withModifiers(T=>B(R),["stop"])},[t.createVNode(t.unref(_m),{class:"uuid-icon",color:e.iconColor,decorative:!!e.tooltip,size:t.unref($m),title:t.unref(i)("iconTitle")},null,8,["color","decorative","size","title"])],8,tf)]),_:1})]),_:1},16))])}}}),rf=(e,o)=>{const i=e.__vccOpts||e;for(const[a,s]of o)i[a]=s;return i},el=rf(nf,[["__scopeId","data-v-0c07874b"]]),of={key:0,class:"config-card-fieldset-title"},af=t.defineComponent({__name:"JsonCardItem",props:{item:{type:Object,required:!0},index:{type:Number,default:-1},isArrayItem:{type:Boolean,default:!1}},setup(e){const o=e,{i18n:{t:i}}=rt.useI18n(),{convertKeyToTitle:a}=rt.useStringHelpers(),s=t.computed(()=>o.item.key??"json-array-item"),c=t.computed(()=>o.item.value??o.item),d=t.computed(()=>{const m=JSON.parse(JSON.stringify(c.value));return o.isArrayItem&&delete m.name,m}),u=t.computed(()=>{var m;return o.isArrayItem?(m=c.value)!=null&&m.name?a(c.value.name,"_"):i("baseConfigCard.general.entryTitle",{index:o.index}):""});return(m,y)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.isArrayItem?"fieldset":"div"),{class:t.normalizeClass(e.isArrayItem?"config-card-fieldset":"config-card-json-item")},{default:t.withCtx(()=>[e.isArrayItem?(t.openBlock(),t.createElementBlock("legend",of,[t.createElementVNode("b",null,t.toDisplayString(u.value),1)])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(d.value),(k,b)=>(t.openBlock(),t.createBlock(zo,{key:`${s.value}-property-${b}`,item:{key:k,label:t.unref(a)(k),value:d.value[k]}},null,8,["item"]))),128))]),_:1},8,["class"]))}}),cn=(e,o)=>{const i=e.__vccOpts||e;for(const[a,s]of o)i[a]=s;return i},tl=cn(af,[["__scopeId","data-v-68ca83ec"]]),sf=t.defineComponent({__name:"InternalLinkItem",props:{item:{type:Object,required:!0}},emits:["navigation-click"],setup(e){const{i18n:{t:o}}=rt.useI18n();return(i,a)=>{const s=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(s,{appearance:"tertiary",class:"navigation-button",onClick:a[0]||(a[0]=c=>i.$emit("navigation-click",e.item))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.item.value||t.unref(o)("baseConfigCard.commonFields.link")),1)]),_:1})])}}}),Fi=cn(sf,[["__scopeId","data-v-c96811e5"]]),lf=t.defineComponent({__name:"StatusBadge",props:{status:{type:Boolean,default:!1}},setup(e){const{i18n:{t:o}}=rt.useI18n();return(i,a)=>{const s=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(s,{appearance:e.status?"success":"neutral"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.status?t.unref(o)("baseConfigCard.statusBadge.enabledLabel"):t.unref(o)("baseConfigCard.statusBadge.disabledLabel")),1)]),_:1},8,["appearance"])}}}),cf="#0044f4",df="#e0e4ea",uf="#3a3f51",pf="1px",mf="20px",ff={class:"config-card-details-row"},gf=["data-testid"],hf=["data-testid"],Af=["data-testid"],yf=["data-testid"],bf={key:1},wf=["data-testid"],Cf=["data-testid"],kf=["data-testid"],Ef=["data-testid"],Bf={name:"ConfigCardItem",components:{CopyUuid:el,JsonCardItem:tl,StatusBadge:lf,InternalLinkItem:Fi}},vf=t.defineComponent({...Bf,props:{item:{type:Object,required:!0},slim:{type:Boolean,required:!1,default:!1},truncated:{type:Boolean,required:!1,default:!1}},emits:["navigation-click"],setup(e,{emit:o}){t.useCssVars(L=>({"5ae2770e":k.value?"none":`solid ${t.unref(pf)} ${t.unref(df)}`,"4db3977e":y.value&&u.value?"block":"flex","1a7c5e02":y.value&&u.value?"100%":i.slim?"50%":"25%","1a77d24c":y.value&&u.value?"100%":i.slim?"50%":"75%"}));const i=e,a=o,s=t.useSlots(),{i18n:{t:c,formatUnixTimeStamp:d}}=rt.useI18n(),u=t.computed(()=>i.item.value!==void 0&&i.item.value!==null&&i.item.value!==""),m=t.computed(()=>!!(i.item.tooltip||s["label-tooltip"])),y=t.computed(()=>i.item.type===Se.Json||i.item.type===Se.JsonArray),k=t.computed(()=>i.item.type===Se.JsonArray),b=t.computed(()=>{switch(i.item.type){case Se.ID:return{tag:"CopyUuid",attrs:{"data-testid":`${i.item.key}-copy-uuid`,"success-tooltip":c("baseConfigCard.copy.success"),tooltip:c("baseConfigCard.copy.tooltip",{label:i.item.label}),truncated:!1,uuid:i.item.value,notify:()=>{}}};case Se.IdArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{"success-tooltip":c("baseConfigCard.copy.success"),tooltip:c("baseConfigCard.copy.tooltip",{label:i.item.label}),truncated:!1,notify:()=>{}}};case Se.Redacted:return{tag:"CopyUuid",attrs:{"data-testid":`${i.item.key}-copy-uuid-redacted`,format:"redacted","success-tooltip":c("baseConfigCard.copy.success"),tooltip:c("baseConfigCard.copy.tooltip",{label:i.item.label}),truncated:!1,uuid:i.item.value,notify:()=>{}}};case Se.RedactedArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{format:"redacted","success-tooltip":c("baseConfigCard.copy.success"),tooltip:c("baseConfigCard.copy.tooltip",{label:i.item.label}),truncated:!1,notify:()=>{}}};case Se.Date:return{tag:"div",attrs:{"data-testid":`${i.item.key}-date`},text:d(i.item.value)};case Se.BadgeStatus:return{tag:"StatusBadge",attrs:{"data-testid":`${i.item.key}-badge-status`,status:i.item.value}};case Se.BadgeTag:return{tag:"div",additionalComponent:"KBadge"};case Se.BadgeMethod:return{tag:"div",additionalComponent:"KMethodBadge"};case Se.LinkInternal:return{tag:"InternalLinkItem",attrs:{"data-testid":`${i.item.key}-internal-link`,item:i.item,onNavigationClick:L=>{a("navigation-click",L)}}};case Se.LinkExternal:return{tag:"KExternalLink",attrs:{"data-testid":`${i.item.key}-external-link`,href:i.item.value},text:i.item.value};case Se.Json:return{tag:"JsonCardItem",attrs:{"data-testid":`${i.item.key}-json-content`,item:i.item}};case Se.JsonArray:return{tag:"div",additionalComponent:"JsonCardItem",attrs:{"data-testid":`${i.item.key}-json-array-content`,item:i.item}};default:return{tag:"div",attrs:{"data-testid":`${i.item.key}-plain-text`},text:i.item.value}}}),B=t.ref(),{isTruncated:x}=rt.useTruncationDetector(B);return(L,S)=>{const R=t.resolveComponent("KLabel"),T=t.resolveComponent("KBadge"),V=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",ff,[t.createElementVNode("div",{class:"config-card-details-label","data-testid":`${e.item.key}-label`},[t.renderSlot(L.$slots,"label",{item:e.item},()=>[t.createVNode(R,{"tooltip-attributes":{maxWidth:"500px"}},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.item.label)+" ",1)]),_:2},[m.value?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{"data-testid":`${e.item.key}-label-tooltip`},[t.renderSlot(L.$slots,"label-tooltip",{},()=>[t.createTextVNode(t.toDisplayString(e.item.tooltip),1)],!0)],8,hf)]),key:"0"}:void 0]),1024)],!0)],8,gf),t.createElementVNode("div",{class:"config-card-details-value","data-testid":`${e.item.key}-property-value`},[t.renderSlot(L.$slots,e.item.key,{rowValue:e.item.value},()=>[u.value?(t.openBlock(),t.createElementBlock("div",bf,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(b.value.tag),t.normalizeProps(t.guardReactiveProps(b.value.attrs)),{default:t.withCtx(()=>[b.value.additionalComponent==="KBadge"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${e.item.key}-badge-tags`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(D,Y)=>(t.openBlock(),t.createBlock(T,{key:`${e.item.key}-badge-tag-${Y}`,class:"config-badge","data-testid":`${e.item.key}-badge-tag-${Y}`,tooltip:D,"truncation-tooltip":""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(D),1)]),_:2},1032,["data-testid","tooltip"]))),128))],8,wf)):t.createCommentVNode("",!0),b.value.additionalComponent==="CopyUuid"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"copy-uuid-array","data-testid":`${e.item.key}-copy-uuid-array`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(D,Y)=>(t.openBlock(),t.createBlock(t.unref(el),t.mergeProps(b.value.childAttrs,{key:`${e.item.key}-copy-uuid-${Y}`,"data-testid":`${e.item.key}-copy-uuid-${Y}`,uuid:D}),null,16,["data-testid","uuid"]))),128))],8,Cf)):b.value.additionalComponent==="KMethodBadge"?(t.openBlock(),t.createElementBlock("div",{key:2,class:"method-badge-array","data-testid":`${e.item.key}-badge-methods`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(D,Y)=>(t.openBlock(),t.createBlock(T,{key:`${e.item.key}-badge-method-${Y}`,appearance:Object.values(t.unref(Vp.BadgeMethodAppearances)).includes(D.toLowerCase())?D.toLowerCase():"custom",class:"config-badge","data-testid":`${e.item.key}-badge-method-${Y}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(D),1)]),_:2},1032,["appearance","data-testid"]))),128))],8,kf)):t.createCommentVNode("",!0),b.value.additionalComponent==="JsonCardItem"?(t.openBlock(),t.createElementBlock("div",{key:3,"data-testid":`${i.item.key}-json-array-content`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(D,Y)=>(t.openBlock(),t.createBlock(tl,{key:`json-array-item-${Y}`,index:Y,"is-array-item":"",item:D},null,8,["index","item"]))),128))],8,Ef)):(t.openBlock(),t.createBlock(V,{key:4,text:t.unref(x)?e.item.value:""},{default:t.withCtx(()=>[t.createElementVNode("span",{ref_key:"textContent",ref:B,class:t.normalizeClass(["attrs-data-text",{truncated:e.truncated}])},t.toDisplayString(b.value.text),3)]),_:1},8,["text"]))]),_:1},16))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${e.item.key}-no-value`}," – ",8,yf))],!0)],8,Af)])}}}),zo=cn(vf,[["__scopeId","data-v-f65fc52c"]]),xf={class:"json-config"},If={key:0,class:"json-endpoint"},Ko=t.defineComponent({__name:"JsonCodeBlock",props:{config:{type:Object,required:!1,default:()=>({})},fetcherUrl:{type:String,required:!1,default:""},jsonRecord:{type:Object,required:!0},requestMethod:{type:String,required:!1,default:""}},setup(e){t.useCssVars(s=>({"2d178975":`${a.value}ch`}));const o=e,i=t.computed(()=>o.jsonRecord),a=t.computed(()=>{var s;if(!o.fetcherUrl)return 0;const c=(s=o.fetcherUrl)==null?void 0:s.split("/");return c.length<2?0:41+(o.requestMethod==="post"?c[c.length-1]:c[c.length-2]).length});return(s,c)=>{var d;const u=t.resolveComponent("KBadge"),m=t.resolveComponent("KCodeBlock");return t.openBlock(),t.createElementBlock("div",xf,[o.fetcherUrl&&(d=o.config)!=null&&d.jsonYamlFormsEnabled?(t.openBlock(),t.createElementBlock("div",If,[t.createVNode(u,{appearance:o.requestMethod},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(o.requestMethod),1)]),_:1},8,["appearance"]),t.createVNode(m,{id:"json-endpoint-codeblock",code:o.fetcherUrl,"is-single-line":"",language:"json",theme:"dark"},null,8,["code"])])):t.createCommentVNode("",!0),o.jsonRecord?(t.openBlock(),t.createBlock(m,{key:1,id:"json-codeblock",class:t.normalizeClass({"json-content":o.fetcherUrl}),code:JSON.stringify(i.value,null,2),language:"json",theme:"dark"},null,8,["class","code"])):t.createCommentVNode("",!0)])}}});/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function nl(e){return typeof e>"u"||e===null}function Sf(e){return typeof e=="object"&&e!==null}function Of(e){return Array.isArray(e)?e:nl(e)?[]:[e]}function Mf(e,o){var i,a,s,c;if(o)for(c=Object.keys(o),i=0,a=c.length;i<a;i+=1)s=c[i],e[s]=o[s];return e}function Tf(e,o){var i="",a;for(a=0;a<o;a+=1)i+=e;return i}function Nf(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var Rf=nl,Vf=Sf,Df=Of,Lf=Tf,jf=Nf,Pf=Mf,ot={isNothing:Rf,isObject:Vf,toArray:Df,repeat:Lf,isNegativeZero:jf,extend:Pf};function il(e,o){var i="",a=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(i+='in "'+e.mark.name+'" '),i+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!o&&e.mark.snippet&&(i+=`
45
+ Please report this to https://github.com/markedjs/marked.`,o){const s="<p>An error occurred:</p><pre>"+Lt(a.message+"",!0)+"</pre>";return i?Promise.resolve(s):s}if(i)return Promise.reject(a);throw a}};const Jn=new fm;function Re(e,o){return Jn.parse(e,o)}Re.options=Re.setOptions=function(e){return Jn.setOptions(e),Re.defaults=Jn.defaults,Is(Re.defaults),Re},Re.getDefaults=No,Re.defaults=Xn,Re.use=function(...e){return Jn.use(...e),Re.defaults=Jn.defaults,Is(Re.defaults),Re},Re.walkTokens=function(e,o){return Jn.walkTokens(e,o)},Re.parseInline=Jn.parseInline,Re.Parser=ln,Re.parser=ln.parse,Re.Renderer=Er,Re.TextRenderer=Yo,Re.Lexer=sn,Re.lexer=sn.lex,Re.Tokenizer=br,Re.Hooks=Hi,Re.parse=Re,Re.options,Re.setOptions,Re.use,Re.walkTokens,Re.parseInline,ln.parse,sn.lex;var Uo=(e=>(e.GatewayService="service",e.Route="route",e.Consumer="consumer",e.ConsumerGroup="consumer group",e.Plugin="plugin",e.Upstream="upstream",e.Certificate="certificate",e.CACertificate="ca certificate",e.SNI="SNI",e.Key="key",e.KeySet="key set",e.Vault="vault",e.Application="application",e.Developer="developer",e.acls="ACL Credential",e["basic-auth"]="Basic Auth Credential",e["key-auth"]="Key Auth Credential",e["key-auth-enc"]="Key Auth Encrypted Credential",e.oauth2="OAuth 2.0 Credential",e["hmac-auth"]="HMAC Credential",e.jwt="JWT Credential",e.Target="target",e.Policy="policy",e))(Uo||{}),hn=(e=>(e.Edit="edit",e.Create="create",e))(hn||{}),Wn=(e=>(e[e.Loading=0]="Loading",e[e.Idle=1]="Idle",e[e.NoResults=2]="NoResults",e[e.Error=3]="Error",e))(Wn||{}),Se=(e=>(e.ID="id",e.IdArray="id-array",e.Text="plain-text",e.Date="date",e.Redacted="redacted",e.RedactedArray="redacted-array",e.Json="json",e.JsonArray="json-array",e.BadgeTag="badge-tag",e.BadgeStatus="badge-status",e.BadgeMethod="badge-method",e.LinkInternal="link-internal",e.LinkExternal="link-external",e))(Se||{}),ut=(e=>(e.Basic="basic",e.Advanced="advanced",e.Plugin="plugin",e))(ut||{});function gm(){return{getAxiosInstance:(e={})=>{try{const o=t.inject("get-axios-instance",void 0);return typeof o=="function"?o(e):xs.create({withCredentials:!0,timeout:3e4,...e})}catch(o){return console.warn("getAxiosInstance:",o.message||o),xs.create({withCredentials:!0,timeout:3e4,...e})}},getTraceIdFromError:e=>{var o;return((o=e==null?void 0:e.response)==null?void 0:o.headers["x-datadog-trace-id"])||""}}}function hm(){return{debounce:(e,o)=>{let i;return(...a)=>{clearTimeout(i),i=window==null?void 0:window.setTimeout(()=>{e(...a)},o)}}}}const Go="khcp-user-table-preferences",Am={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function ym(){const e=i=>{if(typeof i=="string")try{return JSON.parse(i)}catch(a){console.error("useTablePreferences(tryParseJson)",a);return}},o=()=>{const i=e(localStorage.getItem(Go));return!i||!Object.keys(i).length?new Map:new Map(Object.entries(i))};return{setTablePreferences:(i,a)=>{try{const s=o();s.set(i,a),localStorage.setItem(Go,JSON.stringify(Object.fromEntries(s.entries())))}catch(s){console.error("useTablePreferences(setTablePreferences)",s)}},getTablePreferences:i=>{const a=o();return(a==null?void 0:a.get(i))||void 0||Am},deleteAllTablePreferences:()=>{localStorage.removeItem(Go)}}}function Ho(e={}){const{getAxiosInstance:o}=gm();return{axiosInstance:o(e)}}const bm={actions:{copyId:"Copy ID",copied_id:'Copied "{id}" to the clipboard',copyToClipboard:"Copied successfully!",copyToClipboardFailed:"Failed to copy to the clipboard"}},wm={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},Cm={actions:{viewConfiguration:"View Configuration",save:"Save",cancel:"Cancel",back:"Back"},configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML or JSON. This allows for straightforward importing into APIOps tools like decK with YAML, or Insomnia and cURL with JSON.",yaml:"YAML",json:"JSON"},errors:{edit:"The entity could not be edited at this time."}},km={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Em={title:"Configuration",actions:{copy:"Copy JSON"},sections:{advanced:"Advanced",plugin:"Plugin Specific Configuration"},commonFields:{id_label:"ID",name_label:"Name",enabled_label:"Enabled",enabled_tooltip:"Enabled is FTW",updated_at_label:"Last Updated",created_at_label:"Created",tags_label:"Tags",link:"Link"},statusBadge:{enabledLabel:"Enabled",disabledLabel:"Disabled"},copy:{tooltip:"Copy {label}",success:"Copied!"},errors:{load:"The entity configuration data could not be loaded at this time.",copy:"Failed to copy to clipboard"},general:{entryTitle:"Entry {index}",structuredFormat:"Structured"}},Bm={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},vm={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},xm={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Im={enable:{title:"Enable {entityType}",message:"Are you sure you want to enable the {entityType} {entityName}?",confirmText:"Yes, enable"},disable:{title:"Disable {entityType}",message:"Are you sure you want to disable the {entityType} {entityName}?",confirmText:"Yes, disable"}},Sm={global:bm,deleteModal:wm,baseForm:Cm,baseTable:km,baseConfigCard:Em,filter:Bm,debouncedFilter:vm,errors:xm,toggleModal:Im};function Fo(){const e=Tn.createI18n("en-us",Sm);return{i18n:e,i18nT:Tn.i18nTComponent(e)}}function Hs(){const e=(i,a)=>(a==null?void 0:a[i])??void 0,o=(i,a)=>{if(i.length!==a.length)return!1;const s=new Set([...i,...a]);for(const c of s){const d=i.filter(m=>m===c).length,u=a.filter(m=>m===c).length;if(d!==u)return!1}return!0};return{getPropValue:e,objectsAreEqual:(i,a,s)=>{if(s){if(Object.keys(i).length===Object.keys(a).length)for(const c in i)if(Array.isArray(i[c])&&Array.isArray(a[c])){if(o(i[c],a[c]))continue;return!1}else{if(i[c]===a[c])continue;return!1}else return!1;return!0}try{return JSON.stringify(i)===JSON.stringify(a)}catch{return!1}},sortAlpha:i=>(a,s)=>{let c=a[i]===void 0||a[i]===null?"":a[i],d=s[i]===void 0||s[i]===null?"":s[i];return Array.isArray(a[i])&&(c=a[i][0]),Array.isArray(s[i])&&(d=s[i][0]),c.localeCompare(d)},isValidUuid:i=>i?/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/.test(i):!1}}function Om(e,o,i,a={fetchedItemsKey:"data",searchKeys:["id"]}){i||(i="100");const{axiosInstance:s}=Ho({headers:e.requestHeaders}),{i18n:{t:c}}=Fo(),{debounce:d}=hm(),u=d(async Y=>{await D(Y)},200),m=t.ref(!1),y=t.ref(""),k=t.ref(""),b=t.ref([]),B=t.ref([]),x=t.ref(void 0),L=t.unref(o);let S=`${e.apiBaseUrl}${L}`;e.app==="konnect"?S=S.replace(/{controlPlaneId}/gi,(e==null?void 0:e.controlPlaneId)||""):e.app==="kongManager"&&(S=S.replace(/\/{workspace}/gi,e!=null&&e.workspace?`/${e.workspace}`:""));const{isValidUuid:R}=Hs(),T=async()=>{try{m.value=!0;const{data:Y}=await s.get(`${S}?size=${i}`);Y!=null&&Y.next||(x.value=a.fetchedItemsKey in Y?Y[a.fetchedItemsKey]:[]),B.value=a.fetchedItemsKey in Y?Y[a.fetchedItemsKey]:[],b.value=B.value}catch{b.value=[],y.value=c("debouncedFilter.errors.fetch")}finally{m.value=!1}},V=t.ref(""),D=async Y=>{var C,M,O;if(V.value!==Y)if(V.value=Y||"",x.value===void 0)try{if(m.value=!0,y.value="",k.value="",e.app==="konnect"){let Z=S+"";Y&&(Z+=`/${Y}`);const{data:J}=await s.get(`${Z}?size=${i}`);a.fetchedItemsKey in J?b.value=J[a.fetchedItemsKey]:J!=null&&J.id?b.value=[J]:b.value=[]}else if(Y){const Z=[];R(Y)&&a.searchKeys.includes("id")?Z.push((async()=>{const{data:X}=await s.get(`${S}/${Y}`);return[X[a.fetchedItemsKey]??X]})()):Z.push(...a.searchKeys.filter(X=>X!=="id").map(async X=>{const{data:K}=await s.get(`${S}?${X}=${Y}`);return K[a.fetchedItemsKey]}));const J=await Promise.all(Z),ae=new Set;b.value=[],(C=J==null?void 0:J.forEach)==null||C.call(J,X=>{var K;(K=X==null?void 0:X.forEach)==null||K.call(X,te=>{ae.has(te.id)||(ae.add(te.id),b.value.push(te))})})}else b.value=B.value}catch(Z){((M=Z==null?void 0:Z.response)==null?void 0:M.status)===404?k.value=c("debouncedFilter.errors.invalid"):(b.value=[],y.value=c("debouncedFilter.errors.fetch"))}finally{m.value=!1}else m.value=!0,k.value="",Y?(b.value=(O=x.value)==null?void 0:O.filter(Z=>{var J;let ae=!1;for(const X of a.searchKeys){const K=typeof Z[X]=="string"?(J=Z[X])==null?void 0:J.toLowerCase():Z[X];K!=null&&K.includes(Y.toLowerCase())&&(ae=!0)}return ae}),(!b.value||!b.value.length)&&(k.value=c("debouncedFilter.errors.invalid"))):b.value=x.value,m.value=!1};return{loading:m,error:y,validationError:k,results:b,allRecords:x,loadItems:T,debouncedQueryChange:u}}function Mm(e,o){const i=t.unref(o),a=t.computed(()=>e.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${i}`):new URL(i));return a.value.search="",s=>`${a.value.href}/${s}`}function Tm(){const{i18n:{t:e}}=Fo();return{getMessageFromError:o=>{var i,a,s,c;if(!o)return e("errors.unexpected");if(((i=o==null?void 0:o.response)==null?void 0:i.status)===401)return console.warn("getMessageFromError: User auth token is expired or missing, returning empty message."),"";if((a=o==null?void 0:o.response)!=null&&a.data){if(o.response.data.detail)return o.response.data.detail;if((s=o.response.data.details)!=null&&s.length)return o.response.data.details.map(d=>{let u=e("errors.unexpected");return d.messages&&typeof d.messages=="object"&&d.messages.length&&(u=d.messages.join(", ")),d.field?`${d.field} - ${u}`:u}).join("; ");if(o.response.data.message){const{message:d}=o.response.data;return Array.isArray(d)?(c=d[0])!=null&&c.constraints?Object.values(d[0].constraints)[0]:d[0]:d}if(typeof o.response.data=="string")return o.response.data;if(typeof o.response.data=="object")return Object.keys(o.response.data).map(d=>`${d} ${o.response.data[d]}`).join(", ")}return o.message||e("errors.unexpected")}}}function Nm(e){const o=window.location.origin,i=o.endsWith("/")?o:`${o}/`;try{const a=e.join("/"),s=`${i}${a}`,c=e.some(d=>d.trim()==="");if(/^(https:\/\/(www\.)?([a-zA-Z0-9-]+\.){1,}[a-zA-Z]{2,}(:[0-9]+)?(\/[^\/]+)*)$|^(https|http):\/\/localhost(:[0-9]+)?(\/[^\/]+)*$/.test(s)&&!c&&new URL(s))return`${i}${a}`;throw new Error("Invalid url")}catch(a){return console.warn("Failed to build valid URL:",a),""}}function Fs(e,o){const i=t.ref(t.unref(e)),a=t.ref(t.unref(o)),s=t.computed(()=>!!(i.value.app==="konnect"||i.value.isExactMatch)),c=t.computed(()=>a.value.startsWith("/")?new URL(`${window.location.origin}${a.value}`):new URL(a.value));return d=>{const{page:u,pageSize:m,offset:y,sortColumnKey:k,sortColumnOrder:b,query:B}=d;try{let x=new URL(c.value.href);return s.value&&B?(x.search="",x=i.value.app==="konnect"?new URL(`${x.href}?filter[name][contains]=${B}`):new URL(`${x.href}/${B}/`)):(s.value||new URLSearchParams(B).forEach((L,S)=>{x.searchParams.append(S,L)}),k&&x.searchParams.append("sort_by",k),b==="desc"&&x.searchParams.append("sort_desc","1"),x.searchParams.append("size",String(m))),y&&u!==1&&x.searchParams.append("offset",String(y)),x.href}catch(x){return console.error("RouteList(fetcher)",x),a.value}}}function Rm(e,o,i="data"){const a=t.unref(o),{axiosInstance:s}=Ho({headers:e.requestHeaders}),c=Fs(e,a),d=t.ref({status:Wn.Idle});return{fetcher:async u=>{try{d.value={status:Wn.Loading};let m=c(u);m.includes("filter[name]")&&(m=`${m}&page[size]=${u.pageSize}&page[number]=${u.page}`);const{data:y}=await s.get(m),k=i&&i.replace(/[^\w-_]/gi,"");let b;y[k]&&Array.isArray(y[k])?b=y[k]:Array.isArray(y)?b=y:b=Object.keys(y).length?[y]:[];const B={data:b,total:b.length,...y.offset?{pagination:{offset:y.offset}}:null};return d.value={status:Wn.Idle,response:B},B}catch(m){const y={data:[],total:0};return u.query&&m.response.status===404?(d.value={status:Wn.NoResults,response:y,error:m},y):(d.value={status:Wn.Error,response:y,error:m},y)}},fetcherState:d}}function Vm(){const e=(i,a="_")=>i?i.split(a).map(s=>s.toLowerCase()==="id"?s.toUpperCase():s.charAt(0).toUpperCase()+s.substring(1)).join(" "):"",o=/(?:^|[\s-:'"])\w/g;return{capitalize:i=>i?i.replace(o,a=>a.toUpperCase()):"",convertKeyToTitle:e}}const zs=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,Ks=e=>{if(typeof e!="string")throw new TypeError("Invalid argument expected string");const o=e.match(zs);if(!o)throw new Error(`Invalid argument not valid semver ('${e}' received)`);return o.shift(),o},qs=e=>e==="*"||e==="x"||e==="X",Xs=e=>{const o=parseInt(e,10);return isNaN(o)?e:o},Dm=(e,o)=>typeof e!=typeof o?[String(e),String(o)]:[e,o],Lm=(e,o)=>{if(qs(e)||qs(o))return 0;const[i,a]=Dm(Xs(e),Xs(o));return i>a?1:i<a?-1:0},Js=(e,o)=>{for(let i=0;i<Math.max(e.length,o.length);i++){const a=Lm(e[i]||"0",o[i]||"0");if(a!==0)return a}return 0},jm=(e,o)=>{const i=Ks(e),a=Ks(o),s=i.pop(),c=a.pop(),d=Js(i,a);return d!==0?d:s&&c?Js(s.split("."),c.split(".")):s||c?s?-1:1:0},Ws=(e,o,i)=>{Pm(i);const a=jm(e,o);return Zs[i].includes(a)},Zs={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},Qs=Object.keys(Zs),Pm=e=>{if(typeof e!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof e}`);if(Qs.indexOf(e)===-1)throw new Error(`Invalid operator, expected one of ${Qs.join("|")}`)},Ym=e=>typeof e=="string"&&/^[v\d]/.test(e)&&zs.test(e);function Um(e){const{gatewayInfo:o,supportedRange:i}=e;if(!o)return!0;const{edition:a,version:s}=o;if(!Ym(s))return console.error("Invalid version"),!1;const c=i[a];if(!c)return!1;const[d,u]=c;return!(d&&Ws(s,d,"<")||u&&Ws(s,u,">"))}function Gm(e){const o=t.ref(0),i=t.ref(0),a=t.ref(!1);return t.watch(e,s=>{s&&!a.value&&(o.value=s.offsetWidth,i.value=s.scrollWidth,a.value=!0)}),{isTruncated:t.computed(()=>o.value<i.value)}}const rt={useAxios:Ho,useDebouncedFilter:Om,useDeleteUrlBuilder:Mm,useErrors:Tm,useExternalLinkCreator:Nm,useFetcher:Rm,useFetchUrlBuilder:Fs,useHelpers:Hs,useStringHelpers:Vm,useI18n:Fo,useGatewayFeatureSupported:Um,useTruncationDetector:Gm},Hm={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},Fm="Copy to clipboard",zm={message:Hm,iconTitle:Fm},Km="kong-ui-copy-uuid-notify",_s="24px",qm=(e,o)=>{const i=e.__vccOpts||e;for(const[a,s]of o)i[a]=s;return i},Xm=e=>(t.pushScopeId("data-v-13f41aa3"),e=e(),t.popScopeId(),e),Jm=["aria-hidden"],Wm={key:0,"data-testid":"kui-icon-svg-title"},Zm=Xm(()=>t.createElementVNode("path",{d:"M5 22C4.45 22 3.97917 21.8042 3.5875 21.4125C3.19583 21.0208 3 20.55 3 20V6H5V20H16V22H5ZM9 18C8.45 18 7.97917 17.8042 7.5875 17.4125C7.19583 17.0208 7 16.55 7 16V4C7 3.45 7.19583 2.97917 7.5875 2.5875C7.97917 2.19583 8.45 2 9 2H18C18.55 2 19.0208 2.19583 19.4125 2.5875C19.8042 2.97917 20 3.45 20 4V16C20 16.55 19.8042 17.0208 19.4125 17.4125C19.0208 17.8042 18.55 18 18 18H9ZM9 16H18V4H9V16Z",fill:"currentColor"},null,-1)),Qm=t.defineComponent({__name:"CopyIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:_s,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const o=String(e).replace(/px/gi,""),i=Number(o);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const o=e,i=t.computed(()=>{if(typeof o.size=="number"&&o.size>0)return`${o.size}px`;if(typeof o.size=="string"){const s=String(o.size).replace(/px/gi,""),c=Number(s);if(c&&!isNaN(c)&&Number.isInteger(c)&&c>0)return`${c}px`}return _s}),a=t.computed(()=>({boxSizing:"border-box",color:o.color,display:o.display,height:i.value,lineHeight:"0",width:i.value}));return(s,c)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon copy-icon","data-testid":"kui-icon-wrapper-copy-icon",style:t.normalizeStyle(a.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-copy-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Wm,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Zm],8,Jm))]),_:1},8,["aria-hidden","style"]))}}),_m=qm(Qm,[["__scopeId","data-v-13f41aa3"]]),$m="16px",ef={class:"kong-ui-copy-uuid"},tf=["onClick"],$s=15,nf=t.defineComponent({__name:"CopyUuid",props:{uuid:{type:String,required:!0},idTooltip:{type:String,default:""},truncated:{type:Boolean,default:!0},useMono:{type:Boolean,default:!0},notify:{type:Function,default:void 0},iconColor:{type:String,default:"rgba(0, 0, 0, 0.45)"},tooltip:{type:String,default:""},successTooltip:{type:String,default:""},format:{type:String,required:!1,default:"uuid",validator:e=>["uuid","hidden","redacted","deleted"].includes(e)}},emits:["success","error"],setup(e,{emit:o}){const{t:i}=Tn.createI18n("en-us",zm),a=e,s=o,c=a.notify||t.inject(Km,()=>{}),d=t.computed(()=>a.idTooltip?{label:a.idTooltip,positionFixed:!0,placement:"bottomStart"}:{title:a.uuid}),u=t.computed(()=>!!(a.tooltip&&a.successTooltip)),m=t.ref(a.tooltip),y=t.computed(()=>a.tooltip?{label:m.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),k=t.computed(()=>{var x;return a.format==="redacted"?"*****":a.format==="deleted"?`*${(x=a.uuid)==null?void 0:x.substring(0,5)}`:a.uuid}),b=x=>{m.value=x,setTimeout(()=>{m.value=a.tooltip},1800)},B=x=>{var L,S;if(!x(a.uuid)){typeof c=="function"&&c({type:"error",message:i("message.fail")}),u.value?b(i("message.fail")):s("error",a.uuid);return}const R=((L=a.uuid)==null?void 0:L.length)>$s,T=a.format==="hidden"||a.format==="redacted"?i("message.success.prefix"):`"${((S=a.uuid)==null?void 0:S.substring(0,$s))+(R?"...":"")}"`;typeof c=="function"&&c({type:"success",message:`${T}${i("message.success.content")}`}),u.value?b(a.successTooltip):s("success",a.uuid)};return(x,L)=>{const S=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",ef,[e.format!=="hidden"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.idTooltip?"KTooltip":"div"),t.mergeProps({key:0},d.value,{"data-testid":"copy-id"}),{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["uuid-container",e.truncated?"truncated-uuid":null,e.useMono?"mono":null])},t.toDisplayString(k.value),3)]),_:1},16)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tooltip?"KTooltip":"div"),t.mergeProps(y.value,{class:"uuid-icon-wrapper"}),{default:t.withCtx(()=>[t.createVNode(S,null,{default:t.withCtx(({copyToClipboard:R})=>[t.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:t.withModifiers(T=>B(R),["stop"])},[t.createVNode(t.unref(_m),{class:"uuid-icon",color:e.iconColor,decorative:!!e.tooltip,size:t.unref($m),title:t.unref(i)("iconTitle")},null,8,["color","decorative","size","title"])],8,tf)]),_:1})]),_:1},16))])}}}),rf=(e,o)=>{const i=e.__vccOpts||e;for(const[a,s]of o)i[a]=s;return i},el=rf(nf,[["__scopeId","data-v-0c07874b"]]),of={key:0,class:"config-card-fieldset-title"},af=t.defineComponent({__name:"JsonCardItem",props:{item:{type:Object,required:!0},index:{type:Number,default:-1},isArrayItem:{type:Boolean,default:!1}},setup(e){const o=e,{i18n:{t:i}}=rt.useI18n(),{convertKeyToTitle:a}=rt.useStringHelpers(),s=t.computed(()=>o.item.key??"json-array-item"),c=t.computed(()=>o.item.value??o.item),d=t.computed(()=>{const m=JSON.parse(JSON.stringify(c.value));return o.isArrayItem&&delete m.name,m}),u=t.computed(()=>{var m;return o.isArrayItem?(m=c.value)!=null&&m.name?a(c.value.name,"_"):i("baseConfigCard.general.entryTitle",{index:o.index}):""});return(m,y)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.isArrayItem?"fieldset":"div"),{class:t.normalizeClass(e.isArrayItem?"config-card-fieldset":"config-card-json-item")},{default:t.withCtx(()=>[e.isArrayItem?(t.openBlock(),t.createElementBlock("legend",of,[t.createElementVNode("b",null,t.toDisplayString(u.value),1)])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(d.value),(k,b)=>(t.openBlock(),t.createBlock(zo,{key:`${s.value}-property-${b}`,item:{key:k,label:t.unref(a)(k),value:d.value[k]}},null,8,["item"]))),128))]),_:1},8,["class"]))}}),cn=(e,o)=>{const i=e.__vccOpts||e;for(const[a,s]of o)i[a]=s;return i},tl=cn(af,[["__scopeId","data-v-68ca83ec"]]),sf=t.defineComponent({__name:"InternalLinkItem",props:{item:{type:Object,required:!0}},emits:["navigation-click"],setup(e){const{i18n:{t:o}}=rt.useI18n();return(i,a)=>{const s=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(s,{appearance:"tertiary",class:"navigation-button",onClick:a[0]||(a[0]=c=>i.$emit("navigation-click",e.item))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.item.value||t.unref(o)("baseConfigCard.commonFields.link")),1)]),_:1})])}}}),Fi=cn(sf,[["__scopeId","data-v-c96811e5"]]),lf=t.defineComponent({__name:"StatusBadge",props:{status:{type:Boolean,default:!1}},setup(e){const{i18n:{t:o}}=rt.useI18n();return(i,a)=>{const s=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(s,{appearance:e.status?"success":"neutral"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.status?t.unref(o)("baseConfigCard.statusBadge.enabledLabel"):t.unref(o)("baseConfigCard.statusBadge.disabledLabel")),1)]),_:1},8,["appearance"])}}}),cf="#0044f4",df="#e0e4ea",uf="#3a3f51",pf="1px",mf="20px",ff={class:"config-card-details-row"},gf=["data-testid"],hf=["data-testid"],Af=["data-testid"],yf=["data-testid"],bf={key:1},wf=["data-testid"],Cf=["data-testid"],kf=["data-testid"],Ef=["data-testid"],Bf={name:"ConfigCardItem",components:{CopyUuid:el,JsonCardItem:tl,StatusBadge:lf,InternalLinkItem:Fi}},vf=t.defineComponent({...Bf,props:{item:{type:Object,required:!0},slim:{type:Boolean,required:!1,default:!1},truncated:{type:Boolean,required:!1,default:!1}},emits:["navigation-click"],setup(e,{emit:o}){t.useCssVars(L=>({"5ae2770e":k.value?"none":`solid ${t.unref(pf)} ${t.unref(df)}`,"4db3977e":y.value&&u.value?"block":"flex","1a7c5e02":y.value&&u.value?"100%":i.slim?"50%":"25%","1a77d24c":y.value&&u.value?"100%":i.slim?"50%":"75%"}));const i=e,a=o,s=t.useSlots(),{i18n:{t:c,formatUnixTimeStamp:d}}=rt.useI18n(),u=t.computed(()=>i.item.value!==void 0&&i.item.value!==null&&i.item.value!==""),m=t.computed(()=>!!(i.item.tooltip||s["label-tooltip"])),y=t.computed(()=>i.item.type===Se.Json||i.item.type===Se.JsonArray),k=t.computed(()=>i.item.type===Se.JsonArray),b=t.computed(()=>{switch(i.item.type){case Se.ID:return{tag:"CopyUuid",attrs:{"data-testid":`${i.item.key}-copy-uuid`,"success-tooltip":c("baseConfigCard.copy.success"),tooltip:c("baseConfigCard.copy.tooltip",{label:i.item.label}),truncated:!1,uuid:i.item.value,notify:()=>{}}};case Se.IdArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{"success-tooltip":c("baseConfigCard.copy.success"),tooltip:c("baseConfigCard.copy.tooltip",{label:i.item.label}),truncated:!1,notify:()=>{}}};case Se.Redacted:return{tag:"CopyUuid",attrs:{"data-testid":`${i.item.key}-copy-uuid-redacted`,format:"redacted","success-tooltip":c("baseConfigCard.copy.success"),tooltip:c("baseConfigCard.copy.tooltip",{label:i.item.label}),truncated:!1,uuid:i.item.value,notify:()=>{}}};case Se.RedactedArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{format:"redacted","success-tooltip":c("baseConfigCard.copy.success"),tooltip:c("baseConfigCard.copy.tooltip",{label:i.item.label}),truncated:!1,notify:()=>{}}};case Se.Date:return{tag:"div",attrs:{"data-testid":`${i.item.key}-date`},text:d(i.item.value)};case Se.BadgeStatus:return{tag:"StatusBadge",attrs:{"data-testid":`${i.item.key}-badge-status`,status:i.item.value}};case Se.BadgeTag:return{tag:"div",additionalComponent:"KBadge"};case Se.BadgeMethod:return{tag:"div",additionalComponent:"KMethodBadge"};case Se.LinkInternal:return{tag:"InternalLinkItem",attrs:{"data-testid":`${i.item.key}-internal-link`,item:i.item,onNavigationClick:L=>{a("navigation-click",L)}}};case Se.LinkExternal:return{tag:"KExternalLink",attrs:{"data-testid":`${i.item.key}-external-link`,href:i.item.value},text:i.item.value};case Se.Json:return{tag:"JsonCardItem",attrs:{"data-testid":`${i.item.key}-json-content`,item:i.item}};case Se.JsonArray:return{tag:"div",additionalComponent:"JsonCardItem",attrs:{"data-testid":`${i.item.key}-json-array-content`,item:i.item}};default:return{tag:"div",attrs:{"data-testid":`${i.item.key}-plain-text`},text:i.item.value}}}),B=t.ref(),{isTruncated:x}=rt.useTruncationDetector(B);return(L,S)=>{const R=t.resolveComponent("KLabel"),T=t.resolveComponent("KBadge"),V=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",ff,[t.createElementVNode("div",{class:"config-card-details-label","data-testid":`${e.item.key}-label`},[t.renderSlot(L.$slots,"label",{item:e.item},()=>[t.createVNode(R,{"tooltip-attributes":{maxWidth:"500px"}},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.item.label)+" ",1)]),_:2},[m.value?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{"data-testid":`${e.item.key}-label-tooltip`},[t.renderSlot(L.$slots,"label-tooltip",{},()=>[t.createTextVNode(t.toDisplayString(e.item.tooltip),1)],!0)],8,hf)]),key:"0"}:void 0]),1024)],!0)],8,gf),t.createElementVNode("div",{class:"config-card-details-value","data-testid":`${e.item.key}-property-value`},[t.renderSlot(L.$slots,e.item.key,{rowValue:e.item.value},()=>[u.value?(t.openBlock(),t.createElementBlock("div",bf,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(b.value.tag),t.normalizeProps(t.guardReactiveProps(b.value.attrs)),{default:t.withCtx(()=>[b.value.additionalComponent==="KBadge"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${e.item.key}-badge-tags`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(D,Y)=>(t.openBlock(),t.createBlock(T,{key:`${e.item.key}-badge-tag-${Y}`,class:"config-badge","data-testid":`${e.item.key}-badge-tag-${Y}`,tooltip:D,"truncation-tooltip":""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(D),1)]),_:2},1032,["data-testid","tooltip"]))),128))],8,wf)):t.createCommentVNode("",!0),b.value.additionalComponent==="CopyUuid"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"copy-uuid-array","data-testid":`${e.item.key}-copy-uuid-array`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(D,Y)=>(t.openBlock(),t.createBlock(t.unref(el),t.mergeProps(b.value.childAttrs,{key:`${e.item.key}-copy-uuid-${Y}`,"data-testid":`${e.item.key}-copy-uuid-${Y}`,uuid:D}),null,16,["data-testid","uuid"]))),128))],8,Cf)):b.value.additionalComponent==="KMethodBadge"?(t.openBlock(),t.createElementBlock("div",{key:2,class:"method-badge-array","data-testid":`${e.item.key}-badge-methods`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(D,Y)=>(t.openBlock(),t.createBlock(T,{key:`${e.item.key}-badge-method-${Y}`,appearance:Object.values(t.unref(Vp.BadgeMethodAppearances)).includes(D.toLowerCase())?D.toLowerCase():"custom",class:"config-badge","data-testid":`${e.item.key}-badge-method-${Y}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(D),1)]),_:2},1032,["appearance","data-testid"]))),128))],8,kf)):t.createCommentVNode("",!0),b.value.additionalComponent==="JsonCardItem"?(t.openBlock(),t.createElementBlock("div",{key:3,"data-testid":`${i.item.key}-json-array-content`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(D,Y)=>(t.openBlock(),t.createBlock(tl,{key:`json-array-item-${Y}`,index:Y,"is-array-item":"",item:D},null,8,["index","item"]))),128))],8,Ef)):(t.openBlock(),t.createBlock(V,{key:4,text:t.unref(x)?e.item.value:""},{default:t.withCtx(()=>[t.createElementVNode("span",{ref_key:"textContent",ref:B,class:t.normalizeClass(["attrs-data-text",{truncated:e.truncated}])},t.toDisplayString(b.value.text),3)]),_:1},8,["text"]))]),_:1},16))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${e.item.key}-no-value`}," – ",8,yf))],!0)],8,Af)])}}}),zo=cn(vf,[["__scopeId","data-v-f65fc52c"]]),xf={class:"json-config"},If={key:0,class:"json-endpoint"},Ko=t.defineComponent({__name:"JsonCodeBlock",props:{config:{type:Object,required:!1,default:()=>({})},fetcherUrl:{type:String,required:!1,default:""},jsonRecord:{type:Object,required:!0},requestMethod:{type:String,required:!1,default:""}},setup(e){t.useCssVars(s=>({"2d178975":`${a.value}ch`}));const o=e,i=t.computed(()=>o.jsonRecord),a=t.computed(()=>{var s;if(!o.fetcherUrl)return 0;const c=(s=o.fetcherUrl)==null?void 0:s.split("/");return c.length<2?0:41+(o.requestMethod==="post"?c[c.length-1]:c[c.length-2]).length});return(s,c)=>{var d;const u=t.resolveComponent("KBadge"),m=t.resolveComponent("KCodeBlock");return t.openBlock(),t.createElementBlock("div",xf,[o.fetcherUrl&&(d=o.config)!=null&&d.jsonYamlFormsEnabled?(t.openBlock(),t.createElementBlock("div",If,[t.createVNode(u,{appearance:o.requestMethod},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(o.requestMethod),1)]),_:1},8,["appearance"]),t.createVNode(m,{id:"json-endpoint-codeblock",code:o.fetcherUrl,"is-single-line":"",language:"json",theme:"dark"},null,8,["code"])])):t.createCommentVNode("",!0),o.jsonRecord?(t.openBlock(),t.createBlock(m,{key:1,id:"json-codeblock",class:t.normalizeClass({"json-content":o.fetcherUrl}),code:JSON.stringify(i.value,null,2),language:"json",theme:"dark"},null,8,["class","code"])):t.createCommentVNode("",!0)])}}});/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function nl(e){return typeof e>"u"||e===null}function Sf(e){return typeof e=="object"&&e!==null}function Of(e){return Array.isArray(e)?e:nl(e)?[]:[e]}function Mf(e,o){var i,a,s,c;if(o)for(c=Object.keys(o),i=0,a=c.length;i<a;i+=1)s=c[i],e[s]=o[s];return e}function Tf(e,o){var i="",a;for(a=0;a<o;a+=1)i+=e;return i}function Nf(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var Rf=nl,Vf=Sf,Df=Of,Lf=Tf,jf=Nf,Pf=Mf,ot={isNothing:Rf,isObject:Vf,toArray:Df,repeat:Lf,isNegativeZero:jf,extend:Pf};function il(e,o){var i="",a=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(i+='in "'+e.mark.name+'" '),i+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!o&&e.mark.snippet&&(i+=`
46
46
 
47
47
  `+e.mark.snippet),a+" "+i):a}function zi(e,o){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=o,this.message=il(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}zi.prototype=Object.create(Error.prototype),zi.prototype.constructor=zi,zi.prototype.toString=function(e){return this.name+": "+il(this,e)};var Ct=zi;function qo(e,o,i,a,s){var c="",d="",u=Math.floor(s/2)-1;return a-o>u&&(c=" ... ",o=a-u+c.length),i-a>u&&(d=" ...",i=a+u-d.length),{str:c+e.slice(o,i).replace(/\t/g,"→")+d,pos:a-o+c.length}}function Xo(e,o){return ot.repeat(" ",o-e.length)+e}function Yf(e,o){if(o=Object.create(o||null),!e.buffer)return null;o.maxLength||(o.maxLength=79),typeof o.indent!="number"&&(o.indent=1),typeof o.linesBefore!="number"&&(o.linesBefore=3),typeof o.linesAfter!="number"&&(o.linesAfter=2);for(var i=/\r?\n|\r|\0/g,a=[0],s=[],c,d=-1;c=i.exec(e.buffer);)s.push(c.index),a.push(c.index+c[0].length),e.position<=c.index&&d<0&&(d=a.length-2);d<0&&(d=a.length-1);var u="",m,y,k=Math.min(e.line+o.linesAfter,s.length).toString().length,b=o.maxLength-(o.indent+k+3);for(m=1;m<=o.linesBefore&&!(d-m<0);m++)y=qo(e.buffer,a[d-m],s[d-m],e.position-(a[d]-a[d-m]),b),u=ot.repeat(" ",o.indent)+Xo((e.line-m+1).toString(),k)+" | "+y.str+`
48
48
  `+u;for(y=qo(e.buffer,a[d],s[d],e.position,b),u+=ot.repeat(" ",o.indent)+Xo((e.line+1).toString(),k)+" | "+y.str+`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kong-ui-public/entities-plugins",
3
- "version": "2.12.11",
3
+ "version": "2.12.12",
4
4
  "type": "module",
5
5
  "main": "./dist/entities-plugins.umd.js",
6
6
  "module": "./dist/entities-plugins.es.js",
@@ -58,11 +58,11 @@
58
58
  "@kong/icons": "^1.8.14",
59
59
  "marked": "^12.0.0",
60
60
  "@kong-ui-public/copy-uuid": "^2.0.40",
61
- "@kong-ui-public/entities-consumer-groups": "^2.4.25",
62
- "@kong-ui-public/entities-consumers": "^2.5.25",
63
- "@kong-ui-public/entities-gateway-services": "^2.4.27",
64
- "@kong-ui-public/entities-routes": "^2.4.26",
65
- "@kong-ui-public/entities-shared": "^2.7.4"
61
+ "@kong-ui-public/entities-consumer-groups": "^2.4.26",
62
+ "@kong-ui-public/entities-consumers": "^2.5.26",
63
+ "@kong-ui-public/entities-gateway-services": "^2.4.28",
64
+ "@kong-ui-public/entities-shared": "^2.7.5",
65
+ "@kong-ui-public/entities-routes": "^2.4.27"
66
66
  },
67
67
  "scripts": {
68
68
  "dev": "cross-env USE_SANDBOX=true vite",