@kong-ui-public/entities-keys 1.1.12 → 1.1.14
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
|
@@ -2211,25 +2211,25 @@ const ol = { class: "kong-ui-entities-keys-list" }, il = { key: 1 }, nl = /* @__
|
|
|
2211
2211
|
type: String,
|
|
2212
2212
|
default: ""
|
|
2213
2213
|
},
|
|
2214
|
-
/**
|
|
2214
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can create a new entity */
|
|
2215
2215
|
canCreate: {
|
|
2216
2216
|
type: Function,
|
|
2217
2217
|
required: !1,
|
|
2218
2218
|
default: async () => !0
|
|
2219
2219
|
},
|
|
2220
|
-
/**
|
|
2220
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can delete a given entity */
|
|
2221
2221
|
canDelete: {
|
|
2222
2222
|
type: Function,
|
|
2223
2223
|
required: !1,
|
|
2224
2224
|
default: async () => !0
|
|
2225
2225
|
},
|
|
2226
|
-
/**
|
|
2226
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can edit a given entity */
|
|
2227
2227
|
canEdit: {
|
|
2228
2228
|
type: Function,
|
|
2229
2229
|
required: !1,
|
|
2230
2230
|
default: async () => !0
|
|
2231
2231
|
},
|
|
2232
|
-
/**
|
|
2232
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can retrieve (view details) a given entity */
|
|
2233
2233
|
canRetrieve: {
|
|
2234
2234
|
type: Function,
|
|
2235
2235
|
required: !1,
|
|
@@ -2516,7 +2516,7 @@ const Ze = (e, l) => {
|
|
|
2516
2516
|
for (const [a, i] of l)
|
|
2517
2517
|
t[a] = i;
|
|
2518
2518
|
return t;
|
|
2519
|
-
}, wl = /* @__PURE__ */ Ze(nl, [["__scopeId", "data-v-
|
|
2519
|
+
}, wl = /* @__PURE__ */ Ze(nl, [["__scopeId", "data-v-bede4326"]]), sl = { class: "kong-ui-entities-keys-form" }, rl = { "data-testid": "no-search-results" }, dl = { class: "select-item-label" }, cl = { class: "select-item-desc" }, ul = {
|
|
2520
2520
|
key: 0,
|
|
2521
2521
|
class: "invalid-key-set-message",
|
|
2522
2522
|
"data-testid": "invalid-key-set-message"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(H,e){typeof exports=="object"&&typeof module<"u"?e(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"],e):(H=typeof globalThis<"u"?globalThis:H||self,e(H["kong-ui-public-entities-keys"]={},H.Vue,H.VueRouter,H["kong-ui-public-i18n"],H.axios,H.Kongponents))})(this,function(H,e,le,Y,Ie,Ne){"use strict";const Ee={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 $e(){const t=Y.createI18n("en-us",Ee);return{i18n:t,i18nT:Y.i18nTComponent(t)}}const re={useI18n:$e},X={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:"/api/runtime_groups/{controlPlaneId}/keys",edit:"/api/runtime_groups/{controlPlaneId}/keys/{id}",keySets:"/api/runtime_groups/{controlPlaneId}/key-sets",getKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}"},kongManager:{create:"/{workspace}/keys",edit:"/{workspace}/keys/{id}",keySets:"/{workspace}/key-sets",getKeySet:"/{workspace}/key-sets/{keySetId}"}}};var pe=(t=>(t.GatewayService="service",t.Route="route",t.Consumer="consumer",t.ConsumerGroup="consumer group",t.Plugin="plugin",t.Upstream="upstream",t.Certificate="certificate",t.CACertificate="ca certificate",t.SNI="SNI",t.Key="key",t.KeySet="key set",t.Vault="vault",t.Application="application",t.Developer="developer",t.acls="ACL Credential",t["basic-auth"]="Basic Auth Credential",t["key-auth"]="Key Auth Credential",t["key-auth-enc"]="Key Auth Encrypted Credential",t.oauth2="OAuth 2.0 Credential",t["hmac-auth"]="HMAC Credential",t.jwt="JWT Credential",t.Target="target",t))(pe||{}),Z=(t=>(t.Edit="edit",t.Create="create",t))(Z||{}),Q=(t=>(t[t.Loading=0]="Loading",t[t.Idle=1]="Idle",t[t.NoResults=2]="NoResults",t[t.Error=3]="Error",t))(Q||{}),P=(t=>(t.ID="id",t.IdArray="id-array",t.Text="plain-text",t.Date="date",t.Redacted="redacted",t.RedactedArray="redacted-array",t.Json="json",t.JsonArray="json-array",t.BadgeTag="badge-tag",t.BadgeStatus="badge-status",t.BadgeMethod="badge-method",t.LinkInternal="link-internal",t.LinkExternal="link-external",t))(P||{}),L=(t=>(t.Basic="basic",t.Advanced="advanced",t.Plugin="plugin",t))(L||{});function ie(t={}){return{axiosInstance:Ie.create({withCredentials:!0,timeout:3e4,...t})}}function Ke(){return{debounce:(t,n)=>{let a;return(...o)=>{clearTimeout(a),a=window==null?void 0:window.setTimeout(()=>{t(...o)},n)}}}}const se="khcp-user-table-preferences",Te={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function je(){const t=a=>{if(typeof a=="string")try{return JSON.parse(a)}catch(o){console.error("useTablePreferences(tryParseJson)",o);return}},n=()=>{const a=t(localStorage.getItem(se));return!a||!Object.keys(a).length?new Map:new Map(Object.entries(a))};return{setTablePreferences:(a,o)=>{try{const r=n();r.set(a,o),localStorage.setItem(se,JSON.stringify(Object.fromEntries(r.entries())))}catch(r){console.error("useTablePreferences(setTablePreferences)",r)}},getTablePreferences:a=>{const o=n();return(o==null?void 0:o.get(a))||void 0||Te},deleteAllTablePreferences:()=>{localStorage.removeItem(se)}}}const De={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},Me={actions:{save:"Save",cancel:"Cancel",back:"Back"},errors:{edit:"The entity could not be edited at this time."}},Pe={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Fe={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}"}},Re={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},qe={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},Ae={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Le={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"}},Ue={deleteModal:De,baseForm:Me,baseTable:Pe,baseConfigCard:Fe,filter:Re,debouncedFilter:qe,errors:Ae,toggleModal:Le};function ce(){const t=Y.createI18n("en-us",Ue);return{i18n:t,i18nT:Y.i18nTComponent(t)}}function Oe(t,n,a,o={fetchedItemsKey:"data",searchKeys:["id"]}){a||(a="100");const{axiosInstance:r}=ie({headers:t.requestHeaders}),{i18n:{t:i}}=ce(),{debounce:b}=Ke(),V=b(async m=>{await c(m)},200),g=e.ref(!1),l=e.ref(""),u=e.ref(""),h=e.ref([]),I=e.ref(void 0),C=e.unref(n);let K=`${t.apiBaseUrl}${C}`;t.app==="konnect"?K=K.replace(/{controlPlaneId}/gi,(t==null?void 0:t.controlPlaneId)||""):t.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,t!=null&&t.workspace?`/${t.workspace}`:""));const _=async()=>{try{g.value=!0;const{data:m}=await r.get(`${K}?size=${a}`);m!=null&&m.next||(I.value=o.fetchedItemsKey in m?m[o.fetchedItemsKey]:[]),h.value=o.fetchedItemsKey in m?m[o.fetchedItemsKey]:[]}catch{h.value=[],l.value=i("debouncedFilter.errors.fetch")}finally{g.value=!1}},d=e.ref(""),c=async m=>{var k,B;if(d.value!==m)if(d.value=m||"",I.value===void 0)try{g.value=!0,l.value="",u.value="";let f=K+"";m&&(f+=`/${m}`);const{data:p}=await r.get(`${f}?size=${a}`);o.fetchedItemsKey in p?h.value=p[o.fetchedItemsKey]:p!=null&&p.id?h.value=[p]:h.value=[]}catch(f){((k=f==null?void 0:f.response)==null?void 0:k.status)===404?u.value=i("debouncedFilter.errors.invalid"):(h.value=[],l.value=i("debouncedFilter.errors.fetch"))}finally{g.value=!1}else g.value=!0,u.value="",m?(h.value=(B=I.value)==null?void 0:B.filter(f=>{var p;let w=!1;for(const F of o.searchKeys){const M=typeof f[F]=="string"?(p=f[F])==null?void 0:p.toLowerCase():f[F];M!=null&&M.includes(m.toLowerCase())&&(w=!0)}return w}),(!h.value||!h.value.length)&&(u.value=i("debouncedFilter.errors.invalid"))):h.value=I.value,g.value=!1};return{loading:g,error:l,validationError:u,results:h,allRecords:I,loadItems:_,debouncedQueryChange:V}}function Je(t,n){const a=e.unref(n),o=e.computed(()=>t.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${a}`):new URL(a));return o.value.search="",r=>`${o.value.href}/${r}`}function He(){const{i18n:{t}}=ce();return{getMessageFromError:n=>{var a,o,r;if(!n)return t("errors.unexpected");if((a=n==null?void 0:n.response)!=null&&a.data){if(n.response.data.detail)return n.response.data.detail;if((o=n.response.data.details)!=null&&o.length)return n.response.data.details.map(i=>{let b=t("errors.unexpected");return i.messages&&typeof i.messages=="object"&&i.messages.length&&(b=i.messages.join(", ")),i.field?`${i.field} - ${b}`:b}).join("; ");if(n.response.data.message){const{message:i}=n.response.data;return Array.isArray(i)?(r=i[0])!=null&&r.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||t("errors.unexpected")}}}function fe(t,n){const a=e.ref(e.unref(t)),o=e.ref(e.unref(n)),r=e.computed(()=>!!(a.value.app==="konnect"||a.value.isExactMatch)),i=e.computed(()=>o.value.startsWith("/")?new URL(`${window.location.origin}${o.value}`):new URL(o.value));return b=>{const{page:V,pageSize:g,offset:l,sortColumnKey:u,sortColumnOrder:h,query:I}=b;try{let C=new URL(i.value.href);return r.value&&I?(C.search="",C=new URL(`${C.href}/${I}/`)):(r.value||new URLSearchParams(I).forEach((K,_)=>{C.searchParams.append(_,K)}),u&&C.searchParams.append("sort_by",u),h==="desc"&&C.searchParams.append("sort_desc","1"),C.searchParams.append("size",String(g))),l&&V!==1&&C.searchParams.append("offset",String(l)),C.href}catch(C){return console.error("RouteList(fetcher)",C),o.value}}}function ze(t,n,a="data"){const o=e.unref(n),{axiosInstance:r}=ie({headers:t.requestHeaders}),i=fe(t,o),b=e.ref({status:Q.Idle});return{fetcher:async V=>{try{b.value={status:Q.Loading};const g=i(V),{data:l}=await r.get(g),u=a&&a.replace(/[^\w-_]/gi,"");let h;l[u]&&Array.isArray(l[u])?h=l[u]:h=Object.keys(l).length?[l]:[];const I={data:h,total:h.length,...l.offset?{pagination:{offset:l.offset}}:null};return b.value={status:Q.Idle,response:I},I}catch(g){const l={data:[],total:0};return V.query&&g.response.status===404?(b.value={status:Q.NoResults,response:l,error:g},l):(b.value={status:Q.Error,response:l,error:g},l)}},fetcherState:b}}function We(){return{convertKeyToTitle:(t,n="_")=>t?t.split(n).map(a=>a.toLowerCase()==="id"?a.toUpperCase():a.charAt(0).toUpperCase()+a.substring(1)).join(" "):""}}const me=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,ye=t=>{if(typeof t!="string")throw new TypeError("Invalid argument expected string");const n=t.match(me);if(!n)throw new Error(`Invalid argument not valid semver ('${t}' received)`);return n.shift(),n},ue=t=>t==="*"||t==="x"||t==="X",ke=t=>{const n=parseInt(t,10);return isNaN(n)?t:n},Ge=(t,n)=>typeof t!=typeof n?[String(t),String(n)]:[t,n],Qe=(t,n)=>{if(ue(t)||ue(n))return 0;const[a,o]=Ge(ke(t),ke(n));return a>o?1:a<o?-1:0},ge=(t,n)=>{for(let a=0;a<Math.max(t.length,n.length);a++){const o=Qe(t[a]||"0",n[a]||"0");if(o!==0)return o}return 0},Xe=(t,n)=>{const a=ye(t),o=ye(n),r=a.pop(),i=o.pop(),b=ge(a,o);return b!==0?b:r&&i?ge(r.split("."),i.split(".")):r||i?r?-1:1:0},he=(t,n,a)=>{Ye(a);const o=Xe(t,n);return be[a].includes(o)},be={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},Ce=Object.keys(be),Ye=t=>{if(typeof t!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof t}`);if(Ce.indexOf(t)===-1)throw new Error(`Invalid operator, expected one of ${Ce.join("|")}`)},Ze=t=>typeof t=="string"&&/^[v\d]/.test(t)&&me.test(t);function ve(t){const{gatewayInfo:n,supportedRange:a}=t;if(!n)return!0;const{edition:o,version:r}=n;if(!Ze(r))return console.error("Invalid version"),!1;const i=a[o];if(!i)return!1;const[b,V]=i;return!(b&&he(r,b,"<")||V&&he(r,V,">"))}const A={useAxios:ie,useDebouncedFilter:Oe,useDeleteUrlBuilder:Je,useErrors:He,useFetcher:ze,useFetchUrlBuilder:fe,useStringHelpers:We,useI18n:ce,useGatewayFeatureSupported:ve},et={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},tt="Copy to clipboard",at={message:et,iconTitle:tt},ot="kong-ui-copy-uuid-notify",nt={class:"kong-ui-copy-uuid"},lt=["title"],rt=["onClick"],we=15,it=e.defineComponent({__name:"CopyUuid",props:{uuid:{type:String,required:!0},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:t=>["uuid","hidden","redacted","deleted"].includes(t)}},emits:["success","error"],setup(t,{emit:n}){const a=t,{t:o}=Y.createI18n("en-us",at),r=a.notify||e.inject(ot,()=>{}),i=e.computed(()=>!!(a.tooltip&&a.successTooltip)),b=e.ref(a.tooltip),V=e.computed(()=>a.tooltip?{label:b.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),g=e.computed(()=>a.format==="redacted"?"*****":a.format==="deleted"?`*${a.uuid.substring(0,5)}`:a.uuid),l=h=>{b.value=h,setTimeout(()=>{b.value=a.tooltip},1800)},u=h=>{if(!h(a.uuid)){typeof r=="function"&&r({type:"error",message:o("message.fail")}),i.value?l(o("message.fail")):n("error",a.uuid);return}const I=a.uuid.length>we,C=a.format==="hidden"||a.format==="redacted"?o("message.success.prefix"):`"${a.uuid.substring(0,we)+(I?"...":"")}"`;typeof r=="function"&&r({type:"success",message:`${C}${o("message.success.content")}`}),i.value?l(a.successTooltip):n("success",a.uuid)};return(h,I)=>{const C=e.resolveComponent("KIcon"),K=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",nt,[t.format!=="hidden"?(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":"copy-id",title:t.uuid},[e.createElementVNode("div",{class:e.normalizeClass(["uuid-container",t.truncated?"truncated-uuid":null,t.useMono?"mono":null])},e.toDisplayString(g.value),3)],8,lt)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tooltip?"KTooltip":"div"),e.mergeProps(V.value,{class:"uuid-icon-wrapper"}),{default:e.withCtx(()=>[e.createVNode(K,null,{default:e.withCtx(({copyToClipboard:_})=>[e.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:e.withModifiers(d=>u(_),["stop"])},[e.createVNode(C,{class:"uuid-icon",color:t.iconColor,"hide-title":!!t.tooltip||void 0,icon:"copy",size:"16",title:e.unref(o)("iconTitle")},null,8,["color","hide-title","title"])],8,rt)]),_:1})]),_:1},16))])}}}),st=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},Se=st(it,[["__scopeId","data-v-e4ea1359"]]),ct={key:0,class:"config-card-fieldset-title"},dt=e.defineComponent({__name:"JsonCardItem",props:{item:{type:Object,required:!0},index:{type:Number,default:-1},isArrayItem:{type:Boolean,default:!1}},setup(t){const n=t,{i18n:{t:a}}=A.useI18n(),{convertKeyToTitle:o}=A.useStringHelpers(),r=e.computed(()=>n.item.key??"json-array-item"),i=e.computed(()=>n.item.value??n.item),b=e.computed(()=>{const g=JSON.parse(JSON.stringify(i.value));return n.isArrayItem&&delete g.name,g}),V=e.computed(()=>{var g;return n.isArrayItem?(g=i.value)!=null&&g.name?o(i.value.name,"_"):a("baseConfigCard.general.entryTitle",{index:n.index}):""});return(g,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.isArrayItem?"fieldset":"div"),{class:e.normalizeClass(t.isArrayItem?"config-card-fieldset":"config-card-json-item")},{default:e.withCtx(()=>[t.isArrayItem?(e.openBlock(),e.createElementBlock("legend",ct,[e.createElementVNode("b",null,e.toDisplayString(V.value),1)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(b.value),(u,h)=>(e.openBlock(),e.createBlock(ae,{key:`${r.value}-property-${h}`,item:{key:u,label:e.unref(o)(u),value:b.value[u]}},null,8,["item"]))),128))]),_:1},8,["class"]))}}),z=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},_e=z(dt,[["__scopeId","data-v-68ca83ec"]]),Be=z(e.defineComponent({__name:"InternalLinkItem",props:{item:{type:Object,required:!0}},emits:["navigation-click"],setup(t){const{i18n:{t:n}}=A.useI18n();return(a,o)=>{const r=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(r,{appearance:"btn-link",class:"navigation-button",onClick:o[0]||(o[0]=i=>a.$emit("navigation-click",t.item))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.item.value||e.unref(n)("baseConfigCard.commonFields.link")),1)]),_:1})])}}}),[["__scopeId","data-v-7410504d"]]),pt=e.defineComponent({__name:"StatusBadge",props:{status:{type:Boolean,default:!1}},setup(t){const{i18n:{t:n}}=A.useI18n();return(a,o)=>{const r=e.resolveComponent("KBadge");return e.openBlock(),e.createBlock(r,{appearance:t.status?"success":"neutral"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.status?e.unref(n)("baseConfigCard.statusBadge.enabledLabel"):e.unref(n)("baseConfigCard.statusBadge.disabledLabel")),1)]),_:1},8,["appearance"])}}}),ft="#0044f4",mt="#e0e4ea",yt="#3a3f51",ut="1px",kt={class:"config-card-details-row"},gt=["data-testid"],ht=["data-testid"],bt=["data-testid"],Ct=["data-testid"],wt={key:1},St=["data-testid"],_t=["data-testid"],Bt=["data-testid"],xt=["data-testid"],Vt=["title"],It={name:"ConfigCardItem",components:{CopyUuid:Se,JsonCardItem:_e,StatusBadge:pt,InternalLinkItem:Be}},Nt=e.defineComponent({...It,props:{item:{type:Object,required:!0},slim:{type:Boolean,required:!1,default:!1},truncated:{type:Boolean,required:!1,default:!1}},emits:["navigation-click"],setup(t,{emit:n}){const a=t;e.useCssVars(h=>({"2c6ac268":l.value?"none":`solid ${e.unref(ut)} ${e.unref(mt)}`,c7a65802:g.value&&b.value?"block":"flex","778426fe":g.value&&b.value?"100%":a.slim?"50%":"25%","777f9b48":g.value&&b.value?"100%":a.slim?"50%":"75%"}));const o=e.useSlots(),{i18n:{t:r,formatUnixTimeStamp:i}}=A.useI18n(),b=e.computed(()=>a.item.value!==void 0&&a.item.value!==null&&a.item.value!==""),V=e.computed(()=>!!(a.item.tooltip||o["label-tooltip"])),g=e.computed(()=>a.item.type===P.Json||a.item.type===P.JsonArray),l=e.computed(()=>a.item.type===P.JsonArray),u=e.computed(()=>{switch(a.item.type){case P.ID:return{tag:"CopyUuid",attrs:{"data-testid":`${a.item.key}-copy-uuid`,"success-tooltip":r("baseConfigCard.copy.success"),tooltip:r("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,uuid:a.item.value,notify:()=>{}}};case P.IdArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{"success-tooltip":r("baseConfigCard.copy.success"),tooltip:r("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,notify:()=>{}}};case P.Redacted:return{tag:"CopyUuid",attrs:{"data-testid":`${a.item.key}-copy-uuid-redacted`,format:"redacted","success-tooltip":r("baseConfigCard.copy.success"),tooltip:r("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,uuid:a.item.value,notify:()=>{}}};case P.RedactedArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{format:"redacted","success-tooltip":r("baseConfigCard.copy.success"),tooltip:r("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,notify:()=>{}}};case P.Date:return{tag:"div",attrs:{"data-testid":`${a.item.key}-date`},text:i(a.item.value)};case P.BadgeStatus:return{tag:"StatusBadge",attrs:{"data-testid":`${a.item.key}-badge-status`,status:a.item.value}};case P.BadgeTag:return{tag:"div",additionalComponent:"KBadge"};case P.BadgeMethod:return{tag:"div",additionalComponent:"KMethodBadge"};case P.LinkInternal:return{tag:"InternalLinkItem",attrs:{"data-testid":`${a.item.key}-internal-link`,item:a.item,onNavigationClick:h=>{n("navigation-click",h)}}};case P.LinkExternal:return{tag:"KExternalLink",attrs:{"data-testid":`${a.item.key}-external-link`,href:a.item.value},text:a.item.value};case P.Json:return{tag:"JsonCardItem",attrs:{"data-testid":`${a.item.key}-json-content`,item:a.item}};case P.JsonArray:return{tag:"div",additionalComponent:"JsonCardItem",attrs:{"data-testid":`${a.item.key}-json-array-content`,item:a.item}};default:return{tag:"div",attrs:{"data-testid":`${a.item.key}-plain-text`},text:a.item.value}}});return(h,I)=>{const C=e.resolveComponent("KLabel"),K=e.resolveComponent("KBadge"),_=e.resolveComponent("KMethodBadge");return e.openBlock(),e.createElementBlock("div",kt,[e.createElementVNode("div",{class:"config-card-details-label","data-testid":`${t.item.key}-label`},[e.renderSlot(h.$slots,"label",{item:t.item},()=>[e.createVNode(C,{"tooltip-attributes":{maxWidth:"500px"}},e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.item.label)+" ",1)]),_:2},[V.value?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{"data-testid":`${t.item.key}-label-tooltip`},[e.renderSlot(h.$slots,"label-tooltip",{},()=>[e.createTextVNode(e.toDisplayString(t.item.tooltip),1)],!0)],8,ht)]),key:"0"}:void 0]),1024)],!0)],8,gt),e.createElementVNode("div",{class:"config-card-details-value","data-testid":`${t.item.key}-property-value`},[e.renderSlot(h.$slots,t.item.key,{rowValue:t.item.value},()=>[b.value?(e.openBlock(),e.createElementBlock("div",wt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.value.tag),e.normalizeProps(e.guardReactiveProps(u.value.attrs)),{default:e.withCtx(()=>[u.value.additionalComponent==="KBadge"?(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${t.item.key}-badge-tags`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.value,(d,c)=>(e.openBlock(),e.createBlock(K,{key:`${t.item.key}-badge-tag-${c}`,class:"config-badge","data-testid":`${t.item.key}-badge-tag-${c}`,"truncation-tooltip":d},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d),1)]),_:2},1032,["data-testid","truncation-tooltip"]))),128))],8,St)):e.createCommentVNode("",!0),u.value.additionalComponent==="CopyUuid"?(e.openBlock(),e.createElementBlock("div",{key:1,class:"copy-uuid-array","data-testid":`${t.item.key}-copy-uuid-array`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.value,(d,c)=>(e.openBlock(),e.createBlock(e.unref(Se),e.mergeProps(u.value.childAttrs,{key:`${t.item.key}-copy-uuid-${c}`,"data-testid":`${t.item.key}-copy-uuid-${c}`,uuid:d}),null,16,["data-testid","uuid"]))),128))],8,_t)):u.value.additionalComponent==="KMethodBadge"?(e.openBlock(),e.createElementBlock("div",{key:2,class:"method-badge-array","data-testid":`${t.item.key}-badge-methods`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.value,(d,c)=>(e.openBlock(),e.createBlock(_,{key:`${t.item.key}-badge-method-${c}`,class:"config-badge","data-testid":`${t.item.key}-badge-method-${c}`,"is-rounded":"",label:d,method:e.unref(Ne.MethodsArray).includes(d.toLowerCase())?d.toLowerCase():"custom"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d),1)]),_:2},1032,["data-testid","label","method"]))),128))],8,Bt)):e.createCommentVNode("",!0),u.value.additionalComponent==="JsonCardItem"?(e.openBlock(),e.createElementBlock("div",{key:3,"data-testid":`${a.item.key}-json-array-content`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.value,(d,c)=>(e.openBlock(),e.createBlock(_e,{key:`json-array-item-${c}`,index:c,"is-array-item":"",item:d},null,8,["index","item"]))),128))],8,xt)):(e.openBlock(),e.createElementBlock("span",{key:4,class:e.normalizeClass(["attrs-data-text",{truncated:t.truncated}]),title:t.truncated?t.item.value:void 0},e.toDisplayString(u.value.text),11,Vt))]),_:1},16))])):(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${t.item.key}-no-value`}," – ",8,Ct))],!0)],8,bt)])}}}),ae=z(Nt,[["__scopeId","data-v-a3c5ab01"]]),Et={"data-testid":"config-card-title"},$t={class:"config-card-actions"},Kt={class:"config-card-details-section"},Tt=["data-testid"],jt={key:0,class:"config-card-prop-section-title"},Dt=z(e.defineComponent({__name:"EntityBaseConfigCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.entityId)},configSchema:{type:Object,required:!1,default:()=>({})},pluginConfigKey:{type:String,required:!1,default:""},pluginConfigSchema:{type:Object,required:!1,default:()=>({})},fetchUrl:{type:String,required:!0},dataKey:{type:String,required:!1,default:""},hideTitle:{type:Boolean,default:!1}},emits:["loading","fetch:success","fetch:error","copy:success","copy:error"],setup(t,{emit:n}){var a;const o=t,r=e.useSlots(),{i18n:{t:i}}=A.useI18n(),{getMessageFromError:b}=A.useErrors(),{convertKeyToTitle:V}=A.useStringHelpers(),{axiosInstance:g}=A.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),l={id:{type:P.ID,label:i("baseConfigCard.commonFields.id_label"),order:0,section:L.Basic},name:{order:1,section:L.Basic},enabled:{type:P.BadgeStatus,order:2,section:L.Basic},updated_at:{type:P.Date,label:i("baseConfigCard.commonFields.updated_at_label"),order:3,section:L.Basic},created_at:{type:P.Date,label:i("baseConfigCard.commonFields.created_at_label"),order:4,section:L.Basic},tags:{type:P.BadgeTag,order:-1,section:L.Basic}},u=e.ref(!1),h=e.ref(!1),I=e.ref(""),C=e.ref(),K=e.computed(()=>{var f,p,w;if(!C.value)return[];const F=[],M=Object.keys(C.value).length;for(const S in C.value){const x=(p=(f=o.configSchema)==null?void 0:f[S])==null?void 0:p.order,N=(w=l[S])==null?void 0:w.order;let E=M;(N||N===0)&&(E=N===-1?M+1:N),x&&(E=x===-1?M+1:x),F.push([S,E])}return F.sort(function(S,x){return S[1]-x[1]}),F.map(S=>{var x,N;const E=S[0],U=(x=C.value)==null?void 0:x[E],W=((N=o.configSchema)==null?void 0:N[E])||{},O=l[E];return{key:E,value:U,hidden:W.hidden||!1,type:W.type??((O==null?void 0:O.type)||P.Text),label:W.label??((O==null?void 0:O.label)||V(E)),tooltip:W.tooltip??((O==null?void 0:O.tooltip)||void 0),section:W.section??((O==null?void 0:O.section)||L.Advanced)}}).filter(S=>!S.hidden&&S.key!==o.pluginConfigKey)}),_=e.computed(()=>{var f,p;if(!C.value||!o.pluginConfigKey)return[];const w=C.value[o.pluginConfigKey]||{},F=Object.keys(w).length,M=[];for(const S in w){const x=(p=(f=o.pluginConfigSchema)==null?void 0:f[S])==null?void 0:p.order,N=w[S];let E=N!=null&&N!==""?F-1:F;x&&(E=x===-1?F+1:x),M.push([S,E])}return M.sort(function(S,x){return S[1]-x[1]}),M.map(S=>{var x;const N=S[0],E=w[N],U=((x=o.pluginConfigSchema)==null?void 0:x[N])||{};return{key:N,value:E,hidden:U.hidden||!1,type:U.type??P.Text,label:U.label??V(N),tooltip:U.tooltip??void 0,section:L.Plugin}}).filter(S=>!S.hidden)}),d=e.computed(()=>{var f,p,w,F;return{basic:(f=K.value)==null?void 0:f.filter(M=>M.section===L.Basic),advanced:(p=K.value)==null?void 0:p.filter(M=>M.section===L.Advanced),plugin:(F=_.value)==null?void 0:F.concat((w=K.value)==null?void 0:w.filter(M=>M.section===L.Plugin))}}),c=e.computed(()=>{const f=[];return d.value.basic.length&&f.push("basic"),d.value.advanced.length&&f.push("advanced"),d.value.plugin.length&&f.push("plugin"),f}),m=f=>!!(f.tooltip||r[`${f.key}-label-tooltip`]),k=e.computed(()=>{var f,p;let w=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,((f=o.config)==null?void 0:f.controlPlaneId)||""):o.config.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,(p=o.config)!=null&&p.workspace?`/${o.config.workspace}`:"")),w=w.replace(/{id}/gi,o.config.entityId),w}),B=f=>{C.value&&f(JSON.stringify(C.value))?n("copy:success",C.value):n("copy:error")};return e.watch(u,f=>{n("loading",f)},{immediate:!0}),e.onBeforeMount(async()=>{h.value=!1,u.value=!0;try{const{data:f}=await g.get(k.value);if(o.dataKey)if(typeof f[o.dataKey]<"u")C.value={...f[o.dataKey]};else throw new Error(i("errors.dataKeyUndefined",{dataKey:o.dataKey}));else C.value={...f};Object.keys(o.configSchema).filter(p=>o.configSchema[p].forceShow).forEach(p=>{C.value&&typeof C.value[p]>"u"&&(C.value[p]=null)}),n("fetch:success",f)}catch(f){const p=b(f);I.value=p.startsWith("code")?i("baseConfigCard.errors.load"):p,h.value=!0,n("fetch:error",f)}finally{u.value=!1}}),(f,p)=>{const w=e.resolveComponent("KButton"),F=e.resolveComponent("KClipboardProvider"),M=e.resolveComponent("KSkeleton"),S=e.resolveComponent("KEmptyState"),x=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(x,{"border-variant":"noBorder",class:"kong-ui-entity-base-config-card"},e.createSlots({actions:e.withCtx(()=>[e.createElementVNode("div",$t,[e.renderSlot(f.$slots,"actions",{},void 0,!0),e.createVNode(F,null,{default:e.withCtx(({copyToClipboard:N})=>[!u.value&&!h.value?(e.openBlock(),e.createBlock(w,{key:0,appearance:"btn-link","data-testid":"json-copy-button",onClick:E=>B(N)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseConfigCard.actions.copy")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0)]),_:1})])]),body:e.withCtx(()=>[u.value?(e.openBlock(),e.createBlock(M,{key:0,"data-testid":"config-card-loader","table-columns":2,type:"table"})):h.value?(e.openBlock(),e.createBlock(S,{key:1,"data-testid":"config-card-fetch-error","is-error":""},{message:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(I.value),1)]),_:1})):e.createCommentVNode("",!0),e.createElementVNode("div",Kt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,N=>(e.openBlock(),e.createElementBlock("div",{key:`config-card-details-${N}-props`,class:e.normalizeClass(`config-card-details-${N}-props`),"data-testid":`config-card-details-${N}-props`},[N!=="basic"?(e.openBlock(),e.createElementBlock("div",jt,e.toDisplayString(N==="advanced"?e.unref(i)("baseConfigCard.sections.advanced"):e.unref(i)("baseConfigCard.sections.plugin")),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value[N],E=>(e.openBlock(),e.createBlock(ae,{key:E.key,item:E},e.createSlots({label:e.withCtx(()=>[e.renderSlot(f.$slots,`${E.key}-label`,{row:E},void 0,!0)]),[E.key]:e.withCtx(({rowValue:U})=>[e.renderSlot(f.$slots,E.key,{row:E,rowValue:U},void 0,!0)]),_:2},[m(E)?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(f.$slots,`${E.key}-label-tooltip`,{row:E},void 0,!0)]),key:"0"}:void 0]),1032,["item"]))),128))],10,Tt))),128))])]),_:2},[t.hideTitle?void 0:{name:"title",fn:e.withCtx(()=>[e.createElementVNode("div",Et,[e.renderSlot(f.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseConfigCard.title")),1)],!0)])]),key:"0"}]),1024)}}}),[["__scopeId","data-v-b72bbdde"]]),Mt=["onReset","onSubmit"],Pt={class:"form-actions","data-testid":"form-actions"},Ft=z(e.defineComponent({__name:"EntityBaseForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},editId:{type:String,required:!1,default:""},fetchUrl:{type:String,required:!1,default:""},isReadonly:{type:Boolean,required:!1,default:!1},canSubmit:{type:Boolean,required:!1,default:void 0},errorMessage:{type:String,required:!1,default:""}},emits:["loading","fetch:success","fetch:error","submit","cancel"],setup(t,{emit:n}){var a;const o=t,r=le.useRouter(),{i18n:{t:i}}=A.useI18n(),{getMessageFromError:b}=A.useErrors(),{axiosInstance:V}=A.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),g=e.ref(!1),l=e.ref(!1),u=e.ref(""),h=e.computed(()=>o.canSubmit===!1||o.isReadonly),I=e.computed(()=>{var d,c;if(!o.editId)return"";let m=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?m=m.replace(/{controlPlaneId}/gi,((d=o.config)==null?void 0:d.controlPlaneId)||""):o.config.app==="kongManager"&&(m=m.replace(/\/{workspace}/gi,(c=o.config)!=null&&c.workspace?`/${o.config.workspace}`:"")),m=m.replace(/{id}/gi,o.editId),m}),C=()=>{o.config.cancelRoute?r.push(o.config.cancelRoute):K()},K=()=>{n("cancel")},_=()=>{h.value||n("submit")};return e.watch(()=>g.value,d=>{n("loading",d)},{immediate:!0}),e.onBeforeMount(async()=>{if(o.editId)try{l.value=!1,g.value=!0;const{data:d}=await V.get(I.value);n("fetch:success",d)}catch(d){const c=b(d);u.value=c.startsWith("code")?i("baseForm.errors.edit"):c,l.value=!0,n("fetch:error",d)}finally{g.value=!1}}),(d,c)=>{const m=e.resolveComponent("KSkeleton"),k=e.resolveComponent("KEmptyState"),B=e.resolveComponent("KAlert"),f=e.resolveComponent("KButton"),p=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(p,{class:"kong-ui-entity-base-form"},{body:e.withCtx(()=>[g.value?(e.openBlock(),e.createBlock(m,{key:0,type:"form"})):l.value?(e.openBlock(),e.createBlock(k,{key:1,"cta-text":e.unref(i)("baseForm.actions.back"),"data-testid":"form-fetch-error","handle-click":C,"is-error":!0},{message:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(u.value),1)]),_:1},8,["cta-text"])):(e.openBlock(),e.createElementBlock("form",{key:2,"data-testid":"form-content",onReset:e.withModifiers(K,["prevent"]),onSubmit:e.withModifiers(_,["prevent"])},[e.renderSlot(d.$slots,"default",{},void 0,!0),t.errorMessage?(e.openBlock(),e.createBlock(B,{key:0,"alert-message":t.errorMessage,appearance:"danger","data-testid":"form-error"},null,8,["alert-message"])):e.createCommentVNode("",!0),e.createElementVNode("div",Pt,[e.renderSlot(d.$slots,"form-actions",{},()=>[e.createVNode(f,{appearance:"outline","data-testid":"form-cancel",disabled:t.isReadonly,type:"reset"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseForm.actions.cancel")),1)]),_:1},8,["disabled"]),e.createVNode(f,{appearance:"primary","data-testid":"form-submit",disabled:h.value,type:"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseForm.actions.save")),1)]),_:1},8,["disabled"])],!0)])],40,Mt))]),_:3})}}}),[["__scopeId","data-v-2286e5f2"]]),Rt={key:0},qt=z(e.defineComponent({__name:"EntityBaseTableCell",props:{keyName:{type:String,required:!0},rowEl:{type:[Object,null],required:!0}},setup(t){const n=t,a=e.computed(()=>{var _;return((_=n.rowEl)==null?void 0:_.querySelector(`[data-testid="${n.keyName}"]`))||null}),o=e.computed(()=>{var _;return((_=a.value)==null?void 0:_.querySelector('[role="button"]'))||null}),r=e.computed(()=>{var _,d;const c=(_=n.rowEl)==null?void 0:_.querySelectorAll("td");return c?((d=c[0])==null?void 0:d.getAttribute("data-testid"))===n.keyName:!1});let i;const b=()=>{i&&(i.disconnect(),i=void 0)},V=()=>{var _,d,c;l.value=((_=o.value)==null?void 0:_.getBoundingClientRect().width)||0,u.value=((d=a.value)==null?void 0:d.clientWidth)||0,h.value=((c=g.value)==null?void 0:c.innerText)||""},g=e.ref({}),l=e.ref(0),u=e.ref(0),h=e.ref(""),I=e.computed(()=>[o.value,a.value]),C=e.watch(I,_=>{if(r.value&&(b(),"ResizeObserver"in window&&window)){i=new ResizeObserver(d=>{window.requestAnimationFrame(()=>{!Array.isArray(d)||!d.length||V()})});for(const d of _)d&&i.observe(d)}},{immediate:!0,flush:"post",deep:!0}),K=e.computed(()=>r.value?l.value>u.value:!1);return e.onMounted(()=>{V()}),e.onUnmounted(()=>{C()}),(_,d)=>{const c=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("span",{ref_key:"contentRef",ref:g,class:"content-wrapper"},[r.value?(e.openBlock(),e.createElementBlock("span",Rt,[e.createVNode(c,{disabled:!K.value,label:h.value,"max-width":"300",placement:"bottomStart"},{default:e.withCtx(()=>[e.renderSlot(_.$slots,"default",{},void 0,!0)]),_:3},8,["disabled","label"])])):e.renderSlot(_.$slots,"default",{key:1},void 0,!0)],512)}}}),[["__scopeId","data-v-f8a220e9"]]),At={class:"toolbar-container"},Lt={key:0,class:"toolbar-button-container"},Ut=["data-testid"],Ot=z(e.defineComponent({__name:"EntityBaseTable",props:{tableHeaders:{type:Object,required:!0,default:()=>({})},fetcher:{type:Function,required:!0,default:async()=>({data:[],total:0})},initialFetcherParams:{type:Object,default:null},cacheIdentifier:{type:String,default:""},fetcherCacheKey:{type:Number,default:1},isLoading:{type:Boolean,default:!1},query:{type:String,default:""},enableClientSort:{type:Boolean,default:!1},enableEntityActions:{type:Boolean,default:!0},emptyStateOptions:{type:Object,default:()=>({})},errorMessage:{type:String,default:""},disablePaginationPageJump:{type:Boolean,default:void 0},disableSorting:{type:Boolean,default:void 0},paginationType:{type:String,default:void 0},cellAttributes:{type:Function,default:()=>({})},rowAttributes:{type:Function,default:()=>({})},preferencesStorageKey:{type:String,default:"",required:!0},dropdownMenuWidth:{type:String,default:"",required:!1},title:{type:String,default:""}},emits:["click:row","sort","clear-search-input","empty-state-cta-clicked"],setup(t,{emit:n}){const a=t,{i18n:{t:o}}=A.useI18n(),r=e.computed(()=>a.cacheIdentifier||a.preferencesStorageKey),i=k=>k.hasData||!!a.query,b=e.computed(()=>{const k=[];return Object.keys(a.tableHeaders).forEach(B=>{const f=a.tableHeaders[B];k.push({label:f.label??B,key:B,sortable:f.sortable??!1})}),a.enableEntityActions&&k.push({key:"actions",hideLabel:!0}),k}),V=k=>({"data-rowid":k.id,"data-testid":k.name,...a.rowAttributes(k)}),g=e.ref({}),l=k=>{var B;return(B=g.value)==null?void 0:B.$el.querySelector(`[data-rowid="${k.id}"]`)},u=k=>{const B={"data-testid":k.headerKey,...a.cellAttributes(k)};return k.colIndex===0&&(B.style={maxWidth:"250px",overflowX:"hidden",textOverflow:"ellipsis"}),B},h=()=>{n("empty-state-cta-clicked"),I()},I=()=>{n("clear-search-input")},C=(k,B)=>{n("click:row",B)},K=k=>{n("sort",k)},{setTablePreferences:_,getTablePreferences:d}=je(),c=e.computed(()=>{const k=d(a.preferencesStorageKey);return{...a.initialFetcherParams,...k}}),m=k=>{a.preferencesStorageKey&&_(a.preferencesStorageKey,k)};return(k,B)=>{const f=e.resolveComponent("KIcon"),p=e.resolveComponent("KButton"),w=e.resolveComponent("KDropdownMenu"),F=e.resolveComponent("KTable"),M=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(M,{class:"kong-ui-entity-base-table",title:t.title},{body:e.withCtx(()=>[e.createVNode(F,{ref_key:"tableRefs",ref:g,"cache-identifier":r.value,"cell-attrs":u,"disable-pagination-page-jump":t.disablePaginationPageJump,"disable-sorting":t.disableSorting,"empty-state-action-button-icon":t.query?"":"plus","empty-state-action-message":t.query?e.unref(o)("baseTable.emptyState.noSearchResultsCtaText"):t.emptyStateOptions.ctaText,"empty-state-action-route":t.query?"":t.emptyStateOptions.ctaPath,"empty-state-icon":t.query?"stateNoSearchResults":"stateGruceo","empty-state-icon-size":"96","empty-state-message":t.query?e.unref(o)("baseTable.emptyState.noSearchResultsMessage"):t.emptyStateOptions.message,"empty-state-title":t.query?e.unref(o)("baseTable.emptyState.noSearchResultsTitle"):t.emptyStateOptions.title,"enable-client-sort":t.enableClientSort,"error-state-title":t.errorMessage,fetcher:t.fetcher,"fetcher-cache-key":String(t.fetcherCacheKey),"has-error":!!t.errorMessage,headers:b.value,"hide-pagination-when-optional":"","initial-fetcher-params":c.value,"is-loading":t.isLoading,"pagination-type":t.paginationType,"row-attrs":V,"search-input":t.query,onKtableEmptyStateCtaClicked:h,"onRow:click":C,onSort:B[0]||(B[0]=S=>K(S)),"onUpdate:tablePreferences":m},e.createSlots({toolbar:e.withCtx(({state:S})=>[e.withDirectives(e.createElementVNode("div",At,[e.renderSlot(k.$slots,"toolbar-filter",{},void 0,!0),k.$slots["toolbar-button"]?(e.openBlock(),e.createElementBlock("div",Lt,[e.renderSlot(k.$slots,"toolbar-button",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,i(S)]])]),actions:e.withCtx(({row:S,rowKey:x,rowValue:N})=>[e.createElementVNode("div",{class:"actions-container","data-testid":S.name},[e.createVNode(w,{"kpop-attributes":{placement:"bottomEnd"},width:t.dropdownMenuWidth},{items:e.withCtx(()=>[e.renderSlot(k.$slots,"actions",{row:S,rowKey:x,rowValue:N},void 0,!0)]),default:e.withCtx(()=>[e.createVNode(p,{class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:e.withCtx(()=>[e.createVNode(f,{color:e.unref(yt),icon:"more",size:"16"},null,8,["color"])]),_:1})]),_:2},1032,["width"])],8,Ut)]),_:2},[e.renderList(t.tableHeaders,(S,x)=>({name:x,fn:e.withCtx(({row:N,rowKey:E,rowValue:U})=>[e.createVNode(qt,{"key-name":String(x),"row-el":l(N)},{default:e.withCtx(()=>[e.renderSlot(k.$slots,x,{row:N,rowKey:E,rowValue:U},()=>[e.createTextVNode(e.toDisplayString(U),1)],!0)]),_:2},1032,["key-name","row-el"])])}))]),1032,["cache-identifier","disable-pagination-page-jump","disable-sorting","empty-state-action-button-icon","empty-state-action-message","empty-state-action-route","empty-state-icon","empty-state-message","empty-state-title","enable-client-sort","error-state-title","fetcher","fetcher-cache-key","has-error","headers","initial-fetcher-params","is-loading","pagination-type","search-input"])]),_:3},8,["title"])}}}),[["__scopeId","data-v-a598b1d9"]]),Jt={key:0,class:"kong-ui-entity-delete-error"},Ht={key:1,class:"description"},zt=z(e.defineComponent({__name:"EntityDeleteModal",props:{visible:{type:Boolean,required:!0,default:!1},title:{type:String,default:"Delete"},entityType:{type:String,required:!0},entityName:{type:String,default:""},needConfirm:{type:Boolean,default:!0},description:{type:String,default:""},actionPending:{type:Boolean,default:!1},error:{type:String,default:""}},emits:["cancel","proceed"],setup(t,{emit:n}){const a=t,{i18nT:o}=A.useI18n(),r=e.computed(()=>a.needConfirm?a.entityName:""),i=()=>{n("cancel")},b=()=>{n("proceed")};return(V,g)=>{const l=e.resolveComponent("KAlert"),u=e.resolveComponent("KPrompt");return e.openBlock(),e.createBlock(u,{"action-button-text":"Yes, delete","action-pending":t.actionPending,class:"kong-ui-entity-delete-modal","confirmation-text":r.value,"is-visible":t.visible,title:t.title,type:"danger",onCanceled:i,onProceed:b},{"body-content":e.withCtx(()=>[t.error?(e.openBlock(),e.createElementBlock("div",Jt,[e.createVNode(l,{appearance:"danger"},{alertMessage:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.error),1)]),_:1})])):e.createCommentVNode("",!0),e.createVNode(e.unref(o),{class:"message",keypath:a.entityName?"deleteModal.messageWithName":"deleteModal.message",tag:"p"},e.createSlots({entityType:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.entityType),1)]),_:2},[a.entityName?{name:"entityName",fn:e.withCtx(()=>[e.createElementVNode("strong",null,e.toDisplayString(a.entityName),1)]),key:"0"}:void 0]),1032,["keypath"]),a.description||V.$slots.description?(e.openBlock(),e.createElementBlock("div",Ht,[e.renderSlot(V.$slots,"description",{},()=>[e.createElementVNode("p",null,e.toDisplayString(a.description),1)],!0)])):e.createCommentVNode("",!0)]),_:3},8,["action-pending","confirmation-text","is-visible","title"])}}}),[["__scopeId","data-v-1c9a2a07"]]),Wt={fill:"none",height:"20",viewBox:"0 0 20 20",width:"20",xmlns:"http://www.w3.org/2000/svg"},Gt={id:"mask0_180_20349",height:"20",maskUnits:"userSpaceOnUse",style:{"mask-type":"alpha"},width:"20",x:"0",y:"0"},Qt=["fill"],Xt={mask:"url(#mask0_180_20349)"},Yt=["fill"],Zt=e.defineComponent({__name:"IconFilter",props:{color:{type:String,default:`var(--kong-ui-entity-filter-color, ${ft})`}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("svg",Wt,[e.createElementVNode("mask",Gt,[e.createElementVNode("rect",{fill:t.color,height:"20",width:"20"},null,8,Qt)]),e.createElementVNode("g",Xt,[e.createElementVNode("path",{d:"M8 14.5V13H12V14.5H8ZM5 10.75V9.25H15V10.75H5ZM3 7V5.5H17V7H3Z",fill:t.color},null,8,Yt)])]))}}),vt={key:1,class:"kong-ui-entity-filter"},ea={class:"menu-item-title"},ta={class:"menu-item-indicator"},aa={class:"menu-item-body"},oa=["for"],na={class:"menu-item-buttons"},la=z(e.defineComponent({__name:"EntityFilter",props:{config:{type:Object,required:!0,default:()=>({isExactMatch:!0,placeholder:""})},modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,{i18n:{t:o}}=A.useI18n(),r=e.ref(!1),i=e.ref({}),b=e.computed(()=>{const d=[];return new URLSearchParams(a.modelValue).forEach((c,m)=>{c!==""&&d.push(m)}),d}),V=e.computed(()=>{const d=a.config.fields;return Object.keys(d).filter(c=>d[c].searchable).map(c=>({label:d[c].label||c,value:c}))});e.watch(()=>a.modelValue,d=>{i.value={},new URLSearchParams(d).forEach((c,m)=>{i.value[m]=c})});const g=()=>{r.value=!r.value},l=d=>{n("update:modelValue",d)},u=d=>`filter-${d}`,h=d=>{var c,m;return(((m=(c=a.config.schema)==null?void 0:c[d])==null?void 0:m.values)??[]).map(k=>({value:k,label:k}))},I=d=>{var c,m;return((m=(c=a.config.schema)==null?void 0:c[d])==null?void 0:m.type)??"text"},C=d=>{i.value={...i.value,[d]:""},_()},K=()=>{i.value={},_(!0)},_=(d=!1)=>{const c=Object.keys(i.value).reduce((m,k)=>(i.value[k]&&(m[k]=`${i.value[k]}`),m),{});d&&(r.value=!1),n("update:modelValue",new URLSearchParams(c).toString())};return(d,c)=>{const m=e.resolveComponent("KInput"),k=e.resolveComponent("KButton"),B=e.resolveComponent("KSelect"),f=e.resolveComponent("KMenuItem"),p=e.resolveComponent("KMenu");return t.config.isExactMatch?(e.openBlock(),e.createBlock(m,{key:0,autocomplete:"off",class:"kong-ui-entity-filter-input","data-testid":"search-input","model-value":t.modelValue,placeholder:t.config.placeholder,"onUpdate:modelValue":l},{icon:e.withCtx(()=>[e.createVNode(Zt)]),_:1},8,["model-value","placeholder"])):(e.openBlock(),e.createElementBlock("div",vt,[e.createVNode(k,{appearance:"btn-link","data-testid":"filter-button",icon:"filter",onClick:g},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.filterButtonText"))+" "+e.toDisplayString(b.value.length>0?`(${b.value.length})`:""),1)]),_:1}),e.withDirectives(e.createElementVNode("div",{class:"kong-ui-entity-filter-backdrop",onClick:g},null,512),[[e.vShow,r.value]]),e.withDirectives(e.createVNode(p,{class:"kong-ui-entity-filter-menu"},{body:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(w,F)=>(e.openBlock(),e.createBlock(f,{key:w.value,"data-testid":w.value,expandable:"","last-menu-item":F===V.value.length-1},{itemTitle:e.withCtx(()=>[e.createElementVNode("span",ea,[e.createTextVNode(e.toDisplayString(w.label)+" ",1),e.withDirectives(e.createElementVNode("span",ta,null,512),[[e.vShow,b.value.includes(w.value)]])])]),itemBody:e.withCtx(()=>{var M,S;return[e.createElementVNode("div",aa,[e.createElementVNode("label",{class:"menu-item-label",for:u(w.value)},e.toDisplayString(e.unref(o)("filter.fieldLabel")),9,oa),((S=(M=t.config.schema)==null?void 0:M[w.value])==null?void 0:S.type)==="select"?(e.openBlock(),e.createBlock(B,{key:0,id:u(w.value),modelValue:i.value[w.value],"onUpdate:modelValue":x=>i.value[w.value]=x,appearance:"select",items:h(w.value),placeholder:e.unref(o)("filter.selectPlaceholder")},null,8,["id","modelValue","onUpdate:modelValue","items","placeholder"])):(e.openBlock(),e.createBlock(m,{key:1,id:u(w.value),modelValue:i.value[w.value],"onUpdate:modelValue":x=>i.value[w.value]=x,autocomplete:"off",placeholder:e.unref(o)("filter.inputPlaceholder"),size:"small",type:I(w.value)},null,8,["id","modelValue","onUpdate:modelValue","placeholder","type"]))]),e.createElementVNode("div",na,[e.createVNode(k,{appearance:"btn-link","data-testid":"apply-filter",size:"small",onClick:c[0]||(c[0]=x=>_(!0))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.applyButtonText")),1)]),_:1}),e.createVNode(k,{appearance:"btn-link","data-testid":"clear-filter",size:"small",onClick:x=>C(w.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearButtonText")),1)]),_:2},1032,["onClick"])])]}),_:2},1032,["data-testid","last-menu-item"]))),128))]),actionButton:e.withCtx(()=>[e.createVNode(k,{onClick:K},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearAllButtonText")),1)]),_:1})]),_:1},512),[[e.vShow,r.value]])]))}}}),[["__scopeId","data-v-745f38c0"]]),oe=e.defineComponent({__name:"PermissionsWrapper",props:{authFunction:{type:Function,required:!0,default:async()=>!0},forceShow:{type:Boolean,default:!1}},setup(t){const n=t,a=e.ref(void 0),o=e.computed(()=>a.value===!0||a.value!==void 0&&n.forceShow===!0);return e.watch(()=>n.authFunction,async()=>{a.value=await n.authFunction()},{immediate:!0}),(r,i)=>o.value?e.renderSlot(r.$slots,"default",{key:0,isAllowed:a.value}):e.createCommentVNode("",!0)}}),ra={class:"form-section-wrapper"},ia={key:0,class:"form-section-title"},sa={key:1,class:"form-section-description"},ca={key:2,class:"form-section-footer"},da={class:"form-section-content"},xe=z(e.defineComponent({__name:"EntityFormSection",props:{title:{type:String,default:""},description:{type:String,default:""},hasDivider:{type:Boolean,default:!1},stickyInfoHeader:{type:Boolean,default:!0},hideInfoHeader:{type:Boolean,default:!1}},setup(t){const n=e.useSlots();return(a,o)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(["kong-ui-entity-form-section",{"has-divider":t.hasDivider}])},[e.createElementVNode("div",ra,[t.hideInfoHeader?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["form-section-info",{sticky:t.stickyInfoHeader}])},[t.title?(e.openBlock(),e.createElementBlock("h4",ia,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description||e.unref(n).description?(e.openBlock(),e.createElementBlock("div",sa,[e.renderSlot(a.$slots,"description",{},()=>[e.createElementVNode("p",null,e.toDisplayString(t.description),1)],!0)])):e.createCommentVNode("",!0),e.unref(n).footer?(e.openBlock(),e.createElementBlock("div",ca,[e.renderSlot(a.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2)),e.createElementVNode("div",da,[e.renderSlot(a.$slots,"default",{},void 0,!0)])])],2))}}),[["__scopeId","data-v-8b6dc312"]]),{useAxios:de,useDeleteUrlBuilder:pa,useErrors:fa,useFetchUrlBuilder:Aa,useFetcher:ma,useDebouncedFilter:ya,useStringHelpers:ua,useGatewayFeatureSupported:La}=A,Ua="",ka={class:"kong-ui-entities-keys-list"},ga={key:1},ha=e.defineComponent({__name:"KeyList",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.createRoute||!t.getViewRoute||!t.getEditRoute||t.app==="kongManager"&&!t.isExactMatch&&!t.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0}},emits:["error","copy:success","copy:error","delete:success"],setup(t,{emit:n}){var ee;const a=t,{i18n:{t:o}}=re.useI18n(),r=le.useRouter(),{axiosInstance:i}=de({headers:(ee=a.config)==null?void 0:ee.requestHeaders}),b=e.ref(1),V=e.computed(()=>a.config.app!=="kongManager"||!!a.config.disableSorting),g={name:{label:o("keys.list.table_headers.name"),searchable:!0,sortable:!0},kid:{label:o("keys.list.table_headers.key_id"),sortable:!0},tags:{label:o("keys.list.table_headers.tags")},id:{label:o("keys.list.table_headers.id"),sortable:!0}},l=g,u=e.computed(()=>{var y,T,R,J;let s=`${a.config.apiBaseUrl}${X.list[a.config.app][a.config.keySetId?"forKeySet":"all"]}`;return a.config.app==="konnect"?s=s.replace(/{controlPlaneId}/gi,((y=a.config)==null?void 0:y.controlPlaneId)||"").replace(/{keySetId}/gi,((T=a.config)==null?void 0:T.keySetId)||""):a.config.app==="kongManager"&&(s=s.replace(/\/{workspace}/gi,(R=a.config)!=null&&R.workspace?`/${a.config.workspace}`:"").replace(/{keySetId}/gi,((J=a.config)==null?void 0:J.keySetId)||"")),s}),h=e.ref(""),I=e.computed(()=>{const s=a.config.app==="konnect"||a.config.isExactMatch;if(s)return{isExactMatch:s,placeholder:o("keys.search.placeholder")};const y={name:g.name};return{isExactMatch:s,fields:y,schema:a.config.filterSchema}}),{fetcher:C,fetcherState:K}=ma(a.config,u.value),_=()=>{h.value=""},d=()=>{b.value++},c=e.ref(""),m=(s,y)=>{const T=s.id;if(!y(T)){p(s,"id");return}f(s,"id")},k=(s,y)=>{const T=JSON.stringify(s);if(!y(T)){n("copy:error",{entity:s,message:o("keys.errors.copy")});return}n("copy:success",{entity:s,message:o("keys.copy.success_brief")})},B=(s,y,T)=>{const{type:R}=s;R==="success"?f(y,T):p(y,T)},f=(s,y)=>{n("copy:success",{entity:s,field:y,message:o("keys.copy.success",{val:s[y]})})},p=(s,y)=>{n("copy:error",{entity:s,field:y,message:o("keys.errors.copy")})},w=async s=>{var T;await((T=a.canRetrieve)==null?void 0:T.call(a,s))&&r.push(a.config.getViewRoute(s.id))},F=s=>({label:o("keys.actions.view"),to:a.config.getViewRoute(s)}),M=s=>({label:o("keys.actions.edit"),to:a.config.getEditRoute(s)}),S=e.ref(void 0),x=e.ref(!1),N=e.ref(!1),E=e.ref(""),U=pa(a.config,u.value),W=s=>{S.value=s,x.value=!0},O=()=>{x.value=!1},ne=async()=>{var s,y,T;if((s=S.value)!=null&&s.id){N.value=!0;try{await i.delete(U(S.value.id)),N.value=!1,x.value=!1,b.value++,n("delete:success",S.value)}catch(R){E.value=((T=(y=R.response)==null?void 0:y.data)==null?void 0:T.message)||R.message||o("keys.errors.delete"),n("error",R)}finally{N.value=!1}}};e.watch(K,s=>{if(s.status===Q.Error){c.value=o("keys.errors.general"),n("error",s.error);return}c.value=""});const v=e.ref({ctaPath:a.config.createRoute,ctaText:void 0,message:o("keys.list.empty_state.description"),title:o("keys.title")});return e.onBeforeMount(async()=>{await a.canCreate()&&(v.value.title=o("keys.list.empty_state.title"),v.value.ctaText=o("keys.actions.create"))}),(s,y)=>{const T=e.resolveComponent("KButton"),R=e.resolveComponent("CopyUuid"),J=e.resolveComponent("KBadge"),D=e.resolveComponent("KTruncate"),G=e.resolveComponent("KDropdownItem"),te=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",ka,[e.createVNode(e.unref(Ot),{"cache-identifier":t.cacheIdentifier,"disable-pagination-page-jump":"","disable-sorting":V.value,"empty-state-options":v.value,"enable-entity-actions":"","error-message":c.value,fetcher:e.unref(C),"fetcher-cache-key":b.value,"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-keys-list",query:h.value,"table-headers":e.unref(l),onClearSearchInput:_,"onClick:row":y[2]||(y[2]=j=>w(j)),onSort:d},{"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(la),{modelValue:h.value,"onUpdate:modelValue":y[0]||(y[0]=j=>h.value=j),config:I.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[e.createVNode(e.unref(oe),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(T,{appearance:"primary","data-testid":"toolbar-add-key",icon:"plus",to:t.config.createRoute},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keys.list.toolbar_actions.new_key")),1)]),_:1},8,["to"])]),_:1},8,["auth-function"])]),name:e.withCtx(({rowValue:j})=>[e.createElementVNode("b",null,e.toDisplayString(j??"-"),1)]),kid:e.withCtx(({row:j,rowValue:q})=>[e.createVNode(R,{notify:$=>B($,j,"kid"),uuid:q},null,8,["notify","uuid"])]),tags:e.withCtx(({rowValue:j})=>[(j==null?void 0:j.length)>0?(e.openBlock(),e.createBlock(D,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j,q=>(e.openBlock(),e.createBlock(J,{key:q,onClick:y[1]||(y[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(q),1)]),_:2},1024))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",ga,"-"))]),id:e.withCtx(({row:j,rowValue:q})=>[e.createVNode(R,{notify:$=>B($,j,"id"),uuid:q},null,8,["notify","uuid"])]),actions:e.withCtx(({row:j})=>[e.createVNode(te,null,{default:e.withCtx(({copyToClipboard:q})=>[e.createVNode(G,{"data-testid":"action-entity-copy-id",onClick:$=>m(j,q)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keys.actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(te,null,{default:e.withCtx(({copyToClipboard:q})=>[e.createVNode(G,{"data-testid":"action-entity-copy-json",onClick:$=>k(j,q)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keys.actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(oe),{"auth-function":()=>t.canRetrieve(j)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-view","has-divider":"",item:F(j.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(oe),{"auth-function":()=>t.canEdit(j)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-edit",item:M(j.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(oe),{"auth-function":()=>t.canDelete(j)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-delete","has-divider":"","is-dangerous":"",onClick:q=>W(j)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keys.actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:1},8,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers"]),e.createVNode(e.unref(zt),{"action-pending":N.value,description:e.unref(o)("keys.delete.description"),"entity-name":S.value&&(S.value.name||S.value.id),"entity-type":e.unref(pe).Key,error:E.value,"need-confirm":!1,title:e.unref(o)("keys.delete.title"),visible:x.value,onCancel:O,onProceed:ne},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),Oa="",Ve=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},ba=Ve(ha,[["__scopeId","data-v-d3516069"]]),Ca={class:"kong-ui-entities-keys-form"},wa={"data-testid":"no-search-results"},Sa={class:"select-item-label"},_a={class:"select-item-desc"},Ba={key:0,class:"invalid-key-set-message","data-testid":"invalid-key-set-message"},xa={"data-testid":"key-format-container"},Va=e.defineComponent({__name:"KeyForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.cancelRoute)},keyId:{type:String,required:!1,default:""},fixedKeySetId:{type:String,required:!1,default:""}},emits:["update","error","loading"],setup(t,{emit:n}){var ee;const a=t,o=le.useRouter(),{i18n:{t:r}}=re.useI18n(),{getMessageFromError:i}=fa(),{axiosInstance:b}=de({headers:(ee=a.config)==null?void 0:ee.requestHeaders}),V=e.computed(()=>X.form[a.config.app].edit),g=e.computed(()=>a.keyId?Z.Edit:Z.Create),l=e.reactive({fields:{name:"",tags:"",key_id:"",key_format:"jwk",key_set:"",jwk:"",private_key:"",public_key:""},isReadonly:!1,errorMessage:""}),u=e.reactive({name:"",tags:"",key_id:"",key_format:"jwk",key_set:"",jwk:"",private_key:"",public_key:""}),h=[{label:r("keys.form.fields.key_format.options.jwk"),value:"jwk"},{label:r("keys.form.fields.key_format.options.pem"),value:"pem"}],I=e.computed(()=>l.isReadonly||g.value===Z.Create&&!!a.fixedKeySetId),C=e.computed(()=>!I.value);e.watch(()=>a.fixedKeySetId,s=>{g.value===Z.Create&&(l.fields.key_set=s)},{immediate:!0});const K=e.computed(()=>JSON.stringify(l.fields)!==JSON.stringify(u)&&!!l.fields.key_id&&!!l.fields.key_format&&(l.fields.key_format==="jwk"&&!!l.fields.jwk||l.fields.key_format==="pem"&&!!l.fields.private_key&&!!l.fields.public_key)),_=s=>{var y,T,R,J;l.fields.key_id=(s==null?void 0:s.kid)||"",l.fields.name=(s==null?void 0:s.name)||"",l.fields.tags=((y=s==null?void 0:s.tags)==null?void 0:y.join(", "))||"",l.fields.key_set=((T=s==null?void 0:s.set)==null?void 0:T.id)||"",l.fields.key_format=s!=null&&s.pem?"pem":"jwk",l.fields.jwk=(s==null?void 0:s.jwk)||"",l.fields.private_key=((R=s==null?void 0:s.pem)==null?void 0:R.private_key)||"",l.fields.public_key=((J=s==null?void 0:s.pem)==null?void 0:J.public_key)||"",l.fields.key_set&&(S.value=!1),Object.assign(u,l.fields)},d=()=>{o.push(a.config.cancelRoute)},c=e.computed(()=>{var y,T;let s=`${a.config.apiBaseUrl}${X.form[a.config.app][g.value]}`;return a.config.app==="konnect"?s=s.replace(/{controlPlaneId}/gi,((y=a.config)==null?void 0:y.controlPlaneId)||""):a.config.app==="kongManager"&&(s=s.replace(/\/{workspace}/gi,(T=a.config)!=null&&T.workspace?`/${a.config.workspace}`:"")),s=s.replace(/{id}/gi,a.keyId),s}),m=async()=>{var s,y,T,R,J,D,G,te;try{l.isReadonly=!0;const j={kid:l.fields.key_id,name:l.fields.name||null,tags:((T=(y=(s=l.fields.tags)==null?void 0:s.split(","))==null?void 0:y.map($=>String($||"").trim()))==null?void 0:T.filter($=>$!==""))||[],set:l.fields.key_set?{id:l.fields.key_set}:null,jwk:l.fields.key_format==="jwk"?l.fields.jwk:null,pem:l.fields.key_format==="pem"?{private_key:l.fields.private_key,public_key:l.fields.public_key}:null};let q;if(g.value==="create"?q=await b.post(c.value,j):g.value==="edit"&&(q=((R=a.config)==null?void 0:R.app)==="konnect"?await b.put(c.value,j):await b.patch(c.value,j)),q){const{data:$}=q;l.fields.key_id=($==null?void 0:$.kid)||"",l.fields.name=($==null?void 0:$.name)||"",l.fields.tags=((J=$==null?void 0:$.tags)==null?void 0:J.join(", "))||"",l.fields.key_set=((D=$==null?void 0:$.set)==null?void 0:D.id)||"",l.fields.key_format=$!=null&&$.pem?"pem":"jwk",l.fields.jwk=($==null?void 0:$.jwk)||"",l.fields.private_key=((G=$==null?void 0:$.pem)==null?void 0:G.private_key)||"",l.fields.public_key=((te=$==null?void 0:$.pem)==null?void 0:te.public_key)||"",Object.assign(u,l.fields),n("update",q==null?void 0:q.data)}}catch(j){l.errorMessage=i(j),n("error",j)}finally{l.isReadonly=!1}},{debouncedQueryChange:k,loading:B,allRecords:f,error:p,validationError:w,loadItems:F,results:M}=ya(a.config,X.form[a.config.app].keySets,void 0,{fetchedItemsKey:"data",searchKeys:["id","name"]}),S=e.ref(!0),x=s=>{S.value=!s,(!s||s!==l.fields.key_set&&s!==u.key_set)&&k(s)},N=e.computed(()=>p.value?r("keys.errors.key_sets.fetch"):""),E=e.computed(()=>w.value?r("keys.errors.key_sets.invalid"):""),U=e.ref(0),W=e.computed(()=>f.value===void 0),O=e.ref(new Set),ne=e.computed(()=>Array.from(O.value).map(y=>({name:y.name||"",label:"",value:y.id,selected:l.fields.key_set===y.id}))),v=s=>{O.value.clear();let y;for(y of s)O.value.add(y)};return e.watch(M,s=>{v(s)},{immediate:!0,deep:!0}),e.watch(ne,()=>{U.value++},{immediate:!0,deep:!0}),e.onBeforeMount(async()=>{await F()}),(s,y)=>{const T=e.resolveComponent("KInput"),R=e.resolveComponent("KSelect"),J=e.resolveComponent("KTextArea");return e.openBlock(),e.createElementBlock("div",Ca,[e.createVNode(e.unref(Ft),{"can-submit":K.value,config:t.config,"edit-id":t.keyId,"error-message":l.errorMessage||N.value,"fetch-url":V.value,"is-readonly":l.isReadonly,onCancel:d,"onFetch:error":y[8]||(y[8]=D=>s.$emit("error",D)),"onFetch:success":_,onLoading:y[9]||(y[9]=D=>s.$emit("loading",D)),onSubmit:m},{default:e.withCtx(()=>[e.createVNode(e.unref(xe),{description:e.unref(r)("keys.form.sections.general.description"),title:e.unref(r)("keys.form.sections.general.title")},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:l.fields.key_id,"onUpdate:modelValue":y[0]||(y[0]=D=>l.fields.key_id=D),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-form-id",help:e.unref(r)("keys.form.fields.id.help"),label:e.unref(r)("keys.form.fields.id.label"),"label-attributes":{info:e.unref(r)("keys.form.fields.id.tooltip")},placeholder:e.unref(r)("keys.form.fields.id.placeholder"),readonly:l.isReadonly,required:"",type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"]),e.createVNode(T,{modelValue:l.fields.name,"onUpdate:modelValue":y[1]||(y[1]=D=>l.fields.name=D),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-form-name",label:e.unref(r)("keys.form.fields.name.label"),placeholder:e.unref(r)("keys.form.fields.name.placeholder"),readonly:l.isReadonly,type:"text"},null,8,["modelValue","label","placeholder","readonly"]),e.createVNode(R,{modelValue:l.fields.key_set,"onUpdate:modelValue":y[2]||(y[2]=D=>l.fields.key_set=D),appearance:"select",autosuggest:"",class:e.normalizeClass({"k-select-placeholder":S.value}),clearable:C.value,"data-testid":"key-form-key-set","dropdown-footer-text":W.value?e.unref(r)("keys.form.fields.key_set.footer"):void 0,"enable-filtering":"",items:ne.value,label:e.unref(r)("keys.form.fields.key_set.label"),loading:e.unref(B),placeholder:e.unref(r)("keys.form.fields.key_set.placeholder"),readonly:I.value,width:"100%",onQueryChange:x},{loading:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("keys.actions.loading")),1)]),empty:e.withCtx(()=>[e.createElementVNode("div",wa,e.toDisplayString(e.unref(r)("keys.search.no_results")),1)]),"selected-item-template":e.withCtx(({item:D})=>[e.createElementVNode("div",null,e.toDisplayString(D.name),1)]),"item-template":e.withCtx(({item:D})=>[e.createElementVNode("div",Sa,e.toDisplayString(D.name),1),e.createElementVNode("div",_a,e.toDisplayString(D.value),1)]),_:1},8,["modelValue","class","clearable","dropdown-footer-text","items","label","loading","placeholder","readonly"]),E.value?(e.openBlock(),e.createElementBlock("p",Ba,e.toDisplayString(E.value),1)):e.createCommentVNode("",!0),e.createVNode(T,{modelValue:l.fields.tags,"onUpdate:modelValue":y[3]||(y[3]=D=>l.fields.tags=D),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-form-tags",help:e.unref(r)("keys.form.fields.tags.help"),label:e.unref(r)("keys.form.fields.tags.label"),"label-attributes":{info:e.unref(r)("keys.form.fields.tags.tooltip")},placeholder:e.unref(r)("keys.form.fields.tags.placeholder"),readonly:l.isReadonly,type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"])]),_:1},8,["description","title"]),e.createVNode(e.unref(xe),{description:e.unref(r)("keys.form.sections.keys.description"),"has-divider":"",title:e.unref(r)("keys.form.sections.keys.title")},{default:e.withCtx(()=>[e.createElementVNode("div",xa,[e.createVNode(R,{modelValue:l.fields.key_format,"onUpdate:modelValue":y[4]||(y[4]=D=>l.fields.key_format=D),appearance:"select","data-testid":"key-form-key-format",items:h,label:e.unref(r)("keys.form.fields.key_format.label"),readonly:l.isReadonly,required:"",width:"100%"},null,8,["modelValue","label","readonly"])]),l.fields.key_format==="jwk"?(e.openBlock(),e.createBlock(J,{key:0,modelValue:l.fields.jwk,"onUpdate:modelValue":y[5]||(y[5]=D=>l.fields.jwk=D),modelModifiers:{trim:!0},class:"key-form-textarea","data-testid":"key-form-jwk",label:e.unref(r)("keys.form.fields.jwk.label"),"label-attributes":{info:e.unref(r)("keys.form.fields.jwk.tooltip")},placeholder:e.unref(r)("keys.form.fields.jwk.placeholder"),readonly:l.isReadonly,required:""},null,8,["modelValue","label","label-attributes","placeholder","readonly"])):e.createCommentVNode("",!0),l.fields.key_format==="pem"?(e.openBlock(),e.createBlock(J,{key:1,modelValue:l.fields.private_key,"onUpdate:modelValue":y[6]||(y[6]=D=>l.fields.private_key=D),modelModifiers:{trim:!0},class:"key-form-textarea","data-testid":"key-form-private-key",label:e.unref(r)("keys.form.fields.private_key.label"),placeholder:e.unref(r)("keys.form.fields.private_key.placeholder"),readonly:l.isReadonly,required:""},null,8,["modelValue","label","placeholder","readonly"])):e.createCommentVNode("",!0),l.fields.key_format==="pem"?(e.openBlock(),e.createBlock(J,{key:2,modelValue:l.fields.public_key,"onUpdate:modelValue":y[7]||(y[7]=D=>l.fields.public_key=D),modelModifiers:{trim:!0},class:"key-form-textarea","data-testid":"key-form-public-key",label:e.unref(r)("keys.form.fields.public_key.label"),placeholder:e.unref(r)("keys.form.fields.public_key.placeholder"),readonly:l.isReadonly,required:""},null,8,["modelValue","label","placeholder","readonly"])):e.createCommentVNode("",!0)]),_:1},8,["description","title"])]),_:1},8,["can-submit","config","edit-id","error-message","fetch-url","is-readonly"])])}}}),Ja="",Ia=Ve(Va,[["__scopeId","data-v-8e9c13a2"]]),Na={class:"kong-ui-entities-keys-entity-config-card"},Ea={key:2},$a=e.defineComponent({__name:"KeyConfigCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.entityId)},hideTitle:{type:Boolean,default:!1}},emits:["loading","fetch:error","fetch:success","copy:success","navigation-click"],setup(t,{emit:n}){var d;const a=t,{axiosInstance:o}=de({headers:(d=a.config)==null?void 0:d.requestHeaders}),{convertKeyToTitle:r}=ua(),{i18n:{t:i}}=re.useI18n(),b=e.computed(()=>X.form[a.config.app].edit),V=e.computed(()=>{var c;return(c=X.form[a.config.app])==null?void 0:c.getKeySet}),g=e.ref(),l=e.ref({}),u=e.ref(""),h=e.ref(""),I=e.ref(!1),C=async c=>{var k,B,f;if(g.value=c,u.value=(k=c==null?void 0:c.set)==null?void 0:k.id,n("fetch:success",c),await K(c),!u.value)return;let m=`${a.config.apiBaseUrl}${V.value}`;a.config.app==="konnect"?m=m.replace(/{controlPlaneId}/gi,((B=a.config)==null?void 0:B.controlPlaneId)||"").replace(/{keySetId}/gi,u.value||""):a.config.app==="kongManager"&&(m=m.replace(/\/{workspace}/gi,(f=a.config)!=null&&f.workspace?`/${a.config.workspace}`:"").replace(/{keySetId}/gi,u.value||""));try{I.value=!0;const{data:p}=await o.get(m);h.value=(p==null?void 0:p.name)||(p==null?void 0:p.id)}catch(p){n("fetch:error",p)}finally{I.value=!1}},K=async c=>{var m,k;try{if(c.jwk){const B=JSON.parse(c.jwk);Object.keys(B).forEach(f=>{l.value={...l.value,[`jwk.${f}`]:B[f]}})}else l.value={"pem.public_key":(m=c==null?void 0:c.pem)==null?void 0:m.public_key,"pem.private_key":(k=c==null?void 0:c.pem)==null?void 0:k.private_key}}catch(B){n("fetch:error",B)}return l},_=e.ref({id:{},name:{tooltip:i("keys.form.fields.name.tooltip")},last_updated:{},created:{},set:{label:i("keys.form.fields.set.label"),section:L.Basic,tooltip:i("keys.form.fields.set.tooltip"),order:5},kid:{label:i("keys.form.fields.kid.label"),section:L.Basic,tooltip:i("keys.form.fields.kid.tooltip")},tags:{tooltip:i("keys.form.fields.tags.tooltip")},jwk:{label:i("keys.form.fields.jwk.label"),type:P.Json},pem:{section:L.Advanced,label:i("keys.form.fields.key_format.options.pem"),type:P.Json}});return(c,m)=>{var B,f;const k=e.resolveComponent("KSkeleton");return e.openBlock(),e.createElementBlock("div",Na,[e.createVNode(e.unref(Dt),{config:t.config,"config-schema":_.value,"fetch-url":b.value,"hide-title":t.hideTitle,"onCopy:success":m[0]||(m[0]=p=>c.$emit("copy:success",p)),"onFetch:error":m[1]||(m[1]=p=>c.$emit("fetch:error",p)),"onFetch:success":C,onLoading:m[2]||(m[2]=p=>c.$emit("loading",p))},e.createSlots({set:e.withCtx(({row:p})=>[I.value?(e.openBlock(),e.createBlock(k,{key:0,"data-testid":"key-set-name-loader",type:"spinner"})):p.value&&p.value.id===u.value&&h.value?(e.openBlock(),e.createBlock(e.unref(Be),{key:1,item:{key:p.value.id,value:h.value,type:e.unref(P).LinkInternal},onClick:w=>c.$emit("navigation-click",p.value.id,"key-sets")},null,8,["item","onClick"])):(e.openBlock(),e.createElementBlock("div",Ea,e.toDisplayString("–")))]),_:2},[(B=g.value)!=null&&B.jwk?{name:"jwk",fn:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(l.value),p=>(e.openBlock(),e.createBlock(e.unref(ae),{key:p,"data-testid":`${p}`,item:{key:p,label:e.unref(r)(p),value:l.value[p]}},null,8,["data-testid","item"]))),128))]),key:"0"}:void 0,(f=g.value)!=null&&f.pem?{name:"pem",fn:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(l.value),p=>(e.openBlock(),e.createBlock(e.unref(ae),{key:p,"data-testid":`${p}`,item:{key:p,label:e.unref(r)(p),value:l.value[p]}},null,8,["data-testid","item"]))),128))]),key:"1"}:void 0]),1032,["config","config-schema","fetch-url","hide-title"])])}}});H.KeyConfigCard=$a,H.KeyForm=Ia,H.KeyList=ba,Object.defineProperty(H,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(H,e){typeof exports=="object"&&typeof module<"u"?e(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"],e):(H=typeof globalThis<"u"?globalThis:H||self,e(H["kong-ui-public-entities-keys"]={},H.Vue,H.VueRouter,H["kong-ui-public-i18n"],H.axios,H.Kongponents))})(this,function(H,e,le,Y,Ie,Ne){"use strict";const Ee={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 $e(){const t=Y.createI18n("en-us",Ee);return{i18n:t,i18nT:Y.i18nTComponent(t)}}const re={useI18n:$e},X={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:"/api/runtime_groups/{controlPlaneId}/keys",edit:"/api/runtime_groups/{controlPlaneId}/keys/{id}",keySets:"/api/runtime_groups/{controlPlaneId}/key-sets",getKeySet:"/api/runtime_groups/{controlPlaneId}/key-sets/{keySetId}"},kongManager:{create:"/{workspace}/keys",edit:"/{workspace}/keys/{id}",keySets:"/{workspace}/key-sets",getKeySet:"/{workspace}/key-sets/{keySetId}"}}};var pe=(t=>(t.GatewayService="service",t.Route="route",t.Consumer="consumer",t.ConsumerGroup="consumer group",t.Plugin="plugin",t.Upstream="upstream",t.Certificate="certificate",t.CACertificate="ca certificate",t.SNI="SNI",t.Key="key",t.KeySet="key set",t.Vault="vault",t.Application="application",t.Developer="developer",t.acls="ACL Credential",t["basic-auth"]="Basic Auth Credential",t["key-auth"]="Key Auth Credential",t["key-auth-enc"]="Key Auth Encrypted Credential",t.oauth2="OAuth 2.0 Credential",t["hmac-auth"]="HMAC Credential",t.jwt="JWT Credential",t.Target="target",t))(pe||{}),Z=(t=>(t.Edit="edit",t.Create="create",t))(Z||{}),Q=(t=>(t[t.Loading=0]="Loading",t[t.Idle=1]="Idle",t[t.NoResults=2]="NoResults",t[t.Error=3]="Error",t))(Q||{}),P=(t=>(t.ID="id",t.IdArray="id-array",t.Text="plain-text",t.Date="date",t.Redacted="redacted",t.RedactedArray="redacted-array",t.Json="json",t.JsonArray="json-array",t.BadgeTag="badge-tag",t.BadgeStatus="badge-status",t.BadgeMethod="badge-method",t.LinkInternal="link-internal",t.LinkExternal="link-external",t))(P||{}),L=(t=>(t.Basic="basic",t.Advanced="advanced",t.Plugin="plugin",t))(L||{});function ie(t={}){return{axiosInstance:Ie.create({withCredentials:!0,timeout:3e4,...t})}}function Ke(){return{debounce:(t,n)=>{let a;return(...o)=>{clearTimeout(a),a=window==null?void 0:window.setTimeout(()=>{t(...o)},n)}}}}const se="khcp-user-table-preferences",Te={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function je(){const t=a=>{if(typeof a=="string")try{return JSON.parse(a)}catch(o){console.error("useTablePreferences(tryParseJson)",o);return}},n=()=>{const a=t(localStorage.getItem(se));return!a||!Object.keys(a).length?new Map:new Map(Object.entries(a))};return{setTablePreferences:(a,o)=>{try{const r=n();r.set(a,o),localStorage.setItem(se,JSON.stringify(Object.fromEntries(r.entries())))}catch(r){console.error("useTablePreferences(setTablePreferences)",r)}},getTablePreferences:a=>{const o=n();return(o==null?void 0:o.get(a))||void 0||Te},deleteAllTablePreferences:()=>{localStorage.removeItem(se)}}}const De={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},Me={actions:{save:"Save",cancel:"Cancel",back:"Back"},errors:{edit:"The entity could not be edited at this time."}},Pe={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Fe={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}"}},Re={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},qe={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},Ae={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Le={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"}},Ue={deleteModal:De,baseForm:Me,baseTable:Pe,baseConfigCard:Fe,filter:Re,debouncedFilter:qe,errors:Ae,toggleModal:Le};function ce(){const t=Y.createI18n("en-us",Ue);return{i18n:t,i18nT:Y.i18nTComponent(t)}}function Oe(t,n,a,o={fetchedItemsKey:"data",searchKeys:["id"]}){a||(a="100");const{axiosInstance:r}=ie({headers:t.requestHeaders}),{i18n:{t:i}}=ce(),{debounce:b}=Ke(),V=b(async m=>{await c(m)},200),g=e.ref(!1),l=e.ref(""),u=e.ref(""),h=e.ref([]),I=e.ref(void 0),C=e.unref(n);let K=`${t.apiBaseUrl}${C}`;t.app==="konnect"?K=K.replace(/{controlPlaneId}/gi,(t==null?void 0:t.controlPlaneId)||""):t.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,t!=null&&t.workspace?`/${t.workspace}`:""));const _=async()=>{try{g.value=!0;const{data:m}=await r.get(`${K}?size=${a}`);m!=null&&m.next||(I.value=o.fetchedItemsKey in m?m[o.fetchedItemsKey]:[]),h.value=o.fetchedItemsKey in m?m[o.fetchedItemsKey]:[]}catch{h.value=[],l.value=i("debouncedFilter.errors.fetch")}finally{g.value=!1}},d=e.ref(""),c=async m=>{var k,B;if(d.value!==m)if(d.value=m||"",I.value===void 0)try{g.value=!0,l.value="",u.value="";let f=K+"";m&&(f+=`/${m}`);const{data:p}=await r.get(`${f}?size=${a}`);o.fetchedItemsKey in p?h.value=p[o.fetchedItemsKey]:p!=null&&p.id?h.value=[p]:h.value=[]}catch(f){((k=f==null?void 0:f.response)==null?void 0:k.status)===404?u.value=i("debouncedFilter.errors.invalid"):(h.value=[],l.value=i("debouncedFilter.errors.fetch"))}finally{g.value=!1}else g.value=!0,u.value="",m?(h.value=(B=I.value)==null?void 0:B.filter(f=>{var p;let w=!1;for(const F of o.searchKeys){const M=typeof f[F]=="string"?(p=f[F])==null?void 0:p.toLowerCase():f[F];M!=null&&M.includes(m.toLowerCase())&&(w=!0)}return w}),(!h.value||!h.value.length)&&(u.value=i("debouncedFilter.errors.invalid"))):h.value=I.value,g.value=!1};return{loading:g,error:l,validationError:u,results:h,allRecords:I,loadItems:_,debouncedQueryChange:V}}function Je(t,n){const a=e.unref(n),o=e.computed(()=>t.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${a}`):new URL(a));return o.value.search="",r=>`${o.value.href}/${r}`}function He(){const{i18n:{t}}=ce();return{getMessageFromError:n=>{var a,o,r;if(!n)return t("errors.unexpected");if((a=n==null?void 0:n.response)!=null&&a.data){if(n.response.data.detail)return n.response.data.detail;if((o=n.response.data.details)!=null&&o.length)return n.response.data.details.map(i=>{let b=t("errors.unexpected");return i.messages&&typeof i.messages=="object"&&i.messages.length&&(b=i.messages.join(", ")),i.field?`${i.field} - ${b}`:b}).join("; ");if(n.response.data.message){const{message:i}=n.response.data;return Array.isArray(i)?(r=i[0])!=null&&r.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||t("errors.unexpected")}}}function fe(t,n){const a=e.ref(e.unref(t)),o=e.ref(e.unref(n)),r=e.computed(()=>!!(a.value.app==="konnect"||a.value.isExactMatch)),i=e.computed(()=>o.value.startsWith("/")?new URL(`${window.location.origin}${o.value}`):new URL(o.value));return b=>{const{page:V,pageSize:g,offset:l,sortColumnKey:u,sortColumnOrder:h,query:I}=b;try{let C=new URL(i.value.href);return r.value&&I?(C.search="",C=new URL(`${C.href}/${I}/`)):(r.value||new URLSearchParams(I).forEach((K,_)=>{C.searchParams.append(_,K)}),u&&C.searchParams.append("sort_by",u),h==="desc"&&C.searchParams.append("sort_desc","1"),C.searchParams.append("size",String(g))),l&&V!==1&&C.searchParams.append("offset",String(l)),C.href}catch(C){return console.error("RouteList(fetcher)",C),o.value}}}function ze(t,n,a="data"){const o=e.unref(n),{axiosInstance:r}=ie({headers:t.requestHeaders}),i=fe(t,o),b=e.ref({status:Q.Idle});return{fetcher:async V=>{try{b.value={status:Q.Loading};const g=i(V),{data:l}=await r.get(g),u=a&&a.replace(/[^\w-_]/gi,"");let h;l[u]&&Array.isArray(l[u])?h=l[u]:h=Object.keys(l).length?[l]:[];const I={data:h,total:h.length,...l.offset?{pagination:{offset:l.offset}}:null};return b.value={status:Q.Idle,response:I},I}catch(g){const l={data:[],total:0};return V.query&&g.response.status===404?(b.value={status:Q.NoResults,response:l,error:g},l):(b.value={status:Q.Error,response:l,error:g},l)}},fetcherState:b}}function We(){return{convertKeyToTitle:(t,n="_")=>t?t.split(n).map(a=>a.toLowerCase()==="id"?a.toUpperCase():a.charAt(0).toUpperCase()+a.substring(1)).join(" "):""}}const me=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,ye=t=>{if(typeof t!="string")throw new TypeError("Invalid argument expected string");const n=t.match(me);if(!n)throw new Error(`Invalid argument not valid semver ('${t}' received)`);return n.shift(),n},ue=t=>t==="*"||t==="x"||t==="X",ke=t=>{const n=parseInt(t,10);return isNaN(n)?t:n},Ge=(t,n)=>typeof t!=typeof n?[String(t),String(n)]:[t,n],Qe=(t,n)=>{if(ue(t)||ue(n))return 0;const[a,o]=Ge(ke(t),ke(n));return a>o?1:a<o?-1:0},ge=(t,n)=>{for(let a=0;a<Math.max(t.length,n.length);a++){const o=Qe(t[a]||"0",n[a]||"0");if(o!==0)return o}return 0},Xe=(t,n)=>{const a=ye(t),o=ye(n),r=a.pop(),i=o.pop(),b=ge(a,o);return b!==0?b:r&&i?ge(r.split("."),i.split(".")):r||i?r?-1:1:0},he=(t,n,a)=>{Ye(a);const o=Xe(t,n);return be[a].includes(o)},be={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},Ce=Object.keys(be),Ye=t=>{if(typeof t!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof t}`);if(Ce.indexOf(t)===-1)throw new Error(`Invalid operator, expected one of ${Ce.join("|")}`)},Ze=t=>typeof t=="string"&&/^[v\d]/.test(t)&&me.test(t);function ve(t){const{gatewayInfo:n,supportedRange:a}=t;if(!n)return!0;const{edition:o,version:r}=n;if(!Ze(r))return console.error("Invalid version"),!1;const i=a[o];if(!i)return!1;const[b,V]=i;return!(b&&he(r,b,"<")||V&&he(r,V,">"))}const A={useAxios:ie,useDebouncedFilter:Oe,useDeleteUrlBuilder:Je,useErrors:He,useFetcher:ze,useFetchUrlBuilder:fe,useStringHelpers:We,useI18n:ce,useGatewayFeatureSupported:ve},et={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},tt="Copy to clipboard",at={message:et,iconTitle:tt},ot="kong-ui-copy-uuid-notify",nt={class:"kong-ui-copy-uuid"},lt=["title"],rt=["onClick"],we=15,it=e.defineComponent({__name:"CopyUuid",props:{uuid:{type:String,required:!0},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:t=>["uuid","hidden","redacted","deleted"].includes(t)}},emits:["success","error"],setup(t,{emit:n}){const a=t,{t:o}=Y.createI18n("en-us",at),r=a.notify||e.inject(ot,()=>{}),i=e.computed(()=>!!(a.tooltip&&a.successTooltip)),b=e.ref(a.tooltip),V=e.computed(()=>a.tooltip?{label:b.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),g=e.computed(()=>a.format==="redacted"?"*****":a.format==="deleted"?`*${a.uuid.substring(0,5)}`:a.uuid),l=h=>{b.value=h,setTimeout(()=>{b.value=a.tooltip},1800)},u=h=>{if(!h(a.uuid)){typeof r=="function"&&r({type:"error",message:o("message.fail")}),i.value?l(o("message.fail")):n("error",a.uuid);return}const I=a.uuid.length>we,C=a.format==="hidden"||a.format==="redacted"?o("message.success.prefix"):`"${a.uuid.substring(0,we)+(I?"...":"")}"`;typeof r=="function"&&r({type:"success",message:`${C}${o("message.success.content")}`}),i.value?l(a.successTooltip):n("success",a.uuid)};return(h,I)=>{const C=e.resolveComponent("KIcon"),K=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",nt,[t.format!=="hidden"?(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":"copy-id",title:t.uuid},[e.createElementVNode("div",{class:e.normalizeClass(["uuid-container",t.truncated?"truncated-uuid":null,t.useMono?"mono":null])},e.toDisplayString(g.value),3)],8,lt)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tooltip?"KTooltip":"div"),e.mergeProps(V.value,{class:"uuid-icon-wrapper"}),{default:e.withCtx(()=>[e.createVNode(K,null,{default:e.withCtx(({copyToClipboard:_})=>[e.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:e.withModifiers(d=>u(_),["stop"])},[e.createVNode(C,{class:"uuid-icon",color:t.iconColor,"hide-title":!!t.tooltip||void 0,icon:"copy",size:"16",title:e.unref(o)("iconTitle")},null,8,["color","hide-title","title"])],8,rt)]),_:1})]),_:1},16))])}}}),st=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},Se=st(it,[["__scopeId","data-v-e4ea1359"]]),ct={key:0,class:"config-card-fieldset-title"},dt=e.defineComponent({__name:"JsonCardItem",props:{item:{type:Object,required:!0},index:{type:Number,default:-1},isArrayItem:{type:Boolean,default:!1}},setup(t){const n=t,{i18n:{t:a}}=A.useI18n(),{convertKeyToTitle:o}=A.useStringHelpers(),r=e.computed(()=>n.item.key??"json-array-item"),i=e.computed(()=>n.item.value??n.item),b=e.computed(()=>{const g=JSON.parse(JSON.stringify(i.value));return n.isArrayItem&&delete g.name,g}),V=e.computed(()=>{var g;return n.isArrayItem?(g=i.value)!=null&&g.name?o(i.value.name,"_"):a("baseConfigCard.general.entryTitle",{index:n.index}):""});return(g,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.isArrayItem?"fieldset":"div"),{class:e.normalizeClass(t.isArrayItem?"config-card-fieldset":"config-card-json-item")},{default:e.withCtx(()=>[t.isArrayItem?(e.openBlock(),e.createElementBlock("legend",ct,[e.createElementVNode("b",null,e.toDisplayString(V.value),1)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(b.value),(u,h)=>(e.openBlock(),e.createBlock(ae,{key:`${r.value}-property-${h}`,item:{key:u,label:e.unref(o)(u),value:b.value[u]}},null,8,["item"]))),128))]),_:1},8,["class"]))}}),z=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},_e=z(dt,[["__scopeId","data-v-68ca83ec"]]),Be=z(e.defineComponent({__name:"InternalLinkItem",props:{item:{type:Object,required:!0}},emits:["navigation-click"],setup(t){const{i18n:{t:n}}=A.useI18n();return(a,o)=>{const r=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(r,{appearance:"btn-link",class:"navigation-button",onClick:o[0]||(o[0]=i=>a.$emit("navigation-click",t.item))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.item.value||e.unref(n)("baseConfigCard.commonFields.link")),1)]),_:1})])}}}),[["__scopeId","data-v-7410504d"]]),pt=e.defineComponent({__name:"StatusBadge",props:{status:{type:Boolean,default:!1}},setup(t){const{i18n:{t:n}}=A.useI18n();return(a,o)=>{const r=e.resolveComponent("KBadge");return e.openBlock(),e.createBlock(r,{appearance:t.status?"success":"neutral"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.status?e.unref(n)("baseConfigCard.statusBadge.enabledLabel"):e.unref(n)("baseConfigCard.statusBadge.disabledLabel")),1)]),_:1},8,["appearance"])}}}),ft="#0044f4",mt="#e0e4ea",yt="#3a3f51",ut="1px",kt={class:"config-card-details-row"},gt=["data-testid"],ht=["data-testid"],bt=["data-testid"],Ct=["data-testid"],wt={key:1},St=["data-testid"],_t=["data-testid"],Bt=["data-testid"],xt=["data-testid"],Vt=["title"],It={name:"ConfigCardItem",components:{CopyUuid:Se,JsonCardItem:_e,StatusBadge:pt,InternalLinkItem:Be}},Nt=e.defineComponent({...It,props:{item:{type:Object,required:!0},slim:{type:Boolean,required:!1,default:!1},truncated:{type:Boolean,required:!1,default:!1}},emits:["navigation-click"],setup(t,{emit:n}){const a=t;e.useCssVars(h=>({"2c6ac268":l.value?"none":`solid ${e.unref(ut)} ${e.unref(mt)}`,c7a65802:g.value&&b.value?"block":"flex","778426fe":g.value&&b.value?"100%":a.slim?"50%":"25%","777f9b48":g.value&&b.value?"100%":a.slim?"50%":"75%"}));const o=e.useSlots(),{i18n:{t:r,formatUnixTimeStamp:i}}=A.useI18n(),b=e.computed(()=>a.item.value!==void 0&&a.item.value!==null&&a.item.value!==""),V=e.computed(()=>!!(a.item.tooltip||o["label-tooltip"])),g=e.computed(()=>a.item.type===P.Json||a.item.type===P.JsonArray),l=e.computed(()=>a.item.type===P.JsonArray),u=e.computed(()=>{switch(a.item.type){case P.ID:return{tag:"CopyUuid",attrs:{"data-testid":`${a.item.key}-copy-uuid`,"success-tooltip":r("baseConfigCard.copy.success"),tooltip:r("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,uuid:a.item.value,notify:()=>{}}};case P.IdArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{"success-tooltip":r("baseConfigCard.copy.success"),tooltip:r("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,notify:()=>{}}};case P.Redacted:return{tag:"CopyUuid",attrs:{"data-testid":`${a.item.key}-copy-uuid-redacted`,format:"redacted","success-tooltip":r("baseConfigCard.copy.success"),tooltip:r("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,uuid:a.item.value,notify:()=>{}}};case P.RedactedArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{format:"redacted","success-tooltip":r("baseConfigCard.copy.success"),tooltip:r("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,notify:()=>{}}};case P.Date:return{tag:"div",attrs:{"data-testid":`${a.item.key}-date`},text:i(a.item.value)};case P.BadgeStatus:return{tag:"StatusBadge",attrs:{"data-testid":`${a.item.key}-badge-status`,status:a.item.value}};case P.BadgeTag:return{tag:"div",additionalComponent:"KBadge"};case P.BadgeMethod:return{tag:"div",additionalComponent:"KMethodBadge"};case P.LinkInternal:return{tag:"InternalLinkItem",attrs:{"data-testid":`${a.item.key}-internal-link`,item:a.item,onNavigationClick:h=>{n("navigation-click",h)}}};case P.LinkExternal:return{tag:"KExternalLink",attrs:{"data-testid":`${a.item.key}-external-link`,href:a.item.value},text:a.item.value};case P.Json:return{tag:"JsonCardItem",attrs:{"data-testid":`${a.item.key}-json-content`,item:a.item}};case P.JsonArray:return{tag:"div",additionalComponent:"JsonCardItem",attrs:{"data-testid":`${a.item.key}-json-array-content`,item:a.item}};default:return{tag:"div",attrs:{"data-testid":`${a.item.key}-plain-text`},text:a.item.value}}});return(h,I)=>{const C=e.resolveComponent("KLabel"),K=e.resolveComponent("KBadge"),_=e.resolveComponent("KMethodBadge");return e.openBlock(),e.createElementBlock("div",kt,[e.createElementVNode("div",{class:"config-card-details-label","data-testid":`${t.item.key}-label`},[e.renderSlot(h.$slots,"label",{item:t.item},()=>[e.createVNode(C,{"tooltip-attributes":{maxWidth:"500px"}},e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.item.label)+" ",1)]),_:2},[V.value?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{"data-testid":`${t.item.key}-label-tooltip`},[e.renderSlot(h.$slots,"label-tooltip",{},()=>[e.createTextVNode(e.toDisplayString(t.item.tooltip),1)],!0)],8,ht)]),key:"0"}:void 0]),1024)],!0)],8,gt),e.createElementVNode("div",{class:"config-card-details-value","data-testid":`${t.item.key}-property-value`},[e.renderSlot(h.$slots,t.item.key,{rowValue:t.item.value},()=>[b.value?(e.openBlock(),e.createElementBlock("div",wt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.value.tag),e.normalizeProps(e.guardReactiveProps(u.value.attrs)),{default:e.withCtx(()=>[u.value.additionalComponent==="KBadge"?(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${t.item.key}-badge-tags`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.value,(d,c)=>(e.openBlock(),e.createBlock(K,{key:`${t.item.key}-badge-tag-${c}`,class:"config-badge","data-testid":`${t.item.key}-badge-tag-${c}`,"truncation-tooltip":d},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d),1)]),_:2},1032,["data-testid","truncation-tooltip"]))),128))],8,St)):e.createCommentVNode("",!0),u.value.additionalComponent==="CopyUuid"?(e.openBlock(),e.createElementBlock("div",{key:1,class:"copy-uuid-array","data-testid":`${t.item.key}-copy-uuid-array`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.value,(d,c)=>(e.openBlock(),e.createBlock(e.unref(Se),e.mergeProps(u.value.childAttrs,{key:`${t.item.key}-copy-uuid-${c}`,"data-testid":`${t.item.key}-copy-uuid-${c}`,uuid:d}),null,16,["data-testid","uuid"]))),128))],8,_t)):u.value.additionalComponent==="KMethodBadge"?(e.openBlock(),e.createElementBlock("div",{key:2,class:"method-badge-array","data-testid":`${t.item.key}-badge-methods`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.value,(d,c)=>(e.openBlock(),e.createBlock(_,{key:`${t.item.key}-badge-method-${c}`,class:"config-badge","data-testid":`${t.item.key}-badge-method-${c}`,"is-rounded":"",label:d,method:e.unref(Ne.MethodsArray).includes(d.toLowerCase())?d.toLowerCase():"custom"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d),1)]),_:2},1032,["data-testid","label","method"]))),128))],8,Bt)):e.createCommentVNode("",!0),u.value.additionalComponent==="JsonCardItem"?(e.openBlock(),e.createElementBlock("div",{key:3,"data-testid":`${a.item.key}-json-array-content`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.value,(d,c)=>(e.openBlock(),e.createBlock(_e,{key:`json-array-item-${c}`,index:c,"is-array-item":"",item:d},null,8,["index","item"]))),128))],8,xt)):(e.openBlock(),e.createElementBlock("span",{key:4,class:e.normalizeClass(["attrs-data-text",{truncated:t.truncated}]),title:t.truncated?t.item.value:void 0},e.toDisplayString(u.value.text),11,Vt))]),_:1},16))])):(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${t.item.key}-no-value`}," – ",8,Ct))],!0)],8,bt)])}}}),ae=z(Nt,[["__scopeId","data-v-a3c5ab01"]]),Et={"data-testid":"config-card-title"},$t={class:"config-card-actions"},Kt={class:"config-card-details-section"},Tt=["data-testid"],jt={key:0,class:"config-card-prop-section-title"},Dt=z(e.defineComponent({__name:"EntityBaseConfigCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.entityId)},configSchema:{type:Object,required:!1,default:()=>({})},pluginConfigKey:{type:String,required:!1,default:""},pluginConfigSchema:{type:Object,required:!1,default:()=>({})},fetchUrl:{type:String,required:!0},dataKey:{type:String,required:!1,default:""},hideTitle:{type:Boolean,default:!1}},emits:["loading","fetch:success","fetch:error","copy:success","copy:error"],setup(t,{emit:n}){var a;const o=t,r=e.useSlots(),{i18n:{t:i}}=A.useI18n(),{getMessageFromError:b}=A.useErrors(),{convertKeyToTitle:V}=A.useStringHelpers(),{axiosInstance:g}=A.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),l={id:{type:P.ID,label:i("baseConfigCard.commonFields.id_label"),order:0,section:L.Basic},name:{order:1,section:L.Basic},enabled:{type:P.BadgeStatus,order:2,section:L.Basic},updated_at:{type:P.Date,label:i("baseConfigCard.commonFields.updated_at_label"),order:3,section:L.Basic},created_at:{type:P.Date,label:i("baseConfigCard.commonFields.created_at_label"),order:4,section:L.Basic},tags:{type:P.BadgeTag,order:-1,section:L.Basic}},u=e.ref(!1),h=e.ref(!1),I=e.ref(""),C=e.ref(),K=e.computed(()=>{var f,p,w;if(!C.value)return[];const F=[],M=Object.keys(C.value).length;for(const S in C.value){const x=(p=(f=o.configSchema)==null?void 0:f[S])==null?void 0:p.order,N=(w=l[S])==null?void 0:w.order;let E=M;(N||N===0)&&(E=N===-1?M+1:N),x&&(E=x===-1?M+1:x),F.push([S,E])}return F.sort(function(S,x){return S[1]-x[1]}),F.map(S=>{var x,N;const E=S[0],U=(x=C.value)==null?void 0:x[E],W=((N=o.configSchema)==null?void 0:N[E])||{},O=l[E];return{key:E,value:U,hidden:W.hidden||!1,type:W.type??((O==null?void 0:O.type)||P.Text),label:W.label??((O==null?void 0:O.label)||V(E)),tooltip:W.tooltip??((O==null?void 0:O.tooltip)||void 0),section:W.section??((O==null?void 0:O.section)||L.Advanced)}}).filter(S=>!S.hidden&&S.key!==o.pluginConfigKey)}),_=e.computed(()=>{var f,p;if(!C.value||!o.pluginConfigKey)return[];const w=C.value[o.pluginConfigKey]||{},F=Object.keys(w).length,M=[];for(const S in w){const x=(p=(f=o.pluginConfigSchema)==null?void 0:f[S])==null?void 0:p.order,N=w[S];let E=N!=null&&N!==""?F-1:F;x&&(E=x===-1?F+1:x),M.push([S,E])}return M.sort(function(S,x){return S[1]-x[1]}),M.map(S=>{var x;const N=S[0],E=w[N],U=((x=o.pluginConfigSchema)==null?void 0:x[N])||{};return{key:N,value:E,hidden:U.hidden||!1,type:U.type??P.Text,label:U.label??V(N),tooltip:U.tooltip??void 0,section:L.Plugin}}).filter(S=>!S.hidden)}),d=e.computed(()=>{var f,p,w,F;return{basic:(f=K.value)==null?void 0:f.filter(M=>M.section===L.Basic),advanced:(p=K.value)==null?void 0:p.filter(M=>M.section===L.Advanced),plugin:(F=_.value)==null?void 0:F.concat((w=K.value)==null?void 0:w.filter(M=>M.section===L.Plugin))}}),c=e.computed(()=>{const f=[];return d.value.basic.length&&f.push("basic"),d.value.advanced.length&&f.push("advanced"),d.value.plugin.length&&f.push("plugin"),f}),m=f=>!!(f.tooltip||r[`${f.key}-label-tooltip`]),k=e.computed(()=>{var f,p;let w=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,((f=o.config)==null?void 0:f.controlPlaneId)||""):o.config.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,(p=o.config)!=null&&p.workspace?`/${o.config.workspace}`:"")),w=w.replace(/{id}/gi,o.config.entityId),w}),B=f=>{C.value&&f(JSON.stringify(C.value))?n("copy:success",C.value):n("copy:error")};return e.watch(u,f=>{n("loading",f)},{immediate:!0}),e.onBeforeMount(async()=>{h.value=!1,u.value=!0;try{const{data:f}=await g.get(k.value);if(o.dataKey)if(typeof f[o.dataKey]<"u")C.value={...f[o.dataKey]};else throw new Error(i("errors.dataKeyUndefined",{dataKey:o.dataKey}));else C.value={...f};Object.keys(o.configSchema).filter(p=>o.configSchema[p].forceShow).forEach(p=>{C.value&&typeof C.value[p]>"u"&&(C.value[p]=null)}),n("fetch:success",f)}catch(f){const p=b(f);I.value=p.startsWith("code")?i("baseConfigCard.errors.load"):p,h.value=!0,n("fetch:error",f)}finally{u.value=!1}}),(f,p)=>{const w=e.resolveComponent("KButton"),F=e.resolveComponent("KClipboardProvider"),M=e.resolveComponent("KSkeleton"),S=e.resolveComponent("KEmptyState"),x=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(x,{"border-variant":"noBorder",class:"kong-ui-entity-base-config-card"},e.createSlots({actions:e.withCtx(()=>[e.createElementVNode("div",$t,[e.renderSlot(f.$slots,"actions",{},void 0,!0),e.createVNode(F,null,{default:e.withCtx(({copyToClipboard:N})=>[!u.value&&!h.value?(e.openBlock(),e.createBlock(w,{key:0,appearance:"btn-link","data-testid":"json-copy-button",onClick:E=>B(N)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseConfigCard.actions.copy")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0)]),_:1})])]),body:e.withCtx(()=>[u.value?(e.openBlock(),e.createBlock(M,{key:0,"data-testid":"config-card-loader","table-columns":2,type:"table"})):h.value?(e.openBlock(),e.createBlock(S,{key:1,"data-testid":"config-card-fetch-error","is-error":""},{message:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(I.value),1)]),_:1})):e.createCommentVNode("",!0),e.createElementVNode("div",Kt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,N=>(e.openBlock(),e.createElementBlock("div",{key:`config-card-details-${N}-props`,class:e.normalizeClass(`config-card-details-${N}-props`),"data-testid":`config-card-details-${N}-props`},[N!=="basic"?(e.openBlock(),e.createElementBlock("div",jt,e.toDisplayString(N==="advanced"?e.unref(i)("baseConfigCard.sections.advanced"):e.unref(i)("baseConfigCard.sections.plugin")),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value[N],E=>(e.openBlock(),e.createBlock(ae,{key:E.key,item:E},e.createSlots({label:e.withCtx(()=>[e.renderSlot(f.$slots,`${E.key}-label`,{row:E},void 0,!0)]),[E.key]:e.withCtx(({rowValue:U})=>[e.renderSlot(f.$slots,E.key,{row:E,rowValue:U},void 0,!0)]),_:2},[m(E)?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(f.$slots,`${E.key}-label-tooltip`,{row:E},void 0,!0)]),key:"0"}:void 0]),1032,["item"]))),128))],10,Tt))),128))])]),_:2},[t.hideTitle?void 0:{name:"title",fn:e.withCtx(()=>[e.createElementVNode("div",Et,[e.renderSlot(f.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseConfigCard.title")),1)],!0)])]),key:"0"}]),1024)}}}),[["__scopeId","data-v-b72bbdde"]]),Mt=["onReset","onSubmit"],Pt={class:"form-actions","data-testid":"form-actions"},Ft=z(e.defineComponent({__name:"EntityBaseForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},editId:{type:String,required:!1,default:""},fetchUrl:{type:String,required:!1,default:""},isReadonly:{type:Boolean,required:!1,default:!1},canSubmit:{type:Boolean,required:!1,default:void 0},errorMessage:{type:String,required:!1,default:""}},emits:["loading","fetch:success","fetch:error","submit","cancel"],setup(t,{emit:n}){var a;const o=t,r=le.useRouter(),{i18n:{t:i}}=A.useI18n(),{getMessageFromError:b}=A.useErrors(),{axiosInstance:V}=A.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),g=e.ref(!1),l=e.ref(!1),u=e.ref(""),h=e.computed(()=>o.canSubmit===!1||o.isReadonly),I=e.computed(()=>{var d,c;if(!o.editId)return"";let m=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?m=m.replace(/{controlPlaneId}/gi,((d=o.config)==null?void 0:d.controlPlaneId)||""):o.config.app==="kongManager"&&(m=m.replace(/\/{workspace}/gi,(c=o.config)!=null&&c.workspace?`/${o.config.workspace}`:"")),m=m.replace(/{id}/gi,o.editId),m}),C=()=>{o.config.cancelRoute?r.push(o.config.cancelRoute):K()},K=()=>{n("cancel")},_=()=>{h.value||n("submit")};return e.watch(()=>g.value,d=>{n("loading",d)},{immediate:!0}),e.onBeforeMount(async()=>{if(o.editId)try{l.value=!1,g.value=!0;const{data:d}=await V.get(I.value);n("fetch:success",d)}catch(d){const c=b(d);u.value=c.startsWith("code")?i("baseForm.errors.edit"):c,l.value=!0,n("fetch:error",d)}finally{g.value=!1}}),(d,c)=>{const m=e.resolveComponent("KSkeleton"),k=e.resolveComponent("KEmptyState"),B=e.resolveComponent("KAlert"),f=e.resolveComponent("KButton"),p=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(p,{class:"kong-ui-entity-base-form"},{body:e.withCtx(()=>[g.value?(e.openBlock(),e.createBlock(m,{key:0,type:"form"})):l.value?(e.openBlock(),e.createBlock(k,{key:1,"cta-text":e.unref(i)("baseForm.actions.back"),"data-testid":"form-fetch-error","handle-click":C,"is-error":!0},{message:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(u.value),1)]),_:1},8,["cta-text"])):(e.openBlock(),e.createElementBlock("form",{key:2,"data-testid":"form-content",onReset:e.withModifiers(K,["prevent"]),onSubmit:e.withModifiers(_,["prevent"])},[e.renderSlot(d.$slots,"default",{},void 0,!0),t.errorMessage?(e.openBlock(),e.createBlock(B,{key:0,"alert-message":t.errorMessage,appearance:"danger","data-testid":"form-error"},null,8,["alert-message"])):e.createCommentVNode("",!0),e.createElementVNode("div",Pt,[e.renderSlot(d.$slots,"form-actions",{},()=>[e.createVNode(f,{appearance:"outline","data-testid":"form-cancel",disabled:t.isReadonly,type:"reset"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseForm.actions.cancel")),1)]),_:1},8,["disabled"]),e.createVNode(f,{appearance:"primary","data-testid":"form-submit",disabled:h.value,type:"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseForm.actions.save")),1)]),_:1},8,["disabled"])],!0)])],40,Mt))]),_:3})}}}),[["__scopeId","data-v-2286e5f2"]]),Rt={key:0},qt=z(e.defineComponent({__name:"EntityBaseTableCell",props:{keyName:{type:String,required:!0},rowEl:{type:[Object,null],required:!0}},setup(t){const n=t,a=e.computed(()=>{var _;return((_=n.rowEl)==null?void 0:_.querySelector(`[data-testid="${n.keyName}"]`))||null}),o=e.computed(()=>{var _;return((_=a.value)==null?void 0:_.querySelector('[role="button"]'))||null}),r=e.computed(()=>{var _,d;const c=(_=n.rowEl)==null?void 0:_.querySelectorAll("td");return c?((d=c[0])==null?void 0:d.getAttribute("data-testid"))===n.keyName:!1});let i;const b=()=>{i&&(i.disconnect(),i=void 0)},V=()=>{var _,d,c;l.value=((_=o.value)==null?void 0:_.getBoundingClientRect().width)||0,u.value=((d=a.value)==null?void 0:d.clientWidth)||0,h.value=((c=g.value)==null?void 0:c.innerText)||""},g=e.ref({}),l=e.ref(0),u=e.ref(0),h=e.ref(""),I=e.computed(()=>[o.value,a.value]),C=e.watch(I,_=>{if(r.value&&(b(),"ResizeObserver"in window&&window)){i=new ResizeObserver(d=>{window.requestAnimationFrame(()=>{!Array.isArray(d)||!d.length||V()})});for(const d of _)d&&i.observe(d)}},{immediate:!0,flush:"post",deep:!0}),K=e.computed(()=>r.value?l.value>u.value:!1);return e.onMounted(()=>{V()}),e.onUnmounted(()=>{C()}),(_,d)=>{const c=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("span",{ref_key:"contentRef",ref:g,class:"content-wrapper"},[r.value?(e.openBlock(),e.createElementBlock("span",Rt,[e.createVNode(c,{disabled:!K.value,label:h.value,"max-width":"300",placement:"bottomStart"},{default:e.withCtx(()=>[e.renderSlot(_.$slots,"default",{},void 0,!0)]),_:3},8,["disabled","label"])])):e.renderSlot(_.$slots,"default",{key:1},void 0,!0)],512)}}}),[["__scopeId","data-v-f8a220e9"]]),At={class:"toolbar-container"},Lt={key:0,class:"toolbar-button-container"},Ut=["data-testid"],Ot=z(e.defineComponent({__name:"EntityBaseTable",props:{tableHeaders:{type:Object,required:!0,default:()=>({})},fetcher:{type:Function,required:!0,default:async()=>({data:[],total:0})},initialFetcherParams:{type:Object,default:null},cacheIdentifier:{type:String,default:""},fetcherCacheKey:{type:Number,default:1},isLoading:{type:Boolean,default:!1},query:{type:String,default:""},enableClientSort:{type:Boolean,default:!1},enableEntityActions:{type:Boolean,default:!0},emptyStateOptions:{type:Object,default:()=>({})},errorMessage:{type:String,default:""},disablePaginationPageJump:{type:Boolean,default:void 0},disableSorting:{type:Boolean,default:void 0},paginationType:{type:String,default:void 0},cellAttributes:{type:Function,default:()=>({})},rowAttributes:{type:Function,default:()=>({})},preferencesStorageKey:{type:String,default:"",required:!0},dropdownMenuWidth:{type:String,default:"",required:!1},title:{type:String,default:""}},emits:["click:row","sort","clear-search-input","empty-state-cta-clicked"],setup(t,{emit:n}){const a=t,{i18n:{t:o}}=A.useI18n(),r=e.computed(()=>a.cacheIdentifier||a.preferencesStorageKey),i=k=>k.hasData||!!a.query,b=e.computed(()=>{const k=[];return Object.keys(a.tableHeaders).forEach(B=>{const f=a.tableHeaders[B];k.push({label:f.label??B,key:B,sortable:f.sortable??!1})}),a.enableEntityActions&&k.push({key:"actions",hideLabel:!0}),k}),V=k=>({"data-rowid":k.id,"data-testid":k.name,...a.rowAttributes(k)}),g=e.ref({}),l=k=>{var B;return(B=g.value)==null?void 0:B.$el.querySelector(`[data-rowid="${k.id}"]`)},u=k=>{const B={"data-testid":k.headerKey,...a.cellAttributes(k)};return k.colIndex===0&&(B.style={maxWidth:"250px",overflowX:"hidden",textOverflow:"ellipsis"}),B},h=()=>{n("empty-state-cta-clicked"),I()},I=()=>{n("clear-search-input")},C=(k,B)=>{n("click:row",B)},K=k=>{n("sort",k)},{setTablePreferences:_,getTablePreferences:d}=je(),c=e.computed(()=>{const k=d(a.preferencesStorageKey);return{...a.initialFetcherParams,...k}}),m=k=>{a.preferencesStorageKey&&_(a.preferencesStorageKey,k)};return(k,B)=>{const f=e.resolveComponent("KIcon"),p=e.resolveComponent("KButton"),w=e.resolveComponent("KDropdownMenu"),F=e.resolveComponent("KTable"),M=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(M,{class:"kong-ui-entity-base-table",title:t.title},{body:e.withCtx(()=>[e.createVNode(F,{ref_key:"tableRefs",ref:g,"cache-identifier":r.value,"cell-attrs":u,"disable-pagination-page-jump":t.disablePaginationPageJump,"disable-sorting":t.disableSorting,"empty-state-action-button-icon":t.query?"":"plus","empty-state-action-message":t.query?e.unref(o)("baseTable.emptyState.noSearchResultsCtaText"):t.emptyStateOptions.ctaText,"empty-state-action-route":t.query?"":t.emptyStateOptions.ctaPath,"empty-state-icon":t.query?"stateNoSearchResults":"stateGruceo","empty-state-icon-size":"96","empty-state-message":t.query?e.unref(o)("baseTable.emptyState.noSearchResultsMessage"):t.emptyStateOptions.message,"empty-state-title":t.query?e.unref(o)("baseTable.emptyState.noSearchResultsTitle"):t.emptyStateOptions.title,"enable-client-sort":t.enableClientSort,"error-state-title":t.errorMessage,fetcher:t.fetcher,"fetcher-cache-key":String(t.fetcherCacheKey),"has-error":!!t.errorMessage,headers:b.value,"hide-pagination-when-optional":"","initial-fetcher-params":c.value,"is-loading":t.isLoading,"pagination-type":t.paginationType,"row-attrs":V,"search-input":t.query,onKtableEmptyStateCtaClicked:h,"onRow:click":C,onSort:B[0]||(B[0]=S=>K(S)),"onUpdate:tablePreferences":m},e.createSlots({toolbar:e.withCtx(({state:S})=>[e.withDirectives(e.createElementVNode("div",At,[e.renderSlot(k.$slots,"toolbar-filter",{},void 0,!0),k.$slots["toolbar-button"]?(e.openBlock(),e.createElementBlock("div",Lt,[e.renderSlot(k.$slots,"toolbar-button",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,i(S)]])]),actions:e.withCtx(({row:S,rowKey:x,rowValue:N})=>[e.createElementVNode("div",{class:"actions-container","data-testid":S.name},[e.createVNode(w,{"kpop-attributes":{placement:"bottomEnd"},width:t.dropdownMenuWidth},{items:e.withCtx(()=>[e.renderSlot(k.$slots,"actions",{row:S,rowKey:x,rowValue:N},void 0,!0)]),default:e.withCtx(()=>[e.createVNode(p,{class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:e.withCtx(()=>[e.createVNode(f,{color:e.unref(yt),icon:"more",size:"16"},null,8,["color"])]),_:1})]),_:2},1032,["width"])],8,Ut)]),_:2},[e.renderList(t.tableHeaders,(S,x)=>({name:x,fn:e.withCtx(({row:N,rowKey:E,rowValue:U})=>[e.createVNode(qt,{"key-name":String(x),"row-el":l(N)},{default:e.withCtx(()=>[e.renderSlot(k.$slots,x,{row:N,rowKey:E,rowValue:U},()=>[e.createTextVNode(e.toDisplayString(U),1)],!0)]),_:2},1032,["key-name","row-el"])])}))]),1032,["cache-identifier","disable-pagination-page-jump","disable-sorting","empty-state-action-button-icon","empty-state-action-message","empty-state-action-route","empty-state-icon","empty-state-message","empty-state-title","enable-client-sort","error-state-title","fetcher","fetcher-cache-key","has-error","headers","initial-fetcher-params","is-loading","pagination-type","search-input"])]),_:3},8,["title"])}}}),[["__scopeId","data-v-a598b1d9"]]),Jt={key:0,class:"kong-ui-entity-delete-error"},Ht={key:1,class:"description"},zt=z(e.defineComponent({__name:"EntityDeleteModal",props:{visible:{type:Boolean,required:!0,default:!1},title:{type:String,default:"Delete"},entityType:{type:String,required:!0},entityName:{type:String,default:""},needConfirm:{type:Boolean,default:!0},description:{type:String,default:""},actionPending:{type:Boolean,default:!1},error:{type:String,default:""}},emits:["cancel","proceed"],setup(t,{emit:n}){const a=t,{i18nT:o}=A.useI18n(),r=e.computed(()=>a.needConfirm?a.entityName:""),i=()=>{n("cancel")},b=()=>{n("proceed")};return(V,g)=>{const l=e.resolveComponent("KAlert"),u=e.resolveComponent("KPrompt");return e.openBlock(),e.createBlock(u,{"action-button-text":"Yes, delete","action-pending":t.actionPending,class:"kong-ui-entity-delete-modal","confirmation-text":r.value,"is-visible":t.visible,title:t.title,type:"danger",onCanceled:i,onProceed:b},{"body-content":e.withCtx(()=>[t.error?(e.openBlock(),e.createElementBlock("div",Jt,[e.createVNode(l,{appearance:"danger"},{alertMessage:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.error),1)]),_:1})])):e.createCommentVNode("",!0),e.createVNode(e.unref(o),{class:"message",keypath:a.entityName?"deleteModal.messageWithName":"deleteModal.message",tag:"p"},e.createSlots({entityType:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.entityType),1)]),_:2},[a.entityName?{name:"entityName",fn:e.withCtx(()=>[e.createElementVNode("strong",null,e.toDisplayString(a.entityName),1)]),key:"0"}:void 0]),1032,["keypath"]),a.description||V.$slots.description?(e.openBlock(),e.createElementBlock("div",Ht,[e.renderSlot(V.$slots,"description",{},()=>[e.createElementVNode("p",null,e.toDisplayString(a.description),1)],!0)])):e.createCommentVNode("",!0)]),_:3},8,["action-pending","confirmation-text","is-visible","title"])}}}),[["__scopeId","data-v-1c9a2a07"]]),Wt={fill:"none",height:"20",viewBox:"0 0 20 20",width:"20",xmlns:"http://www.w3.org/2000/svg"},Gt={id:"mask0_180_20349",height:"20",maskUnits:"userSpaceOnUse",style:{"mask-type":"alpha"},width:"20",x:"0",y:"0"},Qt=["fill"],Xt={mask:"url(#mask0_180_20349)"},Yt=["fill"],Zt=e.defineComponent({__name:"IconFilter",props:{color:{type:String,default:`var(--kong-ui-entity-filter-color, ${ft})`}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("svg",Wt,[e.createElementVNode("mask",Gt,[e.createElementVNode("rect",{fill:t.color,height:"20",width:"20"},null,8,Qt)]),e.createElementVNode("g",Xt,[e.createElementVNode("path",{d:"M8 14.5V13H12V14.5H8ZM5 10.75V9.25H15V10.75H5ZM3 7V5.5H17V7H3Z",fill:t.color},null,8,Yt)])]))}}),vt={key:1,class:"kong-ui-entity-filter"},ea={class:"menu-item-title"},ta={class:"menu-item-indicator"},aa={class:"menu-item-body"},oa=["for"],na={class:"menu-item-buttons"},la=z(e.defineComponent({__name:"EntityFilter",props:{config:{type:Object,required:!0,default:()=>({isExactMatch:!0,placeholder:""})},modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,{i18n:{t:o}}=A.useI18n(),r=e.ref(!1),i=e.ref({}),b=e.computed(()=>{const d=[];return new URLSearchParams(a.modelValue).forEach((c,m)=>{c!==""&&d.push(m)}),d}),V=e.computed(()=>{const d=a.config.fields;return Object.keys(d).filter(c=>d[c].searchable).map(c=>({label:d[c].label||c,value:c}))});e.watch(()=>a.modelValue,d=>{i.value={},new URLSearchParams(d).forEach((c,m)=>{i.value[m]=c})});const g=()=>{r.value=!r.value},l=d=>{n("update:modelValue",d)},u=d=>`filter-${d}`,h=d=>{var c,m;return(((m=(c=a.config.schema)==null?void 0:c[d])==null?void 0:m.values)??[]).map(k=>({value:k,label:k}))},I=d=>{var c,m;return((m=(c=a.config.schema)==null?void 0:c[d])==null?void 0:m.type)??"text"},C=d=>{i.value={...i.value,[d]:""},_()},K=()=>{i.value={},_(!0)},_=(d=!1)=>{const c=Object.keys(i.value).reduce((m,k)=>(i.value[k]&&(m[k]=`${i.value[k]}`),m),{});d&&(r.value=!1),n("update:modelValue",new URLSearchParams(c).toString())};return(d,c)=>{const m=e.resolveComponent("KInput"),k=e.resolveComponent("KButton"),B=e.resolveComponent("KSelect"),f=e.resolveComponent("KMenuItem"),p=e.resolveComponent("KMenu");return t.config.isExactMatch?(e.openBlock(),e.createBlock(m,{key:0,autocomplete:"off",class:"kong-ui-entity-filter-input","data-testid":"search-input","model-value":t.modelValue,placeholder:t.config.placeholder,"onUpdate:modelValue":l},{icon:e.withCtx(()=>[e.createVNode(Zt)]),_:1},8,["model-value","placeholder"])):(e.openBlock(),e.createElementBlock("div",vt,[e.createVNode(k,{appearance:"btn-link","data-testid":"filter-button",icon:"filter",onClick:g},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.filterButtonText"))+" "+e.toDisplayString(b.value.length>0?`(${b.value.length})`:""),1)]),_:1}),e.withDirectives(e.createElementVNode("div",{class:"kong-ui-entity-filter-backdrop",onClick:g},null,512),[[e.vShow,r.value]]),e.withDirectives(e.createVNode(p,{class:"kong-ui-entity-filter-menu"},{body:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(w,F)=>(e.openBlock(),e.createBlock(f,{key:w.value,"data-testid":w.value,expandable:"","last-menu-item":F===V.value.length-1},{itemTitle:e.withCtx(()=>[e.createElementVNode("span",ea,[e.createTextVNode(e.toDisplayString(w.label)+" ",1),e.withDirectives(e.createElementVNode("span",ta,null,512),[[e.vShow,b.value.includes(w.value)]])])]),itemBody:e.withCtx(()=>{var M,S;return[e.createElementVNode("div",aa,[e.createElementVNode("label",{class:"menu-item-label",for:u(w.value)},e.toDisplayString(e.unref(o)("filter.fieldLabel")),9,oa),((S=(M=t.config.schema)==null?void 0:M[w.value])==null?void 0:S.type)==="select"?(e.openBlock(),e.createBlock(B,{key:0,id:u(w.value),modelValue:i.value[w.value],"onUpdate:modelValue":x=>i.value[w.value]=x,appearance:"select",items:h(w.value),placeholder:e.unref(o)("filter.selectPlaceholder")},null,8,["id","modelValue","onUpdate:modelValue","items","placeholder"])):(e.openBlock(),e.createBlock(m,{key:1,id:u(w.value),modelValue:i.value[w.value],"onUpdate:modelValue":x=>i.value[w.value]=x,autocomplete:"off",placeholder:e.unref(o)("filter.inputPlaceholder"),size:"small",type:I(w.value)},null,8,["id","modelValue","onUpdate:modelValue","placeholder","type"]))]),e.createElementVNode("div",na,[e.createVNode(k,{appearance:"btn-link","data-testid":"apply-filter",size:"small",onClick:c[0]||(c[0]=x=>_(!0))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.applyButtonText")),1)]),_:1}),e.createVNode(k,{appearance:"btn-link","data-testid":"clear-filter",size:"small",onClick:x=>C(w.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearButtonText")),1)]),_:2},1032,["onClick"])])]}),_:2},1032,["data-testid","last-menu-item"]))),128))]),actionButton:e.withCtx(()=>[e.createVNode(k,{onClick:K},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearAllButtonText")),1)]),_:1})]),_:1},512),[[e.vShow,r.value]])]))}}}),[["__scopeId","data-v-745f38c0"]]),oe=e.defineComponent({__name:"PermissionsWrapper",props:{authFunction:{type:Function,required:!0,default:async()=>!0},forceShow:{type:Boolean,default:!1}},setup(t){const n=t,a=e.ref(void 0),o=e.computed(()=>a.value===!0||a.value!==void 0&&n.forceShow===!0);return e.watch(()=>n.authFunction,async()=>{a.value=await n.authFunction()},{immediate:!0}),(r,i)=>o.value?e.renderSlot(r.$slots,"default",{key:0,isAllowed:a.value}):e.createCommentVNode("",!0)}}),ra={class:"form-section-wrapper"},ia={key:0,class:"form-section-title"},sa={key:1,class:"form-section-description"},ca={key:2,class:"form-section-footer"},da={class:"form-section-content"},xe=z(e.defineComponent({__name:"EntityFormSection",props:{title:{type:String,default:""},description:{type:String,default:""},hasDivider:{type:Boolean,default:!1},stickyInfoHeader:{type:Boolean,default:!0},hideInfoHeader:{type:Boolean,default:!1}},setup(t){const n=e.useSlots();return(a,o)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(["kong-ui-entity-form-section",{"has-divider":t.hasDivider}])},[e.createElementVNode("div",ra,[t.hideInfoHeader?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["form-section-info",{sticky:t.stickyInfoHeader}])},[t.title?(e.openBlock(),e.createElementBlock("h4",ia,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description||e.unref(n).description?(e.openBlock(),e.createElementBlock("div",sa,[e.renderSlot(a.$slots,"description",{},()=>[e.createElementVNode("p",null,e.toDisplayString(t.description),1)],!0)])):e.createCommentVNode("",!0),e.unref(n).footer?(e.openBlock(),e.createElementBlock("div",ca,[e.renderSlot(a.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2)),e.createElementVNode("div",da,[e.renderSlot(a.$slots,"default",{},void 0,!0)])])],2))}}),[["__scopeId","data-v-8b6dc312"]]),{useAxios:de,useDeleteUrlBuilder:pa,useErrors:fa,useFetchUrlBuilder:Aa,useFetcher:ma,useDebouncedFilter:ya,useStringHelpers:ua,useGatewayFeatureSupported:La}=A,Ua="",ka={class:"kong-ui-entities-keys-list"},ga={key:1},ha=e.defineComponent({__name:"KeyList",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.createRoute||!t.getViewRoute||!t.getEditRoute||t.app==="kongManager"&&!t.isExactMatch&&!t.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0}},emits:["error","copy:success","copy:error","delete:success"],setup(t,{emit:n}){var ee;const a=t,{i18n:{t:o}}=re.useI18n(),r=le.useRouter(),{axiosInstance:i}=de({headers:(ee=a.config)==null?void 0:ee.requestHeaders}),b=e.ref(1),V=e.computed(()=>a.config.app!=="kongManager"||!!a.config.disableSorting),g={name:{label:o("keys.list.table_headers.name"),searchable:!0,sortable:!0},kid:{label:o("keys.list.table_headers.key_id"),sortable:!0},tags:{label:o("keys.list.table_headers.tags")},id:{label:o("keys.list.table_headers.id"),sortable:!0}},l=g,u=e.computed(()=>{var y,T,R,J;let s=`${a.config.apiBaseUrl}${X.list[a.config.app][a.config.keySetId?"forKeySet":"all"]}`;return a.config.app==="konnect"?s=s.replace(/{controlPlaneId}/gi,((y=a.config)==null?void 0:y.controlPlaneId)||"").replace(/{keySetId}/gi,((T=a.config)==null?void 0:T.keySetId)||""):a.config.app==="kongManager"&&(s=s.replace(/\/{workspace}/gi,(R=a.config)!=null&&R.workspace?`/${a.config.workspace}`:"").replace(/{keySetId}/gi,((J=a.config)==null?void 0:J.keySetId)||"")),s}),h=e.ref(""),I=e.computed(()=>{const s=a.config.app==="konnect"||a.config.isExactMatch;if(s)return{isExactMatch:s,placeholder:o("keys.search.placeholder")};const y={name:g.name};return{isExactMatch:s,fields:y,schema:a.config.filterSchema}}),{fetcher:C,fetcherState:K}=ma(a.config,u.value),_=()=>{h.value=""},d=()=>{b.value++},c=e.ref(""),m=(s,y)=>{const T=s.id;if(!y(T)){p(s,"id");return}f(s,"id")},k=(s,y)=>{const T=JSON.stringify(s);if(!y(T)){n("copy:error",{entity:s,message:o("keys.errors.copy")});return}n("copy:success",{entity:s,message:o("keys.copy.success_brief")})},B=(s,y,T)=>{const{type:R}=s;R==="success"?f(y,T):p(y,T)},f=(s,y)=>{n("copy:success",{entity:s,field:y,message:o("keys.copy.success",{val:s[y]})})},p=(s,y)=>{n("copy:error",{entity:s,field:y,message:o("keys.errors.copy")})},w=async s=>{var T;await((T=a.canRetrieve)==null?void 0:T.call(a,s))&&r.push(a.config.getViewRoute(s.id))},F=s=>({label:o("keys.actions.view"),to:a.config.getViewRoute(s)}),M=s=>({label:o("keys.actions.edit"),to:a.config.getEditRoute(s)}),S=e.ref(void 0),x=e.ref(!1),N=e.ref(!1),E=e.ref(""),U=pa(a.config,u.value),W=s=>{S.value=s,x.value=!0},O=()=>{x.value=!1},ne=async()=>{var s,y,T;if((s=S.value)!=null&&s.id){N.value=!0;try{await i.delete(U(S.value.id)),N.value=!1,x.value=!1,b.value++,n("delete:success",S.value)}catch(R){E.value=((T=(y=R.response)==null?void 0:y.data)==null?void 0:T.message)||R.message||o("keys.errors.delete"),n("error",R)}finally{N.value=!1}}};e.watch(K,s=>{if(s.status===Q.Error){c.value=o("keys.errors.general"),n("error",s.error);return}c.value=""});const v=e.ref({ctaPath:a.config.createRoute,ctaText:void 0,message:o("keys.list.empty_state.description"),title:o("keys.title")});return e.onBeforeMount(async()=>{await a.canCreate()&&(v.value.title=o("keys.list.empty_state.title"),v.value.ctaText=o("keys.actions.create"))}),(s,y)=>{const T=e.resolveComponent("KButton"),R=e.resolveComponent("CopyUuid"),J=e.resolveComponent("KBadge"),D=e.resolveComponent("KTruncate"),G=e.resolveComponent("KDropdownItem"),te=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",ka,[e.createVNode(e.unref(Ot),{"cache-identifier":t.cacheIdentifier,"disable-pagination-page-jump":"","disable-sorting":V.value,"empty-state-options":v.value,"enable-entity-actions":"","error-message":c.value,fetcher:e.unref(C),"fetcher-cache-key":b.value,"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-keys-list",query:h.value,"table-headers":e.unref(l),onClearSearchInput:_,"onClick:row":y[2]||(y[2]=j=>w(j)),onSort:d},{"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(la),{modelValue:h.value,"onUpdate:modelValue":y[0]||(y[0]=j=>h.value=j),config:I.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[e.createVNode(e.unref(oe),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(T,{appearance:"primary","data-testid":"toolbar-add-key",icon:"plus",to:t.config.createRoute},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keys.list.toolbar_actions.new_key")),1)]),_:1},8,["to"])]),_:1},8,["auth-function"])]),name:e.withCtx(({rowValue:j})=>[e.createElementVNode("b",null,e.toDisplayString(j??"-"),1)]),kid:e.withCtx(({row:j,rowValue:q})=>[e.createVNode(R,{notify:$=>B($,j,"kid"),uuid:q},null,8,["notify","uuid"])]),tags:e.withCtx(({rowValue:j})=>[(j==null?void 0:j.length)>0?(e.openBlock(),e.createBlock(D,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j,q=>(e.openBlock(),e.createBlock(J,{key:q,onClick:y[1]||(y[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(q),1)]),_:2},1024))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",ga,"-"))]),id:e.withCtx(({row:j,rowValue:q})=>[e.createVNode(R,{notify:$=>B($,j,"id"),uuid:q},null,8,["notify","uuid"])]),actions:e.withCtx(({row:j})=>[e.createVNode(te,null,{default:e.withCtx(({copyToClipboard:q})=>[e.createVNode(G,{"data-testid":"action-entity-copy-id",onClick:$=>m(j,q)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keys.actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(te,null,{default:e.withCtx(({copyToClipboard:q})=>[e.createVNode(G,{"data-testid":"action-entity-copy-json",onClick:$=>k(j,q)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keys.actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(oe),{"auth-function":()=>t.canRetrieve(j)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-view","has-divider":"",item:F(j.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(oe),{"auth-function":()=>t.canEdit(j)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-edit",item:M(j.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(oe),{"auth-function":()=>t.canDelete(j)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-delete","has-divider":"","is-dangerous":"",onClick:q=>W(j)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keys.actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:1},8,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers"]),e.createVNode(e.unref(zt),{"action-pending":N.value,description:e.unref(o)("keys.delete.description"),"entity-name":S.value&&(S.value.name||S.value.id),"entity-type":e.unref(pe).Key,error:E.value,"need-confirm":!1,title:e.unref(o)("keys.delete.title"),visible:x.value,onCancel:O,onProceed:ne},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),Oa="",Ve=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},ba=Ve(ha,[["__scopeId","data-v-bede4326"]]),Ca={class:"kong-ui-entities-keys-form"},wa={"data-testid":"no-search-results"},Sa={class:"select-item-label"},_a={class:"select-item-desc"},Ba={key:0,class:"invalid-key-set-message","data-testid":"invalid-key-set-message"},xa={"data-testid":"key-format-container"},Va=e.defineComponent({__name:"KeyForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.cancelRoute)},keyId:{type:String,required:!1,default:""},fixedKeySetId:{type:String,required:!1,default:""}},emits:["update","error","loading"],setup(t,{emit:n}){var ee;const a=t,o=le.useRouter(),{i18n:{t:r}}=re.useI18n(),{getMessageFromError:i}=fa(),{axiosInstance:b}=de({headers:(ee=a.config)==null?void 0:ee.requestHeaders}),V=e.computed(()=>X.form[a.config.app].edit),g=e.computed(()=>a.keyId?Z.Edit:Z.Create),l=e.reactive({fields:{name:"",tags:"",key_id:"",key_format:"jwk",key_set:"",jwk:"",private_key:"",public_key:""},isReadonly:!1,errorMessage:""}),u=e.reactive({name:"",tags:"",key_id:"",key_format:"jwk",key_set:"",jwk:"",private_key:"",public_key:""}),h=[{label:r("keys.form.fields.key_format.options.jwk"),value:"jwk"},{label:r("keys.form.fields.key_format.options.pem"),value:"pem"}],I=e.computed(()=>l.isReadonly||g.value===Z.Create&&!!a.fixedKeySetId),C=e.computed(()=>!I.value);e.watch(()=>a.fixedKeySetId,s=>{g.value===Z.Create&&(l.fields.key_set=s)},{immediate:!0});const K=e.computed(()=>JSON.stringify(l.fields)!==JSON.stringify(u)&&!!l.fields.key_id&&!!l.fields.key_format&&(l.fields.key_format==="jwk"&&!!l.fields.jwk||l.fields.key_format==="pem"&&!!l.fields.private_key&&!!l.fields.public_key)),_=s=>{var y,T,R,J;l.fields.key_id=(s==null?void 0:s.kid)||"",l.fields.name=(s==null?void 0:s.name)||"",l.fields.tags=((y=s==null?void 0:s.tags)==null?void 0:y.join(", "))||"",l.fields.key_set=((T=s==null?void 0:s.set)==null?void 0:T.id)||"",l.fields.key_format=s!=null&&s.pem?"pem":"jwk",l.fields.jwk=(s==null?void 0:s.jwk)||"",l.fields.private_key=((R=s==null?void 0:s.pem)==null?void 0:R.private_key)||"",l.fields.public_key=((J=s==null?void 0:s.pem)==null?void 0:J.public_key)||"",l.fields.key_set&&(S.value=!1),Object.assign(u,l.fields)},d=()=>{o.push(a.config.cancelRoute)},c=e.computed(()=>{var y,T;let s=`${a.config.apiBaseUrl}${X.form[a.config.app][g.value]}`;return a.config.app==="konnect"?s=s.replace(/{controlPlaneId}/gi,((y=a.config)==null?void 0:y.controlPlaneId)||""):a.config.app==="kongManager"&&(s=s.replace(/\/{workspace}/gi,(T=a.config)!=null&&T.workspace?`/${a.config.workspace}`:"")),s=s.replace(/{id}/gi,a.keyId),s}),m=async()=>{var s,y,T,R,J,D,G,te;try{l.isReadonly=!0;const j={kid:l.fields.key_id,name:l.fields.name||null,tags:((T=(y=(s=l.fields.tags)==null?void 0:s.split(","))==null?void 0:y.map($=>String($||"").trim()))==null?void 0:T.filter($=>$!==""))||[],set:l.fields.key_set?{id:l.fields.key_set}:null,jwk:l.fields.key_format==="jwk"?l.fields.jwk:null,pem:l.fields.key_format==="pem"?{private_key:l.fields.private_key,public_key:l.fields.public_key}:null};let q;if(g.value==="create"?q=await b.post(c.value,j):g.value==="edit"&&(q=((R=a.config)==null?void 0:R.app)==="konnect"?await b.put(c.value,j):await b.patch(c.value,j)),q){const{data:$}=q;l.fields.key_id=($==null?void 0:$.kid)||"",l.fields.name=($==null?void 0:$.name)||"",l.fields.tags=((J=$==null?void 0:$.tags)==null?void 0:J.join(", "))||"",l.fields.key_set=((D=$==null?void 0:$.set)==null?void 0:D.id)||"",l.fields.key_format=$!=null&&$.pem?"pem":"jwk",l.fields.jwk=($==null?void 0:$.jwk)||"",l.fields.private_key=((G=$==null?void 0:$.pem)==null?void 0:G.private_key)||"",l.fields.public_key=((te=$==null?void 0:$.pem)==null?void 0:te.public_key)||"",Object.assign(u,l.fields),n("update",q==null?void 0:q.data)}}catch(j){l.errorMessage=i(j),n("error",j)}finally{l.isReadonly=!1}},{debouncedQueryChange:k,loading:B,allRecords:f,error:p,validationError:w,loadItems:F,results:M}=ya(a.config,X.form[a.config.app].keySets,void 0,{fetchedItemsKey:"data",searchKeys:["id","name"]}),S=e.ref(!0),x=s=>{S.value=!s,(!s||s!==l.fields.key_set&&s!==u.key_set)&&k(s)},N=e.computed(()=>p.value?r("keys.errors.key_sets.fetch"):""),E=e.computed(()=>w.value?r("keys.errors.key_sets.invalid"):""),U=e.ref(0),W=e.computed(()=>f.value===void 0),O=e.ref(new Set),ne=e.computed(()=>Array.from(O.value).map(y=>({name:y.name||"",label:"",value:y.id,selected:l.fields.key_set===y.id}))),v=s=>{O.value.clear();let y;for(y of s)O.value.add(y)};return e.watch(M,s=>{v(s)},{immediate:!0,deep:!0}),e.watch(ne,()=>{U.value++},{immediate:!0,deep:!0}),e.onBeforeMount(async()=>{await F()}),(s,y)=>{const T=e.resolveComponent("KInput"),R=e.resolveComponent("KSelect"),J=e.resolveComponent("KTextArea");return e.openBlock(),e.createElementBlock("div",Ca,[e.createVNode(e.unref(Ft),{"can-submit":K.value,config:t.config,"edit-id":t.keyId,"error-message":l.errorMessage||N.value,"fetch-url":V.value,"is-readonly":l.isReadonly,onCancel:d,"onFetch:error":y[8]||(y[8]=D=>s.$emit("error",D)),"onFetch:success":_,onLoading:y[9]||(y[9]=D=>s.$emit("loading",D)),onSubmit:m},{default:e.withCtx(()=>[e.createVNode(e.unref(xe),{description:e.unref(r)("keys.form.sections.general.description"),title:e.unref(r)("keys.form.sections.general.title")},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:l.fields.key_id,"onUpdate:modelValue":y[0]||(y[0]=D=>l.fields.key_id=D),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-form-id",help:e.unref(r)("keys.form.fields.id.help"),label:e.unref(r)("keys.form.fields.id.label"),"label-attributes":{info:e.unref(r)("keys.form.fields.id.tooltip")},placeholder:e.unref(r)("keys.form.fields.id.placeholder"),readonly:l.isReadonly,required:"",type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"]),e.createVNode(T,{modelValue:l.fields.name,"onUpdate:modelValue":y[1]||(y[1]=D=>l.fields.name=D),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-form-name",label:e.unref(r)("keys.form.fields.name.label"),placeholder:e.unref(r)("keys.form.fields.name.placeholder"),readonly:l.isReadonly,type:"text"},null,8,["modelValue","label","placeholder","readonly"]),e.createVNode(R,{modelValue:l.fields.key_set,"onUpdate:modelValue":y[2]||(y[2]=D=>l.fields.key_set=D),appearance:"select",autosuggest:"",class:e.normalizeClass({"k-select-placeholder":S.value}),clearable:C.value,"data-testid":"key-form-key-set","dropdown-footer-text":W.value?e.unref(r)("keys.form.fields.key_set.footer"):void 0,"enable-filtering":"",items:ne.value,label:e.unref(r)("keys.form.fields.key_set.label"),loading:e.unref(B),placeholder:e.unref(r)("keys.form.fields.key_set.placeholder"),readonly:I.value,width:"100%",onQueryChange:x},{loading:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("keys.actions.loading")),1)]),empty:e.withCtx(()=>[e.createElementVNode("div",wa,e.toDisplayString(e.unref(r)("keys.search.no_results")),1)]),"selected-item-template":e.withCtx(({item:D})=>[e.createElementVNode("div",null,e.toDisplayString(D.name),1)]),"item-template":e.withCtx(({item:D})=>[e.createElementVNode("div",Sa,e.toDisplayString(D.name),1),e.createElementVNode("div",_a,e.toDisplayString(D.value),1)]),_:1},8,["modelValue","class","clearable","dropdown-footer-text","items","label","loading","placeholder","readonly"]),E.value?(e.openBlock(),e.createElementBlock("p",Ba,e.toDisplayString(E.value),1)):e.createCommentVNode("",!0),e.createVNode(T,{modelValue:l.fields.tags,"onUpdate:modelValue":y[3]||(y[3]=D=>l.fields.tags=D),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-form-tags",help:e.unref(r)("keys.form.fields.tags.help"),label:e.unref(r)("keys.form.fields.tags.label"),"label-attributes":{info:e.unref(r)("keys.form.fields.tags.tooltip")},placeholder:e.unref(r)("keys.form.fields.tags.placeholder"),readonly:l.isReadonly,type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"])]),_:1},8,["description","title"]),e.createVNode(e.unref(xe),{description:e.unref(r)("keys.form.sections.keys.description"),"has-divider":"",title:e.unref(r)("keys.form.sections.keys.title")},{default:e.withCtx(()=>[e.createElementVNode("div",xa,[e.createVNode(R,{modelValue:l.fields.key_format,"onUpdate:modelValue":y[4]||(y[4]=D=>l.fields.key_format=D),appearance:"select","data-testid":"key-form-key-format",items:h,label:e.unref(r)("keys.form.fields.key_format.label"),readonly:l.isReadonly,required:"",width:"100%"},null,8,["modelValue","label","readonly"])]),l.fields.key_format==="jwk"?(e.openBlock(),e.createBlock(J,{key:0,modelValue:l.fields.jwk,"onUpdate:modelValue":y[5]||(y[5]=D=>l.fields.jwk=D),modelModifiers:{trim:!0},class:"key-form-textarea","data-testid":"key-form-jwk",label:e.unref(r)("keys.form.fields.jwk.label"),"label-attributes":{info:e.unref(r)("keys.form.fields.jwk.tooltip")},placeholder:e.unref(r)("keys.form.fields.jwk.placeholder"),readonly:l.isReadonly,required:""},null,8,["modelValue","label","label-attributes","placeholder","readonly"])):e.createCommentVNode("",!0),l.fields.key_format==="pem"?(e.openBlock(),e.createBlock(J,{key:1,modelValue:l.fields.private_key,"onUpdate:modelValue":y[6]||(y[6]=D=>l.fields.private_key=D),modelModifiers:{trim:!0},class:"key-form-textarea","data-testid":"key-form-private-key",label:e.unref(r)("keys.form.fields.private_key.label"),placeholder:e.unref(r)("keys.form.fields.private_key.placeholder"),readonly:l.isReadonly,required:""},null,8,["modelValue","label","placeholder","readonly"])):e.createCommentVNode("",!0),l.fields.key_format==="pem"?(e.openBlock(),e.createBlock(J,{key:2,modelValue:l.fields.public_key,"onUpdate:modelValue":y[7]||(y[7]=D=>l.fields.public_key=D),modelModifiers:{trim:!0},class:"key-form-textarea","data-testid":"key-form-public-key",label:e.unref(r)("keys.form.fields.public_key.label"),placeholder:e.unref(r)("keys.form.fields.public_key.placeholder"),readonly:l.isReadonly,required:""},null,8,["modelValue","label","placeholder","readonly"])):e.createCommentVNode("",!0)]),_:1},8,["description","title"])]),_:1},8,["can-submit","config","edit-id","error-message","fetch-url","is-readonly"])])}}}),Ja="",Ia=Ve(Va,[["__scopeId","data-v-8e9c13a2"]]),Na={class:"kong-ui-entities-keys-entity-config-card"},Ea={key:2},$a=e.defineComponent({__name:"KeyConfigCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.entityId)},hideTitle:{type:Boolean,default:!1}},emits:["loading","fetch:error","fetch:success","copy:success","navigation-click"],setup(t,{emit:n}){var d;const a=t,{axiosInstance:o}=de({headers:(d=a.config)==null?void 0:d.requestHeaders}),{convertKeyToTitle:r}=ua(),{i18n:{t:i}}=re.useI18n(),b=e.computed(()=>X.form[a.config.app].edit),V=e.computed(()=>{var c;return(c=X.form[a.config.app])==null?void 0:c.getKeySet}),g=e.ref(),l=e.ref({}),u=e.ref(""),h=e.ref(""),I=e.ref(!1),C=async c=>{var k,B,f;if(g.value=c,u.value=(k=c==null?void 0:c.set)==null?void 0:k.id,n("fetch:success",c),await K(c),!u.value)return;let m=`${a.config.apiBaseUrl}${V.value}`;a.config.app==="konnect"?m=m.replace(/{controlPlaneId}/gi,((B=a.config)==null?void 0:B.controlPlaneId)||"").replace(/{keySetId}/gi,u.value||""):a.config.app==="kongManager"&&(m=m.replace(/\/{workspace}/gi,(f=a.config)!=null&&f.workspace?`/${a.config.workspace}`:"").replace(/{keySetId}/gi,u.value||""));try{I.value=!0;const{data:p}=await o.get(m);h.value=(p==null?void 0:p.name)||(p==null?void 0:p.id)}catch(p){n("fetch:error",p)}finally{I.value=!1}},K=async c=>{var m,k;try{if(c.jwk){const B=JSON.parse(c.jwk);Object.keys(B).forEach(f=>{l.value={...l.value,[`jwk.${f}`]:B[f]}})}else l.value={"pem.public_key":(m=c==null?void 0:c.pem)==null?void 0:m.public_key,"pem.private_key":(k=c==null?void 0:c.pem)==null?void 0:k.private_key}}catch(B){n("fetch:error",B)}return l},_=e.ref({id:{},name:{tooltip:i("keys.form.fields.name.tooltip")},last_updated:{},created:{},set:{label:i("keys.form.fields.set.label"),section:L.Basic,tooltip:i("keys.form.fields.set.tooltip"),order:5},kid:{label:i("keys.form.fields.kid.label"),section:L.Basic,tooltip:i("keys.form.fields.kid.tooltip")},tags:{tooltip:i("keys.form.fields.tags.tooltip")},jwk:{label:i("keys.form.fields.jwk.label"),type:P.Json},pem:{section:L.Advanced,label:i("keys.form.fields.key_format.options.pem"),type:P.Json}});return(c,m)=>{var B,f;const k=e.resolveComponent("KSkeleton");return e.openBlock(),e.createElementBlock("div",Na,[e.createVNode(e.unref(Dt),{config:t.config,"config-schema":_.value,"fetch-url":b.value,"hide-title":t.hideTitle,"onCopy:success":m[0]||(m[0]=p=>c.$emit("copy:success",p)),"onFetch:error":m[1]||(m[1]=p=>c.$emit("fetch:error",p)),"onFetch:success":C,onLoading:m[2]||(m[2]=p=>c.$emit("loading",p))},e.createSlots({set:e.withCtx(({row:p})=>[I.value?(e.openBlock(),e.createBlock(k,{key:0,"data-testid":"key-set-name-loader",type:"spinner"})):p.value&&p.value.id===u.value&&h.value?(e.openBlock(),e.createBlock(e.unref(Be),{key:1,item:{key:p.value.id,value:h.value,type:e.unref(P).LinkInternal},onClick:w=>c.$emit("navigation-click",p.value.id,"key-sets")},null,8,["item","onClick"])):(e.openBlock(),e.createElementBlock("div",Ea,e.toDisplayString("–")))]),_:2},[(B=g.value)!=null&&B.jwk?{name:"jwk",fn:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(l.value),p=>(e.openBlock(),e.createBlock(e.unref(ae),{key:p,"data-testid":`${p}`,item:{key:p,label:e.unref(r)(p),value:l.value[p]}},null,8,["data-testid","item"]))),128))]),key:"0"}:void 0,(f=g.value)!=null&&f.pem?{name:"pem",fn:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(l.value),p=>(e.openBlock(),e.createBlock(e.unref(ae),{key:p,"data-testid":`${p}`,item:{key:p,label:e.unref(r)(p),value:l.value[p]}},null,8,["data-testid","item"]))),128))]),key:"1"}:void 0]),1032,["config","config-schema","fetch-url","hide-title"])])}}});H.KeyConfigCard=$a,H.KeyForm=Ia,H.KeyList=ba,Object.defineProperty(H,Symbol.toStringTag,{value:"Module"})});
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.config-card-fieldset[data-v-68ca83ec]{border:solid 1px #e0e4ea;border-radius:4px;margin-bottom:8px;margin-top:4px}.config-card-fieldset-title[data-v-68ca83ec]{font-size:14px;padding:0 8px;width:auto}fieldset.config-card-fieldset .config-card-details-row{width:unset}.config-card-json-item .config-card-details-row,fieldset.config-card-fieldset .config-card-details-row{margin:0 16px}.config-card-json-item .config-card-details-row:last-of-type,fieldset.config-card-fieldset .config-card-details-row:last-of-type{border-bottom:none}[data-v-7410504d] .k-button.navigation-button{font-size:14px;font-weight:400}.kong-ui-copy-uuid[data-v-e4ea1359]{display:flex}.kong-ui-copy-uuid .uuid-container[data-v-e4ea1359]{margin-right:12px;white-space:nowrap}.kong-ui-copy-uuid .truncated-uuid[data-v-e4ea1359]{margin-right:1ch;max-width:10ch;overflow:hidden;text-overflow:ellipsis}.kong-ui-copy-uuid .uuid-icon-wrapper[data-v-e4ea1359]{align-items:center;cursor:pointer;display:flex}.kong-ui-copy-uuid .uuid-icon[data-v-e4ea1359]{display:flex}.config-card-details-row[data-v-a3c5ab01]{border-bottom:var(--2c6ac268);display:var(--c7a65802);padding:16px 16px 16px 0;width:100%}.config-card-details-row .config-card-details-label[data-v-a3c5ab01]{width:var(--778426fe)}.config-card-details-row .config-card-details-label label[data-v-a3c5ab01]{color:#3a3f51}.config-card-details-row .config-card-details-value[data-v-a3c5ab01]{width:var(--777f9b48)}.config-card-details-row .config-card-details-value .truncated[data-v-a3c5ab01]{display:inline-block;line-height:initial;max-width:20ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-card-details-row .config-card-details-value span.attrs-data-text[data-v-a3c5ab01]{overflow-wrap:anywhere}.config-card-details-row .config-card-details-value .copy-uuid-array[data-v-a3c5ab01] .kong-ui-copy-uuid:not(:last-of-type){margin-bottom:8px}.config-card-details-row .config-card-details-value .method-badge-array[data-v-a3c5ab01]{display:flex}.config-card-details-row .config-badge[data-v-a3c5ab01]{margin-right:4px}.config-card-details-row[data-v-a3c5ab01] .k-input-label{margin-bottom:0}.config-card-details-row[data-v-a3c5ab01] .k-input-label .kong-icon-infoFilled{display:flex}.config-card-details-row[data-v-a3c5ab01] .config-card-details-row{width:auto}.kong-ui-entity-base-config-card[data-v-b72bbdde] .k-card-content .k-card-body{font-size:14px}.kong-ui-entity-base-config-card .config-card-actions[data-v-b72bbdde]{display:flex}.kong-ui-entity-base-config-card .config-card-prop-section-title[data-v-b72bbdde]{color:#000933;font-size:16px;font-weight:600;margin-bottom:16px;margin-top:48px}.kong-ui-entity-base-config-card[data-v-b72bbdde] .config-card-details-row:last-of-type{border-bottom:none}.kong-ui-entity-base-form[data-v-2286e5f2]{border:1px solid #F1F1F5!important;box-sizing:border-box;max-width:1536px;width:100%}.kong-ui-entity-base-form .form-actions[data-v-2286e5f2]{align-items:center;display:flex;justify-content:flex-end;margin-top:24px}.kong-ui-entity-base-form .form-actions[data-v-2286e5f2] .k-button:last-of-type{margin-left:16px}.content-wrapper[data-v-f8a220e9] [role=button]{display:inline}.kong-ui-entity-base-table[data-v-a598b1d9]{border:1px solid #F1F1F5!important}.kong-ui-entity-base-table .toolbar-container[data-v-a598b1d9]{align-items:center}.kong-ui-entity-base-table .toolbar-button-container[data-v-a598b1d9]{margin-left:auto}.kong-ui-entity-base-table .actions-container[data-v-a598b1d9]{float:right}.kong-ui-entity-base-table .actions-container[data-v-a598b1d9] .k-dropdown-item-trigger{margin-bottom:0;margin-top:0}.kong-ui-entity-base-table .actions-trigger[data-v-a598b1d9]{background-color:#0000!important;border:none!important;cursor:pointer!important;font-weight:400!important}.k-tabs>.tab-container>.kong-ui-entity-base-table,.k-tabs>.tab-container>[class^=kong-ui-entities-]>.kong-ui-entity-base-table{border-top:0}.kong-ui-entity-base-table :deep(.k-table){table-layout:fixed}.kong-ui-entity-delete-modal .message[data-v-1c9a2a07],.kong-ui-entity-delete-modal .description[data-v-1c9a2a07]{line-height:24px;margin:0}.kong-ui-entity-delete-modal .message strong[data-v-1c9a2a07]{font-weight:600}.kong-ui-entity-delete-modal .description[data-v-1c9a2a07]{margin-top:32px}.kong-ui-entity-delete-error[data-v-1c9a2a07]{margin-bottom:16px}.kong-ui-entity-filter-input[data-v-745f38c0]{width:100%}.kong-ui-entity-filter[data-v-745f38c0]{display:flex;position:relative}.kong-ui-entity-filter[data-v-745f38c0] .menu-content{flex-direction:column}.kong-ui-entity-filter[data-v-745f38c0] .k-menu-item-divider hr{margin:12px 0}.kong-ui-entity-filter-backdrop[data-v-745f38c0]{bottom:0;left:0;position:fixed;right:0;top:0;z-index:1050}.kong-ui-entity-filter-menu[data-v-745f38c0]{box-shadow:0 4px 20px #e0e4ea;left:0;margin-top:16px;position:absolute;top:100%;z-index:1060}.kong-ui-entity-filter-menu[data-v-745f38c0] .k-menu-item .menu-button:focus{box-shadow:none}.kong-ui-entity-filter-menu[data-v-745f38c0] .k-menu-item .menu-button:focus-visible{box-shadow:0 0 0 1px #bee2ff}.menu-item-title[data-v-745f38c0]{align-items:center;display:flex}.menu-item-indicator[data-v-745f38c0]{background-color:#0044f4;border-radius:50%;height:4px;margin-left:4px;width:4px}.menu-item-body[data-v-745f38c0]{align-items:center;display:flex;justify-content:space-between}.menu-item-body[data-v-745f38c0] .k-input{padding-bottom:4px!important;padding-top:4px!important}.menu-item-body[data-v-745f38c0] .k-input-wrapper{width:100%}.menu-item-body[data-v-745f38c0] .k-select-input .k-input{font-size:12px}.menu-item-body[data-v-745f38c0] .k-select-input .k-input::placeholder{color:#00000073!important;font-size:12px}.menu-item-label[data-v-745f38c0]{margin-bottom:0;margin-right:12px}.menu-item-buttons[data-v-745f38c0]{display:flex;justify-content:space-between;margin:10px 0 6px}fieldset[data-v-8b6dc312]{margin:0;padding:0}.kong-ui-entity-form-section[data-v-8b6dc312]{border:0}.kong-ui-entity-form-section .form-section-wrapper[data-v-8b6dc312]{column-gap:16px;display:flex;flex-direction:column;padding-bottom:64px;row-gap:12px;width:100%}@media (min-width: 1024px){.kong-ui-entity-form-section .form-section-wrapper[data-v-8b6dc312]{flex-direction:row}}.kong-ui-entity-form-section .form-section-wrapper .form-section-info[data-v-8b6dc312]{flex:1}@media (min-width: 1024px){.kong-ui-entity-form-section .form-section-wrapper .form-section-info[data-v-8b6dc312]{max-width:350px}.kong-ui-entity-form-section .form-section-wrapper .form-section-info.sticky[data-v-8b6dc312]{height:fit-content;margin-bottom:16px;position:sticky;top:16px}}.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-title[data-v-8b6dc312]{color:#000933;font-size:18px;font-weight:600;line-height:24px;margin-bottom:8px;margin-top:0}.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description[data-v-8b6dc312],.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description p[data-v-8b6dc312],.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description[data-v-8b6dc312] p{color:#000933;font-size:14px;font-weight:400;line-height:20px;margin:0}.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-footer[data-v-8b6dc312]{margin-top:32px}.kong-ui-entity-form-section .form-section-wrapper .form-section-content[data-v-8b6dc312]{flex:1}.kong-ui-entity-form-section .form-section-wrapper .form-section-content[data-v-8b6dc312]>*:not(:first-child){margin-top:24px}.kong-ui-entity-form-section.has-divider .form-section-wrapper[data-v-8b6dc312]{border-bottom:1px solid #e0e4ea}.kong-ui-entities-keys-list[data-v-
|
|
1
|
+
.config-card-fieldset[data-v-68ca83ec]{border:solid 1px #e0e4ea;border-radius:4px;margin-bottom:8px;margin-top:4px}.config-card-fieldset-title[data-v-68ca83ec]{font-size:14px;padding:0 8px;width:auto}fieldset.config-card-fieldset .config-card-details-row{width:unset}.config-card-json-item .config-card-details-row,fieldset.config-card-fieldset .config-card-details-row{margin:0 16px}.config-card-json-item .config-card-details-row:last-of-type,fieldset.config-card-fieldset .config-card-details-row:last-of-type{border-bottom:none}[data-v-7410504d] .k-button.navigation-button{font-size:14px;font-weight:400}.kong-ui-copy-uuid[data-v-e4ea1359]{display:flex}.kong-ui-copy-uuid .uuid-container[data-v-e4ea1359]{margin-right:12px;white-space:nowrap}.kong-ui-copy-uuid .truncated-uuid[data-v-e4ea1359]{margin-right:1ch;max-width:10ch;overflow:hidden;text-overflow:ellipsis}.kong-ui-copy-uuid .uuid-icon-wrapper[data-v-e4ea1359]{align-items:center;cursor:pointer;display:flex}.kong-ui-copy-uuid .uuid-icon[data-v-e4ea1359]{display:flex}.config-card-details-row[data-v-a3c5ab01]{border-bottom:var(--2c6ac268);display:var(--c7a65802);padding:16px 16px 16px 0;width:100%}.config-card-details-row .config-card-details-label[data-v-a3c5ab01]{width:var(--778426fe)}.config-card-details-row .config-card-details-label label[data-v-a3c5ab01]{color:#3a3f51}.config-card-details-row .config-card-details-value[data-v-a3c5ab01]{width:var(--777f9b48)}.config-card-details-row .config-card-details-value .truncated[data-v-a3c5ab01]{display:inline-block;line-height:initial;max-width:20ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-card-details-row .config-card-details-value span.attrs-data-text[data-v-a3c5ab01]{overflow-wrap:anywhere}.config-card-details-row .config-card-details-value .copy-uuid-array[data-v-a3c5ab01] .kong-ui-copy-uuid:not(:last-of-type){margin-bottom:8px}.config-card-details-row .config-card-details-value .method-badge-array[data-v-a3c5ab01]{display:flex}.config-card-details-row .config-badge[data-v-a3c5ab01]{margin-right:4px}.config-card-details-row[data-v-a3c5ab01] .k-input-label{margin-bottom:0}.config-card-details-row[data-v-a3c5ab01] .k-input-label .kong-icon-infoFilled{display:flex}.config-card-details-row[data-v-a3c5ab01] .config-card-details-row{width:auto}.kong-ui-entity-base-config-card[data-v-b72bbdde] .k-card-content .k-card-body{font-size:14px}.kong-ui-entity-base-config-card .config-card-actions[data-v-b72bbdde]{display:flex}.kong-ui-entity-base-config-card .config-card-prop-section-title[data-v-b72bbdde]{color:#000933;font-size:16px;font-weight:600;margin-bottom:16px;margin-top:48px}.kong-ui-entity-base-config-card[data-v-b72bbdde] .config-card-details-row:last-of-type{border-bottom:none}.kong-ui-entity-base-form[data-v-2286e5f2]{border:1px solid #F1F1F5!important;box-sizing:border-box;max-width:1536px;width:100%}.kong-ui-entity-base-form .form-actions[data-v-2286e5f2]{align-items:center;display:flex;justify-content:flex-end;margin-top:24px}.kong-ui-entity-base-form .form-actions[data-v-2286e5f2] .k-button:last-of-type{margin-left:16px}.content-wrapper[data-v-f8a220e9] [role=button]{display:inline}.kong-ui-entity-base-table[data-v-a598b1d9]{border:1px solid #F1F1F5!important}.kong-ui-entity-base-table .toolbar-container[data-v-a598b1d9]{align-items:center}.kong-ui-entity-base-table .toolbar-button-container[data-v-a598b1d9]{margin-left:auto}.kong-ui-entity-base-table .actions-container[data-v-a598b1d9]{float:right}.kong-ui-entity-base-table .actions-container[data-v-a598b1d9] .k-dropdown-item-trigger{margin-bottom:0;margin-top:0}.kong-ui-entity-base-table .actions-trigger[data-v-a598b1d9]{background-color:#0000!important;border:none!important;cursor:pointer!important;font-weight:400!important}.k-tabs>.tab-container>.kong-ui-entity-base-table,.k-tabs>.tab-container>[class^=kong-ui-entities-]>.kong-ui-entity-base-table{border-top:0}.kong-ui-entity-base-table :deep(.k-table){table-layout:fixed}.kong-ui-entity-delete-modal .message[data-v-1c9a2a07],.kong-ui-entity-delete-modal .description[data-v-1c9a2a07]{line-height:24px;margin:0}.kong-ui-entity-delete-modal .message strong[data-v-1c9a2a07]{font-weight:600}.kong-ui-entity-delete-modal .description[data-v-1c9a2a07]{margin-top:32px}.kong-ui-entity-delete-error[data-v-1c9a2a07]{margin-bottom:16px}.kong-ui-entity-filter-input[data-v-745f38c0]{width:100%}.kong-ui-entity-filter[data-v-745f38c0]{display:flex;position:relative}.kong-ui-entity-filter[data-v-745f38c0] .menu-content{flex-direction:column}.kong-ui-entity-filter[data-v-745f38c0] .k-menu-item-divider hr{margin:12px 0}.kong-ui-entity-filter-backdrop[data-v-745f38c0]{bottom:0;left:0;position:fixed;right:0;top:0;z-index:1050}.kong-ui-entity-filter-menu[data-v-745f38c0]{box-shadow:0 4px 20px #e0e4ea;left:0;margin-top:16px;position:absolute;top:100%;z-index:1060}.kong-ui-entity-filter-menu[data-v-745f38c0] .k-menu-item .menu-button:focus{box-shadow:none}.kong-ui-entity-filter-menu[data-v-745f38c0] .k-menu-item .menu-button:focus-visible{box-shadow:0 0 0 1px #bee2ff}.menu-item-title[data-v-745f38c0]{align-items:center;display:flex}.menu-item-indicator[data-v-745f38c0]{background-color:#0044f4;border-radius:50%;height:4px;margin-left:4px;width:4px}.menu-item-body[data-v-745f38c0]{align-items:center;display:flex;justify-content:space-between}.menu-item-body[data-v-745f38c0] .k-input{padding-bottom:4px!important;padding-top:4px!important}.menu-item-body[data-v-745f38c0] .k-input-wrapper{width:100%}.menu-item-body[data-v-745f38c0] .k-select-input .k-input{font-size:12px}.menu-item-body[data-v-745f38c0] .k-select-input .k-input::placeholder{color:#00000073!important;font-size:12px}.menu-item-label[data-v-745f38c0]{margin-bottom:0;margin-right:12px}.menu-item-buttons[data-v-745f38c0]{display:flex;justify-content:space-between;margin:10px 0 6px}fieldset[data-v-8b6dc312]{margin:0;padding:0}.kong-ui-entity-form-section[data-v-8b6dc312]{border:0}.kong-ui-entity-form-section .form-section-wrapper[data-v-8b6dc312]{column-gap:16px;display:flex;flex-direction:column;padding-bottom:64px;row-gap:12px;width:100%}@media (min-width: 1024px){.kong-ui-entity-form-section .form-section-wrapper[data-v-8b6dc312]{flex-direction:row}}.kong-ui-entity-form-section .form-section-wrapper .form-section-info[data-v-8b6dc312]{flex:1}@media (min-width: 1024px){.kong-ui-entity-form-section .form-section-wrapper .form-section-info[data-v-8b6dc312]{max-width:350px}.kong-ui-entity-form-section .form-section-wrapper .form-section-info.sticky[data-v-8b6dc312]{height:fit-content;margin-bottom:16px;position:sticky;top:16px}}.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-title[data-v-8b6dc312]{color:#000933;font-size:18px;font-weight:600;line-height:24px;margin-bottom:8px;margin-top:0}.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description[data-v-8b6dc312],.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description p[data-v-8b6dc312],.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description[data-v-8b6dc312] p{color:#000933;font-size:14px;font-weight:400;line-height:20px;margin:0}.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-footer[data-v-8b6dc312]{margin-top:32px}.kong-ui-entity-form-section .form-section-wrapper .form-section-content[data-v-8b6dc312]{flex:1}.kong-ui-entity-form-section .form-section-wrapper .form-section-content[data-v-8b6dc312]>*:not(:first-child){margin-top:24px}.kong-ui-entity-form-section.has-divider .form-section-wrapper[data-v-8b6dc312]{border-bottom:1px solid #e0e4ea}.kong-ui-entities-keys-list[data-v-bede4326]{width:100%}.kong-ui-entities-keys-list .kong-ui-entity-filter-input[data-v-bede4326]{width:300px}.kong-ui-entities-keys-form[data-v-8e9c13a2],.kong-ui-entities-keys-form .key-form-textarea[data-v-8e9c13a2]{width:100%}.kong-ui-entities-keys-form .invalid-key-set-message[data-v-8e9c13a2]{color:#d60027;font-size:11px;font-weight:500;margin-top:3px!important}.kong-ui-entities-keys-form[data-v-8e9c13a2] .k-select .custom-selected-item{left:0}.kong-ui-entities-keys-form[data-v-8e9c13a2] .k-select.k-select-placeholder .k-select-input .k-input{color:#00000073}
|
|
@@ -13,27 +13,27 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
13
13
|
type: StringConstructor;
|
|
14
14
|
default: string;
|
|
15
15
|
};
|
|
16
|
-
/**
|
|
16
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can create a new entity */
|
|
17
17
|
canCreate: {
|
|
18
|
-
type: PropType<() => Promise<boolean>>;
|
|
18
|
+
type: PropType<() => boolean | Promise<boolean>>;
|
|
19
19
|
required: false;
|
|
20
20
|
default: () => Promise<boolean>;
|
|
21
21
|
};
|
|
22
|
-
/**
|
|
22
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can delete a given entity */
|
|
23
23
|
canDelete: {
|
|
24
|
-
type: PropType<(row: EntityRow) => Promise<boolean>>;
|
|
24
|
+
type: PropType<(row: EntityRow) => boolean | Promise<boolean>>;
|
|
25
25
|
required: false;
|
|
26
26
|
default: () => Promise<boolean>;
|
|
27
27
|
};
|
|
28
|
-
/**
|
|
28
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can edit a given entity */
|
|
29
29
|
canEdit: {
|
|
30
|
-
type: PropType<(row: EntityRow) => Promise<boolean>>;
|
|
30
|
+
type: PropType<(row: EntityRow) => boolean | Promise<boolean>>;
|
|
31
31
|
required: false;
|
|
32
32
|
default: () => Promise<boolean>;
|
|
33
33
|
};
|
|
34
|
-
/**
|
|
34
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can retrieve (view details) a given entity */
|
|
35
35
|
canRetrieve: {
|
|
36
|
-
type: PropType<(row: EntityRow) => Promise<boolean>>;
|
|
36
|
+
type: PropType<(row: EntityRow) => boolean | Promise<boolean>>;
|
|
37
37
|
required: false;
|
|
38
38
|
default: () => Promise<boolean>;
|
|
39
39
|
};
|
|
@@ -53,27 +53,27 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
53
53
|
type: StringConstructor;
|
|
54
54
|
default: string;
|
|
55
55
|
};
|
|
56
|
-
/**
|
|
56
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can create a new entity */
|
|
57
57
|
canCreate: {
|
|
58
|
-
type: PropType<() => Promise<boolean>>;
|
|
58
|
+
type: PropType<() => boolean | Promise<boolean>>;
|
|
59
59
|
required: false;
|
|
60
60
|
default: () => Promise<boolean>;
|
|
61
61
|
};
|
|
62
|
-
/**
|
|
62
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can delete a given entity */
|
|
63
63
|
canDelete: {
|
|
64
|
-
type: PropType<(row: EntityRow) => Promise<boolean>>;
|
|
64
|
+
type: PropType<(row: EntityRow) => boolean | Promise<boolean>>;
|
|
65
65
|
required: false;
|
|
66
66
|
default: () => Promise<boolean>;
|
|
67
67
|
};
|
|
68
|
-
/**
|
|
68
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can edit a given entity */
|
|
69
69
|
canEdit: {
|
|
70
|
-
type: PropType<(row: EntityRow) => Promise<boolean>>;
|
|
70
|
+
type: PropType<(row: EntityRow) => boolean | Promise<boolean>>;
|
|
71
71
|
required: false;
|
|
72
72
|
default: () => Promise<boolean>;
|
|
73
73
|
};
|
|
74
|
-
/**
|
|
74
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can retrieve (view details) a given entity */
|
|
75
75
|
canRetrieve: {
|
|
76
|
-
type: PropType<(row: EntityRow) => Promise<boolean>>;
|
|
76
|
+
type: PropType<(row: EntityRow) => boolean | Promise<boolean>>;
|
|
77
77
|
required: false;
|
|
78
78
|
default: () => Promise<boolean>;
|
|
79
79
|
};
|
|
@@ -84,10 +84,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
84
84
|
"onDelete:success"?: ((key: EntityRow) => any) | undefined;
|
|
85
85
|
}, {
|
|
86
86
|
cacheIdentifier: string;
|
|
87
|
-
canCreate: () => Promise<boolean>;
|
|
88
|
-
canDelete: (row: EntityRow) => Promise<boolean>;
|
|
89
|
-
canEdit: (row: EntityRow) => Promise<boolean>;
|
|
90
|
-
canRetrieve: (row: EntityRow) => Promise<boolean>;
|
|
87
|
+
canCreate: () => boolean | Promise<boolean>;
|
|
88
|
+
canDelete: (row: EntityRow) => boolean | Promise<boolean>;
|
|
89
|
+
canEdit: (row: EntityRow) => boolean | Promise<boolean>;
|
|
90
|
+
canRetrieve: (row: EntityRow) => boolean | Promise<boolean>;
|
|
91
91
|
}, {}>;
|
|
92
92
|
export default _default;
|
|
93
93
|
//# sourceMappingURL=KeyList.vue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyList.vue.d.ts","sourceRoot":"","sources":["../../../src/components/KeyList.vue.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAEnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAgBvC,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EACpB,SAAS,EACT,gBAAgB,EACjB,MAAM,UAAU,CAAA;AAQjB,OAAO,gDAAgD,CAAA;;IAkTrD,oHAAoH;;;;;;;;;;IAgBpH,
|
|
1
|
+
{"version":3,"file":"KeyList.vue.d.ts","sourceRoot":"","sources":["../../../src/components/KeyList.vue.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAEnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAgBvC,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EACpB,SAAS,EACT,gBAAgB,EACjB,MAAM,UAAU,CAAA;AAQjB,OAAO,gDAAgD,CAAA;;IAkTrD,oHAAoH;;;;;;;;;;IAgBpH,yHAAyH;;;;;;IAMzH,2HAA2H;;;;;;IAM3H,yHAAyH;;;;;;IAMzH,4IAA4I;;;;;;;;;;;;IAlC5I,oHAAoH;;;;;;;;;;IAgBpH,yHAAyH;;;;;;IAMzH,2HAA2H;;;;;;IAM3H,yHAAyH;;;;;;IAMzH,4IAA4I;;;;;;;;;;;;;;;;;;AAua9I,wBAAkD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kong-ui-public/entities-keys",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.14",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/entities-keys.umd.js",
|
|
6
6
|
"module": "./dist/entities-keys.es.js",
|
|
@@ -20,20 +20,20 @@
|
|
|
20
20
|
"access": "public"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"@kong/kongponents": "^8.122.
|
|
23
|
+
"@kong/kongponents": "^8.122.5",
|
|
24
24
|
"axios": "^1.4.0",
|
|
25
25
|
"vue": "^3.3.4",
|
|
26
26
|
"vue-router": "^4.2.4",
|
|
27
|
-
"@kong-ui-public/copy-uuid": "^1.1.
|
|
27
|
+
"@kong-ui-public/copy-uuid": "^1.1.15",
|
|
28
28
|
"@kong-ui-public/i18n": "^0.8.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@kong/design-tokens": "^1.9.1",
|
|
32
|
-
"@kong/kongponents": "^8.122.
|
|
32
|
+
"@kong/kongponents": "^8.122.5",
|
|
33
33
|
"axios": "^1.4.0",
|
|
34
34
|
"vue": "^3.3.4",
|
|
35
35
|
"vue-router": "^4.2.4",
|
|
36
|
-
"@kong-ui-public/copy-uuid": "^1.1.
|
|
36
|
+
"@kong-ui-public/copy-uuid": "^1.1.15",
|
|
37
37
|
"@kong-ui-public/i18n": "^0.8.1"
|
|
38
38
|
},
|
|
39
39
|
"repository": {
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"errorLimit": "486KB"
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@kong-ui-public/entities-shared": "^1.2.
|
|
54
|
+
"@kong-ui-public/entities-shared": "^1.2.13"
|
|
55
55
|
},
|
|
56
56
|
"scripts": {
|
|
57
57
|
"dev": "cross-env USE_SANDBOX=true vite",
|