@kong-ui-public/entities-keys 2.3.25 → 2.3.26
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-keys.es.js
CHANGED
|
@@ -171,7 +171,7 @@ function fa() {
|
|
|
171
171
|
return {
|
|
172
172
|
getAxiosInstance: (e = {}) => {
|
|
173
173
|
try {
|
|
174
|
-
const t = tn("get-axios-instance");
|
|
174
|
+
const t = tn("get-axios-instance", void 0);
|
|
175
175
|
return typeof t == "function" ? t(e) : xt.create({
|
|
176
176
|
withCredentials: !0,
|
|
177
177
|
timeout: 3e4,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(ne,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("vue-router"),require("@kong-ui-public/i18n"),require("axios"),require("@kong/kongponents")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router","@kong-ui-public/i18n","axios","@kong/kongponents"],t):(ne=typeof globalThis<"u"?globalThis:ne||self,t(ne["kong-ui-public-entities-keys"]={},ne.Vue,ne.VueRouter,ne["kong-ui-public-i18n"],ne.axios,ne.Kongponents))})(this,function(ne,t,Me,he,et,Nn){"use strict";const An={keys:{title:"Keys",list:{toolbar_actions:{new_key:"New Key"},table_headers:{name:"Name",key_id:"Key ID",id:"ID",tags:"Tags"},empty_state:{title:"Configure a New Key",description:"A Key object holds a representation of asymmetric keys in various formats."}},actions:{create:"New Key",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",clear:"Clear",view:"View Details",loading:"Loading..."},search:{placeholder:"Filter by exact name or ID",no_results:"No results found"},delete:{title:"Delete a Key",description:"This action cannot be reversed so make sure to check the key usage before deleting."},errors:{general:"Keys could not be retrieved",delete:"The key could not be deleted at this time.",copy:"Failed to copy to clipboard",key_sets:{fetch:"Could not fetch available key sets",invalid:"Please select a valid key set ID"}},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"},form:{sections:{general:{title:"General Information",description:"General information will help identify and manage this key."},keys:{title:"Asymmetric Keys",description:"Choose the preferred format for this asymmetric key. Currently only support PEM and JWK format."}},fields:{id:{label:"Key ID",placeholder:"Enter a key ID",tooltip:"An identifier for a key",help:"If using JWK, need to match with the jwk.kid field"},name:{label:"Name",placeholder:"Enter a unique name for this key",tooltip:"The name to associate with the given key"},tags:{label:"Tags",placeholder:"Enter a list of tags separated by comma",help:"e.g. tag1, tag2, tag3",tooltip:"An optional set of strings for grouping and filtering, separated by commas."},key_set:{label:"Key Set",placeholder:"Select a key set to add into",footer:"Search by exact ID to find key sets not included in the list"},key_format:{label:"Key Format",options:{jwk:"JWK",pem:"PEM"}},jwk:{label:"JWK",placeholder:"Enter a JWK",tooltip:"A JSON Web key represented as a string"},kid:{label:"Key ID",tooltip:"A unique identifier for a key."},set:{label:"Key Set",tooltip:"The id (an UUID) of the key-set with which to associate the key."},private_key:{label:"Private Key",placeholder:"Enter a private key"},public_key:{label:"Public Key",placeholder:"Enter a public key"}}}}};function En(){const e=he.createI18n("en-us",An);return{i18n:e,i18nT:he.i18nTComponent(e)}}const Oe={useI18n:En},le={list:{konnect:{all:"/api/runtime_groups/{controlPlaneId}/keys",forKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}/keys"},kongManager:{all:"/{workspace}/keys",forKeySet:"/{workspace}/key-sets/{keySetId}/keys"}},form:{konnect:{create:{all:"/api/runtime_groups/{controlPlaneId}/keys",forKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}/keys"},edit:{all:"/api/runtime_groups/{controlPlaneId}/keys/{id}",forKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}/keys/{id}"},keySets:"/api/runtime_groups/{controlPlaneId}/key-sets",getKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}"},kongManager:{create:{all:"/{workspace}/keys",forKeySet:"/{workspace}/key-sets/{keySetId}/keys"},edit:{all:"/{workspace}/keys/{id}",forKeySet:"/{workspace}/key-sets/{keySetId}/keys/{id}"},keySets:"/{workspace}/key-sets",getKeySet:"/{workspace}/key-sets/{keySetId}"}}};var tt=(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))(tt||{}),ke=(e=>(e.Edit="edit",e.Create="create",e))(ke||{}),de=(e=>(e[e.Loading=0]="Loading",e[e.Idle=1]="Idle",e[e.NoResults=2]="NoResults",e[e.Error=3]="Error",e))(de||{}),q=(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))(q||{}),X=(e=>(e.Basic="basic",e.Advanced="advanced",e.Plugin="plugin",e))(X||{});function Vn(){return{getAxiosInstance:(e={})=>{try{const n=t.inject("get-axios-instance");return typeof n=="function"?n(e):et.create({withCredentials:!0,timeout:3e4,...e})}catch(n){return console.warn("getAxiosInstance:",n.message||n),et.create({withCredentials:!0,timeout:3e4,...e})}},getTraceIdFromError:e=>{var n;return((n=e==null?void 0:e.response)==null?void 0:n.headers["x-datadog-trace-id"])||""}}}function jn(){return{debounce:(e,n)=>{let o;return(...r)=>{clearTimeout(o),o=window==null?void 0:window.setTimeout(()=>{e(...r)},n)}}}}const Ke="khcp-user-table-preferences",Tn={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function $n(){const e=o=>{if(typeof o=="string")try{return JSON.parse(o)}catch(r){console.error("useTablePreferences(tryParseJson)",r);return}},n=()=>{const o=e(localStorage.getItem(Ke));return!o||!Object.keys(o).length?new Map:new Map(Object.entries(o))};return{setTablePreferences:(o,r)=>{try{const a=n();a.set(o,r),localStorage.setItem(Ke,JSON.stringify(Object.fromEntries(a.entries())))}catch(a){console.error("useTablePreferences(setTablePreferences)",a)}},getTablePreferences:o=>{const r=n();return(r==null?void 0:r.get(o))||void 0||Tn},deleteAllTablePreferences:()=>{localStorage.removeItem(Ke)}}}function Fe(e={}){const{getAxiosInstance:n}=Vn();return{axiosInstance:n(e)}}const Mn={actions:{copyId:"Copy ID",copied_id:'Copied "{id}" to the clipboard',copyToClipboard:"Copied successfully!",copyToClipboardFailed:"Failed to copy to the clipboard"}},On={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},Kn={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."}},Fn={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Dn={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"}},qn={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},Ln={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},Un={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Rn={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"}},Pn={global:Mn,deleteModal:On,baseForm:Kn,baseTable:Fn,baseConfigCard:Dn,filter:qn,debouncedFilter:Ln,errors:Un,toggleModal:Rn};function De(){const e=he.createI18n("en-us",Pn);return{i18n:e,i18nT:he.i18nTComponent(e)}}function nt(){const e=(o,r)=>(r==null?void 0:r[o])??void 0,n=(o,r)=>{if(o.length!==r.length)return!1;const a=new Set([...o,...r]);for(const l of a){const i=o.filter(c=>c===l).length,s=r.filter(c=>c===l).length;if(i!==s)return!1}return!0};return{getPropValue:e,objectsAreEqual:(o,r,a)=>{if(a){if(Object.keys(o).length===Object.keys(r).length)for(const l in o)if(Array.isArray(o[l])&&Array.isArray(r[l])){if(n(o[l],r[l]))continue;return!1}else{if(o[l]===r[l])continue;return!1}else return!1;return!0}try{return JSON.stringify(o)===JSON.stringify(r)}catch{return!1}},sortAlpha:o=>(r,a)=>{let l=r[o]===void 0||r[o]===null?"":r[o],i=a[o]===void 0||a[o]===null?"":a[o];return Array.isArray(r[o])&&(l=r[o][0]),Array.isArray(a[o])&&(i=a[o][0]),l.localeCompare(i)},isValidUuid:o=>o?/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/.test(o):!1}}function vn(e,n,o,r={fetchedItemsKey:"data",searchKeys:["id"]}){o||(o="100");const{axiosInstance:a}=Fe({headers:e.requestHeaders}),{i18n:{t:l}}=De(),{debounce:i}=jn(),s=i(async b=>{await B(b)},200),c=t.ref(!1),p=t.ref(""),d=t.ref(""),u=t.ref([]),g=t.ref([]),y=t.ref(void 0),S=t.unref(n);let h=`${e.apiBaseUrl}${S}`;e.app==="konnect"?h=h.replace(/{controlPlaneId}/gi,(e==null?void 0:e.controlPlaneId)||""):e.app==="kongManager"&&(h=h.replace(/\/{workspace}/gi,e!=null&&e.workspace?`/${e.workspace}`:""));const{isValidUuid:_}=nt(),k=async()=>{try{c.value=!0;const{data:b}=await a.get(`${h}?size=${o}`);b!=null&&b.next||(y.value=r.fetchedItemsKey in b?b[r.fetchedItemsKey]:[]),g.value=r.fetchedItemsKey in b?b[r.fetchedItemsKey]:[],u.value=g.value}catch{u.value=[],p.value=l("debouncedFilter.errors.fetch")}finally{c.value=!1}},f=t.ref(""),B=async b=>{var C,A,V;if(f.value!==b)if(f.value=b||"",y.value===void 0)try{if(c.value=!0,p.value="",d.value="",e.app==="konnect"){let j=h+"";b&&(j+=`/${b}`);const{data:x}=await a.get(`${j}?size=${o}`);r.fetchedItemsKey in x?u.value=x[r.fetchedItemsKey]:x!=null&&x.id?u.value=[x]:u.value=[]}else if(b){const j=[];_(b)&&r.searchKeys.includes("id")?j.push((async()=>{const{data:N}=await a.get(`${h}/${b}`);return[N[r.fetchedItemsKey]??N]})()):j.push(...r.searchKeys.filter(N=>N!=="id").map(async N=>{const{data:E}=await a.get(`${h}?${N}=${b}`);return E[r.fetchedItemsKey]}));const x=await Promise.all(j),T=new Set;u.value=[],(C=x==null?void 0:x.forEach)==null||C.call(x,N=>{var E;(E=N==null?void 0:N.forEach)==null||E.call(N,O=>{T.has(O.id)||(T.add(O.id),u.value.push(O))})})}else u.value=g.value}catch(j){((A=j==null?void 0:j.response)==null?void 0:A.status)===404?d.value=l("debouncedFilter.errors.invalid"):(u.value=[],p.value=l("debouncedFilter.errors.fetch"))}finally{c.value=!1}else c.value=!0,d.value="",b?(u.value=(V=y.value)==null?void 0:V.filter(j=>{var x;let T=!1;for(const N of r.searchKeys){const E=typeof j[N]=="string"?(x=j[N])==null?void 0:x.toLowerCase():j[N];E!=null&&E.includes(b.toLowerCase())&&(T=!0)}return T}),(!u.value||!u.value.length)&&(d.value=l("debouncedFilter.errors.invalid"))):u.value=y.value,c.value=!1};return{loading:c,error:p,validationError:d,results:u,allRecords:y,loadItems:k,debouncedQueryChange:s}}function zn(e,n){const o=t.unref(n),r=t.computed(()=>e.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${o}`):new URL(o));return r.value.search="",a=>`${r.value.href}/${a}`}function Jn(){const{i18n:{t:e}}=De();return{getMessageFromError:n=>{var o,r,a,l;if(!n)return e("errors.unexpected");if(((o=n==null?void 0:n.response)==null?void 0:o.status)===401)return console.warn("getMessageFromError: User auth token is expired or missing, returning empty message."),"";if((r=n==null?void 0:n.response)!=null&&r.data){if(n.response.data.detail)return n.response.data.detail;if((a=n.response.data.details)!=null&&a.length)return n.response.data.details.map(i=>{let s=e("errors.unexpected");return i.messages&&typeof i.messages=="object"&&i.messages.length&&(s=i.messages.join(", ")),i.field?`${i.field} - ${s}`:s}).join("; ");if(n.response.data.message){const{message:i}=n.response.data;return Array.isArray(i)?(l=i[0])!=null&&l.constraints?Object.values(i[0].constraints)[0]:i[0]:i}if(typeof n.response.data=="string")return n.response.data;if(typeof n.response.data=="object")return Object.keys(n.response.data).map(i=>`${i} ${n.response.data[i]}`).join(", ")}return n.message||e("errors.unexpected")}}}function Hn(e){const n=window.location.origin,o=n.endsWith("/")?n:`${n}/`;try{const r=e.join("/"),a=`${o}${r}`,l=e.some(i=>i.trim()==="");if(/^(https:\/\/(www\.)?([a-zA-Z0-9-]+\.){1,}[a-zA-Z]{2,}(:[0-9]+)?(\/[^\/]+)*)$|^(https|http):\/\/localhost(:[0-9]+)?(\/[^\/]+)*$/.test(a)&&!l&&new URL(a))return`${o}${r}`;throw new Error("Invalid url")}catch(r){return console.warn("Failed to build valid URL:",r),""}}function ot(e,n){const o=t.ref(t.unref(e)),r=t.ref(t.unref(n)),a=t.computed(()=>!!(o.value.app==="konnect"||o.value.isExactMatch)),l=t.computed(()=>r.value.startsWith("/")?new URL(`${window.location.origin}${r.value}`):new URL(r.value));return i=>{const{page:s,pageSize:c,offset:p,sortColumnKey:d,sortColumnOrder:u,query:g}=i;try{let y=new URL(l.value.href);return a.value&&g?(y.search="",y=o.value.app==="konnect"?new URL(`${y.href}?filter[name][contains]=${g}`):new URL(`${y.href}/${g}/`)):(a.value||new URLSearchParams(g).forEach((S,h)=>{y.searchParams.append(h,S)}),d&&y.searchParams.append("sort_by",d),u==="desc"&&y.searchParams.append("sort_desc","1"),y.searchParams.append("size",String(c))),p&&s!==1&&y.searchParams.append("offset",String(p)),y.href}catch(y){return console.error("RouteList(fetcher)",y),r.value}}}function Wn(e,n,o="data"){const r=t.unref(n),{axiosInstance:a}=Fe({headers:e.requestHeaders}),l=ot(e,r),i=t.ref({status:de.Idle});return{fetcher:async s=>{try{i.value={status:de.Loading};let c=l(s);c.includes("filter[name]")&&(c=`${c}&page[size]=${s.pageSize}&page[number]=${s.page}`);const{data:p}=await a.get(c),d=o&&o.replace(/[^\w-_]/gi,"");let u;p[d]&&Array.isArray(p[d])?u=p[d]:Array.isArray(p)?u=p:u=Object.keys(p).length?[p]:[];const g={data:u,total:u.length,...p.offset?{pagination:{offset:p.offset}}:null};return i.value={status:de.Idle,response:g},g}catch(c){const p={data:[],total:0};return s.query&&c.response.status===404?(i.value={status:de.NoResults,response:p,error:c},p):(i.value={status:de.Error,response:p,error:c},p)}},fetcherState:i}}function Yn(){const e=(o,r="_")=>o?o.split(r).map(a=>a.toLowerCase()==="id"?a.toUpperCase():a.charAt(0).toUpperCase()+a.substring(1)).join(" "):"",n=/(?:^|[\s-:'"])\w/g;return{capitalize:o=>o?o.replace(n,r=>r.toUpperCase()):"",convertKeyToTitle:e}}const rt=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,at=e=>{if(typeof e!="string")throw new TypeError("Invalid argument expected string");const n=e.match(rt);if(!n)throw new Error(`Invalid argument not valid semver ('${e}' received)`);return n.shift(),n},it=e=>e==="*"||e==="x"||e==="X",lt=e=>{const n=parseInt(e,10);return isNaN(n)?e:n},Zn=(e,n)=>typeof e!=typeof n?[String(e),String(n)]:[e,n],Gn=(e,n)=>{if(it(e)||it(n))return 0;const[o,r]=Zn(lt(e),lt(n));return o>r?1:o<r?-1:0},st=(e,n)=>{for(let o=0;o<Math.max(e.length,n.length);o++){const r=Gn(e[o]||"0",n[o]||"0");if(r!==0)return r}return 0},Qn=(e,n)=>{const o=at(e),r=at(n),a=o.pop(),l=r.pop(),i=st(o,r);return i!==0?i:a&&l?st(a.split("."),l.split(".")):a||l?a?-1:1:0},ct=(e,n,o)=>{Xn(o);const r=Qn(e,n);return dt[o].includes(r)},dt={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},pt=Object.keys(dt),Xn=e=>{if(typeof e!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof e}`);if(pt.indexOf(e)===-1)throw new Error(`Invalid operator, expected one of ${pt.join("|")}`)},eo=e=>typeof e=="string"&&/^[v\d]/.test(e)&&rt.test(e);function to(e){const{gatewayInfo:n,supportedRange:o}=e;if(!n)return!0;const{edition:r,version:a}=n;if(!eo(a))return console.error("Invalid version"),!1;const l=o[r];if(!l)return!1;const[i,s]=l;return!(i&&ct(a,i,"<")||s&&ct(a,s,">"))}function no(e){const n=t.ref(0),o=t.ref(0),r=t.ref(!1);return t.watch(e,a=>{a&&!r.value&&(n.value=a.offsetWidth,o.value=a.scrollWidth,r.value=!0)}),{isTruncated:t.computed(()=>n.value<o.value)}}const W={useAxios:Fe,useDebouncedFilter:vn,useDeleteUrlBuilder:zn,useErrors:Jn,useExternalLinkCreator:Hn,useFetcher:Wn,useFetchUrlBuilder:ot,useHelpers:nt,useStringHelpers:Yn,useI18n:De,useGatewayFeatureSupported:to,useTruncationDetector:no},oo={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},ro="Copy to clipboard",ao={message:oo,iconTitle:ro},io="kong-ui-copy-uuid-notify",ut="24px",lo=(e,n)=>{const o=e.__vccOpts||e;for(const[r,a]of n)o[r]=a;return o},so=e=>(t.pushScopeId("data-v-13f41aa3"),e=e(),t.popScopeId(),e),co=["aria-hidden"],po={key:0,"data-testid":"kui-icon-svg-title"},uo=so(()=>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)),fo=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:ut,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),o=Number(n);if(o&&!isNaN(o)&&Number.isInteger(o)&&o>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,o=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const a=String(n.size).replace(/px/gi,""),l=Number(a);if(l&&!isNaN(l)&&Number.isInteger(l)&&l>0)return`${l}px`}return ut}),r=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:o.value,lineHeight:"0",width:o.value}));return(a,l)=>(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(r.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",po,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),uo],8,co))]),_:1},8,["aria-hidden","style"]))}}),mo=lo(fo,[["__scopeId","data-v-13f41aa3"]]),yo="16px",go={class:"kong-ui-copy-uuid"},ho=["onClick"],ft=15,ko=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:n}){const{t:o}=he.createI18n("en-us",ao),r=e,a=n,l=r.notify||t.inject(io,()=>{}),i=t.computed(()=>r.idTooltip?{label:r.idTooltip,positionFixed:!0,placement:"bottomStart"}:{title:r.uuid}),s=t.computed(()=>!!(r.tooltip&&r.successTooltip)),c=t.ref(r.tooltip),p=t.computed(()=>r.tooltip?{label:c.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),d=t.computed(()=>{var y;return r.format==="redacted"?"*****":r.format==="deleted"?`*${(y=r.uuid)==null?void 0:y.substring(0,5)}`:r.uuid}),u=y=>{c.value=y,setTimeout(()=>{c.value=r.tooltip},1800)},g=y=>{var S,h;if(!y(r.uuid)){typeof l=="function"&&l({type:"error",message:o("message.fail")}),s.value?u(o("message.fail")):a("error",r.uuid);return}const _=((S=r.uuid)==null?void 0:S.length)>ft,k=r.format==="hidden"||r.format==="redacted"?o("message.success.prefix"):`"${((h=r.uuid)==null?void 0:h.substring(0,ft))+(_?"...":"")}"`;typeof l=="function"&&l({type:"success",message:`${k}${o("message.success.content")}`}),s.value?u(r.successTooltip):a("success",r.uuid)};return(y,S)=>{const h=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",go,[e.format!=="hidden"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.idTooltip?"KTooltip":"div"),t.mergeProps({key:0},i.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(d.value),3)]),_:1},16)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tooltip?"KTooltip":"div"),t.mergeProps(p.value,{class:"uuid-icon-wrapper"}),{default:t.withCtx(()=>[t.createVNode(h,null,{default:t.withCtx(({copyToClipboard:_})=>[t.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:t.withModifiers(k=>g(_),["stop"])},[t.createVNode(t.unref(mo),{class:"uuid-icon",color:e.iconColor,decorative:!!e.tooltip,size:t.unref(yo),title:t.unref(o)("iconTitle")},null,8,["color","decorative","size","title"])],8,ho)]),_:1})]),_:1},16))])}}}),bo=(e,n)=>{const o=e.__vccOpts||e;for(const[r,a]of n)o[r]=a;return o},mt=bo(ko,[["__scopeId","data-v-0c07874b"]]),Co={key:0,class:"config-card-fieldset-title"},wo=t.defineComponent({__name:"JsonCardItem",props:{item:{type:Object,required:!0},index:{type:Number,default:-1},isArrayItem:{type:Boolean,default:!1}},setup(e){const n=e,{i18n:{t:o}}=W.useI18n(),{convertKeyToTitle:r}=W.useStringHelpers(),a=t.computed(()=>n.item.key??"json-array-item"),l=t.computed(()=>n.item.value??n.item),i=t.computed(()=>{const c=JSON.parse(JSON.stringify(l.value));return n.isArrayItem&&delete c.name,c}),s=t.computed(()=>{var c;return n.isArrayItem?(c=l.value)!=null&&c.name?r(l.value.name,"_"):o("baseConfigCard.general.entryTitle",{index:n.index}):""});return(c,p)=>(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",Co,[t.createElementVNode("b",null,t.toDisplayString(s.value),1)])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(i.value),(d,u)=>(t.openBlock(),t.createBlock(be,{key:`${a.value}-property-${u}`,item:{key:d,label:t.unref(r)(d),value:i.value[d]}},null,8,["item"]))),128))]),_:1},8,["class"]))}}),oe=(e,n)=>{const o=e.__vccOpts||e;for(const[r,a]of n)o[r]=a;return o},yt=oe(wo,[["__scopeId","data-v-68ca83ec"]]),So=t.defineComponent({__name:"InternalLinkItem",props:{item:{type:Object,required:!0}},emits:["navigation-click"],setup(e){const{i18n:{t:n}}=W.useI18n();return(o,r)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(a,{appearance:"tertiary",class:"navigation-button",onClick:r[0]||(r[0]=l=>o.$emit("navigation-click",e.item))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.item.value||t.unref(n)("baseConfigCard.commonFields.link")),1)]),_:1})])}}}),gt=oe(So,[["__scopeId","data-v-c96811e5"]]),xo=t.defineComponent({__name:"StatusBadge",props:{status:{type:Boolean,default:!1}},setup(e){const{i18n:{t:n}}=W.useI18n();return(o,r)=>{const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:e.status?"success":"neutral"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.status?t.unref(n)("baseConfigCard.statusBadge.enabledLabel"):t.unref(n)("baseConfigCard.statusBadge.disabledLabel")),1)]),_:1},8,["appearance"])}}}),_o="#0044f4",Bo="#e0e4ea",Io="#3a3f51",No="1px",Ao="20px",Eo={class:"config-card-details-row"},Vo=["data-testid"],jo=["data-testid"],To=["data-testid"],$o=["data-testid"],Mo={key:1},Oo=["data-testid"],Ko=["data-testid"],Fo=["data-testid"],Do=["data-testid"],qo={name:"ConfigCardItem",components:{CopyUuid:mt,JsonCardItem:yt,StatusBadge:xo,InternalLinkItem:gt}},Lo=t.defineComponent({...qo,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:n}){t.useCssVars(S=>({"5ae2770e":d.value?"none":`solid ${t.unref(No)} ${t.unref(Bo)}`,"4db3977e":p.value&&s.value?"block":"flex","1a7c5e02":p.value&&s.value?"100%":o.slim?"50%":"25%","1a77d24c":p.value&&s.value?"100%":o.slim?"50%":"75%"}));const o=e,r=n,a=t.useSlots(),{i18n:{t:l,formatUnixTimeStamp:i}}=W.useI18n(),s=t.computed(()=>o.item.value!==void 0&&o.item.value!==null&&o.item.value!==""),c=t.computed(()=>!!(o.item.tooltip||a["label-tooltip"])),p=t.computed(()=>o.item.type===q.Json||o.item.type===q.JsonArray),d=t.computed(()=>o.item.type===q.JsonArray),u=t.computed(()=>{switch(o.item.type){case q.ID:return{tag:"CopyUuid",attrs:{"data-testid":`${o.item.key}-copy-uuid`,"success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:o.item.label}),truncated:!1,uuid:o.item.value,notify:()=>{}}};case q.IdArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{"success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:o.item.label}),truncated:!1,notify:()=>{}}};case q.Redacted:return{tag:"CopyUuid",attrs:{"data-testid":`${o.item.key}-copy-uuid-redacted`,format:"redacted","success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:o.item.label}),truncated:!1,uuid:o.item.value,notify:()=>{}}};case q.RedactedArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{format:"redacted","success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:o.item.label}),truncated:!1,notify:()=>{}}};case q.Date:return{tag:"div",attrs:{"data-testid":`${o.item.key}-date`},text:i(o.item.value)};case q.BadgeStatus:return{tag:"StatusBadge",attrs:{"data-testid":`${o.item.key}-badge-status`,status:o.item.value}};case q.BadgeTag:return{tag:"div",additionalComponent:"KBadge"};case q.BadgeMethod:return{tag:"div",additionalComponent:"KMethodBadge"};case q.LinkInternal:return{tag:"InternalLinkItem",attrs:{"data-testid":`${o.item.key}-internal-link`,item:o.item,onNavigationClick:S=>{r("navigation-click",S)}}};case q.LinkExternal:return{tag:"KExternalLink",attrs:{"data-testid":`${o.item.key}-external-link`,href:o.item.value},text:o.item.value};case q.Json:return{tag:"JsonCardItem",attrs:{"data-testid":`${o.item.key}-json-content`,item:o.item}};case q.JsonArray:return{tag:"div",additionalComponent:"JsonCardItem",attrs:{"data-testid":`${o.item.key}-json-array-content`,item:o.item}};default:return{tag:"div",attrs:{"data-testid":`${o.item.key}-plain-text`},text:o.item.value}}}),g=t.ref(),{isTruncated:y}=W.useTruncationDetector(g);return(S,h)=>{const _=t.resolveComponent("KLabel"),k=t.resolveComponent("KBadge"),f=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",Eo,[t.createElementVNode("div",{class:"config-card-details-label","data-testid":`${e.item.key}-label`},[t.renderSlot(S.$slots,"label",{item:e.item},()=>[t.createVNode(_,{"tooltip-attributes":{maxWidth:"500px"}},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.item.label)+" ",1)]),_:2},[c.value?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{"data-testid":`${e.item.key}-label-tooltip`},[t.renderSlot(S.$slots,"label-tooltip",{},()=>[t.createTextVNode(t.toDisplayString(e.item.tooltip),1)],!0)],8,jo)]),key:"0"}:void 0]),1024)],!0)],8,Vo),t.createElementVNode("div",{class:"config-card-details-value","data-testid":`${e.item.key}-property-value`},[t.renderSlot(S.$slots,e.item.key,{rowValue:e.item.value},()=>[s.value?(t.openBlock(),t.createElementBlock("div",Mo,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(u.value.tag),t.normalizeProps(t.guardReactiveProps(u.value.attrs)),{default:t.withCtx(()=>[u.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,(B,b)=>(t.openBlock(),t.createBlock(k,{key:`${e.item.key}-badge-tag-${b}`,class:"config-badge","data-testid":`${e.item.key}-badge-tag-${b}`,tooltip:B,"truncation-tooltip":""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(B),1)]),_:2},1032,["data-testid","tooltip"]))),128))],8,Oo)):t.createCommentVNode("",!0),u.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,(B,b)=>(t.openBlock(),t.createBlock(t.unref(mt),t.mergeProps(u.value.childAttrs,{key:`${e.item.key}-copy-uuid-${b}`,"data-testid":`${e.item.key}-copy-uuid-${b}`,uuid:B}),null,16,["data-testid","uuid"]))),128))],8,Ko)):u.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,(B,b)=>(t.openBlock(),t.createBlock(k,{key:`${e.item.key}-badge-method-${b}`,appearance:Object.values(t.unref(Nn.BadgeMethodAppearances)).includes(B.toLowerCase())?B.toLowerCase():"custom",class:"config-badge","data-testid":`${e.item.key}-badge-method-${b}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(B),1)]),_:2},1032,["appearance","data-testid"]))),128))],8,Fo)):t.createCommentVNode("",!0),u.value.additionalComponent==="JsonCardItem"?(t.openBlock(),t.createElementBlock("div",{key:3,"data-testid":`${o.item.key}-json-array-content`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(B,b)=>(t.openBlock(),t.createBlock(yt,{key:`json-array-item-${b}`,index:b,"is-array-item":"",item:B},null,8,["index","item"]))),128))],8,Do)):(t.openBlock(),t.createBlock(f,{key:4,text:t.unref(y)?e.item.value:""},{default:t.withCtx(()=>[t.createElementVNode("span",{ref_key:"textContent",ref:g,class:t.normalizeClass(["attrs-data-text",{truncated:e.truncated}])},t.toDisplayString(u.value.text),3)]),_:1},8,["text"]))]),_:1},16))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${e.item.key}-no-value`}," – ",8,$o))],!0)],8,To)])}}}),be=oe(Lo,[["__scopeId","data-v-f65fc52c"]]),Uo={class:"json-config"},Ro={key:0,class:"json-endpoint"},ht=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(a=>({"2d178975":`${r.value}ch`}));const n=e,o=t.computed(()=>n.jsonRecord),r=t.computed(()=>{var a;if(!n.fetcherUrl)return 0;const l=(a=n.fetcherUrl)==null?void 0:a.split("/");return l.length<2?0:41+(n.requestMethod==="post"?l[l.length-1]:l[l.length-2]).length});return(a,l)=>{var i;const s=t.resolveComponent("KBadge"),c=t.resolveComponent("KCodeBlock");return t.openBlock(),t.createElementBlock("div",Uo,[n.fetcherUrl&&(i=n.config)!=null&&i.jsonYamlFormsEnabled?(t.openBlock(),t.createElementBlock("div",Ro,[t.createVNode(s,{appearance:n.requestMethod},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.requestMethod),1)]),_:1},8,["appearance"]),t.createVNode(c,{id:"json-endpoint-codeblock",code:n.fetcherUrl,"is-single-line":"",language:"json",theme:"dark"},null,8,["code"])])):t.createCommentVNode("",!0),n.jsonRecord?(t.openBlock(),t.createBlock(c,{key:1,id:"json-codeblock",class:t.normalizeClass({"json-content":n.fetcherUrl}),code:JSON.stringify(o.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 kt(e){return typeof e>"u"||e===null}function Po(e){return typeof e=="object"&&e!==null}function vo(e){return Array.isArray(e)?e:kt(e)?[]:[e]}function zo(e,n){var o,r,a,l;if(n)for(l=Object.keys(n),o=0,r=l.length;o<r;o+=1)a=l[o],e[a]=n[a];return e}function Jo(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function Ho(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var Wo=kt,Yo=Po,Zo=vo,Go=Jo,Qo=Ho,Xo=zo,H={isNothing:Wo,isObject:Yo,toArray:Zo,repeat:Go,isNegativeZero:Qo,extend:Xo};function bt(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
|
|
1
|
+
(function(ne,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("vue-router"),require("@kong-ui-public/i18n"),require("axios"),require("@kong/kongponents")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router","@kong-ui-public/i18n","axios","@kong/kongponents"],t):(ne=typeof globalThis<"u"?globalThis:ne||self,t(ne["kong-ui-public-entities-keys"]={},ne.Vue,ne.VueRouter,ne["kong-ui-public-i18n"],ne.axios,ne.Kongponents))})(this,function(ne,t,Me,he,et,Nn){"use strict";const An={keys:{title:"Keys",list:{toolbar_actions:{new_key:"New Key"},table_headers:{name:"Name",key_id:"Key ID",id:"ID",tags:"Tags"},empty_state:{title:"Configure a New Key",description:"A Key object holds a representation of asymmetric keys in various formats."}},actions:{create:"New Key",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",clear:"Clear",view:"View Details",loading:"Loading..."},search:{placeholder:"Filter by exact name or ID",no_results:"No results found"},delete:{title:"Delete a Key",description:"This action cannot be reversed so make sure to check the key usage before deleting."},errors:{general:"Keys could not be retrieved",delete:"The key could not be deleted at this time.",copy:"Failed to copy to clipboard",key_sets:{fetch:"Could not fetch available key sets",invalid:"Please select a valid key set ID"}},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"},form:{sections:{general:{title:"General Information",description:"General information will help identify and manage this key."},keys:{title:"Asymmetric Keys",description:"Choose the preferred format for this asymmetric key. Currently only support PEM and JWK format."}},fields:{id:{label:"Key ID",placeholder:"Enter a key ID",tooltip:"An identifier for a key",help:"If using JWK, need to match with the jwk.kid field"},name:{label:"Name",placeholder:"Enter a unique name for this key",tooltip:"The name to associate with the given key"},tags:{label:"Tags",placeholder:"Enter a list of tags separated by comma",help:"e.g. tag1, tag2, tag3",tooltip:"An optional set of strings for grouping and filtering, separated by commas."},key_set:{label:"Key Set",placeholder:"Select a key set to add into",footer:"Search by exact ID to find key sets not included in the list"},key_format:{label:"Key Format",options:{jwk:"JWK",pem:"PEM"}},jwk:{label:"JWK",placeholder:"Enter a JWK",tooltip:"A JSON Web key represented as a string"},kid:{label:"Key ID",tooltip:"A unique identifier for a key."},set:{label:"Key Set",tooltip:"The id (an UUID) of the key-set with which to associate the key."},private_key:{label:"Private Key",placeholder:"Enter a private key"},public_key:{label:"Public Key",placeholder:"Enter a public key"}}}}};function En(){const e=he.createI18n("en-us",An);return{i18n:e,i18nT:he.i18nTComponent(e)}}const Oe={useI18n:En},le={list:{konnect:{all:"/api/runtime_groups/{controlPlaneId}/keys",forKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}/keys"},kongManager:{all:"/{workspace}/keys",forKeySet:"/{workspace}/key-sets/{keySetId}/keys"}},form:{konnect:{create:{all:"/api/runtime_groups/{controlPlaneId}/keys",forKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}/keys"},edit:{all:"/api/runtime_groups/{controlPlaneId}/keys/{id}",forKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}/keys/{id}"},keySets:"/api/runtime_groups/{controlPlaneId}/key-sets",getKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}"},kongManager:{create:{all:"/{workspace}/keys",forKeySet:"/{workspace}/key-sets/{keySetId}/keys"},edit:{all:"/{workspace}/keys/{id}",forKeySet:"/{workspace}/key-sets/{keySetId}/keys/{id}"},keySets:"/{workspace}/key-sets",getKeySet:"/{workspace}/key-sets/{keySetId}"}}};var tt=(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))(tt||{}),ke=(e=>(e.Edit="edit",e.Create="create",e))(ke||{}),de=(e=>(e[e.Loading=0]="Loading",e[e.Idle=1]="Idle",e[e.NoResults=2]="NoResults",e[e.Error=3]="Error",e))(de||{}),q=(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))(q||{}),X=(e=>(e.Basic="basic",e.Advanced="advanced",e.Plugin="plugin",e))(X||{});function Vn(){return{getAxiosInstance:(e={})=>{try{const n=t.inject("get-axios-instance",void 0);return typeof n=="function"?n(e):et.create({withCredentials:!0,timeout:3e4,...e})}catch(n){return console.warn("getAxiosInstance:",n.message||n),et.create({withCredentials:!0,timeout:3e4,...e})}},getTraceIdFromError:e=>{var n;return((n=e==null?void 0:e.response)==null?void 0:n.headers["x-datadog-trace-id"])||""}}}function jn(){return{debounce:(e,n)=>{let o;return(...r)=>{clearTimeout(o),o=window==null?void 0:window.setTimeout(()=>{e(...r)},n)}}}}const Ke="khcp-user-table-preferences",Tn={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function $n(){const e=o=>{if(typeof o=="string")try{return JSON.parse(o)}catch(r){console.error("useTablePreferences(tryParseJson)",r);return}},n=()=>{const o=e(localStorage.getItem(Ke));return!o||!Object.keys(o).length?new Map:new Map(Object.entries(o))};return{setTablePreferences:(o,r)=>{try{const a=n();a.set(o,r),localStorage.setItem(Ke,JSON.stringify(Object.fromEntries(a.entries())))}catch(a){console.error("useTablePreferences(setTablePreferences)",a)}},getTablePreferences:o=>{const r=n();return(r==null?void 0:r.get(o))||void 0||Tn},deleteAllTablePreferences:()=>{localStorage.removeItem(Ke)}}}function Fe(e={}){const{getAxiosInstance:n}=Vn();return{axiosInstance:n(e)}}const Mn={actions:{copyId:"Copy ID",copied_id:'Copied "{id}" to the clipboard',copyToClipboard:"Copied successfully!",copyToClipboardFailed:"Failed to copy to the clipboard"}},On={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},Kn={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."}},Fn={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Dn={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"}},qn={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},Ln={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},Un={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Rn={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"}},Pn={global:Mn,deleteModal:On,baseForm:Kn,baseTable:Fn,baseConfigCard:Dn,filter:qn,debouncedFilter:Ln,errors:Un,toggleModal:Rn};function De(){const e=he.createI18n("en-us",Pn);return{i18n:e,i18nT:he.i18nTComponent(e)}}function nt(){const e=(o,r)=>(r==null?void 0:r[o])??void 0,n=(o,r)=>{if(o.length!==r.length)return!1;const a=new Set([...o,...r]);for(const l of a){const i=o.filter(c=>c===l).length,s=r.filter(c=>c===l).length;if(i!==s)return!1}return!0};return{getPropValue:e,objectsAreEqual:(o,r,a)=>{if(a){if(Object.keys(o).length===Object.keys(r).length)for(const l in o)if(Array.isArray(o[l])&&Array.isArray(r[l])){if(n(o[l],r[l]))continue;return!1}else{if(o[l]===r[l])continue;return!1}else return!1;return!0}try{return JSON.stringify(o)===JSON.stringify(r)}catch{return!1}},sortAlpha:o=>(r,a)=>{let l=r[o]===void 0||r[o]===null?"":r[o],i=a[o]===void 0||a[o]===null?"":a[o];return Array.isArray(r[o])&&(l=r[o][0]),Array.isArray(a[o])&&(i=a[o][0]),l.localeCompare(i)},isValidUuid:o=>o?/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/.test(o):!1}}function vn(e,n,o,r={fetchedItemsKey:"data",searchKeys:["id"]}){o||(o="100");const{axiosInstance:a}=Fe({headers:e.requestHeaders}),{i18n:{t:l}}=De(),{debounce:i}=jn(),s=i(async b=>{await B(b)},200),c=t.ref(!1),p=t.ref(""),d=t.ref(""),u=t.ref([]),g=t.ref([]),y=t.ref(void 0),S=t.unref(n);let h=`${e.apiBaseUrl}${S}`;e.app==="konnect"?h=h.replace(/{controlPlaneId}/gi,(e==null?void 0:e.controlPlaneId)||""):e.app==="kongManager"&&(h=h.replace(/\/{workspace}/gi,e!=null&&e.workspace?`/${e.workspace}`:""));const{isValidUuid:_}=nt(),k=async()=>{try{c.value=!0;const{data:b}=await a.get(`${h}?size=${o}`);b!=null&&b.next||(y.value=r.fetchedItemsKey in b?b[r.fetchedItemsKey]:[]),g.value=r.fetchedItemsKey in b?b[r.fetchedItemsKey]:[],u.value=g.value}catch{u.value=[],p.value=l("debouncedFilter.errors.fetch")}finally{c.value=!1}},f=t.ref(""),B=async b=>{var C,A,V;if(f.value!==b)if(f.value=b||"",y.value===void 0)try{if(c.value=!0,p.value="",d.value="",e.app==="konnect"){let j=h+"";b&&(j+=`/${b}`);const{data:x}=await a.get(`${j}?size=${o}`);r.fetchedItemsKey in x?u.value=x[r.fetchedItemsKey]:x!=null&&x.id?u.value=[x]:u.value=[]}else if(b){const j=[];_(b)&&r.searchKeys.includes("id")?j.push((async()=>{const{data:N}=await a.get(`${h}/${b}`);return[N[r.fetchedItemsKey]??N]})()):j.push(...r.searchKeys.filter(N=>N!=="id").map(async N=>{const{data:E}=await a.get(`${h}?${N}=${b}`);return E[r.fetchedItemsKey]}));const x=await Promise.all(j),T=new Set;u.value=[],(C=x==null?void 0:x.forEach)==null||C.call(x,N=>{var E;(E=N==null?void 0:N.forEach)==null||E.call(N,O=>{T.has(O.id)||(T.add(O.id),u.value.push(O))})})}else u.value=g.value}catch(j){((A=j==null?void 0:j.response)==null?void 0:A.status)===404?d.value=l("debouncedFilter.errors.invalid"):(u.value=[],p.value=l("debouncedFilter.errors.fetch"))}finally{c.value=!1}else c.value=!0,d.value="",b?(u.value=(V=y.value)==null?void 0:V.filter(j=>{var x;let T=!1;for(const N of r.searchKeys){const E=typeof j[N]=="string"?(x=j[N])==null?void 0:x.toLowerCase():j[N];E!=null&&E.includes(b.toLowerCase())&&(T=!0)}return T}),(!u.value||!u.value.length)&&(d.value=l("debouncedFilter.errors.invalid"))):u.value=y.value,c.value=!1};return{loading:c,error:p,validationError:d,results:u,allRecords:y,loadItems:k,debouncedQueryChange:s}}function zn(e,n){const o=t.unref(n),r=t.computed(()=>e.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${o}`):new URL(o));return r.value.search="",a=>`${r.value.href}/${a}`}function Jn(){const{i18n:{t:e}}=De();return{getMessageFromError:n=>{var o,r,a,l;if(!n)return e("errors.unexpected");if(((o=n==null?void 0:n.response)==null?void 0:o.status)===401)return console.warn("getMessageFromError: User auth token is expired or missing, returning empty message."),"";if((r=n==null?void 0:n.response)!=null&&r.data){if(n.response.data.detail)return n.response.data.detail;if((a=n.response.data.details)!=null&&a.length)return n.response.data.details.map(i=>{let s=e("errors.unexpected");return i.messages&&typeof i.messages=="object"&&i.messages.length&&(s=i.messages.join(", ")),i.field?`${i.field} - ${s}`:s}).join("; ");if(n.response.data.message){const{message:i}=n.response.data;return Array.isArray(i)?(l=i[0])!=null&&l.constraints?Object.values(i[0].constraints)[0]:i[0]:i}if(typeof n.response.data=="string")return n.response.data;if(typeof n.response.data=="object")return Object.keys(n.response.data).map(i=>`${i} ${n.response.data[i]}`).join(", ")}return n.message||e("errors.unexpected")}}}function Hn(e){const n=window.location.origin,o=n.endsWith("/")?n:`${n}/`;try{const r=e.join("/"),a=`${o}${r}`,l=e.some(i=>i.trim()==="");if(/^(https:\/\/(www\.)?([a-zA-Z0-9-]+\.){1,}[a-zA-Z]{2,}(:[0-9]+)?(\/[^\/]+)*)$|^(https|http):\/\/localhost(:[0-9]+)?(\/[^\/]+)*$/.test(a)&&!l&&new URL(a))return`${o}${r}`;throw new Error("Invalid url")}catch(r){return console.warn("Failed to build valid URL:",r),""}}function ot(e,n){const o=t.ref(t.unref(e)),r=t.ref(t.unref(n)),a=t.computed(()=>!!(o.value.app==="konnect"||o.value.isExactMatch)),l=t.computed(()=>r.value.startsWith("/")?new URL(`${window.location.origin}${r.value}`):new URL(r.value));return i=>{const{page:s,pageSize:c,offset:p,sortColumnKey:d,sortColumnOrder:u,query:g}=i;try{let y=new URL(l.value.href);return a.value&&g?(y.search="",y=o.value.app==="konnect"?new URL(`${y.href}?filter[name][contains]=${g}`):new URL(`${y.href}/${g}/`)):(a.value||new URLSearchParams(g).forEach((S,h)=>{y.searchParams.append(h,S)}),d&&y.searchParams.append("sort_by",d),u==="desc"&&y.searchParams.append("sort_desc","1"),y.searchParams.append("size",String(c))),p&&s!==1&&y.searchParams.append("offset",String(p)),y.href}catch(y){return console.error("RouteList(fetcher)",y),r.value}}}function Wn(e,n,o="data"){const r=t.unref(n),{axiosInstance:a}=Fe({headers:e.requestHeaders}),l=ot(e,r),i=t.ref({status:de.Idle});return{fetcher:async s=>{try{i.value={status:de.Loading};let c=l(s);c.includes("filter[name]")&&(c=`${c}&page[size]=${s.pageSize}&page[number]=${s.page}`);const{data:p}=await a.get(c),d=o&&o.replace(/[^\w-_]/gi,"");let u;p[d]&&Array.isArray(p[d])?u=p[d]:Array.isArray(p)?u=p:u=Object.keys(p).length?[p]:[];const g={data:u,total:u.length,...p.offset?{pagination:{offset:p.offset}}:null};return i.value={status:de.Idle,response:g},g}catch(c){const p={data:[],total:0};return s.query&&c.response.status===404?(i.value={status:de.NoResults,response:p,error:c},p):(i.value={status:de.Error,response:p,error:c},p)}},fetcherState:i}}function Yn(){const e=(o,r="_")=>o?o.split(r).map(a=>a.toLowerCase()==="id"?a.toUpperCase():a.charAt(0).toUpperCase()+a.substring(1)).join(" "):"",n=/(?:^|[\s-:'"])\w/g;return{capitalize:o=>o?o.replace(n,r=>r.toUpperCase()):"",convertKeyToTitle:e}}const rt=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,at=e=>{if(typeof e!="string")throw new TypeError("Invalid argument expected string");const n=e.match(rt);if(!n)throw new Error(`Invalid argument not valid semver ('${e}' received)`);return n.shift(),n},it=e=>e==="*"||e==="x"||e==="X",lt=e=>{const n=parseInt(e,10);return isNaN(n)?e:n},Zn=(e,n)=>typeof e!=typeof n?[String(e),String(n)]:[e,n],Gn=(e,n)=>{if(it(e)||it(n))return 0;const[o,r]=Zn(lt(e),lt(n));return o>r?1:o<r?-1:0},st=(e,n)=>{for(let o=0;o<Math.max(e.length,n.length);o++){const r=Gn(e[o]||"0",n[o]||"0");if(r!==0)return r}return 0},Qn=(e,n)=>{const o=at(e),r=at(n),a=o.pop(),l=r.pop(),i=st(o,r);return i!==0?i:a&&l?st(a.split("."),l.split(".")):a||l?a?-1:1:0},ct=(e,n,o)=>{Xn(o);const r=Qn(e,n);return dt[o].includes(r)},dt={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},pt=Object.keys(dt),Xn=e=>{if(typeof e!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof e}`);if(pt.indexOf(e)===-1)throw new Error(`Invalid operator, expected one of ${pt.join("|")}`)},eo=e=>typeof e=="string"&&/^[v\d]/.test(e)&&rt.test(e);function to(e){const{gatewayInfo:n,supportedRange:o}=e;if(!n)return!0;const{edition:r,version:a}=n;if(!eo(a))return console.error("Invalid version"),!1;const l=o[r];if(!l)return!1;const[i,s]=l;return!(i&&ct(a,i,"<")||s&&ct(a,s,">"))}function no(e){const n=t.ref(0),o=t.ref(0),r=t.ref(!1);return t.watch(e,a=>{a&&!r.value&&(n.value=a.offsetWidth,o.value=a.scrollWidth,r.value=!0)}),{isTruncated:t.computed(()=>n.value<o.value)}}const W={useAxios:Fe,useDebouncedFilter:vn,useDeleteUrlBuilder:zn,useErrors:Jn,useExternalLinkCreator:Hn,useFetcher:Wn,useFetchUrlBuilder:ot,useHelpers:nt,useStringHelpers:Yn,useI18n:De,useGatewayFeatureSupported:to,useTruncationDetector:no},oo={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},ro="Copy to clipboard",ao={message:oo,iconTitle:ro},io="kong-ui-copy-uuid-notify",ut="24px",lo=(e,n)=>{const o=e.__vccOpts||e;for(const[r,a]of n)o[r]=a;return o},so=e=>(t.pushScopeId("data-v-13f41aa3"),e=e(),t.popScopeId(),e),co=["aria-hidden"],po={key:0,"data-testid":"kui-icon-svg-title"},uo=so(()=>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)),fo=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:ut,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const n=String(e).replace(/px/gi,""),o=Number(n);if(o&&!isNaN(o)&&Number.isInteger(o)&&o>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const n=e,o=t.computed(()=>{if(typeof n.size=="number"&&n.size>0)return`${n.size}px`;if(typeof n.size=="string"){const a=String(n.size).replace(/px/gi,""),l=Number(a);if(l&&!isNaN(l)&&Number.isInteger(l)&&l>0)return`${l}px`}return ut}),r=t.computed(()=>({boxSizing:"border-box",color:n.color,display:n.display,height:o.value,lineHeight:"0",width:o.value}));return(a,l)=>(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(r.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",po,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),uo],8,co))]),_:1},8,["aria-hidden","style"]))}}),mo=lo(fo,[["__scopeId","data-v-13f41aa3"]]),yo="16px",go={class:"kong-ui-copy-uuid"},ho=["onClick"],ft=15,ko=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:n}){const{t:o}=he.createI18n("en-us",ao),r=e,a=n,l=r.notify||t.inject(io,()=>{}),i=t.computed(()=>r.idTooltip?{label:r.idTooltip,positionFixed:!0,placement:"bottomStart"}:{title:r.uuid}),s=t.computed(()=>!!(r.tooltip&&r.successTooltip)),c=t.ref(r.tooltip),p=t.computed(()=>r.tooltip?{label:c.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),d=t.computed(()=>{var y;return r.format==="redacted"?"*****":r.format==="deleted"?`*${(y=r.uuid)==null?void 0:y.substring(0,5)}`:r.uuid}),u=y=>{c.value=y,setTimeout(()=>{c.value=r.tooltip},1800)},g=y=>{var S,h;if(!y(r.uuid)){typeof l=="function"&&l({type:"error",message:o("message.fail")}),s.value?u(o("message.fail")):a("error",r.uuid);return}const _=((S=r.uuid)==null?void 0:S.length)>ft,k=r.format==="hidden"||r.format==="redacted"?o("message.success.prefix"):`"${((h=r.uuid)==null?void 0:h.substring(0,ft))+(_?"...":"")}"`;typeof l=="function"&&l({type:"success",message:`${k}${o("message.success.content")}`}),s.value?u(r.successTooltip):a("success",r.uuid)};return(y,S)=>{const h=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",go,[e.format!=="hidden"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.idTooltip?"KTooltip":"div"),t.mergeProps({key:0},i.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(d.value),3)]),_:1},16)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tooltip?"KTooltip":"div"),t.mergeProps(p.value,{class:"uuid-icon-wrapper"}),{default:t.withCtx(()=>[t.createVNode(h,null,{default:t.withCtx(({copyToClipboard:_})=>[t.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:t.withModifiers(k=>g(_),["stop"])},[t.createVNode(t.unref(mo),{class:"uuid-icon",color:e.iconColor,decorative:!!e.tooltip,size:t.unref(yo),title:t.unref(o)("iconTitle")},null,8,["color","decorative","size","title"])],8,ho)]),_:1})]),_:1},16))])}}}),bo=(e,n)=>{const o=e.__vccOpts||e;for(const[r,a]of n)o[r]=a;return o},mt=bo(ko,[["__scopeId","data-v-0c07874b"]]),Co={key:0,class:"config-card-fieldset-title"},wo=t.defineComponent({__name:"JsonCardItem",props:{item:{type:Object,required:!0},index:{type:Number,default:-1},isArrayItem:{type:Boolean,default:!1}},setup(e){const n=e,{i18n:{t:o}}=W.useI18n(),{convertKeyToTitle:r}=W.useStringHelpers(),a=t.computed(()=>n.item.key??"json-array-item"),l=t.computed(()=>n.item.value??n.item),i=t.computed(()=>{const c=JSON.parse(JSON.stringify(l.value));return n.isArrayItem&&delete c.name,c}),s=t.computed(()=>{var c;return n.isArrayItem?(c=l.value)!=null&&c.name?r(l.value.name,"_"):o("baseConfigCard.general.entryTitle",{index:n.index}):""});return(c,p)=>(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",Co,[t.createElementVNode("b",null,t.toDisplayString(s.value),1)])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(i.value),(d,u)=>(t.openBlock(),t.createBlock(be,{key:`${a.value}-property-${u}`,item:{key:d,label:t.unref(r)(d),value:i.value[d]}},null,8,["item"]))),128))]),_:1},8,["class"]))}}),oe=(e,n)=>{const o=e.__vccOpts||e;for(const[r,a]of n)o[r]=a;return o},yt=oe(wo,[["__scopeId","data-v-68ca83ec"]]),So=t.defineComponent({__name:"InternalLinkItem",props:{item:{type:Object,required:!0}},emits:["navigation-click"],setup(e){const{i18n:{t:n}}=W.useI18n();return(o,r)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(a,{appearance:"tertiary",class:"navigation-button",onClick:r[0]||(r[0]=l=>o.$emit("navigation-click",e.item))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.item.value||t.unref(n)("baseConfigCard.commonFields.link")),1)]),_:1})])}}}),gt=oe(So,[["__scopeId","data-v-c96811e5"]]),xo=t.defineComponent({__name:"StatusBadge",props:{status:{type:Boolean,default:!1}},setup(e){const{i18n:{t:n}}=W.useI18n();return(o,r)=>{const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:e.status?"success":"neutral"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.status?t.unref(n)("baseConfigCard.statusBadge.enabledLabel"):t.unref(n)("baseConfigCard.statusBadge.disabledLabel")),1)]),_:1},8,["appearance"])}}}),_o="#0044f4",Bo="#e0e4ea",Io="#3a3f51",No="1px",Ao="20px",Eo={class:"config-card-details-row"},Vo=["data-testid"],jo=["data-testid"],To=["data-testid"],$o=["data-testid"],Mo={key:1},Oo=["data-testid"],Ko=["data-testid"],Fo=["data-testid"],Do=["data-testid"],qo={name:"ConfigCardItem",components:{CopyUuid:mt,JsonCardItem:yt,StatusBadge:xo,InternalLinkItem:gt}},Lo=t.defineComponent({...qo,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:n}){t.useCssVars(S=>({"5ae2770e":d.value?"none":`solid ${t.unref(No)} ${t.unref(Bo)}`,"4db3977e":p.value&&s.value?"block":"flex","1a7c5e02":p.value&&s.value?"100%":o.slim?"50%":"25%","1a77d24c":p.value&&s.value?"100%":o.slim?"50%":"75%"}));const o=e,r=n,a=t.useSlots(),{i18n:{t:l,formatUnixTimeStamp:i}}=W.useI18n(),s=t.computed(()=>o.item.value!==void 0&&o.item.value!==null&&o.item.value!==""),c=t.computed(()=>!!(o.item.tooltip||a["label-tooltip"])),p=t.computed(()=>o.item.type===q.Json||o.item.type===q.JsonArray),d=t.computed(()=>o.item.type===q.JsonArray),u=t.computed(()=>{switch(o.item.type){case q.ID:return{tag:"CopyUuid",attrs:{"data-testid":`${o.item.key}-copy-uuid`,"success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:o.item.label}),truncated:!1,uuid:o.item.value,notify:()=>{}}};case q.IdArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{"success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:o.item.label}),truncated:!1,notify:()=>{}}};case q.Redacted:return{tag:"CopyUuid",attrs:{"data-testid":`${o.item.key}-copy-uuid-redacted`,format:"redacted","success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:o.item.label}),truncated:!1,uuid:o.item.value,notify:()=>{}}};case q.RedactedArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{format:"redacted","success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:o.item.label}),truncated:!1,notify:()=>{}}};case q.Date:return{tag:"div",attrs:{"data-testid":`${o.item.key}-date`},text:i(o.item.value)};case q.BadgeStatus:return{tag:"StatusBadge",attrs:{"data-testid":`${o.item.key}-badge-status`,status:o.item.value}};case q.BadgeTag:return{tag:"div",additionalComponent:"KBadge"};case q.BadgeMethod:return{tag:"div",additionalComponent:"KMethodBadge"};case q.LinkInternal:return{tag:"InternalLinkItem",attrs:{"data-testid":`${o.item.key}-internal-link`,item:o.item,onNavigationClick:S=>{r("navigation-click",S)}}};case q.LinkExternal:return{tag:"KExternalLink",attrs:{"data-testid":`${o.item.key}-external-link`,href:o.item.value},text:o.item.value};case q.Json:return{tag:"JsonCardItem",attrs:{"data-testid":`${o.item.key}-json-content`,item:o.item}};case q.JsonArray:return{tag:"div",additionalComponent:"JsonCardItem",attrs:{"data-testid":`${o.item.key}-json-array-content`,item:o.item}};default:return{tag:"div",attrs:{"data-testid":`${o.item.key}-plain-text`},text:o.item.value}}}),g=t.ref(),{isTruncated:y}=W.useTruncationDetector(g);return(S,h)=>{const _=t.resolveComponent("KLabel"),k=t.resolveComponent("KBadge"),f=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",Eo,[t.createElementVNode("div",{class:"config-card-details-label","data-testid":`${e.item.key}-label`},[t.renderSlot(S.$slots,"label",{item:e.item},()=>[t.createVNode(_,{"tooltip-attributes":{maxWidth:"500px"}},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.item.label)+" ",1)]),_:2},[c.value?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{"data-testid":`${e.item.key}-label-tooltip`},[t.renderSlot(S.$slots,"label-tooltip",{},()=>[t.createTextVNode(t.toDisplayString(e.item.tooltip),1)],!0)],8,jo)]),key:"0"}:void 0]),1024)],!0)],8,Vo),t.createElementVNode("div",{class:"config-card-details-value","data-testid":`${e.item.key}-property-value`},[t.renderSlot(S.$slots,e.item.key,{rowValue:e.item.value},()=>[s.value?(t.openBlock(),t.createElementBlock("div",Mo,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(u.value.tag),t.normalizeProps(t.guardReactiveProps(u.value.attrs)),{default:t.withCtx(()=>[u.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,(B,b)=>(t.openBlock(),t.createBlock(k,{key:`${e.item.key}-badge-tag-${b}`,class:"config-badge","data-testid":`${e.item.key}-badge-tag-${b}`,tooltip:B,"truncation-tooltip":""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(B),1)]),_:2},1032,["data-testid","tooltip"]))),128))],8,Oo)):t.createCommentVNode("",!0),u.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,(B,b)=>(t.openBlock(),t.createBlock(t.unref(mt),t.mergeProps(u.value.childAttrs,{key:`${e.item.key}-copy-uuid-${b}`,"data-testid":`${e.item.key}-copy-uuid-${b}`,uuid:B}),null,16,["data-testid","uuid"]))),128))],8,Ko)):u.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,(B,b)=>(t.openBlock(),t.createBlock(k,{key:`${e.item.key}-badge-method-${b}`,appearance:Object.values(t.unref(Nn.BadgeMethodAppearances)).includes(B.toLowerCase())?B.toLowerCase():"custom",class:"config-badge","data-testid":`${e.item.key}-badge-method-${b}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(B),1)]),_:2},1032,["appearance","data-testid"]))),128))],8,Fo)):t.createCommentVNode("",!0),u.value.additionalComponent==="JsonCardItem"?(t.openBlock(),t.createElementBlock("div",{key:3,"data-testid":`${o.item.key}-json-array-content`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.item.value,(B,b)=>(t.openBlock(),t.createBlock(yt,{key:`json-array-item-${b}`,index:b,"is-array-item":"",item:B},null,8,["index","item"]))),128))],8,Do)):(t.openBlock(),t.createBlock(f,{key:4,text:t.unref(y)?e.item.value:""},{default:t.withCtx(()=>[t.createElementVNode("span",{ref_key:"textContent",ref:g,class:t.normalizeClass(["attrs-data-text",{truncated:e.truncated}])},t.toDisplayString(u.value.text),3)]),_:1},8,["text"]))]),_:1},16))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${e.item.key}-no-value`}," – ",8,$o))],!0)],8,To)])}}}),be=oe(Lo,[["__scopeId","data-v-f65fc52c"]]),Uo={class:"json-config"},Ro={key:0,class:"json-endpoint"},ht=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(a=>({"2d178975":`${r.value}ch`}));const n=e,o=t.computed(()=>n.jsonRecord),r=t.computed(()=>{var a;if(!n.fetcherUrl)return 0;const l=(a=n.fetcherUrl)==null?void 0:a.split("/");return l.length<2?0:41+(n.requestMethod==="post"?l[l.length-1]:l[l.length-2]).length});return(a,l)=>{var i;const s=t.resolveComponent("KBadge"),c=t.resolveComponent("KCodeBlock");return t.openBlock(),t.createElementBlock("div",Uo,[n.fetcherUrl&&(i=n.config)!=null&&i.jsonYamlFormsEnabled?(t.openBlock(),t.createElementBlock("div",Ro,[t.createVNode(s,{appearance:n.requestMethod},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.requestMethod),1)]),_:1},8,["appearance"]),t.createVNode(c,{id:"json-endpoint-codeblock",code:n.fetcherUrl,"is-single-line":"",language:"json",theme:"dark"},null,8,["code"])])):t.createCommentVNode("",!0),n.jsonRecord?(t.openBlock(),t.createBlock(c,{key:1,id:"json-codeblock",class:t.normalizeClass({"json-content":n.fetcherUrl}),code:JSON.stringify(o.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 kt(e){return typeof e>"u"||e===null}function Po(e){return typeof e=="object"&&e!==null}function vo(e){return Array.isArray(e)?e:kt(e)?[]:[e]}function zo(e,n){var o,r,a,l;if(n)for(l=Object.keys(n),o=0,r=l.length;o<r;o+=1)a=l[o],e[a]=n[a];return e}function Jo(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function Ho(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var Wo=kt,Yo=Po,Zo=vo,Go=Jo,Qo=Ho,Xo=zo,H={isNothing:Wo,isObject:Yo,toArray:Zo,repeat:Go,isNegativeZero:Qo,extend:Xo};function bt(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
|
|
2
2
|
|
|
3
3
|
`+e.mark.snippet),r+" "+o):r}function Ce(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=bt(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Ce.prototype=Object.create(Error.prototype),Ce.prototype.constructor=Ce,Ce.prototype.toString=function(e){return this.name+": "+bt(this,e)};var ee=Ce;function qe(e,n,o,r,a){var l="",i="",s=Math.floor(a/2)-1;return r-n>s&&(l=" ... ",n=r-s+l.length),o-r>s&&(i=" ...",o=r+s-i.length),{str:l+e.slice(n,o).replace(/\t/g,"→")+i,pos:r-n+l.length}}function Le(e,n){return H.repeat(" ",n-e.length)+e}function er(e,n){if(n=Object.create(n||null),!e.buffer)return null;n.maxLength||(n.maxLength=79),typeof n.indent!="number"&&(n.indent=1),typeof n.linesBefore!="number"&&(n.linesBefore=3),typeof n.linesAfter!="number"&&(n.linesAfter=2);for(var o=/\r?\n|\r|\0/g,r=[0],a=[],l,i=-1;l=o.exec(e.buffer);)a.push(l.index),r.push(l.index+l[0].length),e.position<=l.index&&i<0&&(i=r.length-2);i<0&&(i=r.length-1);var s="",c,p,d=Math.min(e.line+n.linesAfter,a.length).toString().length,u=n.maxLength-(n.indent+d+3);for(c=1;c<=n.linesBefore&&!(i-c<0);c++)p=qe(e.buffer,r[i-c],a[i-c],e.position-(r[i]-r[i-c]),u),s=H.repeat(" ",n.indent)+Le((e.line-c+1).toString(),d)+" | "+p.str+`
|
|
4
4
|
`+s;for(p=qe(e.buffer,r[i],a[i],e.position,u),s+=H.repeat(" ",n.indent)+Le((e.line+1).toString(),d)+" | "+p.str+`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kong-ui-public/entities-keys",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.26",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/entities-keys.umd.js",
|
|
6
6
|
"module": "./dist/entities-keys.es.js",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"errorLimit": "486KB"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@kong-ui-public/entities-shared": "^2.7.
|
|
55
|
+
"@kong-ui-public/entities-shared": "^2.7.5"
|
|
56
56
|
},
|
|
57
57
|
"scripts": {
|
|
58
58
|
"dev": "cross-env USE_SANDBOX=true vite",
|