@kong-ui-public/entities-key-sets 1.1.11 → 1.1.13
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.
|
@@ -2150,25 +2150,25 @@ const ao = { class: "kong-ui-entities-key-sets-list" }, oo = { key: 1 }, no = /*
|
|
|
2150
2150
|
type: String,
|
|
2151
2151
|
default: ""
|
|
2152
2152
|
},
|
|
2153
|
-
/**
|
|
2153
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can create a new entity */
|
|
2154
2154
|
canCreate: {
|
|
2155
2155
|
type: Function,
|
|
2156
2156
|
required: !1,
|
|
2157
2157
|
default: async () => !0
|
|
2158
2158
|
},
|
|
2159
|
-
/**
|
|
2159
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can delete a given entity */
|
|
2160
2160
|
canDelete: {
|
|
2161
2161
|
type: Function,
|
|
2162
2162
|
required: !1,
|
|
2163
2163
|
default: async () => !0
|
|
2164
2164
|
},
|
|
2165
|
-
/**
|
|
2165
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can edit a given entity */
|
|
2166
2166
|
canEdit: {
|
|
2167
2167
|
type: Function,
|
|
2168
2168
|
required: !1,
|
|
2169
2169
|
default: async () => !0
|
|
2170
2170
|
},
|
|
2171
|
-
/**
|
|
2171
|
+
/** A synchronous or asynchronous function, that returns a boolean, that evaluates if the user can retrieve (view details) a given entity */
|
|
2172
2172
|
canRetrieve: {
|
|
2173
2173
|
type: Function,
|
|
2174
2174
|
required: !1,
|
|
@@ -2448,7 +2448,7 @@ const We = (e, o) => {
|
|
|
2448
2448
|
for (const [a, i] of o)
|
|
2449
2449
|
t[a] = i;
|
|
2450
2450
|
return t;
|
|
2451
|
-
}, ho = /* @__PURE__ */ We(no, [["__scopeId", "data-v-
|
|
2451
|
+
}, ho = /* @__PURE__ */ We(no, [["__scopeId", "data-v-a16aa26a"]]), io = { class: "kong-ui-entities-key-sets-form" }, lo = /* @__PURE__ */ W({
|
|
2452
2452
|
__name: "KeySetForm",
|
|
2453
2453
|
props: {
|
|
2454
2454
|
/** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(P,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):(P=typeof globalThis<"u"?globalThis:P||self,e(P["kong-ui-public-entities-key-sets"]={},P.Vue,P.VueRouter,P["kong-ui-public-i18n"],P.axios,P.Kongponents))})(this,function(P,e,X,z,we,Be){"use strict";const xe={keySets:{title:"Key Sets",list:{toolbar_actions:{new_key_set:"New Key Set"},table_headers:{name:"Name",id:"ID",tags:"Tags"},empty_state:{title:"Configure a New Key Set",description:"A Key Set object holds a collection of asymmetric key objects. This entity allows to logically group keys by their purpose."}},actions:{create:"New Key Set",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",clear:"Clear",view:"View Details"},search:{placeholder:"Filter by exact name or ID"},delete:{title:"Delete a Key Set",description:"Deleting this key set will also delete keys associated. This action cannot be reversed so make sure to check the key set usage before deleting."},errors:{general:"Key sets could not be retrieved",delete:"The key set could not be deleted at this time.",copy:"Failed to copy to clipboard"},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 set."}},fields:{name:{label:"Name",placeholder:"Enter a unique name for this key set"},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."}}}}};function _e(){const t=z.createI18n("en-us",xe);return{i18n:t,i18nT:z.i18nTComponent(t)}}const Y={useI18n:_e},G={list:{konnect:"/api/runtime_groups/{controlPlaneId}/key-sets",kongManager:"/{workspace}/key-sets"},form:{konnect:{create:"/api/runtime_groups/{controlPlaneId}/key-sets",edit:"/api/runtime_groups/{controlPlaneId}/key-sets/{id}"},kongManager:{create:"/{workspace}/key-sets",edit:"/{workspace}/key-sets/{id}"}}};var ne=(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))(ne||{}),Z=(t=>(t.Edit="edit",t.Create="create",t))(Z||{}),U=(t=>(t[t.Loading=0]="Loading",t[t.Idle=1]="Idle",t[t.NoResults=2]="NoResults",t[t.Error=3]="Error",t))(U||{}),D=(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))(D||{}),A=(t=>(t.Basic="basic",t.Advanced="advanced",t.Plugin="plugin",t))(A||{});function v(t={}){return{axiosInstance:we.create({withCredentials:!0,timeout:3e4,...t})}}function Ve(){return{debounce:(t,n)=>{let a;return(...o)=>{clearTimeout(a),a=window==null?void 0:window.setTimeout(()=>{t(...o)},n)}}}}const ee="khcp-user-table-preferences",Ne={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function Ie(){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(ee));return!a||!Object.keys(a).length?new Map:new Map(Object.entries(a))};return{setTablePreferences:(a,o)=>{try{const l=n();l.set(a,o),localStorage.setItem(ee,JSON.stringify(Object.fromEntries(l.entries())))}catch(l){console.error("useTablePreferences(setTablePreferences)",l)}},getTablePreferences:a=>{const o=n();return(o==null?void 0:o.get(a))||void 0||Ne},deleteAllTablePreferences:()=>{localStorage.removeItem(ee)}}}const Ee={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},$e={actions:{save:"Save",cancel:"Cancel",back:"Back"},errors:{edit:"The entity could not be edited at this time."}},Te={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Ke={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}"}},De={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},Me={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},qe={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Fe={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"}},Pe={deleteModal:Ee,baseForm:$e,baseTable:Te,baseConfigCard:Ke,filter:De,debouncedFilter:Me,errors:qe,toggleModal:Fe};function te(){const t=z.createI18n("en-us",Pe);return{i18n:t,i18nT:z.i18nTComponent(t)}}function Re(t,n,a,o={fetchedItemsKey:"data",searchKeys:["id"]}){a||(a="100");const{axiosInstance:l}=v({headers:t.requestHeaders}),{i18n:{t:r}}=te(),{debounce:m}=Ve(),C=m(async d=>{await i(d)},200),g=e.ref(!1),c=e.ref(""),f=e.ref(""),y=e.ref([]),I=e.ref(void 0),h=e.unref(n);let E=`${t.apiBaseUrl}${h}`;t.app==="konnect"?E=E.replace(/{controlPlaneId}/gi,(t==null?void 0:t.controlPlaneId)||""):t.app==="kongManager"&&(E=E.replace(/\/{workspace}/gi,t!=null&&t.workspace?`/${t.workspace}`:""));const B=async()=>{try{g.value=!0;const{data:d}=await l.get(`${E}?size=${a}`);d!=null&&d.next||(I.value=o.fetchedItemsKey in d?d[o.fetchedItemsKey]:[]),y.value=o.fetchedItemsKey in d?d[o.fetchedItemsKey]:[]}catch{y.value=[],c.value=r("debouncedFilter.errors.fetch")}finally{g.value=!1}},s=e.ref(""),i=async d=>{var u,x;if(s.value!==d)if(s.value=d||"",I.value===void 0)try{g.value=!0,c.value="",f.value="";let p=E+"";d&&(p+=`/${d}`);const{data:b}=await l.get(`${p}?size=${a}`);o.fetchedItemsKey in b?y.value=b[o.fetchedItemsKey]:b!=null&&b.id?y.value=[b]:y.value=[]}catch(p){((u=p==null?void 0:p.response)==null?void 0:u.status)===404?f.value=r("debouncedFilter.errors.invalid"):(y.value=[],c.value=r("debouncedFilter.errors.fetch"))}finally{g.value=!1}else g.value=!0,f.value="",d?(y.value=(x=I.value)==null?void 0:x.filter(p=>{var b;let k=!1;for(const N of o.searchKeys){const K=typeof p[N]=="string"?(b=p[N])==null?void 0:b.toLowerCase():p[N];K!=null&&K.includes(d.toLowerCase())&&(k=!0)}return k}),(!y.value||!y.value.length)&&(f.value=r("debouncedFilter.errors.invalid"))):y.value=I.value,g.value=!1};return{loading:g,error:c,validationError:f,results:y,allRecords:I,loadItems:B,debouncedQueryChange:C}}function Ae(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="",l=>`${o.value.href}/${l}`}function je(){const{i18n:{t}}=te();return{getMessageFromError:n=>{var a,o,l;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(r=>{let m=t("errors.unexpected");return r.messages&&typeof r.messages=="object"&&r.messages.length&&(m=r.messages.join(", ")),r.field?`${r.field} - ${m}`:m}).join("; ");if(n.response.data.message){const{message:r}=n.response.data;return Array.isArray(r)?(l=r[0])!=null&&l.constraints?Object.values(r[0].constraints)[0]:r[0]:r}if(typeof n.response.data=="string")return n.response.data;if(typeof n.response.data=="object")return Object.keys(n.response.data).map(r=>`${r} ${n.response.data[r]}`).join(", ")}return n.message||t("errors.unexpected")}}}function re(t,n){const a=e.ref(e.unref(t)),o=e.ref(e.unref(n)),l=e.computed(()=>!!(a.value.app==="konnect"||a.value.isExactMatch)),r=e.computed(()=>o.value.startsWith("/")?new URL(`${window.location.origin}${o.value}`):new URL(o.value));return m=>{const{page:C,pageSize:g,offset:c,sortColumnKey:f,sortColumnOrder:y,query:I}=m;try{let h=new URL(r.value.href);return l.value&&I?(h.search="",h=new URL(`${h.href}/${I}/`)):(l.value||new URLSearchParams(I).forEach((E,B)=>{h.searchParams.append(B,E)}),f&&h.searchParams.append("sort_by",f),y==="desc"&&h.searchParams.append("sort_desc","1"),h.searchParams.append("size",String(g))),c&&C!==1&&h.searchParams.append("offset",String(c)),h.href}catch(h){return console.error("RouteList(fetcher)",h),o.value}}}function Le(t,n,a="data"){const o=e.unref(n),{axiosInstance:l}=v({headers:t.requestHeaders}),r=re(t,o),m=e.ref({status:U.Idle});return{fetcher:async C=>{try{m.value={status:U.Loading};const g=r(C),{data:c}=await l.get(g),f=a&&a.replace(/[^\w-_]/gi,"");let y;c[f]&&Array.isArray(c[f])?y=c[f]:y=Object.keys(c).length?[c]:[];const I={data:y,total:y.length,...c.offset?{pagination:{offset:c.offset}}:null};return m.value={status:U.Idle,response:I},I}catch(g){const c={data:[],total:0};return C.query&&g.response.status===404?(m.value={status:U.NoResults,response:c,error:g},c):(m.value={status:U.Error,response:c,error:g},c)}},fetcherState:m}}function Oe(){return{convertKeyToTitle:(t,n="_")=>t?t.split(n).map(a=>a.toLowerCase()==="id"?a.toUpperCase():a.charAt(0).toUpperCase()+a.substring(1)).join(" "):""}}const le=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,ie=t=>{if(typeof t!="string")throw new TypeError("Invalid argument expected string");const n=t.match(le);if(!n)throw new Error(`Invalid argument not valid semver ('${t}' received)`);return n.shift(),n},se=t=>t==="*"||t==="x"||t==="X",ce=t=>{const n=parseInt(t,10);return isNaN(n)?t:n},Ue=(t,n)=>typeof t!=typeof n?[String(t),String(n)]:[t,n],He=(t,n)=>{if(se(t)||se(n))return 0;const[a,o]=Ue(ce(t),ce(n));return a>o?1:a<o?-1:0},de=(t,n)=>{for(let a=0;a<Math.max(t.length,n.length);a++){const o=He(t[a]||"0",n[a]||"0");if(o!==0)return o}return 0},Je=(t,n)=>{const a=ie(t),o=ie(n),l=a.pop(),r=o.pop(),m=de(a,o);return m!==0?m:l&&r?de(l.split("."),r.split(".")):l||r?l?-1:1:0},pe=(t,n,a)=>{ze(a);const o=Je(t,n);return me[a].includes(o)},me={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},ue=Object.keys(me),ze=t=>{if(typeof t!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof t}`);if(ue.indexOf(t)===-1)throw new Error(`Invalid operator, expected one of ${ue.join("|")}`)},We=t=>typeof t=="string"&&/^[v\d]/.test(t)&&le.test(t);function Ge(t){const{gatewayInfo:n,supportedRange:a}=t;if(!n)return!0;const{edition:o,version:l}=n;if(!We(l))return console.error("Invalid version"),!1;const r=a[o];if(!r)return!1;const[m,C]=r;return!(m&&pe(l,m,"<")||C&&pe(l,C,">"))}const F={useAxios:v,useDebouncedFilter:Re,useDeleteUrlBuilder:Ae,useErrors:je,useFetcher:Le,useFetchUrlBuilder:re,useStringHelpers:Oe,useI18n:te,useGatewayFeatureSupported:Ge},Qe={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},Xe="Copy to clipboard",Ye={message:Qe,iconTitle:Xe},Ze="kong-ui-copy-uuid-notify",ve={class:"kong-ui-copy-uuid"},et=["title"],tt=["onClick"],fe=15,at=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}=z.createI18n("en-us",Ye),l=a.notify||e.inject(Ze,()=>{}),r=e.computed(()=>!!(a.tooltip&&a.successTooltip)),m=e.ref(a.tooltip),C=e.computed(()=>a.tooltip?{label:m.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),g=e.computed(()=>a.format==="redacted"?"*****":a.format==="deleted"?`*${a.uuid.substring(0,5)}`:a.uuid),c=y=>{m.value=y,setTimeout(()=>{m.value=a.tooltip},1800)},f=y=>{if(!y(a.uuid)){typeof l=="function"&&l({type:"error",message:o("message.fail")}),r.value?c(o("message.fail")):n("error",a.uuid);return}const I=a.uuid.length>fe,h=a.format==="hidden"||a.format==="redacted"?o("message.success.prefix"):`"${a.uuid.substring(0,fe)+(I?"...":"")}"`;typeof l=="function"&&l({type:"success",message:`${h}${o("message.success.content")}`}),r.value?c(a.successTooltip):n("success",a.uuid)};return(y,I)=>{const h=e.resolveComponent("KIcon"),E=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",ve,[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,et)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tooltip?"KTooltip":"div"),e.mergeProps(C.value,{class:"uuid-icon-wrapper"}),{default:e.withCtx(()=>[e.createVNode(E,null,{default:e.withCtx(({copyToClipboard:B})=>[e.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:e.withModifiers(s=>f(B),["stop"])},[e.createVNode(h,{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,tt)]),_:1})]),_:1},16))])}}}),ot=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},ye=ot(at,[["__scopeId","data-v-e4ea1359"]]),nt={key:0,class:"config-card-fieldset-title"},rt=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}}=F.useI18n(),{convertKeyToTitle:o}=F.useStringHelpers(),l=e.computed(()=>n.item.key??"json-array-item"),r=e.computed(()=>n.item.value??n.item),m=e.computed(()=>{const g=JSON.parse(JSON.stringify(r.value));return n.isArrayItem&&delete g.name,g}),C=e.computed(()=>{var g;return n.isArrayItem?(g=r.value)!=null&&g.name?o(r.value.name,"_"):a("baseConfigCard.general.entryTitle",{index:n.index}):""});return(g,c)=>(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",nt,[e.createElementVNode("b",null,e.toDisplayString(C.value),1)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(m.value),(f,y)=>(e.openBlock(),e.createBlock(ke,{key:`${l.value}-property-${y}`,item:{key:f,label:e.unref(o)(f),value:m.value[f]}},null,8,["item"]))),128))]),_:1},8,["class"]))}}),j=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},ge=j(rt,[["__scopeId","data-v-68ca83ec"]]),lt=j(e.defineComponent({__name:"InternalLinkItem",props:{item:{type:Object,required:!0}},emits:["navigation-click"],setup(t){const{i18n:{t:n}}=F.useI18n();return(a,o)=>{const l=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(l,{appearance:"btn-link",class:"navigation-button",onClick:o[0]||(o[0]=r=>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"]]),it=e.defineComponent({__name:"StatusBadge",props:{status:{type:Boolean,default:!1}},setup(t){const{i18n:{t:n}}=F.useI18n();return(a,o)=>{const l=e.resolveComponent("KBadge");return e.openBlock(),e.createBlock(l,{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"])}}}),st="#0044f4",ct="#e0e4ea",dt="#3a3f51",pt="1px",mt={class:"config-card-details-row"},ut=["data-testid"],ft=["data-testid"],yt=["data-testid"],gt=["data-testid"],kt={key:1},ht=["data-testid"],bt=["data-testid"],Ct=["data-testid"],St=["data-testid"],wt=["title"],Bt={name:"ConfigCardItem",components:{CopyUuid:ye,JsonCardItem:ge,StatusBadge:it,InternalLinkItem:lt}},xt=e.defineComponent({...Bt,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(y=>({"2c6ac268":c.value?"none":`solid ${e.unref(pt)} ${e.unref(ct)}`,c7a65802:g.value&&m.value?"block":"flex","778426fe":g.value&&m.value?"100%":a.slim?"50%":"25%","777f9b48":g.value&&m.value?"100%":a.slim?"50%":"75%"}));const o=e.useSlots(),{i18n:{t:l,formatUnixTimeStamp:r}}=F.useI18n(),m=e.computed(()=>a.item.value!==void 0&&a.item.value!==null&&a.item.value!==""),C=e.computed(()=>!!(a.item.tooltip||o["label-tooltip"])),g=e.computed(()=>a.item.type===D.Json||a.item.type===D.JsonArray),c=e.computed(()=>a.item.type===D.JsonArray),f=e.computed(()=>{switch(a.item.type){case D.ID:return{tag:"CopyUuid",attrs:{"data-testid":`${a.item.key}-copy-uuid`,"success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,uuid:a.item.value,notify:()=>{}}};case D.IdArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{"success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,notify:()=>{}}};case D.Redacted:return{tag:"CopyUuid",attrs:{"data-testid":`${a.item.key}-copy-uuid-redacted`,format:"redacted","success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,uuid:a.item.value,notify:()=>{}}};case D.RedactedArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{format:"redacted","success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,notify:()=>{}}};case D.Date:return{tag:"div",attrs:{"data-testid":`${a.item.key}-date`},text:r(a.item.value)};case D.BadgeStatus:return{tag:"StatusBadge",attrs:{"data-testid":`${a.item.key}-badge-status`,status:a.item.value}};case D.BadgeTag:return{tag:"div",additionalComponent:"KBadge"};case D.BadgeMethod:return{tag:"div",additionalComponent:"KMethodBadge"};case D.LinkInternal:return{tag:"InternalLinkItem",attrs:{"data-testid":`${a.item.key}-internal-link`,item:a.item,onNavigationClick:y=>{n("navigation-click",y)}}};case D.LinkExternal:return{tag:"KExternalLink",attrs:{"data-testid":`${a.item.key}-external-link`,href:a.item.value},text:a.item.value};case D.Json:return{tag:"JsonCardItem",attrs:{"data-testid":`${a.item.key}-json-content`,item:a.item}};case D.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(y,I)=>{const h=e.resolveComponent("KLabel"),E=e.resolveComponent("KBadge"),B=e.resolveComponent("KMethodBadge");return e.openBlock(),e.createElementBlock("div",mt,[e.createElementVNode("div",{class:"config-card-details-label","data-testid":`${t.item.key}-label`},[e.renderSlot(y.$slots,"label",{item:t.item},()=>[e.createVNode(h,{"tooltip-attributes":{maxWidth:"500px"}},e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.item.label)+" ",1)]),_:2},[C.value?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{"data-testid":`${t.item.key}-label-tooltip`},[e.renderSlot(y.$slots,"label-tooltip",{},()=>[e.createTextVNode(e.toDisplayString(t.item.tooltip),1)],!0)],8,ft)]),key:"0"}:void 0]),1024)],!0)],8,ut),e.createElementVNode("div",{class:"config-card-details-value","data-testid":`${t.item.key}-property-value`},[e.renderSlot(y.$slots,t.item.key,{rowValue:t.item.value},()=>[m.value?(e.openBlock(),e.createElementBlock("div",kt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f.value.tag),e.normalizeProps(e.guardReactiveProps(f.value.attrs)),{default:e.withCtx(()=>[f.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,(s,i)=>(e.openBlock(),e.createBlock(E,{key:`${t.item.key}-badge-tag-${i}`,class:"config-badge","data-testid":`${t.item.key}-badge-tag-${i}`,"truncation-tooltip":s},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s),1)]),_:2},1032,["data-testid","truncation-tooltip"]))),128))],8,ht)):e.createCommentVNode("",!0),f.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,(s,i)=>(e.openBlock(),e.createBlock(e.unref(ye),e.mergeProps(f.value.childAttrs,{key:`${t.item.key}-copy-uuid-${i}`,"data-testid":`${t.item.key}-copy-uuid-${i}`,uuid:s}),null,16,["data-testid","uuid"]))),128))],8,bt)):f.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,(s,i)=>(e.openBlock(),e.createBlock(B,{key:`${t.item.key}-badge-method-${i}`,class:"config-badge","data-testid":`${t.item.key}-badge-method-${i}`,"is-rounded":"",label:s,method:e.unref(Be.MethodsArray).includes(s.toLowerCase())?s.toLowerCase():"custom"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s),1)]),_:2},1032,["data-testid","label","method"]))),128))],8,Ct)):e.createCommentVNode("",!0),f.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,(s,i)=>(e.openBlock(),e.createBlock(ge,{key:`json-array-item-${i}`,index:i,"is-array-item":"",item:s},null,8,["index","item"]))),128))],8,St)):(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(f.value.text),11,wt))]),_:1},16))])):(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${t.item.key}-no-value`}," – ",8,gt))],!0)],8,yt)])}}}),ke=j(xt,[["__scopeId","data-v-a3c5ab01"]]),_t={"data-testid":"config-card-title"},Vt={class:"config-card-actions"},Nt={class:"config-card-details-section"},It=["data-testid"],Et={key:0,class:"config-card-prop-section-title"},$t=j(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,l=e.useSlots(),{i18n:{t:r}}=F.useI18n(),{getMessageFromError:m}=F.useErrors(),{convertKeyToTitle:C}=F.useStringHelpers(),{axiosInstance:g}=F.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),c={id:{type:D.ID,label:r("baseConfigCard.commonFields.id_label"),order:0,section:A.Basic},name:{order:1,section:A.Basic},enabled:{type:D.BadgeStatus,order:2,section:A.Basic},updated_at:{type:D.Date,label:r("baseConfigCard.commonFields.updated_at_label"),order:3,section:A.Basic},created_at:{type:D.Date,label:r("baseConfigCard.commonFields.created_at_label"),order:4,section:A.Basic},tags:{type:D.BadgeTag,order:-1,section:A.Basic}},f=e.ref(!1),y=e.ref(!1),I=e.ref(""),h=e.ref(),E=e.computed(()=>{var p,b,k;if(!h.value)return[];const N=[],K=Object.keys(h.value).length;for(const S in h.value){const _=(b=(p=o.configSchema)==null?void 0:p[S])==null?void 0:b.order,V=(k=c[S])==null?void 0:k.order;let $=K;(V||V===0)&&($=V===-1?K+1:V),_&&($=_===-1?K+1:_),N.push([S,$])}return N.sort(function(S,_){return S[1]-_[1]}),N.map(S=>{var _,V;const $=S[0],R=(_=h.value)==null?void 0:_[$],H=((V=o.configSchema)==null?void 0:V[$])||{},L=c[$];return{key:$,value:R,hidden:H.hidden||!1,type:H.type??((L==null?void 0:L.type)||D.Text),label:H.label??((L==null?void 0:L.label)||C($)),tooltip:H.tooltip??((L==null?void 0:L.tooltip)||void 0),section:H.section??((L==null?void 0:L.section)||A.Advanced)}}).filter(S=>!S.hidden&&S.key!==o.pluginConfigKey)}),B=e.computed(()=>{var p,b;if(!h.value||!o.pluginConfigKey)return[];const k=h.value[o.pluginConfigKey]||{},N=Object.keys(k).length,K=[];for(const S in k){const _=(b=(p=o.pluginConfigSchema)==null?void 0:p[S])==null?void 0:b.order,V=k[S];let $=V!=null&&V!==""?N-1:N;_&&($=_===-1?N+1:_),K.push([S,$])}return K.sort(function(S,_){return S[1]-_[1]}),K.map(S=>{var _;const V=S[0],$=k[V],R=((_=o.pluginConfigSchema)==null?void 0:_[V])||{};return{key:V,value:$,hidden:R.hidden||!1,type:R.type??D.Text,label:R.label??C(V),tooltip:R.tooltip??void 0,section:A.Plugin}}).filter(S=>!S.hidden)}),s=e.computed(()=>{var p,b,k,N;return{basic:(p=E.value)==null?void 0:p.filter(K=>K.section===A.Basic),advanced:(b=E.value)==null?void 0:b.filter(K=>K.section===A.Advanced),plugin:(N=B.value)==null?void 0:N.concat((k=E.value)==null?void 0:k.filter(K=>K.section===A.Plugin))}}),i=e.computed(()=>{const p=[];return s.value.basic.length&&p.push("basic"),s.value.advanced.length&&p.push("advanced"),s.value.plugin.length&&p.push("plugin"),p}),d=p=>!!(p.tooltip||l[`${p.key}-label-tooltip`]),u=e.computed(()=>{var p,b;let k=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?k=k.replace(/{controlPlaneId}/gi,((p=o.config)==null?void 0:p.controlPlaneId)||""):o.config.app==="kongManager"&&(k=k.replace(/\/{workspace}/gi,(b=o.config)!=null&&b.workspace?`/${o.config.workspace}`:"")),k=k.replace(/{id}/gi,o.config.entityId),k}),x=p=>{h.value&&p(JSON.stringify(h.value))?n("copy:success",h.value):n("copy:error")};return e.watch(f,p=>{n("loading",p)},{immediate:!0}),e.onBeforeMount(async()=>{y.value=!1,f.value=!0;try{const{data:p}=await g.get(u.value);if(o.dataKey)if(typeof p[o.dataKey]<"u")h.value={...p[o.dataKey]};else throw new Error(r("errors.dataKeyUndefined",{dataKey:o.dataKey}));else h.value={...p};Object.keys(o.configSchema).filter(b=>o.configSchema[b].forceShow).forEach(b=>{h.value&&typeof h.value[b]>"u"&&(h.value[b]=null)}),n("fetch:success",p)}catch(p){const b=m(p);I.value=b.startsWith("code")?r("baseConfigCard.errors.load"):b,y.value=!0,n("fetch:error",p)}finally{f.value=!1}}),(p,b)=>{const k=e.resolveComponent("KButton"),N=e.resolveComponent("KClipboardProvider"),K=e.resolveComponent("KSkeleton"),S=e.resolveComponent("KEmptyState"),_=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(_,{"border-variant":"noBorder",class:"kong-ui-entity-base-config-card"},e.createSlots({actions:e.withCtx(()=>[e.createElementVNode("div",Vt,[e.renderSlot(p.$slots,"actions",{},void 0,!0),e.createVNode(N,null,{default:e.withCtx(({copyToClipboard:V})=>[!f.value&&!y.value?(e.openBlock(),e.createBlock(k,{key:0,appearance:"btn-link","data-testid":"json-copy-button",onClick:$=>x(V)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("baseConfigCard.actions.copy")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0)]),_:1})])]),body:e.withCtx(()=>[f.value?(e.openBlock(),e.createBlock(K,{key:0,"data-testid":"config-card-loader","table-columns":2,type:"table"})):y.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",Nt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,V=>(e.openBlock(),e.createElementBlock("div",{key:`config-card-details-${V}-props`,class:e.normalizeClass(`config-card-details-${V}-props`),"data-testid":`config-card-details-${V}-props`},[V!=="basic"?(e.openBlock(),e.createElementBlock("div",Et,e.toDisplayString(V==="advanced"?e.unref(r)("baseConfigCard.sections.advanced"):e.unref(r)("baseConfigCard.sections.plugin")),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value[V],$=>(e.openBlock(),e.createBlock(ke,{key:$.key,item:$},e.createSlots({label:e.withCtx(()=>[e.renderSlot(p.$slots,`${$.key}-label`,{row:$},void 0,!0)]),[$.key]:e.withCtx(({rowValue:R})=>[e.renderSlot(p.$slots,$.key,{row:$,rowValue:R},void 0,!0)]),_:2},[d($)?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(p.$slots,`${$.key}-label-tooltip`,{row:$},void 0,!0)]),key:"0"}:void 0]),1032,["item"]))),128))],10,It))),128))])]),_:2},[t.hideTitle?void 0:{name:"title",fn:e.withCtx(()=>[e.createElementVNode("div",_t,[e.renderSlot(p.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("baseConfigCard.title")),1)],!0)])]),key:"0"}]),1024)}}}),[["__scopeId","data-v-b72bbdde"]]),Tt=["onReset","onSubmit"],Kt={class:"form-actions","data-testid":"form-actions"},Dt=j(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,l=X.useRouter(),{i18n:{t:r}}=F.useI18n(),{getMessageFromError:m}=F.useErrors(),{axiosInstance:C}=F.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),g=e.ref(!1),c=e.ref(!1),f=e.ref(""),y=e.computed(()=>o.canSubmit===!1||o.isReadonly),I=e.computed(()=>{var s,i;if(!o.editId)return"";let d=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?d=d.replace(/{controlPlaneId}/gi,((s=o.config)==null?void 0:s.controlPlaneId)||""):o.config.app==="kongManager"&&(d=d.replace(/\/{workspace}/gi,(i=o.config)!=null&&i.workspace?`/${o.config.workspace}`:"")),d=d.replace(/{id}/gi,o.editId),d}),h=()=>{o.config.cancelRoute?l.push(o.config.cancelRoute):E()},E=()=>{n("cancel")},B=()=>{y.value||n("submit")};return e.watch(()=>g.value,s=>{n("loading",s)},{immediate:!0}),e.onBeforeMount(async()=>{if(o.editId)try{c.value=!1,g.value=!0;const{data:s}=await C.get(I.value);n("fetch:success",s)}catch(s){const i=m(s);f.value=i.startsWith("code")?r("baseForm.errors.edit"):i,c.value=!0,n("fetch:error",s)}finally{g.value=!1}}),(s,i)=>{const d=e.resolveComponent("KSkeleton"),u=e.resolveComponent("KEmptyState"),x=e.resolveComponent("KAlert"),p=e.resolveComponent("KButton"),b=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(b,{class:"kong-ui-entity-base-form"},{body:e.withCtx(()=>[g.value?(e.openBlock(),e.createBlock(d,{key:0,type:"form"})):c.value?(e.openBlock(),e.createBlock(u,{key:1,"cta-text":e.unref(r)("baseForm.actions.back"),"data-testid":"form-fetch-error","handle-click":h,"is-error":!0},{message:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(f.value),1)]),_:1},8,["cta-text"])):(e.openBlock(),e.createElementBlock("form",{key:2,"data-testid":"form-content",onReset:e.withModifiers(E,["prevent"]),onSubmit:e.withModifiers(B,["prevent"])},[e.renderSlot(s.$slots,"default",{},void 0,!0),t.errorMessage?(e.openBlock(),e.createBlock(x,{key:0,"alert-message":t.errorMessage,appearance:"danger","data-testid":"form-error"},null,8,["alert-message"])):e.createCommentVNode("",!0),e.createElementVNode("div",Kt,[e.renderSlot(s.$slots,"form-actions",{},()=>[e.createVNode(p,{appearance:"outline","data-testid":"form-cancel",disabled:t.isReadonly,type:"reset"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("baseForm.actions.cancel")),1)]),_:1},8,["disabled"]),e.createVNode(p,{appearance:"primary","data-testid":"form-submit",disabled:y.value,type:"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("baseForm.actions.save")),1)]),_:1},8,["disabled"])],!0)])],40,Tt))]),_:3})}}}),[["__scopeId","data-v-2286e5f2"]]),Mt={key:0},qt=j(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 B;return((B=n.rowEl)==null?void 0:B.querySelector(`[data-testid="${n.keyName}"]`))||null}),o=e.computed(()=>{var B;return((B=a.value)==null?void 0:B.querySelector('[role="button"]'))||null}),l=e.computed(()=>{var B,s;const i=(B=n.rowEl)==null?void 0:B.querySelectorAll("td");return i?((s=i[0])==null?void 0:s.getAttribute("data-testid"))===n.keyName:!1});let r;const m=()=>{r&&(r.disconnect(),r=void 0)},C=()=>{var B,s,i;c.value=((B=o.value)==null?void 0:B.getBoundingClientRect().width)||0,f.value=((s=a.value)==null?void 0:s.clientWidth)||0,y.value=((i=g.value)==null?void 0:i.innerText)||""},g=e.ref({}),c=e.ref(0),f=e.ref(0),y=e.ref(""),I=e.computed(()=>[o.value,a.value]),h=e.watch(I,B=>{if(l.value&&(m(),"ResizeObserver"in window&&window)){r=new ResizeObserver(s=>{window.requestAnimationFrame(()=>{!Array.isArray(s)||!s.length||C()})});for(const s of B)s&&r.observe(s)}},{immediate:!0,flush:"post",deep:!0}),E=e.computed(()=>l.value?c.value>f.value:!1);return e.onMounted(()=>{C()}),e.onUnmounted(()=>{h()}),(B,s)=>{const i=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("span",{ref_key:"contentRef",ref:g,class:"content-wrapper"},[l.value?(e.openBlock(),e.createElementBlock("span",Mt,[e.createVNode(i,{disabled:!E.value,label:y.value,"max-width":"300",placement:"bottomStart"},{default:e.withCtx(()=>[e.renderSlot(B.$slots,"default",{},void 0,!0)]),_:3},8,["disabled","label"])])):e.renderSlot(B.$slots,"default",{key:1},void 0,!0)],512)}}}),[["__scopeId","data-v-f8a220e9"]]),Ft={class:"toolbar-container"},Pt={key:0,class:"toolbar-button-container"},Rt=["data-testid"],At=j(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}}=F.useI18n(),l=e.computed(()=>a.cacheIdentifier||a.preferencesStorageKey),r=u=>u.hasData||!!a.query,m=e.computed(()=>{const u=[];return Object.keys(a.tableHeaders).forEach(x=>{const p=a.tableHeaders[x];u.push({label:p.label??x,key:x,sortable:p.sortable??!1})}),a.enableEntityActions&&u.push({key:"actions",hideLabel:!0}),u}),C=u=>({"data-rowid":u.id,"data-testid":u.name,...a.rowAttributes(u)}),g=e.ref({}),c=u=>{var x;return(x=g.value)==null?void 0:x.$el.querySelector(`[data-rowid="${u.id}"]`)},f=u=>{const x={"data-testid":u.headerKey,...a.cellAttributes(u)};return u.colIndex===0&&(x.style={maxWidth:"250px",overflowX:"hidden",textOverflow:"ellipsis"}),x},y=()=>{n("empty-state-cta-clicked"),I()},I=()=>{n("clear-search-input")},h=(u,x)=>{n("click:row",x)},E=u=>{n("sort",u)},{setTablePreferences:B,getTablePreferences:s}=Ie(),i=e.computed(()=>{const u=s(a.preferencesStorageKey);return{...a.initialFetcherParams,...u}}),d=u=>{a.preferencesStorageKey&&B(a.preferencesStorageKey,u)};return(u,x)=>{const p=e.resolveComponent("KIcon"),b=e.resolveComponent("KButton"),k=e.resolveComponent("KDropdownMenu"),N=e.resolveComponent("KTable"),K=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(K,{class:"kong-ui-entity-base-table",title:t.title},{body:e.withCtx(()=>[e.createVNode(N,{ref_key:"tableRefs",ref:g,"cache-identifier":l.value,"cell-attrs":f,"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:m.value,"hide-pagination-when-optional":"","initial-fetcher-params":i.value,"is-loading":t.isLoading,"pagination-type":t.paginationType,"row-attrs":C,"search-input":t.query,onKtableEmptyStateCtaClicked:y,"onRow:click":h,onSort:x[0]||(x[0]=S=>E(S)),"onUpdate:tablePreferences":d},e.createSlots({toolbar:e.withCtx(({state:S})=>[e.withDirectives(e.createElementVNode("div",Ft,[e.renderSlot(u.$slots,"toolbar-filter",{},void 0,!0),u.$slots["toolbar-button"]?(e.openBlock(),e.createElementBlock("div",Pt,[e.renderSlot(u.$slots,"toolbar-button",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,r(S)]])]),actions:e.withCtx(({row:S,rowKey:_,rowValue:V})=>[e.createElementVNode("div",{class:"actions-container","data-testid":S.name},[e.createVNode(k,{"kpop-attributes":{placement:"bottomEnd"},width:t.dropdownMenuWidth},{items:e.withCtx(()=>[e.renderSlot(u.$slots,"actions",{row:S,rowKey:_,rowValue:V},void 0,!0)]),default:e.withCtx(()=>[e.createVNode(b,{class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:e.withCtx(()=>[e.createVNode(p,{color:e.unref(dt),icon:"more",size:"16"},null,8,["color"])]),_:1})]),_:2},1032,["width"])],8,Rt)]),_:2},[e.renderList(t.tableHeaders,(S,_)=>({name:_,fn:e.withCtx(({row:V,rowKey:$,rowValue:R})=>[e.createVNode(qt,{"key-name":String(_),"row-el":c(V)},{default:e.withCtx(()=>[e.renderSlot(u.$slots,_,{row:V,rowKey:$,rowValue:R},()=>[e.createTextVNode(e.toDisplayString(R),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"},Lt={key:1,class:"description"},Ot=j(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}=F.useI18n(),l=e.computed(()=>a.needConfirm?a.entityName:""),r=()=>{n("cancel")},m=()=>{n("proceed")};return(C,g)=>{const c=e.resolveComponent("KAlert"),f=e.resolveComponent("KPrompt");return e.openBlock(),e.createBlock(f,{"action-button-text":"Yes, delete","action-pending":t.actionPending,class:"kong-ui-entity-delete-modal","confirmation-text":l.value,"is-visible":t.visible,title:t.title,type:"danger",onCanceled:r,onProceed:m},{"body-content":e.withCtx(()=>[t.error?(e.openBlock(),e.createElementBlock("div",jt,[e.createVNode(c,{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||C.$slots.description?(e.openBlock(),e.createElementBlock("div",Lt,[e.renderSlot(C.$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"]]),Ut={fill:"none",height:"20",viewBox:"0 0 20 20",width:"20",xmlns:"http://www.w3.org/2000/svg"},Ht={id:"mask0_180_20349",height:"20",maskUnits:"userSpaceOnUse",style:{"mask-type":"alpha"},width:"20",x:"0",y:"0"},Jt=["fill"],zt={mask:"url(#mask0_180_20349)"},Wt=["fill"],Gt=e.defineComponent({__name:"IconFilter",props:{color:{type:String,default:`var(--kong-ui-entity-filter-color, ${st})`}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("svg",Ut,[e.createElementVNode("mask",Ht,[e.createElementVNode("rect",{fill:t.color,height:"20",width:"20"},null,8,Jt)]),e.createElementVNode("g",zt,[e.createElementVNode("path",{d:"M8 14.5V13H12V14.5H8ZM5 10.75V9.25H15V10.75H5ZM3 7V5.5H17V7H3Z",fill:t.color},null,8,Wt)])]))}}),Qt={key:1,class:"kong-ui-entity-filter"},Xt={class:"menu-item-title"},Yt={class:"menu-item-indicator"},Zt={class:"menu-item-body"},vt=["for"],ea={class:"menu-item-buttons"},ta=j(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}}=F.useI18n(),l=e.ref(!1),r=e.ref({}),m=e.computed(()=>{const s=[];return new URLSearchParams(a.modelValue).forEach((i,d)=>{i!==""&&s.push(d)}),s}),C=e.computed(()=>{const s=a.config.fields;return Object.keys(s).filter(i=>s[i].searchable).map(i=>({label:s[i].label||i,value:i}))});e.watch(()=>a.modelValue,s=>{r.value={},new URLSearchParams(s).forEach((i,d)=>{r.value[d]=i})});const g=()=>{l.value=!l.value},c=s=>{n("update:modelValue",s)},f=s=>`filter-${s}`,y=s=>{var i,d;return(((d=(i=a.config.schema)==null?void 0:i[s])==null?void 0:d.values)??[]).map(u=>({value:u,label:u}))},I=s=>{var i,d;return((d=(i=a.config.schema)==null?void 0:i[s])==null?void 0:d.type)??"text"},h=s=>{r.value={...r.value,[s]:""},B()},E=()=>{r.value={},B(!0)},B=(s=!1)=>{const i=Object.keys(r.value).reduce((d,u)=>(r.value[u]&&(d[u]=`${r.value[u]}`),d),{});s&&(l.value=!1),n("update:modelValue",new URLSearchParams(i).toString())};return(s,i)=>{const d=e.resolveComponent("KInput"),u=e.resolveComponent("KButton"),x=e.resolveComponent("KSelect"),p=e.resolveComponent("KMenuItem"),b=e.resolveComponent("KMenu");return t.config.isExactMatch?(e.openBlock(),e.createBlock(d,{key:0,autocomplete:"off",class:"kong-ui-entity-filter-input","data-testid":"search-input","model-value":t.modelValue,placeholder:t.config.placeholder,"onUpdate:modelValue":c},{icon:e.withCtx(()=>[e.createVNode(Gt)]),_:1},8,["model-value","placeholder"])):(e.openBlock(),e.createElementBlock("div",Qt,[e.createVNode(u,{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(m.value.length>0?`(${m.value.length})`:""),1)]),_:1}),e.withDirectives(e.createElementVNode("div",{class:"kong-ui-entity-filter-backdrop",onClick:g},null,512),[[e.vShow,l.value]]),e.withDirectives(e.createVNode(b,{class:"kong-ui-entity-filter-menu"},{body:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(k,N)=>(e.openBlock(),e.createBlock(p,{key:k.value,"data-testid":k.value,expandable:"","last-menu-item":N===C.value.length-1},{itemTitle:e.withCtx(()=>[e.createElementVNode("span",Xt,[e.createTextVNode(e.toDisplayString(k.label)+" ",1),e.withDirectives(e.createElementVNode("span",Yt,null,512),[[e.vShow,m.value.includes(k.value)]])])]),itemBody:e.withCtx(()=>{var K,S;return[e.createElementVNode("div",Zt,[e.createElementVNode("label",{class:"menu-item-label",for:f(k.value)},e.toDisplayString(e.unref(o)("filter.fieldLabel")),9,vt),((S=(K=t.config.schema)==null?void 0:K[k.value])==null?void 0:S.type)==="select"?(e.openBlock(),e.createBlock(x,{key:0,id:f(k.value),modelValue:r.value[k.value],"onUpdate:modelValue":_=>r.value[k.value]=_,appearance:"select",items:y(k.value),placeholder:e.unref(o)("filter.selectPlaceholder")},null,8,["id","modelValue","onUpdate:modelValue","items","placeholder"])):(e.openBlock(),e.createBlock(d,{key:1,id:f(k.value),modelValue:r.value[k.value],"onUpdate:modelValue":_=>r.value[k.value]=_,autocomplete:"off",placeholder:e.unref(o)("filter.inputPlaceholder"),size:"small",type:I(k.value)},null,8,["id","modelValue","onUpdate:modelValue","placeholder","type"]))]),e.createElementVNode("div",ea,[e.createVNode(u,{appearance:"btn-link","data-testid":"apply-filter",size:"small",onClick:i[0]||(i[0]=_=>B(!0))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.applyButtonText")),1)]),_:1}),e.createVNode(u,{appearance:"btn-link","data-testid":"clear-filter",size:"small",onClick:_=>h(k.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(u,{onClick:E},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearAllButtonText")),1)]),_:1})]),_:1},512),[[e.vShow,l.value]])]))}}}),[["__scopeId","data-v-745f38c0"]]),Q=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}),(l,r)=>o.value?e.renderSlot(l.$slots,"default",{key:0,isAllowed:a.value}):e.createCommentVNode("",!0)}}),aa={class:"form-section-wrapper"},oa={key:0,class:"form-section-title"},na={key:1,class:"form-section-description"},ra={key:2,class:"form-section-footer"},la={class:"form-section-content"},ia=j(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",aa,[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",oa,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description||e.unref(n).description?(e.openBlock(),e.createElementBlock("div",na,[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",ra,[e.renderSlot(a.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2)),e.createElementVNode("div",la,[e.renderSlot(a.$slots,"default",{},void 0,!0)])])],2))}}),[["__scopeId","data-v-8b6dc312"]]),{useAxios:he,useDeleteUrlBuilder:sa,useErrors:ca,useFetchUrlBuilder:Ka,useFetcher:da,useDebouncedFilter:Da,useStringHelpers:Ma,useGatewayFeatureSupported:qa}=F,Fa="",pa={class:"kong-ui-entities-key-sets-list"},ma={key:1},ua=e.defineComponent({__name:"KeySetList",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 Ce;const a=t,{i18n:{t:o}}=Y.useI18n(),l=X.useRouter(),{axiosInstance:r}=he({headers:(Ce=a.config)==null?void 0:Ce.requestHeaders}),m=e.ref(1),C=e.computed(()=>a.config.app!=="kongManager"||!!a.config.disableSorting),g={name:{label:o("keySets.list.table_headers.name"),searchable:!0,sortable:!0},tags:{label:o("keySets.list.table_headers.tags")},id:{label:o("keySets.list.table_headers.id"),sortable:!0}},c=g,f=e.computed(()=>{var T,q;let w=`${a.config.apiBaseUrl}${G.list[a.config.app]}`;return a.config.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,((T=a.config)==null?void 0:T.controlPlaneId)||""):a.config.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,(q=a.config)!=null&&q.workspace?`/${a.config.workspace}`:"")),w}),y=e.ref(""),I=e.computed(()=>{const w=a.config.app==="konnect"||a.config.isExactMatch;if(w)return{isExactMatch:w,placeholder:o("keySets.search.placeholder")};const T={name:g.name};return{isExactMatch:w,fields:T,schema:a.config.filterSchema}}),{fetcher:h,fetcherState:E}=da(a.config,f.value),B=()=>{y.value=""},s=()=>{m.value++},i=e.ref(""),d=(w,T)=>{const q=w.id;if(!T(q)){b(w,"id");return}p(w,"id")},u=(w,T)=>{const q=JSON.stringify(w);if(!T(q)){n("copy:error",{entity:w,message:o("keySets.errors.copy")});return}n("copy:success",{entity:w,message:o("keySets.copy.success_brief")})},x=(w,T,q)=>{const{type:J}=w;J==="success"?p(T,q):b(T,q)},p=(w,T)=>{n("copy:success",{entity:w,field:T,message:o("keySets.copy.success",{val:w[T]})})},b=(w,T)=>{n("copy:error",{entity:w,field:T,message:o("keySets.errors.copy")})},k=async w=>{var q;await((q=a.canRetrieve)==null?void 0:q.call(a,w))&&l.push(a.config.getViewRoute(w.id))},N=w=>({label:o("keySets.actions.view"),to:a.config.getViewRoute(w)}),K=w=>({label:o("keySets.actions.edit"),to:a.config.getEditRoute(w)}),S=e.ref(void 0),_=e.ref(!1),V=e.ref(!1),$=e.ref(""),R=sa(a.config,f.value),H=w=>{S.value=w,_.value=!0},L=()=>{_.value=!1},Ca=async()=>{var w,T,q;if((w=S.value)!=null&&w.id){V.value=!0;try{await r.delete(R(S.value.id)),V.value=!1,_.value=!1,m.value++,n("delete:success",S.value)}catch(J){$.value=((q=(T=J.response)==null?void 0:T.data)==null?void 0:q.message)||J.message||o("keySets.errors.delete"),n("error",J)}finally{V.value=!1}}};e.watch(E,w=>{if(w.status===U.Error){i.value=o("keySets.errors.general"),n("error",w.error);return}i.value=""});const ae=e.ref({ctaPath:a.config.createRoute,ctaText:void 0,message:o("keySets.list.empty_state.description"),title:o("keySets.title")});return e.onBeforeMount(async()=>{await a.canCreate()&&(ae.value.title=o("keySets.list.empty_state.title"),ae.value.ctaText=o("keySets.actions.create"))}),(w,T)=>{const q=e.resolveComponent("KButton"),J=e.resolveComponent("KBadge"),Sa=e.resolveComponent("KTruncate"),wa=e.resolveComponent("CopyUuid"),W=e.resolveComponent("KDropdownItem"),Se=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",pa,[e.createVNode(e.unref(At),{"cache-identifier":t.cacheIdentifier,"disable-pagination-page-jump":"","disable-sorting":C.value,"empty-state-options":ae.value,"enable-entity-actions":"","error-message":i.value,fetcher:e.unref(h),"fetcher-cache-key":m.value,"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-key-sets-list",query:y.value,"table-headers":e.unref(c),onClearSearchInput:B,"onClick:row":T[2]||(T[2]=M=>k(M)),onSort:s},{"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(ta),{modelValue:y.value,"onUpdate:modelValue":T[0]||(T[0]=M=>y.value=M),config:I.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[e.createVNode(e.unref(Q),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(q,{appearance:"primary","data-testid":"toolbar-add-key-set",icon:"plus",to:t.config.createRoute},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keySets.list.toolbar_actions.new_key_set")),1)]),_:1},8,["to"])]),_:1},8,["auth-function"])]),name:e.withCtx(({rowValue:M})=>[e.createElementVNode("b",null,e.toDisplayString(M??"-"),1)]),tags:e.withCtx(({rowValue:M})=>[(M==null?void 0:M.length)>0?(e.openBlock(),e.createBlock(Sa,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M,O=>(e.openBlock(),e.createBlock(J,{key:O,onClick:T[1]||(T[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(O),1)]),_:2},1024))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",ma,"-"))]),id:e.withCtx(({row:M,rowValue:O})=>[e.createVNode(wa,{notify:oe=>x(oe,M,"id"),truncated:!1,uuid:O},null,8,["notify","uuid"])]),actions:e.withCtx(({row:M})=>[e.createVNode(Se,null,{default:e.withCtx(({copyToClipboard:O})=>[e.createVNode(W,{"data-testid":"action-entity-copy-id",onClick:oe=>d(M,O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keySets.actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(Se,null,{default:e.withCtx(({copyToClipboard:O})=>[e.createVNode(W,{"data-testid":"action-entity-copy-json",onClick:oe=>u(M,O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keySets.actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(Q),{"auth-function":()=>t.canRetrieve(M)},{default:e.withCtx(()=>[e.createVNode(W,{"data-testid":"action-entity-view","has-divider":"",item:N(M.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(Q),{"auth-function":()=>t.canEdit(M)},{default:e.withCtx(()=>[e.createVNode(W,{"data-testid":"action-entity-edit",item:K(M.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(Q),{"auth-function":()=>t.canDelete(M)},{default:e.withCtx(()=>[e.createVNode(W,{"data-testid":"action-entity-delete","has-divider":"","is-dangerous":"",onClick:O=>H(M)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keySets.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(Ot),{"action-pending":V.value,description:e.unref(o)("keySets.delete.description"),"entity-name":S.value&&(S.value.name||S.value.id),"entity-type":e.unref(ne).KeySet,error:$.value,title:e.unref(o)("keySets.delete.title"),visible:_.value,onCancel:L,onProceed:Ca},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),Pa="",be=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},fa=be(ua,[["__scopeId","data-v-b6c927de"]]),ya={class:"kong-ui-entities-key-sets-form"},ga=e.defineComponent({__name:"KeySetForm",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)},keySetId:{type:String,required:!1,default:""}},emits:["update","error","loading"],setup(t,{emit:n}){var s;const a=t,o=X.useRouter(),{i18n:{t:l}}=Y.useI18n(),{getMessageFromError:r}=ca(),{axiosInstance:m}=he({headers:(s=a.config)==null?void 0:s.requestHeaders}),C=e.computed(()=>G.form[a.config.app].edit),g=e.computed(()=>a.keySetId?Z.Edit:Z.Create),c=e.reactive({fields:{name:"",tags:""},isReadonly:!1,errorMessage:""}),f=e.reactive({name:"",tags:""}),y=e.computed(()=>JSON.stringify(c.fields)!==JSON.stringify(f)&&!!c.fields.name),I=i=>{var d;c.fields.name=(i==null?void 0:i.name)||"",c.fields.tags=((d=i==null?void 0:i.tags)==null?void 0:d.join(", "))||"",Object.assign(f,c.fields)},h=()=>{o.push(a.config.cancelRoute)},E=e.computed(()=>{var d,u;let i=`${a.config.apiBaseUrl}${G.form[a.config.app][g.value]}`;return a.config.app==="konnect"?i=i.replace(/{controlPlaneId}/gi,((d=a.config)==null?void 0:d.controlPlaneId)||""):a.config.app==="kongManager"&&(i=i.replace(/\/{workspace}/gi,(u=a.config)!=null&&u.workspace?`/${a.config.workspace}`:"")),i=i.replace(/{id}/gi,a.keySetId),i}),B=async()=>{var i,d,u,x,p;try{c.isReadonly=!0;const b={name:c.fields.name,tags:((u=(d=(i=c.fields.tags)==null?void 0:i.split(","))==null?void 0:d.map(N=>String(N||"").trim()))==null?void 0:u.filter(N=>N!==""))||""};let k;if(g.value==="create"?k=await m.post(E.value,b):g.value==="edit"&&(k=((x=a.config)==null?void 0:x.app)==="konnect"?await m.put(E.value,b):await m.patch(E.value,b)),k){const{data:N}=k;c.fields.name=(N==null?void 0:N.name)||"",c.fields.tags=((p=N==null?void 0:N.tags)==null?void 0:p.join(", "))||"",Object.assign(f,c.fields),n("update",k==null?void 0:k.data)}}catch(b){c.errorMessage=r(b),n("error",b)}finally{c.isReadonly=!1}};return(i,d)=>{const u=e.resolveComponent("KInput");return e.openBlock(),e.createElementBlock("div",ya,[e.createVNode(e.unref(Dt),{"can-submit":y.value,config:t.config,"edit-id":t.keySetId,"error-message":c.errorMessage,"fetch-url":C.value,"is-readonly":c.isReadonly,onCancel:h,"onFetch:error":d[2]||(d[2]=x=>i.$emit("error",x)),"onFetch:success":I,onLoading:d[3]||(d[3]=x=>i.$emit("loading",x)),onSubmit:B},{default:e.withCtx(()=>[e.createVNode(e.unref(ia),{description:e.unref(l)("keySets.form.sections.general.description"),"has-divider":"",title:e.unref(l)("keySets.form.sections.general.title")},{default:e.withCtx(()=>[e.createVNode(u,{modelValue:c.fields.name,"onUpdate:modelValue":d[0]||(d[0]=x=>c.fields.name=x),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-set-form-name",label:e.unref(l)("keySets.form.fields.name.label"),placeholder:e.unref(l)("keySets.form.fields.name.placeholder"),readonly:c.isReadonly,type:"text"},null,8,["modelValue","label","placeholder","readonly"]),e.createVNode(u,{modelValue:c.fields.tags,"onUpdate:modelValue":d[1]||(d[1]=x=>c.fields.tags=x),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-set-form-tags",help:e.unref(l)("keySets.form.fields.tags.help"),label:e.unref(l)("keySets.form.fields.tags.label"),"label-attributes":{info:e.unref(l)("keySets.form.fields.tags.tooltip")},placeholder:e.unref(l)("keySets.form.fields.tags.placeholder"),readonly:c.isReadonly,type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"])]),_:1},8,["description","title"])]),_:1},8,["can-submit","config","edit-id","error-message","fetch-url","is-readonly"])])}}}),Ra="",ka=be(ga,[["__scopeId","data-v-29df09d7"]]),ha={class:"kong-ui-entities-keys-entity-config-card"},ba=e.defineComponent({__name:"KeySetConfigCard",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"],setup(t){const n=t,{i18n:{t:a}}=Y.useI18n(),o=e.computed(()=>G.form[n.config.app].edit),l=e.ref({id:{},name:{},last_updated:{},created:{},tags:{tooltip:a("keySets.form.fields.tags.tooltip")}});return(r,m)=>(e.openBlock(),e.createElementBlock("div",ha,[e.createVNode(e.unref($t),{config:t.config,"config-schema":l.value,"fetch-url":o.value,"hide-title":t.hideTitle,"onCopy:success":m[0]||(m[0]=C=>r.$emit("copy:success",C)),"onFetch:error":m[1]||(m[1]=C=>r.$emit("fetch:error",C)),"onFetch:success":m[2]||(m[2]=C=>r.$emit("fetch:success",C)),onLoading:m[3]||(m[3]=C=>r.$emit("loading",C))},null,8,["config","config-schema","fetch-url","hide-title"])]))}});P.KeySetConfigCard=ba,P.KeySetForm=ka,P.KeySetList=fa,Object.defineProperty(P,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(P,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):(P=typeof globalThis<"u"?globalThis:P||self,e(P["kong-ui-public-entities-key-sets"]={},P.Vue,P.VueRouter,P["kong-ui-public-i18n"],P.axios,P.Kongponents))})(this,function(P,e,X,z,we,Be){"use strict";const xe={keySets:{title:"Key Sets",list:{toolbar_actions:{new_key_set:"New Key Set"},table_headers:{name:"Name",id:"ID",tags:"Tags"},empty_state:{title:"Configure a New Key Set",description:"A Key Set object holds a collection of asymmetric key objects. This entity allows to logically group keys by their purpose."}},actions:{create:"New Key Set",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",clear:"Clear",view:"View Details"},search:{placeholder:"Filter by exact name or ID"},delete:{title:"Delete a Key Set",description:"Deleting this key set will also delete keys associated. This action cannot be reversed so make sure to check the key set usage before deleting."},errors:{general:"Key sets could not be retrieved",delete:"The key set could not be deleted at this time.",copy:"Failed to copy to clipboard"},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 set."}},fields:{name:{label:"Name",placeholder:"Enter a unique name for this key set"},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."}}}}};function _e(){const t=z.createI18n("en-us",xe);return{i18n:t,i18nT:z.i18nTComponent(t)}}const Y={useI18n:_e},G={list:{konnect:"/api/runtime_groups/{controlPlaneId}/key-sets",kongManager:"/{workspace}/key-sets"},form:{konnect:{create:"/api/runtime_groups/{controlPlaneId}/key-sets",edit:"/api/runtime_groups/{controlPlaneId}/key-sets/{id}"},kongManager:{create:"/{workspace}/key-sets",edit:"/{workspace}/key-sets/{id}"}}};var ne=(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))(ne||{}),Z=(t=>(t.Edit="edit",t.Create="create",t))(Z||{}),U=(t=>(t[t.Loading=0]="Loading",t[t.Idle=1]="Idle",t[t.NoResults=2]="NoResults",t[t.Error=3]="Error",t))(U||{}),D=(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))(D||{}),A=(t=>(t.Basic="basic",t.Advanced="advanced",t.Plugin="plugin",t))(A||{});function v(t={}){return{axiosInstance:we.create({withCredentials:!0,timeout:3e4,...t})}}function Ve(){return{debounce:(t,n)=>{let a;return(...o)=>{clearTimeout(a),a=window==null?void 0:window.setTimeout(()=>{t(...o)},n)}}}}const ee="khcp-user-table-preferences",Ne={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function Ie(){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(ee));return!a||!Object.keys(a).length?new Map:new Map(Object.entries(a))};return{setTablePreferences:(a,o)=>{try{const l=n();l.set(a,o),localStorage.setItem(ee,JSON.stringify(Object.fromEntries(l.entries())))}catch(l){console.error("useTablePreferences(setTablePreferences)",l)}},getTablePreferences:a=>{const o=n();return(o==null?void 0:o.get(a))||void 0||Ne},deleteAllTablePreferences:()=>{localStorage.removeItem(ee)}}}const Ee={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},$e={actions:{save:"Save",cancel:"Cancel",back:"Back"},errors:{edit:"The entity could not be edited at this time."}},Te={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Ke={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}"}},De={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},Me={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},qe={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Fe={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"}},Pe={deleteModal:Ee,baseForm:$e,baseTable:Te,baseConfigCard:Ke,filter:De,debouncedFilter:Me,errors:qe,toggleModal:Fe};function te(){const t=z.createI18n("en-us",Pe);return{i18n:t,i18nT:z.i18nTComponent(t)}}function Re(t,n,a,o={fetchedItemsKey:"data",searchKeys:["id"]}){a||(a="100");const{axiosInstance:l}=v({headers:t.requestHeaders}),{i18n:{t:r}}=te(),{debounce:m}=Ve(),C=m(async d=>{await i(d)},200),g=e.ref(!1),c=e.ref(""),f=e.ref(""),y=e.ref([]),I=e.ref(void 0),h=e.unref(n);let E=`${t.apiBaseUrl}${h}`;t.app==="konnect"?E=E.replace(/{controlPlaneId}/gi,(t==null?void 0:t.controlPlaneId)||""):t.app==="kongManager"&&(E=E.replace(/\/{workspace}/gi,t!=null&&t.workspace?`/${t.workspace}`:""));const B=async()=>{try{g.value=!0;const{data:d}=await l.get(`${E}?size=${a}`);d!=null&&d.next||(I.value=o.fetchedItemsKey in d?d[o.fetchedItemsKey]:[]),y.value=o.fetchedItemsKey in d?d[o.fetchedItemsKey]:[]}catch{y.value=[],c.value=r("debouncedFilter.errors.fetch")}finally{g.value=!1}},s=e.ref(""),i=async d=>{var u,x;if(s.value!==d)if(s.value=d||"",I.value===void 0)try{g.value=!0,c.value="",f.value="";let p=E+"";d&&(p+=`/${d}`);const{data:b}=await l.get(`${p}?size=${a}`);o.fetchedItemsKey in b?y.value=b[o.fetchedItemsKey]:b!=null&&b.id?y.value=[b]:y.value=[]}catch(p){((u=p==null?void 0:p.response)==null?void 0:u.status)===404?f.value=r("debouncedFilter.errors.invalid"):(y.value=[],c.value=r("debouncedFilter.errors.fetch"))}finally{g.value=!1}else g.value=!0,f.value="",d?(y.value=(x=I.value)==null?void 0:x.filter(p=>{var b;let k=!1;for(const N of o.searchKeys){const K=typeof p[N]=="string"?(b=p[N])==null?void 0:b.toLowerCase():p[N];K!=null&&K.includes(d.toLowerCase())&&(k=!0)}return k}),(!y.value||!y.value.length)&&(f.value=r("debouncedFilter.errors.invalid"))):y.value=I.value,g.value=!1};return{loading:g,error:c,validationError:f,results:y,allRecords:I,loadItems:B,debouncedQueryChange:C}}function Ae(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="",l=>`${o.value.href}/${l}`}function je(){const{i18n:{t}}=te();return{getMessageFromError:n=>{var a,o,l;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(r=>{let m=t("errors.unexpected");return r.messages&&typeof r.messages=="object"&&r.messages.length&&(m=r.messages.join(", ")),r.field?`${r.field} - ${m}`:m}).join("; ");if(n.response.data.message){const{message:r}=n.response.data;return Array.isArray(r)?(l=r[0])!=null&&l.constraints?Object.values(r[0].constraints)[0]:r[0]:r}if(typeof n.response.data=="string")return n.response.data;if(typeof n.response.data=="object")return Object.keys(n.response.data).map(r=>`${r} ${n.response.data[r]}`).join(", ")}return n.message||t("errors.unexpected")}}}function re(t,n){const a=e.ref(e.unref(t)),o=e.ref(e.unref(n)),l=e.computed(()=>!!(a.value.app==="konnect"||a.value.isExactMatch)),r=e.computed(()=>o.value.startsWith("/")?new URL(`${window.location.origin}${o.value}`):new URL(o.value));return m=>{const{page:C,pageSize:g,offset:c,sortColumnKey:f,sortColumnOrder:y,query:I}=m;try{let h=new URL(r.value.href);return l.value&&I?(h.search="",h=new URL(`${h.href}/${I}/`)):(l.value||new URLSearchParams(I).forEach((E,B)=>{h.searchParams.append(B,E)}),f&&h.searchParams.append("sort_by",f),y==="desc"&&h.searchParams.append("sort_desc","1"),h.searchParams.append("size",String(g))),c&&C!==1&&h.searchParams.append("offset",String(c)),h.href}catch(h){return console.error("RouteList(fetcher)",h),o.value}}}function Le(t,n,a="data"){const o=e.unref(n),{axiosInstance:l}=v({headers:t.requestHeaders}),r=re(t,o),m=e.ref({status:U.Idle});return{fetcher:async C=>{try{m.value={status:U.Loading};const g=r(C),{data:c}=await l.get(g),f=a&&a.replace(/[^\w-_]/gi,"");let y;c[f]&&Array.isArray(c[f])?y=c[f]:y=Object.keys(c).length?[c]:[];const I={data:y,total:y.length,...c.offset?{pagination:{offset:c.offset}}:null};return m.value={status:U.Idle,response:I},I}catch(g){const c={data:[],total:0};return C.query&&g.response.status===404?(m.value={status:U.NoResults,response:c,error:g},c):(m.value={status:U.Error,response:c,error:g},c)}},fetcherState:m}}function Oe(){return{convertKeyToTitle:(t,n="_")=>t?t.split(n).map(a=>a.toLowerCase()==="id"?a.toUpperCase():a.charAt(0).toUpperCase()+a.substring(1)).join(" "):""}}const le=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,ie=t=>{if(typeof t!="string")throw new TypeError("Invalid argument expected string");const n=t.match(le);if(!n)throw new Error(`Invalid argument not valid semver ('${t}' received)`);return n.shift(),n},se=t=>t==="*"||t==="x"||t==="X",ce=t=>{const n=parseInt(t,10);return isNaN(n)?t:n},Ue=(t,n)=>typeof t!=typeof n?[String(t),String(n)]:[t,n],He=(t,n)=>{if(se(t)||se(n))return 0;const[a,o]=Ue(ce(t),ce(n));return a>o?1:a<o?-1:0},de=(t,n)=>{for(let a=0;a<Math.max(t.length,n.length);a++){const o=He(t[a]||"0",n[a]||"0");if(o!==0)return o}return 0},Je=(t,n)=>{const a=ie(t),o=ie(n),l=a.pop(),r=o.pop(),m=de(a,o);return m!==0?m:l&&r?de(l.split("."),r.split(".")):l||r?l?-1:1:0},pe=(t,n,a)=>{ze(a);const o=Je(t,n);return me[a].includes(o)},me={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},ue=Object.keys(me),ze=t=>{if(typeof t!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof t}`);if(ue.indexOf(t)===-1)throw new Error(`Invalid operator, expected one of ${ue.join("|")}`)},We=t=>typeof t=="string"&&/^[v\d]/.test(t)&&le.test(t);function Ge(t){const{gatewayInfo:n,supportedRange:a}=t;if(!n)return!0;const{edition:o,version:l}=n;if(!We(l))return console.error("Invalid version"),!1;const r=a[o];if(!r)return!1;const[m,C]=r;return!(m&&pe(l,m,"<")||C&&pe(l,C,">"))}const F={useAxios:v,useDebouncedFilter:Re,useDeleteUrlBuilder:Ae,useErrors:je,useFetcher:Le,useFetchUrlBuilder:re,useStringHelpers:Oe,useI18n:te,useGatewayFeatureSupported:Ge},Qe={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},Xe="Copy to clipboard",Ye={message:Qe,iconTitle:Xe},Ze="kong-ui-copy-uuid-notify",ve={class:"kong-ui-copy-uuid"},et=["title"],tt=["onClick"],fe=15,at=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}=z.createI18n("en-us",Ye),l=a.notify||e.inject(Ze,()=>{}),r=e.computed(()=>!!(a.tooltip&&a.successTooltip)),m=e.ref(a.tooltip),C=e.computed(()=>a.tooltip?{label:m.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),g=e.computed(()=>a.format==="redacted"?"*****":a.format==="deleted"?`*${a.uuid.substring(0,5)}`:a.uuid),c=y=>{m.value=y,setTimeout(()=>{m.value=a.tooltip},1800)},f=y=>{if(!y(a.uuid)){typeof l=="function"&&l({type:"error",message:o("message.fail")}),r.value?c(o("message.fail")):n("error",a.uuid);return}const I=a.uuid.length>fe,h=a.format==="hidden"||a.format==="redacted"?o("message.success.prefix"):`"${a.uuid.substring(0,fe)+(I?"...":"")}"`;typeof l=="function"&&l({type:"success",message:`${h}${o("message.success.content")}`}),r.value?c(a.successTooltip):n("success",a.uuid)};return(y,I)=>{const h=e.resolveComponent("KIcon"),E=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",ve,[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,et)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tooltip?"KTooltip":"div"),e.mergeProps(C.value,{class:"uuid-icon-wrapper"}),{default:e.withCtx(()=>[e.createVNode(E,null,{default:e.withCtx(({copyToClipboard:B})=>[e.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:e.withModifiers(s=>f(B),["stop"])},[e.createVNode(h,{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,tt)]),_:1})]),_:1},16))])}}}),ot=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},ye=ot(at,[["__scopeId","data-v-e4ea1359"]]),nt={key:0,class:"config-card-fieldset-title"},rt=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}}=F.useI18n(),{convertKeyToTitle:o}=F.useStringHelpers(),l=e.computed(()=>n.item.key??"json-array-item"),r=e.computed(()=>n.item.value??n.item),m=e.computed(()=>{const g=JSON.parse(JSON.stringify(r.value));return n.isArrayItem&&delete g.name,g}),C=e.computed(()=>{var g;return n.isArrayItem?(g=r.value)!=null&&g.name?o(r.value.name,"_"):a("baseConfigCard.general.entryTitle",{index:n.index}):""});return(g,c)=>(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",nt,[e.createElementVNode("b",null,e.toDisplayString(C.value),1)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(m.value),(f,y)=>(e.openBlock(),e.createBlock(ke,{key:`${l.value}-property-${y}`,item:{key:f,label:e.unref(o)(f),value:m.value[f]}},null,8,["item"]))),128))]),_:1},8,["class"]))}}),j=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},ge=j(rt,[["__scopeId","data-v-68ca83ec"]]),lt=j(e.defineComponent({__name:"InternalLinkItem",props:{item:{type:Object,required:!0}},emits:["navigation-click"],setup(t){const{i18n:{t:n}}=F.useI18n();return(a,o)=>{const l=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(l,{appearance:"btn-link",class:"navigation-button",onClick:o[0]||(o[0]=r=>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"]]),it=e.defineComponent({__name:"StatusBadge",props:{status:{type:Boolean,default:!1}},setup(t){const{i18n:{t:n}}=F.useI18n();return(a,o)=>{const l=e.resolveComponent("KBadge");return e.openBlock(),e.createBlock(l,{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"])}}}),st="#0044f4",ct="#e0e4ea",dt="#3a3f51",pt="1px",mt={class:"config-card-details-row"},ut=["data-testid"],ft=["data-testid"],yt=["data-testid"],gt=["data-testid"],kt={key:1},ht=["data-testid"],bt=["data-testid"],Ct=["data-testid"],St=["data-testid"],wt=["title"],Bt={name:"ConfigCardItem",components:{CopyUuid:ye,JsonCardItem:ge,StatusBadge:it,InternalLinkItem:lt}},xt=e.defineComponent({...Bt,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(y=>({"2c6ac268":c.value?"none":`solid ${e.unref(pt)} ${e.unref(ct)}`,c7a65802:g.value&&m.value?"block":"flex","778426fe":g.value&&m.value?"100%":a.slim?"50%":"25%","777f9b48":g.value&&m.value?"100%":a.slim?"50%":"75%"}));const o=e.useSlots(),{i18n:{t:l,formatUnixTimeStamp:r}}=F.useI18n(),m=e.computed(()=>a.item.value!==void 0&&a.item.value!==null&&a.item.value!==""),C=e.computed(()=>!!(a.item.tooltip||o["label-tooltip"])),g=e.computed(()=>a.item.type===D.Json||a.item.type===D.JsonArray),c=e.computed(()=>a.item.type===D.JsonArray),f=e.computed(()=>{switch(a.item.type){case D.ID:return{tag:"CopyUuid",attrs:{"data-testid":`${a.item.key}-copy-uuid`,"success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,uuid:a.item.value,notify:()=>{}}};case D.IdArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{"success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,notify:()=>{}}};case D.Redacted:return{tag:"CopyUuid",attrs:{"data-testid":`${a.item.key}-copy-uuid-redacted`,format:"redacted","success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,uuid:a.item.value,notify:()=>{}}};case D.RedactedArray:return{tag:"div",additionalComponent:"CopyUuid",childAttrs:{format:"redacted","success-tooltip":l("baseConfigCard.copy.success"),tooltip:l("baseConfigCard.copy.tooltip",{label:a.item.label}),truncated:!1,notify:()=>{}}};case D.Date:return{tag:"div",attrs:{"data-testid":`${a.item.key}-date`},text:r(a.item.value)};case D.BadgeStatus:return{tag:"StatusBadge",attrs:{"data-testid":`${a.item.key}-badge-status`,status:a.item.value}};case D.BadgeTag:return{tag:"div",additionalComponent:"KBadge"};case D.BadgeMethod:return{tag:"div",additionalComponent:"KMethodBadge"};case D.LinkInternal:return{tag:"InternalLinkItem",attrs:{"data-testid":`${a.item.key}-internal-link`,item:a.item,onNavigationClick:y=>{n("navigation-click",y)}}};case D.LinkExternal:return{tag:"KExternalLink",attrs:{"data-testid":`${a.item.key}-external-link`,href:a.item.value},text:a.item.value};case D.Json:return{tag:"JsonCardItem",attrs:{"data-testid":`${a.item.key}-json-content`,item:a.item}};case D.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(y,I)=>{const h=e.resolveComponent("KLabel"),E=e.resolveComponent("KBadge"),B=e.resolveComponent("KMethodBadge");return e.openBlock(),e.createElementBlock("div",mt,[e.createElementVNode("div",{class:"config-card-details-label","data-testid":`${t.item.key}-label`},[e.renderSlot(y.$slots,"label",{item:t.item},()=>[e.createVNode(h,{"tooltip-attributes":{maxWidth:"500px"}},e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.item.label)+" ",1)]),_:2},[C.value?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{"data-testid":`${t.item.key}-label-tooltip`},[e.renderSlot(y.$slots,"label-tooltip",{},()=>[e.createTextVNode(e.toDisplayString(t.item.tooltip),1)],!0)],8,ft)]),key:"0"}:void 0]),1024)],!0)],8,ut),e.createElementVNode("div",{class:"config-card-details-value","data-testid":`${t.item.key}-property-value`},[e.renderSlot(y.$slots,t.item.key,{rowValue:t.item.value},()=>[m.value?(e.openBlock(),e.createElementBlock("div",kt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f.value.tag),e.normalizeProps(e.guardReactiveProps(f.value.attrs)),{default:e.withCtx(()=>[f.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,(s,i)=>(e.openBlock(),e.createBlock(E,{key:`${t.item.key}-badge-tag-${i}`,class:"config-badge","data-testid":`${t.item.key}-badge-tag-${i}`,"truncation-tooltip":s},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s),1)]),_:2},1032,["data-testid","truncation-tooltip"]))),128))],8,ht)):e.createCommentVNode("",!0),f.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,(s,i)=>(e.openBlock(),e.createBlock(e.unref(ye),e.mergeProps(f.value.childAttrs,{key:`${t.item.key}-copy-uuid-${i}`,"data-testid":`${t.item.key}-copy-uuid-${i}`,uuid:s}),null,16,["data-testid","uuid"]))),128))],8,bt)):f.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,(s,i)=>(e.openBlock(),e.createBlock(B,{key:`${t.item.key}-badge-method-${i}`,class:"config-badge","data-testid":`${t.item.key}-badge-method-${i}`,"is-rounded":"",label:s,method:e.unref(Be.MethodsArray).includes(s.toLowerCase())?s.toLowerCase():"custom"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s),1)]),_:2},1032,["data-testid","label","method"]))),128))],8,Ct)):e.createCommentVNode("",!0),f.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,(s,i)=>(e.openBlock(),e.createBlock(ge,{key:`json-array-item-${i}`,index:i,"is-array-item":"",item:s},null,8,["index","item"]))),128))],8,St)):(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(f.value.text),11,wt))]),_:1},16))])):(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${t.item.key}-no-value`}," – ",8,gt))],!0)],8,yt)])}}}),ke=j(xt,[["__scopeId","data-v-a3c5ab01"]]),_t={"data-testid":"config-card-title"},Vt={class:"config-card-actions"},Nt={class:"config-card-details-section"},It=["data-testid"],Et={key:0,class:"config-card-prop-section-title"},$t=j(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,l=e.useSlots(),{i18n:{t:r}}=F.useI18n(),{getMessageFromError:m}=F.useErrors(),{convertKeyToTitle:C}=F.useStringHelpers(),{axiosInstance:g}=F.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),c={id:{type:D.ID,label:r("baseConfigCard.commonFields.id_label"),order:0,section:A.Basic},name:{order:1,section:A.Basic},enabled:{type:D.BadgeStatus,order:2,section:A.Basic},updated_at:{type:D.Date,label:r("baseConfigCard.commonFields.updated_at_label"),order:3,section:A.Basic},created_at:{type:D.Date,label:r("baseConfigCard.commonFields.created_at_label"),order:4,section:A.Basic},tags:{type:D.BadgeTag,order:-1,section:A.Basic}},f=e.ref(!1),y=e.ref(!1),I=e.ref(""),h=e.ref(),E=e.computed(()=>{var p,b,k;if(!h.value)return[];const N=[],K=Object.keys(h.value).length;for(const S in h.value){const _=(b=(p=o.configSchema)==null?void 0:p[S])==null?void 0:b.order,V=(k=c[S])==null?void 0:k.order;let $=K;(V||V===0)&&($=V===-1?K+1:V),_&&($=_===-1?K+1:_),N.push([S,$])}return N.sort(function(S,_){return S[1]-_[1]}),N.map(S=>{var _,V;const $=S[0],R=(_=h.value)==null?void 0:_[$],H=((V=o.configSchema)==null?void 0:V[$])||{},L=c[$];return{key:$,value:R,hidden:H.hidden||!1,type:H.type??((L==null?void 0:L.type)||D.Text),label:H.label??((L==null?void 0:L.label)||C($)),tooltip:H.tooltip??((L==null?void 0:L.tooltip)||void 0),section:H.section??((L==null?void 0:L.section)||A.Advanced)}}).filter(S=>!S.hidden&&S.key!==o.pluginConfigKey)}),B=e.computed(()=>{var p,b;if(!h.value||!o.pluginConfigKey)return[];const k=h.value[o.pluginConfigKey]||{},N=Object.keys(k).length,K=[];for(const S in k){const _=(b=(p=o.pluginConfigSchema)==null?void 0:p[S])==null?void 0:b.order,V=k[S];let $=V!=null&&V!==""?N-1:N;_&&($=_===-1?N+1:_),K.push([S,$])}return K.sort(function(S,_){return S[1]-_[1]}),K.map(S=>{var _;const V=S[0],$=k[V],R=((_=o.pluginConfigSchema)==null?void 0:_[V])||{};return{key:V,value:$,hidden:R.hidden||!1,type:R.type??D.Text,label:R.label??C(V),tooltip:R.tooltip??void 0,section:A.Plugin}}).filter(S=>!S.hidden)}),s=e.computed(()=>{var p,b,k,N;return{basic:(p=E.value)==null?void 0:p.filter(K=>K.section===A.Basic),advanced:(b=E.value)==null?void 0:b.filter(K=>K.section===A.Advanced),plugin:(N=B.value)==null?void 0:N.concat((k=E.value)==null?void 0:k.filter(K=>K.section===A.Plugin))}}),i=e.computed(()=>{const p=[];return s.value.basic.length&&p.push("basic"),s.value.advanced.length&&p.push("advanced"),s.value.plugin.length&&p.push("plugin"),p}),d=p=>!!(p.tooltip||l[`${p.key}-label-tooltip`]),u=e.computed(()=>{var p,b;let k=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?k=k.replace(/{controlPlaneId}/gi,((p=o.config)==null?void 0:p.controlPlaneId)||""):o.config.app==="kongManager"&&(k=k.replace(/\/{workspace}/gi,(b=o.config)!=null&&b.workspace?`/${o.config.workspace}`:"")),k=k.replace(/{id}/gi,o.config.entityId),k}),x=p=>{h.value&&p(JSON.stringify(h.value))?n("copy:success",h.value):n("copy:error")};return e.watch(f,p=>{n("loading",p)},{immediate:!0}),e.onBeforeMount(async()=>{y.value=!1,f.value=!0;try{const{data:p}=await g.get(u.value);if(o.dataKey)if(typeof p[o.dataKey]<"u")h.value={...p[o.dataKey]};else throw new Error(r("errors.dataKeyUndefined",{dataKey:o.dataKey}));else h.value={...p};Object.keys(o.configSchema).filter(b=>o.configSchema[b].forceShow).forEach(b=>{h.value&&typeof h.value[b]>"u"&&(h.value[b]=null)}),n("fetch:success",p)}catch(p){const b=m(p);I.value=b.startsWith("code")?r("baseConfigCard.errors.load"):b,y.value=!0,n("fetch:error",p)}finally{f.value=!1}}),(p,b)=>{const k=e.resolveComponent("KButton"),N=e.resolveComponent("KClipboardProvider"),K=e.resolveComponent("KSkeleton"),S=e.resolveComponent("KEmptyState"),_=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(_,{"border-variant":"noBorder",class:"kong-ui-entity-base-config-card"},e.createSlots({actions:e.withCtx(()=>[e.createElementVNode("div",Vt,[e.renderSlot(p.$slots,"actions",{},void 0,!0),e.createVNode(N,null,{default:e.withCtx(({copyToClipboard:V})=>[!f.value&&!y.value?(e.openBlock(),e.createBlock(k,{key:0,appearance:"btn-link","data-testid":"json-copy-button",onClick:$=>x(V)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("baseConfigCard.actions.copy")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0)]),_:1})])]),body:e.withCtx(()=>[f.value?(e.openBlock(),e.createBlock(K,{key:0,"data-testid":"config-card-loader","table-columns":2,type:"table"})):y.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",Nt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,V=>(e.openBlock(),e.createElementBlock("div",{key:`config-card-details-${V}-props`,class:e.normalizeClass(`config-card-details-${V}-props`),"data-testid":`config-card-details-${V}-props`},[V!=="basic"?(e.openBlock(),e.createElementBlock("div",Et,e.toDisplayString(V==="advanced"?e.unref(r)("baseConfigCard.sections.advanced"):e.unref(r)("baseConfigCard.sections.plugin")),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value[V],$=>(e.openBlock(),e.createBlock(ke,{key:$.key,item:$},e.createSlots({label:e.withCtx(()=>[e.renderSlot(p.$slots,`${$.key}-label`,{row:$},void 0,!0)]),[$.key]:e.withCtx(({rowValue:R})=>[e.renderSlot(p.$slots,$.key,{row:$,rowValue:R},void 0,!0)]),_:2},[d($)?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(p.$slots,`${$.key}-label-tooltip`,{row:$},void 0,!0)]),key:"0"}:void 0]),1032,["item"]))),128))],10,It))),128))])]),_:2},[t.hideTitle?void 0:{name:"title",fn:e.withCtx(()=>[e.createElementVNode("div",_t,[e.renderSlot(p.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("baseConfigCard.title")),1)],!0)])]),key:"0"}]),1024)}}}),[["__scopeId","data-v-b72bbdde"]]),Tt=["onReset","onSubmit"],Kt={class:"form-actions","data-testid":"form-actions"},Dt=j(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,l=X.useRouter(),{i18n:{t:r}}=F.useI18n(),{getMessageFromError:m}=F.useErrors(),{axiosInstance:C}=F.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),g=e.ref(!1),c=e.ref(!1),f=e.ref(""),y=e.computed(()=>o.canSubmit===!1||o.isReadonly),I=e.computed(()=>{var s,i;if(!o.editId)return"";let d=`${o.config.apiBaseUrl}${o.fetchUrl}`;return o.config.app==="konnect"?d=d.replace(/{controlPlaneId}/gi,((s=o.config)==null?void 0:s.controlPlaneId)||""):o.config.app==="kongManager"&&(d=d.replace(/\/{workspace}/gi,(i=o.config)!=null&&i.workspace?`/${o.config.workspace}`:"")),d=d.replace(/{id}/gi,o.editId),d}),h=()=>{o.config.cancelRoute?l.push(o.config.cancelRoute):E()},E=()=>{n("cancel")},B=()=>{y.value||n("submit")};return e.watch(()=>g.value,s=>{n("loading",s)},{immediate:!0}),e.onBeforeMount(async()=>{if(o.editId)try{c.value=!1,g.value=!0;const{data:s}=await C.get(I.value);n("fetch:success",s)}catch(s){const i=m(s);f.value=i.startsWith("code")?r("baseForm.errors.edit"):i,c.value=!0,n("fetch:error",s)}finally{g.value=!1}}),(s,i)=>{const d=e.resolveComponent("KSkeleton"),u=e.resolveComponent("KEmptyState"),x=e.resolveComponent("KAlert"),p=e.resolveComponent("KButton"),b=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(b,{class:"kong-ui-entity-base-form"},{body:e.withCtx(()=>[g.value?(e.openBlock(),e.createBlock(d,{key:0,type:"form"})):c.value?(e.openBlock(),e.createBlock(u,{key:1,"cta-text":e.unref(r)("baseForm.actions.back"),"data-testid":"form-fetch-error","handle-click":h,"is-error":!0},{message:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(f.value),1)]),_:1},8,["cta-text"])):(e.openBlock(),e.createElementBlock("form",{key:2,"data-testid":"form-content",onReset:e.withModifiers(E,["prevent"]),onSubmit:e.withModifiers(B,["prevent"])},[e.renderSlot(s.$slots,"default",{},void 0,!0),t.errorMessage?(e.openBlock(),e.createBlock(x,{key:0,"alert-message":t.errorMessage,appearance:"danger","data-testid":"form-error"},null,8,["alert-message"])):e.createCommentVNode("",!0),e.createElementVNode("div",Kt,[e.renderSlot(s.$slots,"form-actions",{},()=>[e.createVNode(p,{appearance:"outline","data-testid":"form-cancel",disabled:t.isReadonly,type:"reset"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("baseForm.actions.cancel")),1)]),_:1},8,["disabled"]),e.createVNode(p,{appearance:"primary","data-testid":"form-submit",disabled:y.value,type:"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("baseForm.actions.save")),1)]),_:1},8,["disabled"])],!0)])],40,Tt))]),_:3})}}}),[["__scopeId","data-v-2286e5f2"]]),Mt={key:0},qt=j(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 B;return((B=n.rowEl)==null?void 0:B.querySelector(`[data-testid="${n.keyName}"]`))||null}),o=e.computed(()=>{var B;return((B=a.value)==null?void 0:B.querySelector('[role="button"]'))||null}),l=e.computed(()=>{var B,s;const i=(B=n.rowEl)==null?void 0:B.querySelectorAll("td");return i?((s=i[0])==null?void 0:s.getAttribute("data-testid"))===n.keyName:!1});let r;const m=()=>{r&&(r.disconnect(),r=void 0)},C=()=>{var B,s,i;c.value=((B=o.value)==null?void 0:B.getBoundingClientRect().width)||0,f.value=((s=a.value)==null?void 0:s.clientWidth)||0,y.value=((i=g.value)==null?void 0:i.innerText)||""},g=e.ref({}),c=e.ref(0),f=e.ref(0),y=e.ref(""),I=e.computed(()=>[o.value,a.value]),h=e.watch(I,B=>{if(l.value&&(m(),"ResizeObserver"in window&&window)){r=new ResizeObserver(s=>{window.requestAnimationFrame(()=>{!Array.isArray(s)||!s.length||C()})});for(const s of B)s&&r.observe(s)}},{immediate:!0,flush:"post",deep:!0}),E=e.computed(()=>l.value?c.value>f.value:!1);return e.onMounted(()=>{C()}),e.onUnmounted(()=>{h()}),(B,s)=>{const i=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("span",{ref_key:"contentRef",ref:g,class:"content-wrapper"},[l.value?(e.openBlock(),e.createElementBlock("span",Mt,[e.createVNode(i,{disabled:!E.value,label:y.value,"max-width":"300",placement:"bottomStart"},{default:e.withCtx(()=>[e.renderSlot(B.$slots,"default",{},void 0,!0)]),_:3},8,["disabled","label"])])):e.renderSlot(B.$slots,"default",{key:1},void 0,!0)],512)}}}),[["__scopeId","data-v-f8a220e9"]]),Ft={class:"toolbar-container"},Pt={key:0,class:"toolbar-button-container"},Rt=["data-testid"],At=j(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}}=F.useI18n(),l=e.computed(()=>a.cacheIdentifier||a.preferencesStorageKey),r=u=>u.hasData||!!a.query,m=e.computed(()=>{const u=[];return Object.keys(a.tableHeaders).forEach(x=>{const p=a.tableHeaders[x];u.push({label:p.label??x,key:x,sortable:p.sortable??!1})}),a.enableEntityActions&&u.push({key:"actions",hideLabel:!0}),u}),C=u=>({"data-rowid":u.id,"data-testid":u.name,...a.rowAttributes(u)}),g=e.ref({}),c=u=>{var x;return(x=g.value)==null?void 0:x.$el.querySelector(`[data-rowid="${u.id}"]`)},f=u=>{const x={"data-testid":u.headerKey,...a.cellAttributes(u)};return u.colIndex===0&&(x.style={maxWidth:"250px",overflowX:"hidden",textOverflow:"ellipsis"}),x},y=()=>{n("empty-state-cta-clicked"),I()},I=()=>{n("clear-search-input")},h=(u,x)=>{n("click:row",x)},E=u=>{n("sort",u)},{setTablePreferences:B,getTablePreferences:s}=Ie(),i=e.computed(()=>{const u=s(a.preferencesStorageKey);return{...a.initialFetcherParams,...u}}),d=u=>{a.preferencesStorageKey&&B(a.preferencesStorageKey,u)};return(u,x)=>{const p=e.resolveComponent("KIcon"),b=e.resolveComponent("KButton"),k=e.resolveComponent("KDropdownMenu"),N=e.resolveComponent("KTable"),K=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(K,{class:"kong-ui-entity-base-table",title:t.title},{body:e.withCtx(()=>[e.createVNode(N,{ref_key:"tableRefs",ref:g,"cache-identifier":l.value,"cell-attrs":f,"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:m.value,"hide-pagination-when-optional":"","initial-fetcher-params":i.value,"is-loading":t.isLoading,"pagination-type":t.paginationType,"row-attrs":C,"search-input":t.query,onKtableEmptyStateCtaClicked:y,"onRow:click":h,onSort:x[0]||(x[0]=S=>E(S)),"onUpdate:tablePreferences":d},e.createSlots({toolbar:e.withCtx(({state:S})=>[e.withDirectives(e.createElementVNode("div",Ft,[e.renderSlot(u.$slots,"toolbar-filter",{},void 0,!0),u.$slots["toolbar-button"]?(e.openBlock(),e.createElementBlock("div",Pt,[e.renderSlot(u.$slots,"toolbar-button",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,r(S)]])]),actions:e.withCtx(({row:S,rowKey:_,rowValue:V})=>[e.createElementVNode("div",{class:"actions-container","data-testid":S.name},[e.createVNode(k,{"kpop-attributes":{placement:"bottomEnd"},width:t.dropdownMenuWidth},{items:e.withCtx(()=>[e.renderSlot(u.$slots,"actions",{row:S,rowKey:_,rowValue:V},void 0,!0)]),default:e.withCtx(()=>[e.createVNode(b,{class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:e.withCtx(()=>[e.createVNode(p,{color:e.unref(dt),icon:"more",size:"16"},null,8,["color"])]),_:1})]),_:2},1032,["width"])],8,Rt)]),_:2},[e.renderList(t.tableHeaders,(S,_)=>({name:_,fn:e.withCtx(({row:V,rowKey:$,rowValue:R})=>[e.createVNode(qt,{"key-name":String(_),"row-el":c(V)},{default:e.withCtx(()=>[e.renderSlot(u.$slots,_,{row:V,rowKey:$,rowValue:R},()=>[e.createTextVNode(e.toDisplayString(R),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"},Lt={key:1,class:"description"},Ot=j(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}=F.useI18n(),l=e.computed(()=>a.needConfirm?a.entityName:""),r=()=>{n("cancel")},m=()=>{n("proceed")};return(C,g)=>{const c=e.resolveComponent("KAlert"),f=e.resolveComponent("KPrompt");return e.openBlock(),e.createBlock(f,{"action-button-text":"Yes, delete","action-pending":t.actionPending,class:"kong-ui-entity-delete-modal","confirmation-text":l.value,"is-visible":t.visible,title:t.title,type:"danger",onCanceled:r,onProceed:m},{"body-content":e.withCtx(()=>[t.error?(e.openBlock(),e.createElementBlock("div",jt,[e.createVNode(c,{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||C.$slots.description?(e.openBlock(),e.createElementBlock("div",Lt,[e.renderSlot(C.$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"]]),Ut={fill:"none",height:"20",viewBox:"0 0 20 20",width:"20",xmlns:"http://www.w3.org/2000/svg"},Ht={id:"mask0_180_20349",height:"20",maskUnits:"userSpaceOnUse",style:{"mask-type":"alpha"},width:"20",x:"0",y:"0"},Jt=["fill"],zt={mask:"url(#mask0_180_20349)"},Wt=["fill"],Gt=e.defineComponent({__name:"IconFilter",props:{color:{type:String,default:`var(--kong-ui-entity-filter-color, ${st})`}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("svg",Ut,[e.createElementVNode("mask",Ht,[e.createElementVNode("rect",{fill:t.color,height:"20",width:"20"},null,8,Jt)]),e.createElementVNode("g",zt,[e.createElementVNode("path",{d:"M8 14.5V13H12V14.5H8ZM5 10.75V9.25H15V10.75H5ZM3 7V5.5H17V7H3Z",fill:t.color},null,8,Wt)])]))}}),Qt={key:1,class:"kong-ui-entity-filter"},Xt={class:"menu-item-title"},Yt={class:"menu-item-indicator"},Zt={class:"menu-item-body"},vt=["for"],ea={class:"menu-item-buttons"},ta=j(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}}=F.useI18n(),l=e.ref(!1),r=e.ref({}),m=e.computed(()=>{const s=[];return new URLSearchParams(a.modelValue).forEach((i,d)=>{i!==""&&s.push(d)}),s}),C=e.computed(()=>{const s=a.config.fields;return Object.keys(s).filter(i=>s[i].searchable).map(i=>({label:s[i].label||i,value:i}))});e.watch(()=>a.modelValue,s=>{r.value={},new URLSearchParams(s).forEach((i,d)=>{r.value[d]=i})});const g=()=>{l.value=!l.value},c=s=>{n("update:modelValue",s)},f=s=>`filter-${s}`,y=s=>{var i,d;return(((d=(i=a.config.schema)==null?void 0:i[s])==null?void 0:d.values)??[]).map(u=>({value:u,label:u}))},I=s=>{var i,d;return((d=(i=a.config.schema)==null?void 0:i[s])==null?void 0:d.type)??"text"},h=s=>{r.value={...r.value,[s]:""},B()},E=()=>{r.value={},B(!0)},B=(s=!1)=>{const i=Object.keys(r.value).reduce((d,u)=>(r.value[u]&&(d[u]=`${r.value[u]}`),d),{});s&&(l.value=!1),n("update:modelValue",new URLSearchParams(i).toString())};return(s,i)=>{const d=e.resolveComponent("KInput"),u=e.resolveComponent("KButton"),x=e.resolveComponent("KSelect"),p=e.resolveComponent("KMenuItem"),b=e.resolveComponent("KMenu");return t.config.isExactMatch?(e.openBlock(),e.createBlock(d,{key:0,autocomplete:"off",class:"kong-ui-entity-filter-input","data-testid":"search-input","model-value":t.modelValue,placeholder:t.config.placeholder,"onUpdate:modelValue":c},{icon:e.withCtx(()=>[e.createVNode(Gt)]),_:1},8,["model-value","placeholder"])):(e.openBlock(),e.createElementBlock("div",Qt,[e.createVNode(u,{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(m.value.length>0?`(${m.value.length})`:""),1)]),_:1}),e.withDirectives(e.createElementVNode("div",{class:"kong-ui-entity-filter-backdrop",onClick:g},null,512),[[e.vShow,l.value]]),e.withDirectives(e.createVNode(b,{class:"kong-ui-entity-filter-menu"},{body:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(k,N)=>(e.openBlock(),e.createBlock(p,{key:k.value,"data-testid":k.value,expandable:"","last-menu-item":N===C.value.length-1},{itemTitle:e.withCtx(()=>[e.createElementVNode("span",Xt,[e.createTextVNode(e.toDisplayString(k.label)+" ",1),e.withDirectives(e.createElementVNode("span",Yt,null,512),[[e.vShow,m.value.includes(k.value)]])])]),itemBody:e.withCtx(()=>{var K,S;return[e.createElementVNode("div",Zt,[e.createElementVNode("label",{class:"menu-item-label",for:f(k.value)},e.toDisplayString(e.unref(o)("filter.fieldLabel")),9,vt),((S=(K=t.config.schema)==null?void 0:K[k.value])==null?void 0:S.type)==="select"?(e.openBlock(),e.createBlock(x,{key:0,id:f(k.value),modelValue:r.value[k.value],"onUpdate:modelValue":_=>r.value[k.value]=_,appearance:"select",items:y(k.value),placeholder:e.unref(o)("filter.selectPlaceholder")},null,8,["id","modelValue","onUpdate:modelValue","items","placeholder"])):(e.openBlock(),e.createBlock(d,{key:1,id:f(k.value),modelValue:r.value[k.value],"onUpdate:modelValue":_=>r.value[k.value]=_,autocomplete:"off",placeholder:e.unref(o)("filter.inputPlaceholder"),size:"small",type:I(k.value)},null,8,["id","modelValue","onUpdate:modelValue","placeholder","type"]))]),e.createElementVNode("div",ea,[e.createVNode(u,{appearance:"btn-link","data-testid":"apply-filter",size:"small",onClick:i[0]||(i[0]=_=>B(!0))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.applyButtonText")),1)]),_:1}),e.createVNode(u,{appearance:"btn-link","data-testid":"clear-filter",size:"small",onClick:_=>h(k.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(u,{onClick:E},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearAllButtonText")),1)]),_:1})]),_:1},512),[[e.vShow,l.value]])]))}}}),[["__scopeId","data-v-745f38c0"]]),Q=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}),(l,r)=>o.value?e.renderSlot(l.$slots,"default",{key:0,isAllowed:a.value}):e.createCommentVNode("",!0)}}),aa={class:"form-section-wrapper"},oa={key:0,class:"form-section-title"},na={key:1,class:"form-section-description"},ra={key:2,class:"form-section-footer"},la={class:"form-section-content"},ia=j(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",aa,[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",oa,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description||e.unref(n).description?(e.openBlock(),e.createElementBlock("div",na,[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",ra,[e.renderSlot(a.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2)),e.createElementVNode("div",la,[e.renderSlot(a.$slots,"default",{},void 0,!0)])])],2))}}),[["__scopeId","data-v-8b6dc312"]]),{useAxios:he,useDeleteUrlBuilder:sa,useErrors:ca,useFetchUrlBuilder:Ka,useFetcher:da,useDebouncedFilter:Da,useStringHelpers:Ma,useGatewayFeatureSupported:qa}=F,Fa="",pa={class:"kong-ui-entities-key-sets-list"},ma={key:1},ua=e.defineComponent({__name:"KeySetList",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 Ce;const a=t,{i18n:{t:o}}=Y.useI18n(),l=X.useRouter(),{axiosInstance:r}=he({headers:(Ce=a.config)==null?void 0:Ce.requestHeaders}),m=e.ref(1),C=e.computed(()=>a.config.app!=="kongManager"||!!a.config.disableSorting),g={name:{label:o("keySets.list.table_headers.name"),searchable:!0,sortable:!0},tags:{label:o("keySets.list.table_headers.tags")},id:{label:o("keySets.list.table_headers.id"),sortable:!0}},c=g,f=e.computed(()=>{var T,q;let w=`${a.config.apiBaseUrl}${G.list[a.config.app]}`;return a.config.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,((T=a.config)==null?void 0:T.controlPlaneId)||""):a.config.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,(q=a.config)!=null&&q.workspace?`/${a.config.workspace}`:"")),w}),y=e.ref(""),I=e.computed(()=>{const w=a.config.app==="konnect"||a.config.isExactMatch;if(w)return{isExactMatch:w,placeholder:o("keySets.search.placeholder")};const T={name:g.name};return{isExactMatch:w,fields:T,schema:a.config.filterSchema}}),{fetcher:h,fetcherState:E}=da(a.config,f.value),B=()=>{y.value=""},s=()=>{m.value++},i=e.ref(""),d=(w,T)=>{const q=w.id;if(!T(q)){b(w,"id");return}p(w,"id")},u=(w,T)=>{const q=JSON.stringify(w);if(!T(q)){n("copy:error",{entity:w,message:o("keySets.errors.copy")});return}n("copy:success",{entity:w,message:o("keySets.copy.success_brief")})},x=(w,T,q)=>{const{type:J}=w;J==="success"?p(T,q):b(T,q)},p=(w,T)=>{n("copy:success",{entity:w,field:T,message:o("keySets.copy.success",{val:w[T]})})},b=(w,T)=>{n("copy:error",{entity:w,field:T,message:o("keySets.errors.copy")})},k=async w=>{var q;await((q=a.canRetrieve)==null?void 0:q.call(a,w))&&l.push(a.config.getViewRoute(w.id))},N=w=>({label:o("keySets.actions.view"),to:a.config.getViewRoute(w)}),K=w=>({label:o("keySets.actions.edit"),to:a.config.getEditRoute(w)}),S=e.ref(void 0),_=e.ref(!1),V=e.ref(!1),$=e.ref(""),R=sa(a.config,f.value),H=w=>{S.value=w,_.value=!0},L=()=>{_.value=!1},Ca=async()=>{var w,T,q;if((w=S.value)!=null&&w.id){V.value=!0;try{await r.delete(R(S.value.id)),V.value=!1,_.value=!1,m.value++,n("delete:success",S.value)}catch(J){$.value=((q=(T=J.response)==null?void 0:T.data)==null?void 0:q.message)||J.message||o("keySets.errors.delete"),n("error",J)}finally{V.value=!1}}};e.watch(E,w=>{if(w.status===U.Error){i.value=o("keySets.errors.general"),n("error",w.error);return}i.value=""});const ae=e.ref({ctaPath:a.config.createRoute,ctaText:void 0,message:o("keySets.list.empty_state.description"),title:o("keySets.title")});return e.onBeforeMount(async()=>{await a.canCreate()&&(ae.value.title=o("keySets.list.empty_state.title"),ae.value.ctaText=o("keySets.actions.create"))}),(w,T)=>{const q=e.resolveComponent("KButton"),J=e.resolveComponent("KBadge"),Sa=e.resolveComponent("KTruncate"),wa=e.resolveComponent("CopyUuid"),W=e.resolveComponent("KDropdownItem"),Se=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",pa,[e.createVNode(e.unref(At),{"cache-identifier":t.cacheIdentifier,"disable-pagination-page-jump":"","disable-sorting":C.value,"empty-state-options":ae.value,"enable-entity-actions":"","error-message":i.value,fetcher:e.unref(h),"fetcher-cache-key":m.value,"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-key-sets-list",query:y.value,"table-headers":e.unref(c),onClearSearchInput:B,"onClick:row":T[2]||(T[2]=M=>k(M)),onSort:s},{"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(ta),{modelValue:y.value,"onUpdate:modelValue":T[0]||(T[0]=M=>y.value=M),config:I.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[e.createVNode(e.unref(Q),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(q,{appearance:"primary","data-testid":"toolbar-add-key-set",icon:"plus",to:t.config.createRoute},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keySets.list.toolbar_actions.new_key_set")),1)]),_:1},8,["to"])]),_:1},8,["auth-function"])]),name:e.withCtx(({rowValue:M})=>[e.createElementVNode("b",null,e.toDisplayString(M??"-"),1)]),tags:e.withCtx(({rowValue:M})=>[(M==null?void 0:M.length)>0?(e.openBlock(),e.createBlock(Sa,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M,O=>(e.openBlock(),e.createBlock(J,{key:O,onClick:T[1]||(T[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(O),1)]),_:2},1024))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",ma,"-"))]),id:e.withCtx(({row:M,rowValue:O})=>[e.createVNode(wa,{notify:oe=>x(oe,M,"id"),truncated:!1,uuid:O},null,8,["notify","uuid"])]),actions:e.withCtx(({row:M})=>[e.createVNode(Se,null,{default:e.withCtx(({copyToClipboard:O})=>[e.createVNode(W,{"data-testid":"action-entity-copy-id",onClick:oe=>d(M,O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keySets.actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(Se,null,{default:e.withCtx(({copyToClipboard:O})=>[e.createVNode(W,{"data-testid":"action-entity-copy-json",onClick:oe=>u(M,O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keySets.actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(Q),{"auth-function":()=>t.canRetrieve(M)},{default:e.withCtx(()=>[e.createVNode(W,{"data-testid":"action-entity-view","has-divider":"",item:N(M.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(Q),{"auth-function":()=>t.canEdit(M)},{default:e.withCtx(()=>[e.createVNode(W,{"data-testid":"action-entity-edit",item:K(M.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(Q),{"auth-function":()=>t.canDelete(M)},{default:e.withCtx(()=>[e.createVNode(W,{"data-testid":"action-entity-delete","has-divider":"","is-dangerous":"",onClick:O=>H(M)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("keySets.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(Ot),{"action-pending":V.value,description:e.unref(o)("keySets.delete.description"),"entity-name":S.value&&(S.value.name||S.value.id),"entity-type":e.unref(ne).KeySet,error:$.value,title:e.unref(o)("keySets.delete.title"),visible:_.value,onCancel:L,onProceed:Ca},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),Pa="",be=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},fa=be(ua,[["__scopeId","data-v-a16aa26a"]]),ya={class:"kong-ui-entities-key-sets-form"},ga=e.defineComponent({__name:"KeySetForm",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)},keySetId:{type:String,required:!1,default:""}},emits:["update","error","loading"],setup(t,{emit:n}){var s;const a=t,o=X.useRouter(),{i18n:{t:l}}=Y.useI18n(),{getMessageFromError:r}=ca(),{axiosInstance:m}=he({headers:(s=a.config)==null?void 0:s.requestHeaders}),C=e.computed(()=>G.form[a.config.app].edit),g=e.computed(()=>a.keySetId?Z.Edit:Z.Create),c=e.reactive({fields:{name:"",tags:""},isReadonly:!1,errorMessage:""}),f=e.reactive({name:"",tags:""}),y=e.computed(()=>JSON.stringify(c.fields)!==JSON.stringify(f)&&!!c.fields.name),I=i=>{var d;c.fields.name=(i==null?void 0:i.name)||"",c.fields.tags=((d=i==null?void 0:i.tags)==null?void 0:d.join(", "))||"",Object.assign(f,c.fields)},h=()=>{o.push(a.config.cancelRoute)},E=e.computed(()=>{var d,u;let i=`${a.config.apiBaseUrl}${G.form[a.config.app][g.value]}`;return a.config.app==="konnect"?i=i.replace(/{controlPlaneId}/gi,((d=a.config)==null?void 0:d.controlPlaneId)||""):a.config.app==="kongManager"&&(i=i.replace(/\/{workspace}/gi,(u=a.config)!=null&&u.workspace?`/${a.config.workspace}`:"")),i=i.replace(/{id}/gi,a.keySetId),i}),B=async()=>{var i,d,u,x,p;try{c.isReadonly=!0;const b={name:c.fields.name,tags:((u=(d=(i=c.fields.tags)==null?void 0:i.split(","))==null?void 0:d.map(N=>String(N||"").trim()))==null?void 0:u.filter(N=>N!==""))||""};let k;if(g.value==="create"?k=await m.post(E.value,b):g.value==="edit"&&(k=((x=a.config)==null?void 0:x.app)==="konnect"?await m.put(E.value,b):await m.patch(E.value,b)),k){const{data:N}=k;c.fields.name=(N==null?void 0:N.name)||"",c.fields.tags=((p=N==null?void 0:N.tags)==null?void 0:p.join(", "))||"",Object.assign(f,c.fields),n("update",k==null?void 0:k.data)}}catch(b){c.errorMessage=r(b),n("error",b)}finally{c.isReadonly=!1}};return(i,d)=>{const u=e.resolveComponent("KInput");return e.openBlock(),e.createElementBlock("div",ya,[e.createVNode(e.unref(Dt),{"can-submit":y.value,config:t.config,"edit-id":t.keySetId,"error-message":c.errorMessage,"fetch-url":C.value,"is-readonly":c.isReadonly,onCancel:h,"onFetch:error":d[2]||(d[2]=x=>i.$emit("error",x)),"onFetch:success":I,onLoading:d[3]||(d[3]=x=>i.$emit("loading",x)),onSubmit:B},{default:e.withCtx(()=>[e.createVNode(e.unref(ia),{description:e.unref(l)("keySets.form.sections.general.description"),"has-divider":"",title:e.unref(l)("keySets.form.sections.general.title")},{default:e.withCtx(()=>[e.createVNode(u,{modelValue:c.fields.name,"onUpdate:modelValue":d[0]||(d[0]=x=>c.fields.name=x),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-set-form-name",label:e.unref(l)("keySets.form.fields.name.label"),placeholder:e.unref(l)("keySets.form.fields.name.placeholder"),readonly:c.isReadonly,type:"text"},null,8,["modelValue","label","placeholder","readonly"]),e.createVNode(u,{modelValue:c.fields.tags,"onUpdate:modelValue":d[1]||(d[1]=x=>c.fields.tags=x),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"key-set-form-tags",help:e.unref(l)("keySets.form.fields.tags.help"),label:e.unref(l)("keySets.form.fields.tags.label"),"label-attributes":{info:e.unref(l)("keySets.form.fields.tags.tooltip")},placeholder:e.unref(l)("keySets.form.fields.tags.placeholder"),readonly:c.isReadonly,type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"])]),_:1},8,["description","title"])]),_:1},8,["can-submit","config","edit-id","error-message","fetch-url","is-readonly"])])}}}),Ra="",ka=be(ga,[["__scopeId","data-v-29df09d7"]]),ha={class:"kong-ui-entities-keys-entity-config-card"},ba=e.defineComponent({__name:"KeySetConfigCard",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"],setup(t){const n=t,{i18n:{t:a}}=Y.useI18n(),o=e.computed(()=>G.form[n.config.app].edit),l=e.ref({id:{},name:{},last_updated:{},created:{},tags:{tooltip:a("keySets.form.fields.tags.tooltip")}});return(r,m)=>(e.openBlock(),e.createElementBlock("div",ha,[e.createVNode(e.unref($t),{config:t.config,"config-schema":l.value,"fetch-url":o.value,"hide-title":t.hideTitle,"onCopy:success":m[0]||(m[0]=C=>r.$emit("copy:success",C)),"onFetch:error":m[1]||(m[1]=C=>r.$emit("fetch:error",C)),"onFetch:success":m[2]||(m[2]=C=>r.$emit("fetch:success",C)),onLoading:m[3]||(m[3]=C=>r.$emit("loading",C))},null,8,["config","config-schema","fetch-url","hide-title"])]))}});P.KeySetConfigCard=ba,P.KeySetForm=ka,P.KeySetList=fa,Object.defineProperty(P,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-key-sets-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-key-sets-list[data-v-a16aa26a]{width:100%}.kong-ui-entities-key-sets-list .kong-ui-entity-filter-input[data-v-a16aa26a]{width:300px}.kong-ui-entities-key-sets-form[data-v-29df09d7]{width:100%}
|
|
@@ -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"?: ((keySet: 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=KeySetList.vue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeySetList.vue.d.ts","sourceRoot":"","sources":["../../../src/components/KeySetList.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,2BAA2B,EAC3B,uBAAuB,EACvB,SAAS,EACT,gBAAgB,EACjB,MAAM,UAAU,CAAA;AAQjB,OAAO,gDAAgD,CAAA;;IA+SrD,oHAAoH;;;;;;;;;;IAgBpH,
|
|
1
|
+
{"version":3,"file":"KeySetList.vue.d.ts","sourceRoot":"","sources":["../../../src/components/KeySetList.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,2BAA2B,EAC3B,uBAAuB,EACvB,SAAS,EACT,gBAAgB,EACjB,MAAM,UAAU,CAAA;AAQjB,OAAO,gDAAgD,CAAA;;IA+SrD,oHAAoH;;;;;;;;;;IAgBpH,yHAAyH;;;;;;IAMzH,2HAA2H;;;;;;IAM3H,yHAAyH;;;;;;IAMzH,4IAA4I;;;;;;;;;;;;IAlC5I,oHAAoH;;;;;;;;;;IAgBpH,yHAAyH;;;;;;IAMzH,2HAA2H;;;;;;IAM3H,yHAAyH;;;;;;IAMzH,4IAA4I;;;;;;;;;;;;;;;;;;AAsZ9I,wBAAkD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kong-ui-public/entities-key-sets",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.13",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/entities-key-sets.umd.js",
|
|
6
6
|
"module": "./dist/entities-key-sets.es.js",
|
|
@@ -20,19 +20,19 @@
|
|
|
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
|
-
"@kong/kongponents": "^8.122.
|
|
31
|
+
"@kong/kongponents": "^8.122.5",
|
|
32
32
|
"axios": "^1.4.0",
|
|
33
33
|
"vue": "^3.3.4",
|
|
34
34
|
"vue-router": "^4.2.4",
|
|
35
|
-
"@kong-ui-public/copy-uuid": "^1.1.
|
|
35
|
+
"@kong-ui-public/copy-uuid": "^1.1.15",
|
|
36
36
|
"@kong-ui-public/i18n": "^0.8.1"
|
|
37
37
|
},
|
|
38
38
|
"repository": {
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"errorLimit": "500KB"
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
|
-
"@kong-ui-public/entities-shared": "^1.2.
|
|
53
|
+
"@kong-ui-public/entities-shared": "^1.2.13"
|
|
54
54
|
},
|
|
55
55
|
"scripts": {
|
|
56
56
|
"dev": "cross-env USE_SANDBOX=true vite",
|