@kong-ui-public/entities-snis 1.1.22 → 1.1.23

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.
@@ -1 +1 @@
1
- (function(F,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@kong-ui-public/i18n"),require("axios"),require("@kong/kongponents"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/i18n","axios","@kong/kongponents","vue-router"],e):(F=typeof globalThis<"u"?globalThis:F||self,e(F["kong-ui-public-entities-snis"]={},F.Vue,F["kong-ui-public-i18n"],F.axios,F.Kongponents,F.VueRouter))})(this,function(F,e,G,Ce,Gt,oe){"use strict";const we={actions:{create:"New SNI",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",clear:"Clear",loading:"Loading..."},search:{placeholder:"Filter by exact name or ID",no_results:"No results found"},snis:{title:"SNIs",list:{toolbar_actions:{new:"New SNI"},table_headers:{name:"Name",id:"ID",certificate_id:"SSL Certificate ID",tags:"Tags"},empty_state:{title:"Configure a New SNI",description:"SNIs are used to map hostnames to a certificate."}}},form:{sections:{general:{title:"General Information",description:"General information will help identify and manage this SNI."},certificate:{title:"Certificate",description:"Map an existing Certificate object to hostnames"}},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."},certificate_id:{label:"SSL Certificate ID",placeholder:"Enter or select a Certificate ID",footer:"Search by exact ID to find certificates not included in the list"}}},delete:{title:"Delete an SNI",description:"This action cannot be reversed so make sure to check the SNI usage before deleting."},errors:{delete:"The SNI could not be deleted at this time.",general:"SNIs could not be retrieved",certificates:{fetch:"Could not fetch available certificates",invalid:"Please select a valid certificate ID"},copy:"Failed to copy to clipboard"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"}};function Se(){const t=G.createI18n("en-us",we);return{i18n:t,i18nT:G.i18nTComponent(t)}}const ne={useI18n:Se},Q={list:{konnect:{all:"/api/runtime_groups/{controlPlaneId}/snis"},kongManager:{all:"/{workspace}/snis"}},form:{konnect:{create:"/api/runtime_groups/{controlPlaneId}/snis",edit:"/api/runtime_groups/{controlPlaneId}/snis/{id}",validate:"/api/runtime_groups/{controlPlaneId}/v1/schemas/json/sni/validate",certificates:"/api/runtime_groups/{controlPlaneId}/certificates"},kongManager:{create:"/{workspace}/snis",edit:"/{workspace}/snis/{id}",validate:"/{workspace}/schemas/snis/validate",certificates:"/{workspace}/certificates"}}};var re=(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.Policy="policy",t))(re||{}),Y=(t=>(t.Edit="edit",t.Create="create",t))(Y||{}),U=(t=>(t[t.Loading=0]="Loading",t[t.Idle=1]="Idle",t[t.NoResults=2]="NoResults",t[t.Error=3]="Error",t))(U||{});function Z(t={}){return{axiosInstance:Ce.create({withCredentials:!0,timeout:3e4,...t})}}function _e(){return{debounce:(t,n)=>{let a;return(...o)=>{clearTimeout(a),a=window==null?void 0:window.setTimeout(()=>{t(...o)},n)}}}}const v="khcp-user-table-preferences",xe={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function Ne(){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(v));return!a||!Object.keys(a).length?new Map:new Map(Object.entries(a))};return{setTablePreferences:(a,o)=>{try{const r=n();r.set(a,o),localStorage.setItem(v,JSON.stringify(Object.fromEntries(r.entries())))}catch(r){console.error("useTablePreferences(setTablePreferences)",r)}},getTablePreferences:a=>{const o=n();return(o==null?void 0:o.get(a))||void 0||xe},deleteAllTablePreferences:()=>{localStorage.removeItem(v)}}}const Be={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},Ie={actions:{save:"Save",cancel:"Cancel",back:"Back"},errors:{edit:"The entity could not be edited at this time."}},Ve={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Ee={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}"}},Te={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},$e={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},Me={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Ke={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"}},De={deleteModal:Be,baseForm:Ie,baseTable:Ve,baseConfigCard:Ee,filter:Te,debouncedFilter:$e,errors:Me,toggleModal:Ke};function ee(){const t=G.createI18n("en-us",De);return{i18n:t,i18nT:G.i18nTComponent(t)}}function Pe(t,n,a,o={fetchedItemsKey:"data",searchKeys:["id"]}){a||(a="100");const{axiosInstance:r}=Z({headers:t.requestHeaders}),{i18n:{t:i}}=ee(),{debounce:f}=_e(),x=f(async d=>{await m(d)},200),y=e.ref(!1),u=e.ref(""),l=e.ref(""),g=e.ref([]),S=e.ref(void 0),_=e.unref(n);let B=`${t.apiBaseUrl}${_}`;t.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,(t==null?void 0:t.controlPlaneId)||""):t.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,t!=null&&t.workspace?`/${t.workspace}`:""));const b=async()=>{try{y.value=!0;const{data:d}=await r.get(`${B}?size=${a}`);d!=null&&d.next||(S.value=o.fetchedItemsKey in d?d[o.fetchedItemsKey]:[]),g.value=o.fetchedItemsKey in d?d[o.fetchedItemsKey]:[]}catch{g.value=[],u.value=i("debouncedFilter.errors.fetch")}finally{y.value=!1}},s=e.ref(""),m=async d=>{var c,N;if(s.value!==d)if(s.value=d||"",S.value===void 0)try{y.value=!0,u.value="",l.value="";let I=B+"";d&&(I+=`/${d}`);const{data:$}=await r.get(`${I}?size=${a}`);o.fetchedItemsKey in $?g.value=$[o.fetchedItemsKey]:$!=null&&$.id?g.value=[$]:g.value=[]}catch(I){((c=I==null?void 0:I.response)==null?void 0:c.status)===404?l.value=i("debouncedFilter.errors.invalid"):(g.value=[],u.value=i("debouncedFilter.errors.fetch"))}finally{y.value=!1}else y.value=!0,l.value="",d?(g.value=(N=S.value)==null?void 0:N.filter(I=>{var $;let C=!1;for(const q of o.searchKeys){const M=typeof I[q]=="string"?($=I[q])==null?void 0:$.toLowerCase():I[q];M!=null&&M.includes(d.toLowerCase())&&(C=!0)}return C}),(!g.value||!g.value.length)&&(l.value=i("debouncedFilter.errors.invalid"))):g.value=S.value,y.value=!1};return{loading:y,error:u,validationError:l,results:g,allRecords:S,loadItems:b,debouncedQueryChange:x}}function qe(t,n){const a=e.unref(n),o=e.computed(()=>t.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${a}`):new URL(a));return o.value.search="",r=>`${o.value.href}/${r}`}function Fe(){const{i18n:{t}}=ee();return{getMessageFromError:n=>{var a,o,r;if(!n)return t("errors.unexpected");if((a=n==null?void 0:n.response)!=null&&a.data){if(n.response.data.detail)return n.response.data.detail;if((o=n.response.data.details)!=null&&o.length)return n.response.data.details.map(i=>{let f=t("errors.unexpected");return i.messages&&typeof i.messages=="object"&&i.messages.length&&(f=i.messages.join(", ")),i.field?`${i.field} - ${f}`:f}).join("; ");if(n.response.data.message){const{message:i}=n.response.data;return Array.isArray(i)?(r=i[0])!=null&&r.constraints?Object.values(i[0].constraints)[0]:i[0]:i}if(typeof n.response.data=="string")return n.response.data;if(typeof n.response.data=="object")return Object.keys(n.response.data).map(i=>`${i} ${n.response.data[i]}`).join(", ")}return n.message||t("errors.unexpected")}}}function ie(t,n){const a=e.ref(e.unref(t)),o=e.ref(e.unref(n)),r=e.computed(()=>!!(a.value.app==="konnect"||a.value.isExactMatch)),i=e.computed(()=>o.value.startsWith("/")?new URL(`${window.location.origin}${o.value}`):new URL(o.value));return f=>{const{page:x,pageSize:y,offset:u,sortColumnKey:l,sortColumnOrder:g,query:S}=f;try{let _=new URL(i.value.href);return r.value&&S?(_.search="",_=new URL(`${_.href}/${S}/`)):(r.value||new URLSearchParams(S).forEach((B,b)=>{_.searchParams.append(b,B)}),l&&_.searchParams.append("sort_by",l),g==="desc"&&_.searchParams.append("sort_desc","1"),_.searchParams.append("size",String(y))),u&&x!==1&&_.searchParams.append("offset",String(u)),_.href}catch(_){return console.error("RouteList(fetcher)",_),o.value}}}function Re(t,n,a="data"){const o=e.unref(n),{axiosInstance:r}=Z({headers:t.requestHeaders}),i=ie(t,o),f=e.ref({status:U.Idle});return{fetcher:async x=>{try{f.value={status:U.Loading};const y=i(x),{data:u}=await r.get(y),l=a&&a.replace(/[^\w-_]/gi,"");let g;u[l]&&Array.isArray(u[l])?g=u[l]:g=Object.keys(u).length?[u]:[];const S={data:g,total:g.length,...u.offset?{pagination:{offset:u.offset}}:null};return f.value={status:U.Idle,response:S},S}catch(y){const u={data:[],total:0};return x.query&&y.response.status===404?(f.value={status:U.NoResults,response:u,error:y},u):(f.value={status:U.Error,response:u,error:y},u)}},fetcherState:f}}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,se=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},ce=t=>t==="*"||t==="x"||t==="X",de=t=>{const n=parseInt(t,10);return isNaN(n)?t:n},Ue=(t,n)=>typeof t!=typeof n?[String(t),String(n)]:[t,n],je=(t,n)=>{if(ce(t)||ce(n))return 0;const[a,o]=Ue(de(t),de(n));return a>o?1:a<o?-1:0},pe=(t,n)=>{for(let a=0;a<Math.max(t.length,n.length);a++){const o=je(t[a]||"0",n[a]||"0");if(o!==0)return o}return 0},Ae=(t,n)=>{const a=se(t),o=se(n),r=a.pop(),i=o.pop(),f=pe(a,o);return f!==0?f:r&&i?pe(r.split("."),i.split(".")):r||i?r?-1:1:0},fe=(t,n,a)=>{Le(a);const o=Ae(t,n);return ue[a].includes(o)},ue={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},me=Object.keys(ue),Le=t=>{if(typeof t!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof t}`);if(me.indexOf(t)===-1)throw new Error(`Invalid operator, expected one of ${me.join("|")}`)},He=t=>typeof t=="string"&&/^[v\d]/.test(t)&&le.test(t);function ze(t){const{gatewayInfo:n,supportedRange:a}=t;if(!n)return!0;const{edition:o,version:r}=n;if(!He(r))return console.error("Invalid version"),!1;const i=a[o];if(!i)return!1;const[f,x]=i;return!(f&&fe(r,f,"<")||x&&fe(r,x,">"))}const j={useAxios:Z,useDebouncedFilter:Pe,useDeleteUrlBuilder:qe,useErrors:Fe,useFetcher:Re,useFetchUrlBuilder:ie,useStringHelpers:Oe,useI18n:ee,useGatewayFeatureSupported:ze},H=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},We="#0044f4",Je="#3a3f51",Ge=["onReset","onSubmit"],Qe={class:"form-actions","data-testid":"form-actions"},Ye=H(e.defineComponent({__name:"EntityBaseForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},editId:{type:String,required:!1,default:""},fetchUrl:{type:String,required:!1,default:""},isReadonly:{type:Boolean,required:!1,default:!1},canSubmit:{type:Boolean,required:!1,default:void 0},errorMessage:{type:String,required:!1,default:""}},emits:["loading","fetch:success","fetch:error","submit","cancel"],setup(t,{emit:n}){var a;const o=t,r=oe.useRouter(),{i18n:{t:i}}=j.useI18n(),{getMessageFromError:f}=j.useErrors(),{axiosInstance:x}=j.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),y=e.ref(!1),u=e.ref(!1),l=e.ref(""),g=e.computed(()=>o.canSubmit===!1||o.isReadonly),S=e.computed(()=>{var s,m;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,(m=o.config)!=null&&m.workspace?`/${o.config.workspace}`:"")),d=d.replace(/{id}/gi,o.editId),d}),_=()=>{o.config.cancelRoute?r.push(o.config.cancelRoute):B()},B=()=>{n("cancel")},b=()=>{g.value||n("submit")};return e.watch(()=>y.value,s=>{n("loading",s)},{immediate:!0}),e.onBeforeMount(async()=>{if(o.editId)try{u.value=!1,y.value=!0;const{data:s}=await x.get(S.value);n("fetch:success",s)}catch(s){const m=f(s);l.value=m.startsWith("code")?i("baseForm.errors.edit"):m,u.value=!0,n("fetch:error",s)}finally{y.value=!1}}),(s,m)=>{const d=e.resolveComponent("KSkeleton"),c=e.resolveComponent("KEmptyState"),N=e.resolveComponent("KAlert"),I=e.resolveComponent("KButton"),$=e.resolveComponent("KCard");return e.openBlock(),e.createBlock($,{class:"kong-ui-entity-base-form"},{body:e.withCtx(()=>[y.value?(e.openBlock(),e.createBlock(d,{key:0,type:"form"})):u.value?(e.openBlock(),e.createBlock(c,{key:1,"cta-text":e.unref(i)("baseForm.actions.back"),"data-testid":"form-fetch-error","handle-click":_,"is-error":!0},{message:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(l.value),1)]),_:1},8,["cta-text"])):(e.openBlock(),e.createElementBlock("form",{key:2,"data-testid":"form-content",onReset:e.withModifiers(B,["prevent"]),onSubmit:e.withModifiers(b,["prevent"])},[e.renderSlot(s.$slots,"default",{},void 0,!0),t.errorMessage?(e.openBlock(),e.createBlock(N,{key:0,"alert-message":t.errorMessage,appearance:"danger","data-testid":"form-error"},null,8,["alert-message"])):e.createCommentVNode("",!0),e.createElementVNode("div",Qe,[e.renderSlot(s.$slots,"form-actions",{},()=>[e.createVNode(I,{appearance:"outline","data-testid":"form-cancel",disabled:t.isReadonly,type:"reset"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseForm.actions.cancel")),1)]),_:1},8,["disabled"]),e.createVNode(I,{appearance:"primary","data-testid":"form-submit",disabled:g.value,type:"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseForm.actions.save")),1)]),_:1},8,["disabled"])],!0)])],40,Ge))]),_:3})}}}),[["__scopeId","data-v-2286e5f2"]]),Xe={key:0},Ze=H(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}),r=e.computed(()=>{var b,s;const m=(b=n.rowEl)==null?void 0:b.querySelectorAll("td");return m?((s=m[0])==null?void 0:s.getAttribute("data-testid"))===n.keyName:!1});let i;const f=()=>{i&&(i.disconnect(),i=void 0)},x=()=>{var b,s,m;u.value=((b=o.value)==null?void 0:b.getBoundingClientRect().width)||0,l.value=((s=a.value)==null?void 0:s.clientWidth)||0,g.value=((m=y.value)==null?void 0:m.innerText)||""},y=e.ref({}),u=e.ref(0),l=e.ref(0),g=e.ref(""),S=e.computed(()=>[o.value,a.value]),_=e.watch(S,b=>{if(r.value&&(f(),"ResizeObserver"in window&&window)){i=new ResizeObserver(s=>{window.requestAnimationFrame(()=>{!Array.isArray(s)||!s.length||x()})});for(const s of b)s&&i.observe(s)}},{immediate:!0,flush:"post",deep:!0}),B=e.computed(()=>r.value?u.value>l.value:!1);return e.onMounted(()=>{x()}),e.onUnmounted(()=>{_()}),(b,s)=>{const m=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("span",{ref_key:"contentRef",ref:y,class:"content-wrapper"},[r.value?(e.openBlock(),e.createElementBlock("span",Xe,[e.createVNode(m,{disabled:!B.value,label:g.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"]]),ve={class:"toolbar-container"},et={key:0,class:"toolbar-button-container"},tt=["data-testid"],at=H(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}}=j.useI18n(),r=e.computed(()=>a.cacheIdentifier||a.preferencesStorageKey),i=c=>c.hasData||!!a.query,f=e.computed(()=>{const c=[];return Object.keys(a.tableHeaders).forEach(N=>{const I=a.tableHeaders[N];c.push({label:I.label??N,key:N,sortable:I.sortable??!1})}),a.enableEntityActions&&c.push({key:"actions",hideLabel:!0}),c}),x=c=>({"data-rowid":c.id,"data-testid":c.name,...a.rowAttributes(c)}),y=e.ref({}),u=c=>{var N;return(N=y.value)==null?void 0:N.$el.querySelector(`[data-rowid="${c.id}"]`)},l=c=>{const N={"data-testid":c.headerKey,...a.cellAttributes(c)};return c.colIndex===0&&(N.style={maxWidth:"250px",overflowX:"hidden",textOverflow:"ellipsis"}),N},g=()=>{n("empty-state-cta-clicked"),S()},S=()=>{n("clear-search-input")},_=(c,N)=>{n("click:row",N)},B=c=>{n("sort",c)},{setTablePreferences:b,getTablePreferences:s}=Ne(),m=e.computed(()=>{const c=s(a.preferencesStorageKey);return{...a.initialFetcherParams,...c}}),d=c=>{a.preferencesStorageKey&&b(a.preferencesStorageKey,c)};return(c,N)=>{const I=e.resolveComponent("KIcon"),$=e.resolveComponent("KButton"),C=e.resolveComponent("KDropdownMenu"),q=e.resolveComponent("KTable"),M=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(M,{class:"kong-ui-entity-base-table",title:t.title},{body:e.withCtx(()=>[e.createVNode(q,{ref_key:"tableRefs",ref:y,"cache-identifier":r.value,"cell-attrs":l,"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:f.value,"hide-pagination-when-optional":"","initial-fetcher-params":m.value,"is-loading":t.isLoading,"pagination-type":t.paginationType,"row-attrs":x,"search-input":t.query,onKtableEmptyStateCtaClicked:g,"onRow:click":_,onSort:N[0]||(N[0]=K=>B(K)),"onUpdate:tablePreferences":d},e.createSlots({toolbar:e.withCtx(({state:K})=>[e.withDirectives(e.createElementVNode("div",ve,[e.renderSlot(c.$slots,"toolbar-filter",{},void 0,!0),c.$slots["toolbar-button"]?(e.openBlock(),e.createElementBlock("div",et,[e.renderSlot(c.$slots,"toolbar-button",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,i(K)]])]),actions:e.withCtx(({row:K,rowKey:D,rowValue:O})=>[e.createElementVNode("div",{class:"actions-container","data-testid":K.name},[e.createVNode(C,{"kpop-attributes":{placement:"bottomEnd"},width:t.dropdownMenuWidth},{items:e.withCtx(()=>[e.renderSlot(c.$slots,"actions",{row:K,rowKey:D,rowValue:O},void 0,!0)]),default:e.withCtx(()=>[e.createVNode($,{class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:e.withCtx(()=>[e.createVNode(I,{color:e.unref(Je),icon:"more",size:"16"},null,8,["color"])]),_:1})]),_:2},1032,["width"])],8,tt)]),_:2},[e.renderList(t.tableHeaders,(K,D)=>({name:D,fn:e.withCtx(({row:O,rowKey:z,rowValue:W})=>[e.createVNode(Ze,{"key-name":String(D),"row-el":u(O)},{default:e.withCtx(()=>[e.renderSlot(c.$slots,D,{row:O,rowKey:z,rowValue:W},()=>[e.createTextVNode(e.toDisplayString(W),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"]]),ot={key:0,class:"kong-ui-entity-delete-error"},nt={key:1,class:"description"},rt=H(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}=j.useI18n(),r=e.computed(()=>a.needConfirm?a.entityName:""),i=()=>{n("cancel")},f=()=>{n("proceed")};return(x,y)=>{const u=e.resolveComponent("KAlert"),l=e.resolveComponent("KPrompt");return e.openBlock(),e.createBlock(l,{"action-button-text":"Yes, delete","action-pending":t.actionPending,class:"kong-ui-entity-delete-modal","confirmation-text":r.value,"is-visible":t.visible,title:t.title,type:"danger",onCanceled:i,onProceed:f},{"body-content":e.withCtx(()=>[t.error?(e.openBlock(),e.createElementBlock("div",ot,[e.createVNode(u,{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||x.$slots.description?(e.openBlock(),e.createElementBlock("div",nt,[e.renderSlot(x.$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"]]),it={fill:"none",height:"20",viewBox:"0 0 20 20",width:"20",xmlns:"http://www.w3.org/2000/svg"},lt={id:"mask0_180_20349",height:"20",maskUnits:"userSpaceOnUse",style:{"mask-type":"alpha"},width:"20",x:"0",y:"0"},st=["fill"],ct={mask:"url(#mask0_180_20349)"},dt=["fill"],pt=e.defineComponent({__name:"IconFilter",props:{color:{type:String,default:`var(--kong-ui-entity-filter-color, ${We})`}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("svg",it,[e.createElementVNode("mask",lt,[e.createElementVNode("rect",{fill:t.color,height:"20",width:"20"},null,8,st)]),e.createElementVNode("g",ct,[e.createElementVNode("path",{d:"M8 14.5V13H12V14.5H8ZM5 10.75V9.25H15V10.75H5ZM3 7V5.5H17V7H3Z",fill:t.color},null,8,dt)])]))}}),ft={key:1,class:"kong-ui-entity-filter"},ut={class:"menu-item-title"},mt={class:"menu-item-indicator"},yt={class:"menu-item-body"},gt=["for"],ht={class:"menu-item-buttons"},bt=H(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}}=j.useI18n(),r=e.ref(!1),i=e.ref({}),f=e.computed(()=>{const s=[];return new URLSearchParams(a.modelValue).forEach((m,d)=>{m!==""&&s.push(d)}),s}),x=e.computed(()=>{const s=a.config.fields;return Object.keys(s).filter(m=>s[m].searchable).map(m=>({label:s[m].label||m,value:m}))});e.watch(()=>a.modelValue,s=>{i.value={},new URLSearchParams(s).forEach((m,d)=>{i.value[d]=m})});const y=()=>{r.value=!r.value},u=s=>{n("update:modelValue",s)},l=s=>`filter-${s}`,g=s=>{var m,d;return(((d=(m=a.config.schema)==null?void 0:m[s])==null?void 0:d.values)??[]).map(c=>({value:c,label:c}))},S=s=>{var m,d;return((d=(m=a.config.schema)==null?void 0:m[s])==null?void 0:d.type)??"text"},_=s=>{i.value={...i.value,[s]:""},b()},B=()=>{i.value={},b(!0)},b=(s=!1)=>{const m=Object.keys(i.value).reduce((d,c)=>(i.value[c]&&(d[c]=`${i.value[c]}`),d),{});s&&(r.value=!1),n("update:modelValue",new URLSearchParams(m).toString())};return(s,m)=>{const d=e.resolveComponent("KInput"),c=e.resolveComponent("KButton"),N=e.resolveComponent("KSelect"),I=e.resolveComponent("KMenuItem"),$=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":u},{icon:e.withCtx(()=>[e.createVNode(pt)]),_:1},8,["model-value","placeholder"])):(e.openBlock(),e.createElementBlock("div",ft,[e.createVNode(c,{appearance:"btn-link","data-testid":"filter-button",icon:"filter",onClick:y},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.filterButtonText"))+" "+e.toDisplayString(f.value.length>0?`(${f.value.length})`:""),1)]),_:1}),e.withDirectives(e.createElementVNode("div",{class:"kong-ui-entity-filter-backdrop",onClick:y},null,512),[[e.vShow,r.value]]),e.withDirectives(e.createVNode($,{class:"kong-ui-entity-filter-menu"},{body:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,(C,q)=>(e.openBlock(),e.createBlock(I,{key:C.value,"data-testid":C.value,expandable:"","last-menu-item":q===x.value.length-1},{itemTitle:e.withCtx(()=>[e.createElementVNode("span",ut,[e.createTextVNode(e.toDisplayString(C.label)+" ",1),e.withDirectives(e.createElementVNode("span",mt,null,512),[[e.vShow,f.value.includes(C.value)]])])]),itemBody:e.withCtx(()=>{var M,K;return[e.createElementVNode("div",yt,[e.createElementVNode("label",{class:"menu-item-label",for:l(C.value)},e.toDisplayString(e.unref(o)("filter.fieldLabel")),9,gt),((K=(M=t.config.schema)==null?void 0:M[C.value])==null?void 0:K.type)==="select"?(e.openBlock(),e.createBlock(N,{key:0,id:l(C.value),modelValue:i.value[C.value],"onUpdate:modelValue":D=>i.value[C.value]=D,appearance:"select",items:g(C.value),placeholder:e.unref(o)("filter.selectPlaceholder")},null,8,["id","modelValue","onUpdate:modelValue","items","placeholder"])):(e.openBlock(),e.createBlock(d,{key:1,id:l(C.value),modelValue:i.value[C.value],"onUpdate:modelValue":D=>i.value[C.value]=D,autocomplete:"off",placeholder:e.unref(o)("filter.inputPlaceholder"),size:"small",type:S(C.value)},null,8,["id","modelValue","onUpdate:modelValue","placeholder","type"]))]),e.createElementVNode("div",ht,[e.createVNode(c,{appearance:"btn-link","data-testid":"apply-filter",size:"small",onClick:m[0]||(m[0]=D=>b(!0))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.applyButtonText")),1)]),_:1}),e.createVNode(c,{appearance:"btn-link","data-testid":"clear-filter",size:"small",onClick:D=>_(C.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(c,{onClick:B},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearAllButtonText")),1)]),_:1})]),_:1},512),[[e.vShow,r.value]])]))}}}),[["__scopeId","data-v-745f38c0"]]),te=e.defineComponent({__name:"PermissionsWrapper",props:{authFunction:{type:Function,required:!0,default:async()=>!0},forceShow:{type:Boolean,default:!1}},setup(t){const n=t,a=e.ref(void 0),o=e.computed(()=>a.value===!0||a.value!==void 0&&n.forceShow===!0);return e.watch(()=>n.authFunction,async()=>{a.value=await n.authFunction()},{immediate:!0}),(r,i)=>o.value?e.renderSlot(r.$slots,"default",{key:0,isAllowed:a.value}):e.createCommentVNode("",!0)}}),kt={class:"form-section-wrapper"},Ct={key:0,class:"form-section-title"},wt={key:1,class:"form-section-description"},St={key:2,class:"form-section-footer"},_t={class:"form-section-content"},ye=H(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",kt,[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",Ct,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description||e.unref(n).description?(e.openBlock(),e.createElementBlock("div",wt,[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",St,[e.renderSlot(a.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2)),e.createElementVNode("div",_t,[e.renderSlot(a.$slots,"default",{},void 0,!0)])])],2))}}),[["__scopeId","data-v-8b6dc312"]]),{useAxios:ge,useDeleteUrlBuilder:xt,useErrors:Nt,useFetchUrlBuilder:la,useFetcher:Bt,useDebouncedFilter:It,useStringHelpers:sa,useGatewayFeatureSupported:ca}=j,Vt={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},Et="Copy to clipboard",Tt={message:Vt,iconTitle:Et},$t="kong-ui-copy-uuid-notify",Mt={class:"kong-ui-copy-uuid"},Kt=["title"],Dt=["onClick"],he=15,Pt=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}=G.createI18n("en-us",Tt),r=a.notify||e.inject($t,()=>{}),i=e.computed(()=>!!(a.tooltip&&a.successTooltip)),f=e.ref(a.tooltip),x=e.computed(()=>a.tooltip?{label:f.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),y=e.computed(()=>a.format==="redacted"?"*****":a.format==="deleted"?`*${a.uuid.substring(0,5)}`:a.uuid),u=g=>{f.value=g,setTimeout(()=>{f.value=a.tooltip},1800)},l=g=>{if(!g(a.uuid)){typeof r=="function"&&r({type:"error",message:o("message.fail")}),i.value?u(o("message.fail")):n("error",a.uuid);return}const S=a.uuid.length>he,_=a.format==="hidden"||a.format==="redacted"?o("message.success.prefix"):`"${a.uuid.substring(0,he)+(S?"...":"")}"`;typeof r=="function"&&r({type:"success",message:`${_}${o("message.success.content")}`}),i.value?u(a.successTooltip):n("success",a.uuid)};return(g,S)=>{const _=e.resolveComponent("KIcon"),B=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",Mt,[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(y.value),3)],8,Kt)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tooltip?"KTooltip":"div"),e.mergeProps(x.value,{class:"uuid-icon-wrapper"}),{default:e.withCtx(()=>[e.createVNode(B,null,{default:e.withCtx(({copyToClipboard:b})=>[e.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:e.withModifiers(s=>l(b),["stop"])},[e.createVNode(_,{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,Dt)]),_:1})]),_:1},16))])}}}),qt=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},Ft=qt(Pt,[["__scopeId","data-v-e4ea1359"]]),da="",pa="",Rt={class:"kong-ui-entities-snis-list"},Ot={key:1},Ut={key:1},jt=e.defineComponent({__name:"SniList",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 J;const a=t,{i18n:{t:o}}=ne.useI18n(),r=(h,V)=>{var T;h.type==="error"?n("copy:error",{entity:V,field:"certificate.id",message:o("errors.copy")}):n("copy:success",{entity:V,field:"certificate.id",message:o("copy.success",{val:(T=V.certificate)==null?void 0:T.id})})},{axiosInstance:i}=ge({headers:(J=a.config)==null?void 0:J.requestHeaders}),f=e.ref(1),x=e.computed(()=>a.config.app!=="kongManager"||!!a.config.disableSorting),y={name:{label:o("snis.list.table_headers.name"),searchable:!0,sortable:!0},certificate:{label:o("snis.list.table_headers.certificate_id"),sortable:!1},tags:{label:o("snis.list.table_headers.tags"),sortable:!1}},u=y,l=h=>({style:{maxWidth:h.headerKey==="name"?"250px":h.headerKey==="certificate"?"350px":null}}),g=e.computed(()=>{var V,T;let h=`${a.config.apiBaseUrl}${Q.list[a.config.app].all}`;return a.config.app==="konnect"?h=h.replace(/{controlPlaneId}/gi,((V=a.config)==null?void 0:V.controlPlaneId)||""):a.config.app==="kongManager"&&(h=h.replace(/\/{workspace}/gi,(T=a.config)!=null&&T.workspace?`/${a.config.workspace}`:"")),h}),S=e.ref(""),_=e.computed(()=>{const h=a.config.app==="konnect"||a.config.isExactMatch;if(h)return{isExactMatch:h,placeholder:o("search.placeholder")};const{name:V}=y;return{isExactMatch:h,fields:{name:V},schema:a.config.filterSchema}}),{fetcher:B,fetcherState:b}=Bt(a.config,g.value),s=()=>{S.value=""},m=()=>{f.value++},d=e.ref(""),c=e.ref({ctaPath:a.config.createRoute,ctaText:void 0,message:o("snis.list.empty_state.description"),title:o("snis.title")}),N=(h,V)=>{const T=h.id;if(!V(T)){n("copy:error",{entity:h,field:"id",message:o("errors.copy")});return}n("copy:success",{entity:h,field:"id",message:o("copy.success",{val:T})})},I=(h,V)=>{const T=JSON.stringify(h);if(!V(T)){n("copy:error",{entity:h,message:o("errors.copy")});return}n("copy:success",{entity:h,message:o("copy.success_brief")})},$=h=>({label:o("actions.edit"),to:a.config.getEditRoute(h)}),C=e.ref(void 0),q=e.ref(!1),M=e.ref(!1),K=e.ref(""),D=xt(a.config,g.value),O=h=>{C.value=h,q.value=!0},z=()=>{q.value=!1,C.value=void 0},W=async()=>{var h,V,T;if((h=C.value)!=null&&h.id){M.value=!0;try{await i.delete(D(C.value.id)),n("delete:success",C.value),M.value=!1,z(),f.value++}catch(p){K.value=((T=(V=p.response)==null?void 0:V.data)==null?void 0:T.message)||p.message||o("errors.delete"),n("error",p)}finally{M.value=!1}}};return e.watch(b,h=>{if(h.status===U.Error){d.value=o("errors.general"),n("error",h.error);return}d.value=""}),e.onBeforeMount(async()=>{await a.canCreate()&&(c.value.title=o("snis.list.empty_state.title"),c.value.ctaText=o("actions.create"))}),(h,V)=>{const T=e.resolveComponent("KButton"),p=e.resolveComponent("KBadge"),w=e.resolveComponent("KTruncate"),E=e.resolveComponent("KDropdownItem"),A=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",Rt,[e.createVNode(e.unref(at),{"cache-identifier":t.cacheIdentifier,"cell-attributes":l,"disable-pagination-page-jump":"","disable-sorting":x.value,"empty-state-options":c.value,"enable-entity-actions":"","error-message":d.value,fetcher:e.unref(B),"fetcher-cache-key":f.value,"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-snis-list",query:S.value,"table-headers":e.unref(u),onClearSearchInput:s,onSort:m},{"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(bt),{modelValue:S.value,"onUpdate:modelValue":V[0]||(V[0]=k=>S.value=k),config:_.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[e.createVNode(e.unref(te),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(T,{appearance:"primary","data-testid":"toolbar-add-sni",icon:"plus",to:t.config.createRoute},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("snis.list.toolbar_actions.new")),1)]),_:1},8,["to"])]),_:1},8,["auth-function"])]),name:e.withCtx(({rowValue:k})=>[e.createElementVNode("b",null,e.toDisplayString(k??"-"),1)]),certificate:e.withCtx(({row:k})=>[k.certificate&&k.certificate.id?(e.openBlock(),e.createBlock(e.unref(Ft),{key:0,class:"copy-certificate-uuid","data-testid":"copy-certificate-uuid",notify:R=>r(R,k),truncated:!1,uuid:k.certificate.id},null,8,["notify","uuid"])):(e.openBlock(),e.createElementBlock("span",Ot,"-"))]),tags:e.withCtx(({rowValue:k})=>[k!=null&&k.length?(e.openBlock(),e.createBlock(w,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k,R=>(e.openBlock(),e.createBlock(p,{key:R,onClick:V[1]||(V[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(R),1)]),_:2},1024))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",Ut,"-"))]),actions:e.withCtx(({row:k})=>[e.createVNode(A,null,{default:e.withCtx(({copyToClipboard:R})=>[e.createVNode(E,{"data-testid":"action-entity-copy-id",onClick:X=>N(k,R)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(A,null,{default:e.withCtx(({copyToClipboard:R})=>[e.createVNode(E,{"data-testid":"action-entity-copy-json",onClick:X=>I(k,R)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(te),{"auth-function":()=>t.canEdit(k)},{default:e.withCtx(()=>[e.createVNode(E,{"data-testid":"action-entity-edit",item:$(k.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(te),{"auth-function":()=>t.canDelete(k)},{default:e.withCtx(()=>[e.createVNode(E,{"data-testid":"action-entity-delete","has-divider":"","is-dangerous":"",onClick:R=>O(k)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("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(rt),{"action-pending":M.value,description:e.unref(o)("delete.description"),"entity-name":C.value&&(C.value.name||C.value.id),"entity-type":e.unref(re).SNI,error:K.value,"need-confirm":!1,title:e.unref(o)("delete.title"),visible:q.value,onCancel:z,onProceed:W},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),fa="",be=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},At=be(jt,[["__scopeId","data-v-363811ed"]]),Lt={class:"kong-ui-entities-snis-form"},Ht={"data-testid":"no-search-results"},zt={key:2,class:"invalid-certificate-message","data-testid":"invalid-certificate-message"},Wt=e.defineComponent({__name:"SniForm",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)},sniId:{type:String,required:!1,default:""}},emits:["update","error","loading"],setup(t,{emit:n}){var T;const a=t,o=oe.useRouter(),{i18n:{t:r}}=ne.useI18n(),{getMessageFromError:i}=Nt(),{axiosInstance:f}=ge({headers:(T=a.config)==null?void 0:T.requestHeaders}),x=e.computed(()=>Q.form[a.config.app].edit),y=e.computed(()=>a.sniId?Y.Edit:Y.Create),u=e.computed(()=>a.config.certificateId&&y.value===Y.Create?a.config.certificateId:""),l=e.reactive({fields:{name:"",tags:"",certificate_id:""},isReadonly:!1,errorMessage:""}),g=e.reactive({name:"",tags:"",certificate_id:""}),S=e.computed(()=>JSON.stringify(l.fields)!==JSON.stringify(g)&&!!l.fields.name&&!!(l.fields.certificate_id||u.value)),_=p=>{var w,E;l.fields.name=(p==null?void 0:p.name)||"",l.fields.tags=((w=p==null?void 0:p.tags)==null?void 0:w.join(", "))||"",l.fields.certificate_id=((E=p==null?void 0:p.certificate)==null?void 0:E.id)||"",Object.assign(g,l.fields)},B=()=>{o.push(a.config.cancelRoute)},b=e.computed(()=>{var w,E;let p=`${a.config.apiBaseUrl}${Q.form[a.config.app].validate}`;return a.config.app==="konnect"?p=p.replace(/{controlPlaneId}/gi,((w=a.config)==null?void 0:w.controlPlaneId)||""):a.config.app==="kongManager"&&(p=p.replace(/\/{workspace}/gi,(E=a.config)!=null&&E.workspace?`/${a.config.workspace}`:"")),p=p.replace(/{id}/gi,a.sniId),p}),s=e.computed(()=>{var w,E;let p=`${a.config.apiBaseUrl}${Q.form[a.config.app][y.value]}`;return a.config.app==="konnect"?p=p.replace(/{controlPlaneId}/gi,((w=a.config)==null?void 0:w.controlPlaneId)||""):a.config.app==="kongManager"&&(p=p.replace(/\/{workspace}/gi,(E=a.config)!=null&&E.workspace?`/${a.config.workspace}`:"")),p=p.replace(/{id}/gi,a.sniId),p}),m=async()=>{var p,w,E,A,k,R,X,ke;try{l.isReadonly=!0;const L={name:l.fields.name,tags:(w=(p=l.fields.tags.split(","))==null?void 0:p.map(ae=>String(ae||"").trim()))==null?void 0:w.filter(ae=>ae!==""),certificate:{id:u.value||l.fields.certificate_id}};let P;await f.post(b.value,L),y.value==="create"?P=await f.post(s.value,L):y.value==="edit"&&(P=((E=a.config)==null?void 0:E.app)==="konnect"?await f.put(s.value,L):await f.patch(s.value,L)),l.fields.name=((A=P==null?void 0:P.data)==null?void 0:A.name)||"",l.fields.tags=((R=(k=P==null?void 0:P.data)==null?void 0:k.tags)==null?void 0:R.join(", "))||"",l.fields.certificate_id=((ke=(X=P==null?void 0:P.data)==null?void 0:X.certificate)==null?void 0:ke.id)||"",Object.assign(g,l.fields),n("update",P==null?void 0:P.data)}catch(L){l.errorMessage=i(L),n("error",L)}finally{l.isReadonly=!1}},{debouncedQueryChange:d,loading:c,allRecords:N,error:I,validationError:$,loadItems:C,results:q}=It(a.config,Q.form[a.config.app].certificates),M=e.ref(!0),K=p=>{M.value=!p,d(p)},D=e.computed(()=>I.value?r("errors.certificates.fetch"):""),O=e.computed(()=>$.value?r("errors.certificates.invalid"):""),z=e.ref(0),W=e.computed(()=>N.value===void 0),J=e.ref(new Set),h=e.computed(()=>Array.from(J.value).map(w=>({label:w,value:w,selected:l.fields.certificate_id===w}))),V=p=>{J.value.clear();let w;for(w of p)J.value.add(w.id)};return e.watch(q,p=>{V(p)},{immediate:!0,deep:!0}),e.watch(h,()=>{z.value++},{immediate:!0,deep:!0}),e.onBeforeMount(async()=>{await C()}),(p,w)=>{const E=e.resolveComponent("KInput"),A=e.resolveComponent("KSelect");return e.openBlock(),e.createElementBlock("div",Lt,[e.createVNode(e.unref(Ye),{"can-submit":S.value,config:t.config,"edit-id":t.sniId,"error-message":l.errorMessage||D.value,"fetch-url":x.value,"is-readonly":l.isReadonly,onCancel:B,"onFetch:error":w[3]||(w[3]=k=>p.$emit("error",k)),"onFetch:success":_,onLoading:w[4]||(w[4]=k=>p.$emit("loading",k)),onSubmit:m},{default:e.withCtx(()=>[e.createVNode(e.unref(ye),{description:e.unref(r)("form.sections.general.description"),title:e.unref(r)("form.sections.general.title")},{default:e.withCtx(()=>[e.createVNode(E,{modelValue:l.fields.name,"onUpdate:modelValue":w[0]||(w[0]=k=>l.fields.name=k),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"sni-form-name",label:e.unref(r)("form.fields.name.label"),placeholder:e.unref(r)("form.fields.name.placeholder"),readonly:l.isReadonly,required:"",type:"text"},null,8,["modelValue","label","placeholder","readonly"]),e.createVNode(E,{modelValue:l.fields.tags,"onUpdate:modelValue":w[1]||(w[1]=k=>l.fields.tags=k),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"sni-form-tags",help:e.unref(r)("form.fields.tags.help"),label:e.unref(r)("form.fields.tags.label"),"label-attributes":{help:e.unref(r)("form.fields.tags.tooltip")},placeholder:e.unref(r)("form.fields.tags.placeholder"),readonly:l.isReadonly,type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"])]),_:1},8,["description","title"]),e.createVNode(e.unref(ye),{description:e.unref(r)("form.sections.certificate.description"),"has-divider":"",title:e.unref(r)("form.sections.certificate.title")},{default:e.withCtx(()=>[u.value?(e.openBlock(),e.createBlock(E,{key:0,"data-testid":"sni-form-certificate-id",label:e.unref(r)("form.fields.certificate_id.label"),"model-value":u.value,readonly:"",required:"",width:"100%"},null,8,["label","model-value"])):(e.openBlock(),e.createBlock(A,{key:1,modelValue:l.fields.certificate_id,"onUpdate:modelValue":w[2]||(w[2]=k=>l.fields.certificate_id=k),appearance:"select",autosuggest:"",class:e.normalizeClass({"k-select-placeholder":M.value}),clearable:"","data-testid":"sni-form-certificate-id","dropdown-footer-text":W.value?e.unref(r)("form.fields.certificate_id.footer"):void 0,"enable-filtering":"",items:h.value,label:e.unref(r)("form.fields.certificate_id.label"),loading:e.unref(c),placeholder:e.unref(r)("form.fields.certificate_id.placeholder"),readonly:l.isReadonly,required:"",width:"100%",onQueryChange:K},{loading:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("actions.loading")),1)]),empty:e.withCtx(()=>[e.createElementVNode("div",Ht,e.toDisplayString(e.unref(r)("search.no_results")),1)]),_:1},8,["modelValue","class","dropdown-footer-text","items","label","loading","placeholder","readonly"])),O.value?(e.openBlock(),e.createElementBlock("p",zt,e.toDisplayString(O.value),1)):e.createCommentVNode("",!0)]),_:1},8,["description","title"])]),_:1},8,["can-submit","config","edit-id","error-message","fetch-url","is-readonly"])])}}}),ua="",Jt=be(Wt,[["__scopeId","data-v-4d04a730"]]);F.SniForm=Jt,F.SniList=At,Object.defineProperty(F,Symbol.toStringTag,{value:"Module"})});
1
+ (function(q,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@kong-ui-public/i18n"),require("axios"),require("@kong/kongponents"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/i18n","axios","@kong/kongponents","vue-router"],e):(q=typeof globalThis<"u"?globalThis:q||self,e(q["kong-ui-public-entities-snis"]={},q.Vue,q["kong-ui-public-i18n"],q.axios,q.Kongponents,q.VueRouter))})(this,function(q,e,G,Ce,Jt,oe){"use strict";const we={actions:{create:"New SNI",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",clear:"Clear",loading:"Loading..."},search:{placeholder:"Filter by exact name or ID",no_results:"No results found"},snis:{title:"SNIs",list:{toolbar_actions:{new:"New SNI"},table_headers:{name:"Name",id:"ID",certificate_id:"SSL Certificate ID",tags:"Tags"},empty_state:{title:"Configure a New SNI",description:"SNIs are used to map hostnames to a certificate."}}},form:{sections:{general:{title:"General Information",description:"General information will help identify and manage this SNI."},certificate:{title:"Certificate",description:"Map an existing Certificate object to hostnames"}},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."},certificate_id:{label:"SSL Certificate ID",placeholder:"Enter or select a Certificate ID",footer:"Search by exact ID to find certificates not included in the list"}}},delete:{title:"Delete an SNI",description:"This action cannot be reversed so make sure to check the SNI usage before deleting."},errors:{delete:"The SNI could not be deleted at this time.",general:"SNIs could not be retrieved",certificates:{fetch:"Could not fetch available certificates",invalid:"Please select a valid certificate ID"},copy:"Failed to copy to clipboard"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"}};function Se(){const t=G.createI18n("en-us",we);return{i18n:t,i18nT:G.i18nTComponent(t)}}const ne={useI18n:Se},Q={list:{konnect:{all:"/api/runtime_groups/{controlPlaneId}/snis"},kongManager:{all:"/{workspace}/snis"}},form:{konnect:{create:"/api/runtime_groups/{controlPlaneId}/snis",edit:"/api/runtime_groups/{controlPlaneId}/snis/{id}",validate:"/api/runtime_groups/{controlPlaneId}/v1/schemas/json/sni/validate",certificates:"/api/runtime_groups/{controlPlaneId}/certificates"},kongManager:{create:"/{workspace}/snis",edit:"/{workspace}/snis/{id}",validate:"/{workspace}/schemas/snis/validate",certificates:"/{workspace}/certificates"}}};var re=(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.Policy="policy",t))(re||{}),Y=(t=>(t.Edit="edit",t.Create="create",t))(Y||{}),O=(t=>(t[t.Loading=0]="Loading",t[t.Idle=1]="Idle",t[t.NoResults=2]="NoResults",t[t.Error=3]="Error",t))(O||{});function Z(t={}){return{axiosInstance:Ce.create({withCredentials:!0,timeout:3e4,...t})}}function _e(){return{debounce:(t,n)=>{let a;return(...o)=>{clearTimeout(a),a=window==null?void 0:window.setTimeout(()=>{t(...o)},n)}}}}const v="khcp-user-table-preferences",xe={pageSize:30,sortColumnKey:void 0,sortColumnOrder:void 0};function Ne(){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(v));return!a||!Object.keys(a).length?new Map:new Map(Object.entries(a))};return{setTablePreferences:(a,o)=>{try{const r=n();r.set(a,o),localStorage.setItem(v,JSON.stringify(Object.fromEntries(r.entries())))}catch(r){console.error("useTablePreferences(setTablePreferences)",r)}},getTablePreferences:a=>{const o=n();return(o==null?void 0:o.get(a))||void 0||xe},deleteAllTablePreferences:()=>{localStorage.removeItem(v)}}}const Be={message:"Are you sure you want to delete this {entityType}?",messageWithName:"Are you sure you want to delete this {entityType} {entityName}?"},Ie={actions:{save:"Save",cancel:"Cancel",back:"Back"},errors:{edit:"The entity could not be edited at this time."}},Ve={emptyState:{noSearchResultsTitle:"No results found",noSearchResultsMessage:"Please adjust the criteria and try again.",noSearchResultsCtaText:"Clear"}},Ee={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}"}},Te={filterButtonText:"Filter",fieldLabel:"Filter by:",inputPlaceholder:"Enter a value",selectPlaceholder:"Select an item",applyButtonText:"Apply",clearButtonText:"Clear",clearAllButtonText:"Clear all filters"},$e={errors:{fetch:"Could not fetch available items",invalid:"Please select a valid value"}},Ke={unexpected:"An unexpected error has occurred",dataKeyUndefined:'The data key "{dataKey}" does not exist in the response.'},Me={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"}},De={deleteModal:Be,baseForm:Ie,baseTable:Ve,baseConfigCard:Ee,filter:Te,debouncedFilter:$e,errors:Ke,toggleModal:Me};function ee(){const t=G.createI18n("en-us",De);return{i18n:t,i18nT:G.i18nTComponent(t)}}function Pe(t,n,a,o={fetchedItemsKey:"data",searchKeys:["id"]}){a||(a="100");const{axiosInstance:r}=Z({headers:t.requestHeaders}),{i18n:{t:i}}=ee(),{debounce:u}=_e(),_=u(async d=>{await f(d)},200),y=e.ref(!1),m=e.ref(""),l=e.ref(""),g=e.ref([]),C=e.ref(void 0),x=e.unref(n);let N=`${t.apiBaseUrl}${x}`;t.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,(t==null?void 0:t.controlPlaneId)||""):t.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,t!=null&&t.workspace?`/${t.workspace}`:""));const b=async()=>{try{y.value=!0;const{data:d}=await r.get(`${N}?size=${a}`);d!=null&&d.next||(C.value=o.fetchedItemsKey in d?d[o.fetchedItemsKey]:[]),g.value=o.fetchedItemsKey in d?d[o.fetchedItemsKey]:[]}catch{g.value=[],m.value=i("debouncedFilter.errors.fetch")}finally{y.value=!1}},s=e.ref(""),f=async d=>{var c,B;if(s.value!==d)if(s.value=d||"",C.value===void 0)try{y.value=!0,m.value="",l.value="";let I=N+"";d&&(I+=`/${d}`);const{data:$}=await r.get(`${I}?size=${a}`);o.fetchedItemsKey in $?g.value=$[o.fetchedItemsKey]:$!=null&&$.id?g.value=[$]:g.value=[]}catch(I){((c=I==null?void 0:I.response)==null?void 0:c.status)===404?l.value=i("debouncedFilter.errors.invalid"):(g.value=[],m.value=i("debouncedFilter.errors.fetch"))}finally{y.value=!1}else y.value=!0,l.value="",d?(g.value=(B=C.value)==null?void 0:B.filter(I=>{var $;let w=!1;for(const F of o.searchKeys){const K=typeof I[F]=="string"?($=I[F])==null?void 0:$.toLowerCase():I[F];K!=null&&K.includes(d.toLowerCase())&&(w=!0)}return w}),(!g.value||!g.value.length)&&(l.value=i("debouncedFilter.errors.invalid"))):g.value=C.value,y.value=!1};return{loading:y,error:m,validationError:l,results:g,allRecords:C,loadItems:b,debouncedQueryChange:_}}function Fe(t,n){const a=e.unref(n),o=e.computed(()=>t.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${a}`):new URL(a));return o.value.search="",r=>`${o.value.href}/${r}`}function qe(){const{i18n:{t}}=ee();return{getMessageFromError:n=>{var a,o,r;if(!n)return t("errors.unexpected");if((a=n==null?void 0:n.response)!=null&&a.data){if(n.response.data.detail)return n.response.data.detail;if((o=n.response.data.details)!=null&&o.length)return n.response.data.details.map(i=>{let u=t("errors.unexpected");return i.messages&&typeof i.messages=="object"&&i.messages.length&&(u=i.messages.join(", ")),i.field?`${i.field} - ${u}`:u}).join("; ");if(n.response.data.message){const{message:i}=n.response.data;return Array.isArray(i)?(r=i[0])!=null&&r.constraints?Object.values(i[0].constraints)[0]:i[0]:i}if(typeof n.response.data=="string")return n.response.data;if(typeof n.response.data=="object")return Object.keys(n.response.data).map(i=>`${i} ${n.response.data[i]}`).join(", ")}return n.message||t("errors.unexpected")}}}function ie(t,n){const a=e.ref(e.unref(t)),o=e.ref(e.unref(n)),r=e.computed(()=>!!(a.value.app==="konnect"||a.value.isExactMatch)),i=e.computed(()=>o.value.startsWith("/")?new URL(`${window.location.origin}${o.value}`):new URL(o.value));return u=>{const{page:_,pageSize:y,offset:m,sortColumnKey:l,sortColumnOrder:g,query:C}=u;try{let x=new URL(i.value.href);return r.value&&C?(x.search="",x=new URL(`${x.href}/${C}/`)):(r.value||new URLSearchParams(C).forEach((N,b)=>{x.searchParams.append(b,N)}),l&&x.searchParams.append("sort_by",l),g==="desc"&&x.searchParams.append("sort_desc","1"),x.searchParams.append("size",String(y))),m&&_!==1&&x.searchParams.append("offset",String(m)),x.href}catch(x){return console.error("RouteList(fetcher)",x),o.value}}}function Re(t,n,a="data"){const o=e.unref(n),{axiosInstance:r}=Z({headers:t.requestHeaders}),i=ie(t,o),u=e.ref({status:O.Idle});return{fetcher:async _=>{try{u.value={status:O.Loading};const y=i(_),{data:m}=await r.get(y),l=a&&a.replace(/[^\w-_]/gi,"");let g;m[l]&&Array.isArray(m[l])?g=m[l]:g=Object.keys(m).length?[m]:[];const C={data:g,total:g.length,...m.offset?{pagination:{offset:m.offset}}:null};return u.value={status:O.Idle,response:C},C}catch(y){const m={data:[],total:0};return _.query&&y.response.status===404?(u.value={status:O.NoResults,response:m,error:y},m):(u.value={status:O.Error,response:m,error:y},m)}},fetcherState:u}}function Ue(){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,se=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},ce=t=>t==="*"||t==="x"||t==="X",de=t=>{const n=parseInt(t,10);return isNaN(n)?t:n},Oe=(t,n)=>typeof t!=typeof n?[String(t),String(n)]:[t,n],je=(t,n)=>{if(ce(t)||ce(n))return 0;const[a,o]=Oe(de(t),de(n));return a>o?1:a<o?-1:0},pe=(t,n)=>{for(let a=0;a<Math.max(t.length,n.length);a++){const o=je(t[a]||"0",n[a]||"0");if(o!==0)return o}return 0},Ae=(t,n)=>{const a=se(t),o=se(n),r=a.pop(),i=o.pop(),u=pe(a,o);return u!==0?u:r&&i?pe(r.split("."),i.split(".")):r||i?r?-1:1:0},fe=(t,n,a)=>{Le(a);const o=Ae(t,n);return ue[a].includes(o)},ue={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},me=Object.keys(ue),Le=t=>{if(typeof t!="string")throw new TypeError(`Invalid operator type, expected string but got ${typeof t}`);if(me.indexOf(t)===-1)throw new Error(`Invalid operator, expected one of ${me.join("|")}`)},ze=t=>typeof t=="string"&&/^[v\d]/.test(t)&&le.test(t);function He(t){const{gatewayInfo:n,supportedRange:a}=t;if(!n)return!0;const{edition:o,version:r}=n;if(!ze(r))return console.error("Invalid version"),!1;const i=a[o];if(!i)return!1;const[u,_]=i;return!(u&&fe(r,u,"<")||_&&fe(r,_,">"))}const j={useAxios:Z,useDebouncedFilter:Pe,useDeleteUrlBuilder:Fe,useErrors:qe,useFetcher:Re,useFetchUrlBuilder:ie,useStringHelpers:Ue,useI18n:ee,useGatewayFeatureSupported:He},z=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},We="#0044f4",Je="#3a3f51",Ge=["onReset","onSubmit"],Qe={class:"form-actions","data-testid":"form-actions"},Ye=z(e.defineComponent({__name:"EntityBaseForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},editId:{type:String,required:!1,default:""},fetchUrl:{type:String,required:!1,default:""},isReadonly:{type:Boolean,required:!1,default:!1},canSubmit:{type:Boolean,required:!1,default:void 0},errorMessage:{type:String,required:!1,default:""}},emits:["loading","fetch:success","fetch:error","submit","cancel"],setup(t,{emit:n}){var a;const o=t,r=oe.useRouter(),{i18n:{t:i}}=j.useI18n(),{getMessageFromError:u}=j.useErrors(),{axiosInstance:_}=j.useAxios({headers:(a=o.config)==null?void 0:a.requestHeaders}),y=e.ref(!1),m=e.ref(!1),l=e.ref(""),g=e.computed(()=>o.canSubmit===!1||o.isReadonly),C=e.computed(()=>{var s,f;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,(f=o.config)!=null&&f.workspace?`/${o.config.workspace}`:"")),d=d.replace(/{id}/gi,o.editId),d}),x=()=>{o.config.cancelRoute?r.push(o.config.cancelRoute):N()},N=()=>{n("cancel")},b=()=>{g.value||n("submit")};return e.watch(()=>y.value,s=>{n("loading",s)},{immediate:!0}),e.onBeforeMount(async()=>{if(o.editId)try{m.value=!1,y.value=!0;const{data:s}=await _.get(C.value);n("fetch:success",s)}catch(s){const f=u(s);l.value=f.startsWith("code")?i("baseForm.errors.edit"):f,m.value=!0,n("fetch:error",s)}finally{y.value=!1}}),(s,f)=>{const d=e.resolveComponent("KSkeleton"),c=e.resolveComponent("KEmptyState"),B=e.resolveComponent("KAlert"),I=e.resolveComponent("KButton"),$=e.resolveComponent("KCard");return e.openBlock(),e.createBlock($,{class:"kong-ui-entity-base-form"},{body:e.withCtx(()=>[y.value?(e.openBlock(),e.createBlock(d,{key:0,type:"form"})):m.value?(e.openBlock(),e.createBlock(c,{key:1,"cta-text":e.unref(i)("baseForm.actions.back"),"data-testid":"form-fetch-error","handle-click":x,"is-error":!0},{message:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(l.value),1)]),_:1},8,["cta-text"])):(e.openBlock(),e.createElementBlock("form",{key:2,"data-testid":"form-content",onReset:e.withModifiers(N,["prevent"]),onSubmit:e.withModifiers(b,["prevent"])},[e.renderSlot(s.$slots,"default",{},void 0,!0),t.errorMessage?(e.openBlock(),e.createBlock(B,{key:0,"alert-message":t.errorMessage,appearance:"danger","data-testid":"form-error"},null,8,["alert-message"])):e.createCommentVNode("",!0),e.createElementVNode("div",Qe,[e.renderSlot(s.$slots,"form-actions",{},()=>[e.createVNode(I,{appearance:"outline","data-testid":"form-cancel",disabled:t.isReadonly,type:"reset"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseForm.actions.cancel")),1)]),_:1},8,["disabled"]),e.createVNode(I,{appearance:"primary","data-testid":"form-submit",disabled:g.value,type:"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("baseForm.actions.save")),1)]),_:1},8,["disabled"])],!0)])],40,Ge))]),_:3})}}}),[["__scopeId","data-v-2286e5f2"]]),Xe={key:0},Ze=z(e.defineComponent({__name:"EntityBaseTableCell",props:{keyName:{type:String,required:!0},rowEl:{type:[Object,null],required:!0}},setup(t){const n=t,a=e.computed(()=>{var 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}),r=e.computed(()=>{var b,s;const f=(b=n.rowEl)==null?void 0:b.querySelectorAll("td");return f?((s=f[0])==null?void 0:s.getAttribute("data-testid"))===n.keyName:!1});let i;const u=()=>{i&&(i.disconnect(),i=void 0)},_=()=>{var b,s,f;m.value=((b=o.value)==null?void 0:b.getBoundingClientRect().width)||0,l.value=((s=a.value)==null?void 0:s.clientWidth)||0,g.value=((f=y.value)==null?void 0:f.innerText)||""},y=e.ref({}),m=e.ref(0),l=e.ref(0),g=e.ref(""),C=e.computed(()=>[o.value,a.value]),x=e.watch(C,b=>{if(r.value&&(u(),"ResizeObserver"in window&&window)){i=new ResizeObserver(s=>{window.requestAnimationFrame(()=>{!Array.isArray(s)||!s.length||_()})});for(const s of b)s&&i.observe(s)}},{immediate:!0,flush:"post",deep:!0}),N=e.computed(()=>r.value?m.value>l.value:!1);return e.onMounted(()=>{_()}),e.onUnmounted(()=>{x()}),(b,s)=>{const f=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("span",{ref_key:"contentRef",ref:y,class:"content-wrapper"},[r.value?(e.openBlock(),e.createElementBlock("span",Xe,[e.createVNode(f,{disabled:!N.value,label:g.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"]]),ve={class:"toolbar-container"},et={key:0,class:"toolbar-button-container"},tt=["data-testid"],at=z(e.defineComponent({__name:"EntityBaseTable",props:{tableHeaders:{type:Object,required:!0,default:()=>({})},fetcher:{type:Function,required:!0,default:async()=>({data:[],total:0})},initialFetcherParams:{type:Object,default:null},cacheIdentifier:{type:String,default:""},fetcherCacheKey:{type:Number,default:1},isLoading:{type:Boolean,default:!1},query:{type:String,default:""},enableClientSort:{type:Boolean,default:!1},enableEntityActions:{type:Boolean,default:!0},emptyStateOptions:{type:Object,default:()=>({})},errorMessage:{type:String,default:""},disablePaginationPageJump:{type:Boolean,default:void 0},disableSorting:{type:Boolean,default:void 0},paginationType:{type:String,default:void 0},cellAttributes:{type:Function,default:()=>({})},rowAttributes:{type:Function,default:()=>({})},preferencesStorageKey:{type:String,default:"",required:!0},dropdownMenuWidth:{type:String,default:"",required:!1},title:{type:String,default:""}},emits:["click:row","sort","clear-search-input","empty-state-cta-clicked"],setup(t,{emit:n}){const a=t,{i18n:{t:o}}=j.useI18n(),r=e.computed(()=>a.cacheIdentifier||a.preferencesStorageKey),i=c=>c.hasData||!!a.query,u=e.computed(()=>{const c=[];return Object.keys(a.tableHeaders).forEach(B=>{const I=a.tableHeaders[B];c.push({label:I.label??B,key:B,sortable:I.sortable??!1})}),a.enableEntityActions&&c.push({key:"actions",hideLabel:!0}),c}),_=c=>({"data-rowid":c.id,"data-testid":c.name,...a.rowAttributes(c)}),y=e.ref({}),m=c=>{var B;return(B=y.value)==null?void 0:B.$el.querySelector(`[data-rowid="${c.id}"]`)},l=c=>{const B={"data-testid":c.headerKey,...a.cellAttributes(c)};return c.colIndex===0&&(B.style={maxWidth:"250px",overflowX:"hidden",textOverflow:"ellipsis"}),B},g=()=>{n("empty-state-cta-clicked"),C()},C=()=>{n("clear-search-input")},x=(c,B)=>{n("click:row",B)},N=c=>{n("sort",c)},{setTablePreferences:b,getTablePreferences:s}=Ne(),f=e.computed(()=>{const c=s(a.preferencesStorageKey);return{...a.initialFetcherParams,...c}}),d=c=>{a.preferencesStorageKey&&b(a.preferencesStorageKey,c)};return(c,B)=>{const I=e.resolveComponent("KIcon"),$=e.resolveComponent("KButton"),w=e.resolveComponent("KDropdownMenu"),F=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(F,{ref_key:"tableRefs",ref:y,"cache-identifier":r.value,"cell-attrs":l,"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:u.value,"hide-pagination-when-optional":"","initial-fetcher-params":f.value,"is-loading":t.isLoading,"pagination-type":t.paginationType,"row-attrs":_,"search-input":t.query,onKtableEmptyStateCtaClicked:g,"onRow:click":x,onSort:B[0]||(B[0]=M=>N(M)),"onUpdate:tablePreferences":d},e.createSlots({toolbar:e.withCtx(({state:M})=>[e.withDirectives(e.createElementVNode("div",ve,[e.renderSlot(c.$slots,"toolbar-filter",{},void 0,!0),c.$slots["toolbar-button"]?(e.openBlock(),e.createElementBlock("div",et,[e.renderSlot(c.$slots,"toolbar-button",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,i(M)]])]),actions:e.withCtx(({row:M,rowKey:D,rowValue:U})=>[e.createElementVNode("div",{class:"actions-container","data-testid":M.name},[e.createVNode(w,{"kpop-attributes":{placement:"bottomEnd"},width:t.dropdownMenuWidth},{items:e.withCtx(()=>[e.renderSlot(c.$slots,"actions",{row:M,rowKey:D,rowValue:U},void 0,!0)]),default:e.withCtx(()=>[e.createVNode($,{class:"actions-trigger","data-testid":"overflow-actions-button",size:"small"},{icon:e.withCtx(()=>[e.createVNode(I,{color:e.unref(Je),icon:"more",size:"16"},null,8,["color"])]),_:1})]),_:2},1032,["width"])],8,tt)]),_:2},[e.renderList(t.tableHeaders,(M,D)=>({name:D,fn:e.withCtx(({row:U,rowKey:H,rowValue:W})=>[e.createVNode(Ze,{"key-name":String(D),"row-el":m(U)},{default:e.withCtx(()=>[e.renderSlot(c.$slots,D,{row:U,rowKey:H,rowValue:W},()=>[e.createTextVNode(e.toDisplayString(W),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"]]),ot={key:0,class:"kong-ui-entity-delete-error"},nt={key:1,class:"description"},rt=z(e.defineComponent({__name:"EntityDeleteModal",props:{visible:{type:Boolean,required:!0,default:!1},title:{type:String,default:"Delete"},entityType:{type:String,required:!0},entityName:{type:String,default:""},needConfirm:{type:Boolean,default:!0},description:{type:String,default:""},actionPending:{type:Boolean,default:!1},error:{type:String,default:""}},emits:["cancel","proceed"],setup(t,{emit:n}){const a=t,{i18nT:o}=j.useI18n(),r=e.computed(()=>a.needConfirm?a.entityName:""),i=()=>{n("cancel")},u=()=>{n("proceed")};return(_,y)=>{const m=e.resolveComponent("KAlert"),l=e.resolveComponent("KPrompt");return e.openBlock(),e.createBlock(l,{"action-button-text":"Yes, delete","action-pending":t.actionPending,class:"kong-ui-entity-delete-modal","confirmation-text":r.value,"is-visible":t.visible,title:t.title,type:"danger",onCanceled:i,onProceed:u},{"body-content":e.withCtx(()=>[t.error?(e.openBlock(),e.createElementBlock("div",ot,[e.createVNode(m,{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||_.$slots.description?(e.openBlock(),e.createElementBlock("div",nt,[e.renderSlot(_.$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"]]),it={fill:"none",height:"20",viewBox:"0 0 20 20",width:"20",xmlns:"http://www.w3.org/2000/svg"},lt={id:"mask0_180_20349",height:"20",maskUnits:"userSpaceOnUse",style:{"mask-type":"alpha"},width:"20",x:"0",y:"0"},st=["fill"],ct={mask:"url(#mask0_180_20349)"},dt=["fill"],pt=e.defineComponent({__name:"IconFilter",props:{color:{type:String,default:`var(--kong-ui-entity-filter-color, ${We})`}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("svg",it,[e.createElementVNode("mask",lt,[e.createElementVNode("rect",{fill:t.color,height:"20",width:"20"},null,8,st)]),e.createElementVNode("g",ct,[e.createElementVNode("path",{d:"M8 14.5V13H12V14.5H8ZM5 10.75V9.25H15V10.75H5ZM3 7V5.5H17V7H3Z",fill:t.color},null,8,dt)])]))}}),ft={key:1,class:"kong-ui-entity-filter"},ut={class:"menu-item-title"},mt={class:"menu-item-indicator"},yt={class:"menu-item-body"},gt=["for"],ht={class:"menu-item-buttons"},bt=z(e.defineComponent({__name:"EntityFilter",props:{config:{type:Object,required:!0,default:()=>({isExactMatch:!0,placeholder:""})},modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,{i18n:{t:o}}=j.useI18n(),r=e.ref(!1),i=e.ref({}),u=e.computed(()=>{const s=[];return new URLSearchParams(a.modelValue).forEach((f,d)=>{f!==""&&s.push(d)}),s}),_=e.computed(()=>{const s=a.config.fields;return Object.keys(s).filter(f=>s[f].searchable).map(f=>({label:s[f].label||f,value:f}))});e.watch(()=>a.modelValue,s=>{i.value={},new URLSearchParams(s).forEach((f,d)=>{i.value[d]=f})});const y=()=>{r.value=!r.value},m=s=>{n("update:modelValue",s)},l=s=>`filter-${s}`,g=s=>{var f,d;return(((d=(f=a.config.schema)==null?void 0:f[s])==null?void 0:d.values)??[]).map(c=>({value:c,label:c}))},C=s=>{var f,d;return((d=(f=a.config.schema)==null?void 0:f[s])==null?void 0:d.type)??"text"},x=s=>{i.value={...i.value,[s]:""},b()},N=()=>{i.value={},b(!0)},b=(s=!1)=>{const f=Object.keys(i.value).reduce((d,c)=>(i.value[c]&&(d[c]=`${i.value[c]}`),d),{});s&&(r.value=!1),n("update:modelValue",new URLSearchParams(f).toString())};return(s,f)=>{const d=e.resolveComponent("KInput"),c=e.resolveComponent("KButton"),B=e.resolveComponent("KSelect"),I=e.resolveComponent("KMenuItem"),$=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":m},{icon:e.withCtx(()=>[e.createVNode(pt)]),_:1},8,["model-value","placeholder"])):(e.openBlock(),e.createElementBlock("div",ft,[e.createVNode(c,{appearance:"btn-link","data-testid":"filter-button",icon:"filter",onClick:y},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.filterButtonText"))+" "+e.toDisplayString(u.value.length>0?`(${u.value.length})`:""),1)]),_:1}),e.withDirectives(e.createElementVNode("div",{class:"kong-ui-entity-filter-backdrop",onClick:y},null,512),[[e.vShow,r.value]]),e.withDirectives(e.createVNode($,{class:"kong-ui-entity-filter-menu"},{body:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(w,F)=>(e.openBlock(),e.createBlock(I,{key:w.value,"data-testid":w.value,expandable:"","last-menu-item":F===_.value.length-1},{itemTitle:e.withCtx(()=>[e.createElementVNode("span",ut,[e.createTextVNode(e.toDisplayString(w.label)+" ",1),e.withDirectives(e.createElementVNode("span",mt,null,512),[[e.vShow,u.value.includes(w.value)]])])]),itemBody:e.withCtx(()=>{var K,M;return[e.createElementVNode("div",yt,[e.createElementVNode("label",{class:"menu-item-label",for:l(w.value)},e.toDisplayString(e.unref(o)("filter.fieldLabel")),9,gt),((M=(K=t.config.schema)==null?void 0:K[w.value])==null?void 0:M.type)==="select"?(e.openBlock(),e.createBlock(B,{key:0,id:l(w.value),modelValue:i.value[w.value],"onUpdate:modelValue":D=>i.value[w.value]=D,appearance:"select",items:g(w.value),placeholder:e.unref(o)("filter.selectPlaceholder")},null,8,["id","modelValue","onUpdate:modelValue","items","placeholder"])):(e.openBlock(),e.createBlock(d,{key:1,id:l(w.value),modelValue:i.value[w.value],"onUpdate:modelValue":D=>i.value[w.value]=D,autocomplete:"off",placeholder:e.unref(o)("filter.inputPlaceholder"),size:"small",type:C(w.value)},null,8,["id","modelValue","onUpdate:modelValue","placeholder","type"]))]),e.createElementVNode("div",ht,[e.createVNode(c,{appearance:"btn-link","data-testid":"apply-filter",size:"small",onClick:f[0]||(f[0]=D=>b(!0))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.applyButtonText")),1)]),_:1}),e.createVNode(c,{appearance:"btn-link","data-testid":"clear-filter",size:"small",onClick:D=>x(w.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearButtonText")),1)]),_:2},1032,["onClick"])])]}),_:2},1032,["data-testid","last-menu-item"]))),128))]),actionButton:e.withCtx(()=>[e.createVNode(c,{onClick:N},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.clearAllButtonText")),1)]),_:1})]),_:1},512),[[e.vShow,r.value]])]))}}}),[["__scopeId","data-v-745f38c0"]]),te=e.defineComponent({__name:"PermissionsWrapper",props:{authFunction:{type:Function,required:!0,default:async()=>!0},forceShow:{type:Boolean,default:!1}},setup(t){const n=t,a=e.ref(void 0),o=e.computed(()=>a.value===!0||a.value!==void 0&&n.forceShow===!0);return e.watch(()=>n.authFunction,async()=>{a.value=await n.authFunction()},{immediate:!0}),(r,i)=>o.value?e.renderSlot(r.$slots,"default",{key:0,isAllowed:a.value}):e.createCommentVNode("",!0)}}),kt={class:"form-section-wrapper"},Ct={key:0,class:"form-section-title"},wt={key:1,class:"form-section-description"},St={key:2,class:"form-section-footer"},_t={class:"form-section-content"},ye=z(e.defineComponent({__name:"EntityFormSection",props:{title:{type:String,default:""},description:{type:String,default:""},hasDivider:{type:Boolean,default:!1},stickyInfoHeader:{type:Boolean,default:!0},hideInfoHeader:{type:Boolean,default:!1}},setup(t){const n=e.useSlots();return(a,o)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(["kong-ui-entity-form-section",{"has-divider":t.hasDivider}])},[e.createElementVNode("div",kt,[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",Ct,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description||e.unref(n).description?(e.openBlock(),e.createElementBlock("div",wt,[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",St,[e.renderSlot(a.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2)),e.createElementVNode("div",_t,[e.renderSlot(a.$slots,"default",{},void 0,!0)])])],2))}}),[["__scopeId","data-v-8b6dc312"]]),{useAxios:ge,useDeleteUrlBuilder:xt,useErrors:Nt,useFetchUrlBuilder:ia,useFetcher:Bt,useDebouncedFilter:It,useStringHelpers:la,useGatewayFeatureSupported:sa}=j,Vt={fail:"Failed to copy id to clipboard",success:{prefix:"Successfully",content:" copied to clipboard"}},Et="Copy to clipboard",Tt={message:Vt,iconTitle:Et},$t="kong-ui-copy-uuid-notify",Kt={class:"kong-ui-copy-uuid"},Mt=["onClick"],he=15,Dt=e.defineComponent({__name:"CopyUuid",props:{uuid:{type:String,required:!0},idTooltip:{type:String,default:""},truncated:{type:Boolean,default:!0},useMono:{type:Boolean,default:!0},notify:{type:Function,default:void 0},iconColor:{type:String,default:"rgba(0, 0, 0, 0.45)"},tooltip:{type:String,default:""},successTooltip:{type:String,default:""},format:{type:String,required:!1,default:"uuid",validator:t=>["uuid","hidden","redacted","deleted"].includes(t)}},emits:["success","error"],setup(t,{emit:n}){const a=t,{t:o}=G.createI18n("en-us",Tt),r=a.notify||e.inject($t,()=>{}),i=e.computed(()=>a.idTooltip?{label:a.idTooltip,positionFixed:!0,placement:"bottomStart"}:{title:a.uuid}),u=e.computed(()=>!!(a.tooltip&&a.successTooltip)),_=e.ref(a.tooltip),y=e.computed(()=>a.tooltip?{label:_.value,positionFixed:!0,maxWidth:"500px",placement:"bottomStart"}:{}),m=e.computed(()=>a.format==="redacted"?"*****":a.format==="deleted"?`*${a.uuid.substring(0,5)}`:a.uuid),l=C=>{_.value=C,setTimeout(()=>{_.value=a.tooltip},1800)},g=C=>{if(!C(a.uuid)){typeof r=="function"&&r({type:"error",message:o("message.fail")}),u.value?l(o("message.fail")):n("error",a.uuid);return}const x=a.uuid.length>he,N=a.format==="hidden"||a.format==="redacted"?o("message.success.prefix"):`"${a.uuid.substring(0,he)+(x?"...":"")}"`;typeof r=="function"&&r({type:"success",message:`${N}${o("message.success.content")}`}),u.value?l(a.successTooltip):n("success",a.uuid)};return(C,x)=>{const N=e.resolveComponent("KIcon"),b=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",Kt,[t.format!=="hidden"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.idTooltip?"KTooltip":"div"),e.mergeProps({key:0},i.value,{"data-testid":"copy-id"}),{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["uuid-container",t.truncated?"truncated-uuid":null,t.useMono?"mono":null])},e.toDisplayString(m.value),3)]),_:1},16)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tooltip?"KTooltip":"div"),e.mergeProps(y.value,{class:"uuid-icon-wrapper"}),{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(({copyToClipboard:s})=>[e.createElementVNode("span",{"data-testid":"copy-to-clipboard",role:"button",tabindex:"0",onClick:e.withModifiers(f=>g(s),["stop"])},[e.createVNode(N,{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,Mt)]),_:1})]),_:1},16))])}}}),Pt=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},Ft=Pt(Dt,[["__scopeId","data-v-bfdaf6f7"]]),ca="",da="",qt={class:"kong-ui-entities-snis-list"},Rt={key:1},Ut={key:1},Ot=e.defineComponent({__name:"SniList",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 J;const a=t,{i18n:{t:o}}=ne.useI18n(),r=(h,V)=>{var T;h.type==="error"?n("copy:error",{entity:V,field:"certificate.id",message:o("errors.copy")}):n("copy:success",{entity:V,field:"certificate.id",message:o("copy.success",{val:(T=V.certificate)==null?void 0:T.id})})},{axiosInstance:i}=ge({headers:(J=a.config)==null?void 0:J.requestHeaders}),u=e.ref(1),_=e.computed(()=>a.config.app!=="kongManager"||!!a.config.disableSorting),y={name:{label:o("snis.list.table_headers.name"),searchable:!0,sortable:!0},certificate:{label:o("snis.list.table_headers.certificate_id"),sortable:!1},tags:{label:o("snis.list.table_headers.tags"),sortable:!1}},m=y,l=h=>({style:{maxWidth:h.headerKey==="name"?"250px":h.headerKey==="certificate"?"350px":null}}),g=e.computed(()=>{var V,T;let h=`${a.config.apiBaseUrl}${Q.list[a.config.app].all}`;return a.config.app==="konnect"?h=h.replace(/{controlPlaneId}/gi,((V=a.config)==null?void 0:V.controlPlaneId)||""):a.config.app==="kongManager"&&(h=h.replace(/\/{workspace}/gi,(T=a.config)!=null&&T.workspace?`/${a.config.workspace}`:"")),h}),C=e.ref(""),x=e.computed(()=>{const h=a.config.app==="konnect"||a.config.isExactMatch;if(h)return{isExactMatch:h,placeholder:o("search.placeholder")};const{name:V}=y;return{isExactMatch:h,fields:{name:V},schema:a.config.filterSchema}}),{fetcher:N,fetcherState:b}=Bt(a.config,g.value),s=()=>{C.value=""},f=()=>{u.value++},d=e.ref(""),c=e.ref({ctaPath:a.config.createRoute,ctaText:void 0,message:o("snis.list.empty_state.description"),title:o("snis.title")}),B=(h,V)=>{const T=h.id;if(!V(T)){n("copy:error",{entity:h,field:"id",message:o("errors.copy")});return}n("copy:success",{entity:h,field:"id",message:o("copy.success",{val:T})})},I=(h,V)=>{const T=JSON.stringify(h);if(!V(T)){n("copy:error",{entity:h,message:o("errors.copy")});return}n("copy:success",{entity:h,message:o("copy.success_brief")})},$=h=>({label:o("actions.edit"),to:a.config.getEditRoute(h)}),w=e.ref(void 0),F=e.ref(!1),K=e.ref(!1),M=e.ref(""),D=xt(a.config,g.value),U=h=>{w.value=h,F.value=!0},H=()=>{F.value=!1,w.value=void 0},W=async()=>{var h,V,T;if((h=w.value)!=null&&h.id){K.value=!0;try{await i.delete(D(w.value.id)),n("delete:success",w.value),K.value=!1,H(),u.value++}catch(p){M.value=((T=(V=p.response)==null?void 0:V.data)==null?void 0:T.message)||p.message||o("errors.delete"),n("error",p)}finally{K.value=!1}}};return e.watch(b,h=>{if(h.status===O.Error){d.value=o("errors.general"),n("error",h.error);return}d.value=""}),e.onBeforeMount(async()=>{await a.canCreate()&&(c.value.title=o("snis.list.empty_state.title"),c.value.ctaText=o("actions.create"))}),(h,V)=>{const T=e.resolveComponent("KButton"),p=e.resolveComponent("KBadge"),S=e.resolveComponent("KTruncate"),E=e.resolveComponent("KDropdownItem"),A=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",qt,[e.createVNode(e.unref(at),{"cache-identifier":t.cacheIdentifier,"cell-attributes":l,"disable-pagination-page-jump":"","disable-sorting":_.value,"empty-state-options":c.value,"enable-entity-actions":"","error-message":d.value,fetcher:e.unref(N),"fetcher-cache-key":u.value,"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-snis-list",query:C.value,"table-headers":e.unref(m),onClearSearchInput:s,onSort:f},{"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(bt),{modelValue:C.value,"onUpdate:modelValue":V[0]||(V[0]=k=>C.value=k),config:x.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[e.createVNode(e.unref(te),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(T,{appearance:"primary","data-testid":"toolbar-add-sni",icon:"plus",to:t.config.createRoute},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("snis.list.toolbar_actions.new")),1)]),_:1},8,["to"])]),_:1},8,["auth-function"])]),name:e.withCtx(({rowValue:k})=>[e.createElementVNode("b",null,e.toDisplayString(k??"-"),1)]),certificate:e.withCtx(({row:k})=>[k.certificate&&k.certificate.id?(e.openBlock(),e.createBlock(e.unref(Ft),{key:0,class:"copy-certificate-uuid","data-testid":"copy-certificate-uuid",notify:R=>r(R,k),truncated:!1,uuid:k.certificate.id},null,8,["notify","uuid"])):(e.openBlock(),e.createElementBlock("span",Rt,"-"))]),tags:e.withCtx(({rowValue:k})=>[k!=null&&k.length?(e.openBlock(),e.createBlock(S,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k,R=>(e.openBlock(),e.createBlock(p,{key:R,onClick:V[1]||(V[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(R),1)]),_:2},1024))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",Ut,"-"))]),actions:e.withCtx(({row:k})=>[e.createVNode(A,null,{default:e.withCtx(({copyToClipboard:R})=>[e.createVNode(E,{"data-testid":"action-entity-copy-id",onClick:X=>B(k,R)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(A,null,{default:e.withCtx(({copyToClipboard:R})=>[e.createVNode(E,{"data-testid":"action-entity-copy-json",onClick:X=>I(k,R)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(te),{"auth-function":()=>t.canEdit(k)},{default:e.withCtx(()=>[e.createVNode(E,{"data-testid":"action-entity-edit",item:$(k.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(te),{"auth-function":()=>t.canDelete(k)},{default:e.withCtx(()=>[e.createVNode(E,{"data-testid":"action-entity-delete","has-divider":"","is-dangerous":"",onClick:R=>U(k)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("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(rt),{"action-pending":K.value,description:e.unref(o)("delete.description"),"entity-name":w.value&&(w.value.name||w.value.id),"entity-type":e.unref(re).SNI,error:M.value,"need-confirm":!1,title:e.unref(o)("delete.title"),visible:F.value,onCancel:H,onProceed:W},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),pa="",be=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},jt=be(Ot,[["__scopeId","data-v-363811ed"]]),At={class:"kong-ui-entities-snis-form"},Lt={"data-testid":"no-search-results"},zt={key:2,class:"invalid-certificate-message","data-testid":"invalid-certificate-message"},Ht=e.defineComponent({__name:"SniForm",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)},sniId:{type:String,required:!1,default:""}},emits:["update","error","loading"],setup(t,{emit:n}){var T;const a=t,o=oe.useRouter(),{i18n:{t:r}}=ne.useI18n(),{getMessageFromError:i}=Nt(),{axiosInstance:u}=ge({headers:(T=a.config)==null?void 0:T.requestHeaders}),_=e.computed(()=>Q.form[a.config.app].edit),y=e.computed(()=>a.sniId?Y.Edit:Y.Create),m=e.computed(()=>a.config.certificateId&&y.value===Y.Create?a.config.certificateId:""),l=e.reactive({fields:{name:"",tags:"",certificate_id:""},isReadonly:!1,errorMessage:""}),g=e.reactive({name:"",tags:"",certificate_id:""}),C=e.computed(()=>JSON.stringify(l.fields)!==JSON.stringify(g)&&!!l.fields.name&&!!(l.fields.certificate_id||m.value)),x=p=>{var S,E;l.fields.name=(p==null?void 0:p.name)||"",l.fields.tags=((S=p==null?void 0:p.tags)==null?void 0:S.join(", "))||"",l.fields.certificate_id=((E=p==null?void 0:p.certificate)==null?void 0:E.id)||"",Object.assign(g,l.fields)},N=()=>{o.push(a.config.cancelRoute)},b=e.computed(()=>{var S,E;let p=`${a.config.apiBaseUrl}${Q.form[a.config.app].validate}`;return a.config.app==="konnect"?p=p.replace(/{controlPlaneId}/gi,((S=a.config)==null?void 0:S.controlPlaneId)||""):a.config.app==="kongManager"&&(p=p.replace(/\/{workspace}/gi,(E=a.config)!=null&&E.workspace?`/${a.config.workspace}`:"")),p=p.replace(/{id}/gi,a.sniId),p}),s=e.computed(()=>{var S,E;let p=`${a.config.apiBaseUrl}${Q.form[a.config.app][y.value]}`;return a.config.app==="konnect"?p=p.replace(/{controlPlaneId}/gi,((S=a.config)==null?void 0:S.controlPlaneId)||""):a.config.app==="kongManager"&&(p=p.replace(/\/{workspace}/gi,(E=a.config)!=null&&E.workspace?`/${a.config.workspace}`:"")),p=p.replace(/{id}/gi,a.sniId),p}),f=async()=>{var p,S,E,A,k,R,X,ke;try{l.isReadonly=!0;const L={name:l.fields.name,tags:(S=(p=l.fields.tags.split(","))==null?void 0:p.map(ae=>String(ae||"").trim()))==null?void 0:S.filter(ae=>ae!==""),certificate:{id:m.value||l.fields.certificate_id}};let P;await u.post(b.value,L),y.value==="create"?P=await u.post(s.value,L):y.value==="edit"&&(P=((E=a.config)==null?void 0:E.app)==="konnect"?await u.put(s.value,L):await u.patch(s.value,L)),l.fields.name=((A=P==null?void 0:P.data)==null?void 0:A.name)||"",l.fields.tags=((R=(k=P==null?void 0:P.data)==null?void 0:k.tags)==null?void 0:R.join(", "))||"",l.fields.certificate_id=((ke=(X=P==null?void 0:P.data)==null?void 0:X.certificate)==null?void 0:ke.id)||"",Object.assign(g,l.fields),n("update",P==null?void 0:P.data)}catch(L){l.errorMessage=i(L),n("error",L)}finally{l.isReadonly=!1}},{debouncedQueryChange:d,loading:c,allRecords:B,error:I,validationError:$,loadItems:w,results:F}=It(a.config,Q.form[a.config.app].certificates),K=e.ref(!0),M=p=>{K.value=!p,d(p)},D=e.computed(()=>I.value?r("errors.certificates.fetch"):""),U=e.computed(()=>$.value?r("errors.certificates.invalid"):""),H=e.ref(0),W=e.computed(()=>B.value===void 0),J=e.ref(new Set),h=e.computed(()=>Array.from(J.value).map(S=>({label:S,value:S,selected:l.fields.certificate_id===S}))),V=p=>{J.value.clear();let S;for(S of p)J.value.add(S.id)};return e.watch(F,p=>{V(p)},{immediate:!0,deep:!0}),e.watch(h,()=>{H.value++},{immediate:!0,deep:!0}),e.onBeforeMount(async()=>{await w()}),(p,S)=>{const E=e.resolveComponent("KInput"),A=e.resolveComponent("KSelect");return e.openBlock(),e.createElementBlock("div",At,[e.createVNode(e.unref(Ye),{"can-submit":C.value,config:t.config,"edit-id":t.sniId,"error-message":l.errorMessage||D.value,"fetch-url":_.value,"is-readonly":l.isReadonly,onCancel:N,"onFetch:error":S[3]||(S[3]=k=>p.$emit("error",k)),"onFetch:success":x,onLoading:S[4]||(S[4]=k=>p.$emit("loading",k)),onSubmit:f},{default:e.withCtx(()=>[e.createVNode(e.unref(ye),{description:e.unref(r)("form.sections.general.description"),title:e.unref(r)("form.sections.general.title")},{default:e.withCtx(()=>[e.createVNode(E,{modelValue:l.fields.name,"onUpdate:modelValue":S[0]||(S[0]=k=>l.fields.name=k),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"sni-form-name",label:e.unref(r)("form.fields.name.label"),placeholder:e.unref(r)("form.fields.name.placeholder"),readonly:l.isReadonly,required:"",type:"text"},null,8,["modelValue","label","placeholder","readonly"]),e.createVNode(E,{modelValue:l.fields.tags,"onUpdate:modelValue":S[1]||(S[1]=k=>l.fields.tags=k),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"sni-form-tags",help:e.unref(r)("form.fields.tags.help"),label:e.unref(r)("form.fields.tags.label"),"label-attributes":{help:e.unref(r)("form.fields.tags.tooltip")},placeholder:e.unref(r)("form.fields.tags.placeholder"),readonly:l.isReadonly,type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"])]),_:1},8,["description","title"]),e.createVNode(e.unref(ye),{description:e.unref(r)("form.sections.certificate.description"),"has-divider":"",title:e.unref(r)("form.sections.certificate.title")},{default:e.withCtx(()=>[m.value?(e.openBlock(),e.createBlock(E,{key:0,"data-testid":"sni-form-certificate-id",label:e.unref(r)("form.fields.certificate_id.label"),"model-value":m.value,readonly:"",required:"",width:"100%"},null,8,["label","model-value"])):(e.openBlock(),e.createBlock(A,{key:1,modelValue:l.fields.certificate_id,"onUpdate:modelValue":S[2]||(S[2]=k=>l.fields.certificate_id=k),appearance:"select",autosuggest:"",class:e.normalizeClass({"k-select-placeholder":K.value}),clearable:"","data-testid":"sni-form-certificate-id","dropdown-footer-text":W.value?e.unref(r)("form.fields.certificate_id.footer"):void 0,"enable-filtering":"",items:h.value,label:e.unref(r)("form.fields.certificate_id.label"),loading:e.unref(c),placeholder:e.unref(r)("form.fields.certificate_id.placeholder"),readonly:l.isReadonly,required:"",width:"100%",onQueryChange:M},{loading:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("actions.loading")),1)]),empty:e.withCtx(()=>[e.createElementVNode("div",Lt,e.toDisplayString(e.unref(r)("search.no_results")),1)]),_:1},8,["modelValue","class","dropdown-footer-text","items","label","loading","placeholder","readonly"])),U.value?(e.openBlock(),e.createElementBlock("p",zt,e.toDisplayString(U.value),1)):e.createCommentVNode("",!0)]),_:1},8,["description","title"])]),_:1},8,["can-submit","config","edit-id","error-message","fetch-url","is-readonly"])])}}}),fa="",Wt=be(Ht,[["__scopeId","data-v-4d04a730"]]);q.SniForm=Wt,q.SniList=jt,Object.defineProperty(q,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}.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-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}.kong-ui-entities-snis-list[data-v-363811ed]{width:100%}.kong-ui-entities-snis-list .kong-ui-entity-filter-input[data-v-363811ed]{width:300px}.kong-ui-entities-snis-form[data-v-4d04a730]{width:100%}.kong-ui-entities-snis-form .invalid-certificate-message[data-v-4d04a730]{color:#d60027;font-size:11px;font-weight:500;margin-top:3px!important}
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}.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-copy-uuid[data-v-bfdaf6f7]{display:flex}.kong-ui-copy-uuid .uuid-container[data-v-bfdaf6f7]{margin-right:12px;white-space:nowrap}.kong-ui-copy-uuid .truncated-uuid[data-v-bfdaf6f7]{margin-right:1ch;max-width:10ch;overflow:hidden;text-overflow:ellipsis}.kong-ui-copy-uuid .uuid-icon-wrapper[data-v-bfdaf6f7]{align-items:center;cursor:pointer;display:flex}.kong-ui-copy-uuid .uuid-icon[data-v-bfdaf6f7]{display:flex}.kong-ui-entities-snis-list[data-v-363811ed]{width:100%}.kong-ui-entities-snis-list .kong-ui-entity-filter-input[data-v-363811ed]{width:300px}.kong-ui-entities-snis-form[data-v-4d04a730]{width:100%}.kong-ui-entities-snis-form .invalid-certificate-message[data-v-4d04a730]{color:#d60027;font-size:11px;font-weight:500;margin-top:3px!important}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kong-ui-public/entities-snis",
3
- "version": "1.1.22",
3
+ "version": "1.1.23",
4
4
  "type": "module",
5
5
  "main": "./dist/entities-snis.umd.js",
6
6
  "module": "./dist/entities-snis.es.js",
@@ -49,8 +49,8 @@
49
49
  "errorLimit": "400KB"
50
50
  },
51
51
  "dependencies": {
52
- "@kong-ui-public/copy-uuid": "^1.1.27",
53
- "@kong-ui-public/entities-shared": "^1.3.9"
52
+ "@kong-ui-public/copy-uuid": "^1.2.0",
53
+ "@kong-ui-public/entities-shared": "^1.3.10"
54
54
  },
55
55
  "scripts": {
56
56
  "dev": "cross-env USE_SANDBOX=true vite",