@kong-ui-public/entities-gateway-services 3.10.4-pr.2001.6ea4ed63c.0 → 3.10.4

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(x,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router"),require("@kong/icons"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-shared")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router","@kong/icons","@kong-ui-public/i18n","@kong-ui-public/entities-shared"],e):(x=typeof globalThis<"u"?globalThis:x||self,e(x["kong-ui-public-entities-gateway-services"]={},x.Vue,x.VueRouter,x.KongIcons,x["kong-ui-public-i18n"],x["kong-ui-public-entities-shared"]))})(this,function(x,e,be,Q,we,u){"use strict";const ke={actions:{create:"New gateway service",serverless_create:"Add a Service",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",clear:"Clear",view:"View Details",delete:{title:"Delete a Gateway Service",description:"Deleting this Gateway Service will also remove any associated plugins. This action cannot be reversed.",menu_label:"Delete"}},search:{placeholder:{konnect:"Filter by name",kongManager:"Filter by exact name or ID"}},gateway_services:{title:"Gateway Services",list:{toolbar_actions:{new_gateway_service:"New gateway service"},table_headers:{name:"Name",control_plane:"Control Plane",protocol:"Protocol",host:"Host",port:"Port",path:"Path",enabled:"Enabled",tags:"Tags",id:"ID",created_at:"Created At",updated_at:"Last Modified"},empty_state:{title:"Configure a New Gateway Service",description:"Gateway services are used to proxy traffic.",serverless_title:"Configure your first Gateway Service"}},empty_state_v2:{create:"New gateway service",title:"Configure your first gateway service",description:"Services represent your upstream APIs, allowing for centralized configuration and streamlined management of backend endpoints."},form:{sections:{general:{title:"General Information",description:"Provide a name and tags to help identify and manage this service."},keys:{title:"Service Endpoint",description:"Define where this service should send requests.",checkedGroupLabel:"Choose how and where to send traffic",url:{label:"Full URL",description:"Define the service using a single, complete API URL for simple setup."},protocol:{label:"Protocol, host, port, and path",description:"Manually specify each component of the API’s URL for advanced configurations."},viewAdvancedFields:"View Advanced Fields"}},fields:{upstream_url:{label:"Full URL",placeholder:"e.g. https://www.myapi.com/",tooltip_for_konnect:"This is the URL of the API you will manage in Konnect.",tooltip_for_km:"This is the URL of the API you will manage in Kong Gateway."},name:{label:"Name",placeholder:"Enter a unique name",tooltip:"The Service name."},protocol:{label:"Protocol",tooltip:"The protocol used to communicate with the upstream.",options:{http:"http",https:"https",tcp:"tcp",tls:"tls",tls_passthrough:"tls_passthrough",grpc:"grpc",grpcs:"grpcs",ws:"ws",wss:"wss",udp:"udp"}},host:{label:"Host",placeholder:"Enter a host",tooltip:"The host of the upstream server. Note that the host value is case sensitive."},path:{label:"Path",placeholder:"Enter a path",tooltip:"The path to be used in request to the upstream server."},port:{label:"Port",tooltip:"The upstream server port."},retries:{label:"Retries",tooltip:"The number of retries to execute upon failure to proxy."},connect_timeout:{label:"Connection Timeout",tooltip:"The timeout in milliseconds for establishing a connection to the upstream server."},write_timeout:{label:"Write Timeout",tooltip:"The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server."},read_timeout:{label:"Read Timeout",tooltip:"The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server."},client_certificate:{label:"Client Certificate",placeholder:"Enter a Certificate ID",tooltip:"Certificate to be used as client certificate while TLS handshaking to the upstream server."},ca_certificates:{label:"CA Certificates",placeholder:"Enter a comma separated list of CA Certificate IDs",tooltip:"Array of {code1} object UUIDs that are used to build the trust store while verifying upstream server's TLS certificate. If set to {code2} when Nginx default is respected. If default CA list in Nginx are not specified and TLS verification is enabled, then handshake with upstream server will always fail (because no CA are trusted).",code1:"CA Certificate",code2:"null"},tls_verify_enabled:{label:"TLS Verify",help:"If unchecked, use default system setting",tooltip:"Whether to enable verification of upstream server TLS certificate. If set to {code1}, then the Nginx default is respected.",code1:"null"},tls_verify_option:{unset:{display:"Use default system setting"},true:{label:"True",display:"On"},false:{label:"False",display:"Off"}},tags:{label:"Tags",tooltip:"An optional set of strings associated with the Service for grouping and filtering.",placeholder:"Enter a list of tags separated by comma",help:"e.g. tag1, tag2, tag3",collapse:"Add tags"},enabled:{label:"Enabled",tooltip:"Whether the Service is active. If set to {false}, the proxy behavior will be as if any routes attached to it do not exist (404). Default: {true}.",false:"false",true:"true"}}}},errors:{general:"Gateway Services could not be retrieved",delete:"The gateway service could not be deleted at this time.",copy:"Failed to copy to clipboard",urlErrorMessage:"Error: invalid URL"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"},glossary:{gateway_services:"gateway services"}};function Ee(){const a=we.createI18n("en-us",ke);return{i18n:a,i18nT:we.i18nTComponent(a)}}function Ne(){return{getPortFromProtocol:(k,f)=>{const n=[80,443],i=Number(f);if((i||i===0)&&!n.includes(i))return i;switch(k){case"grpcs":case"tls":case"https":case"wss":return 443;case"grpc":case"tcp":case"http":case"ws":default:return 80}}}}const X={useI18n:Ee,usePortFromProtocol:Ne},Y="/v2/control-planes/{controlPlaneId}/core-entities",ee="/{workspace}",K={list:{konnect:{all:`${Y}/services`},kongManager:{all:`${ee}/services`}},form:{konnect:{create:`${Y}/services`,validate:`${Y}/v1/schemas/json/service/validate`,edit:`${Y}/services/{id}`},kongManager:{create:`${ee}/services`,validate:`${ee}/schemas/services/validate`,edit:`${ee}/services/{id}`}}},xe="#00abd2",Se="24px",Te={class:"kong-ui-entities-gateway-services-list"},Ie={class:"button-row"},Be={class:"empty-state-icon-gateway"},Pe={key:1},Fe=e.defineComponent({__name:"GatewayServiceList",props:{config:{type:Object,required:!0,validator:a=>!(!a||!["konnect","kongManager"].includes(a==null?void 0:a.app)||!a.createRoute||!a.getViewRoute||!a.getEditRoute||a.app==="kongManager"&&!a.isExactMatch&&!a.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},useActionOutside:{type:Boolean,default:!1},isServerless:{type:Boolean,default:!1},enableV2EmptyStates:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle:success"],setup(a,{emit:k}){var pe;const f=k,n=a,{i18n:{t:i,formatUnixTimeStamp:w}}=X.useI18n(),T=be.useRouter(),{axiosInstance:P}=u.useAxios((pe=n.config)==null?void 0:pe.axiosRequestConfig),{hasRecords:s,handleStateChange:E}=u.useTableState(()=>F.value),b=e.computed(()=>s.value&&n.config.app==="konnect"),I=e.computed(()=>!n.enableV2EmptyStates&&n.config.app==="konnect"),O=e.computed(()=>n.config.app!=="kongManager"||!!n.config.disableSorting),te={name:{label:i("gateway_services.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1},...n.config.showControlPlaneColumn?{control_plane:{label:i("gateway_services.list.table_headers.control_plane")}}:{},protocol:{label:i("gateway_services.list.table_headers.protocol"),searchable:!0,sortable:!0},host:{label:i("gateway_services.list.table_headers.host"),searchable:!0,sortable:!0},port:{label:i("gateway_services.list.table_headers.port"),searchable:!0,sortable:!0},path:{label:i("gateway_services.list.table_headers.path"),searchable:!0,sortable:!0},enabled:{label:i("gateway_services.list.table_headers.enabled"),searchable:!0,sortable:!0},tags:{label:i("gateway_services.list.table_headers.tags"),sortable:!1},updated_at:{label:i("gateway_services.list.table_headers.updated_at"),sortable:!0},created_at:{label:i("gateway_services.list.table_headers.created_at"),sortable:!0}},U={columnVisibility:{created_at:!1}},ue=te,B=e.computed(()=>{var m,g;let d=`${n.config.apiBaseUrl}${K.list[n.config.app].all}`;return n.config.app==="konnect"?d=d.replace(/{controlPlaneId}/gi,((m=n.config)==null?void 0:m.controlPlaneId)||""):n.config.app==="kongManager"&&(d=d.replace(/\/{workspace}/gi,(g=n.config)!=null&&g.workspace?`/${n.config.workspace}`:"")),d}),C=e.computed(()=>n.config.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${B.value}`):new URL(B.value)),F=e.ref(""),W=e.computed(()=>{const d=n.config.app==="konnect"||n.config.isExactMatch;if(d)return{isExactMatch:d,placeholder:i(`search.placeholder.${n.config.app}`)};const{name:m,enabled:g,protocol:V,host:R,port:t,path:r}=te;return{isExactMatch:d,fields:{name:m,enabled:g,protocol:V,host:R,port:t,path:r},schema:n.config.filterSchema}}),{fetcher:oe,fetcherState:o,fetcherCacheKey:h}=u.useFetcher({...n.config,cacheIdentifier:n.cacheIdentifier},B.value),me=()=>{F.value=""},re=()=>{h.value++},$=e.ref(null),ge=e.computed(()=>({ctaPath:n.config.createRoute,ctaText:L.value?n.isServerless?i("actions.serverless_create"):i("actions.create"):void 0,message:`${i("gateway_services.list.empty_state.description")}${n.config.additionMessageForEmptyState?` ${n.config.additionMessageForEmptyState}`:""}`,title:L.value?n.isServerless?i("gateway_services.list.empty_state.serverless_title"):i("gateway_services.list.empty_state.title"):i("gateway_services.title")})),A=e.ref(!1),N=e.ref(null),G=e.computed(()=>{const d={action:"disable",id:"",name:""};if(N.value){const{enabled:m,id:g,name:V}=N.value;d.action=m?"disable":"enable",d.id=g,d.name=V||g}return d}),le=d=>{A.value=!0,N.value=d},ie=()=>{A.value=!1,N.value=null},se=async()=>{var V,R;if(!await((V=n.canEdit)==null?void 0:V.call(n,N.value))||!N.value)return;const m=`${C.value.href}/${N.value.id}`,g=!N.value.enabled;try{const{data:t}=((R=n.config)==null?void 0:R.app)==="konnect"?await P.put(m,{...N.value,enabled:g}):await P.patch(m,{...N.value,enabled:g});f("toggle:success",t),N.value.enabled=g}catch(t){f("error",t)}},ae=d=>{n.config.getControlPlaneRoute&&T.push(n.config.getControlPlaneRoute(d))},ye=(d,m)=>{const g=d.id;if(!m(g)){f("copy:error",{entity:d,field:"id",message:i("errors.copy")});return}f("copy:success",{entity:d,field:"id",message:i("copy.success",{val:g})})},ne=(d,m)=>{const g=JSON.stringify(d);if(!m(g)){f("copy:error",{entity:d,message:i("errors.copy")});return}f("copy:success",{entity:d,message:i("copy.success_brief")})},j=async d=>{var g;await((g=n.canRetrieve)==null?void 0:g.call(n,d))&&T.push(n.config.getViewRoute(d.id))},z=d=>({label:i("actions.view"),to:n.config.getViewRoute(d)}),ce=d=>({label:i("actions.edit"),to:n.config.getEditRoute(d)}),S=e.ref(void 0),Z=e.ref(!1),M=e.ref(!1),H=e.ref(""),_e=u.useDeleteUrlBuilder(n.config,B.value),he=d=>{S.value=d,Z.value=!0,H.value=""},de=()=>{Z.value=!1,S.value=void 0},J=async()=>{var d,m,g;if((d=S.value)!=null&&d.id){M.value=!0;try{await P.delete(_e(S.value.id)),f("delete:success",S.value),de(),h.value++}catch(V){H.value=((g=(m=V.response)==null?void 0:m.data)==null?void 0:g.message)||V.message||i("errors.delete"),f("error",V)}finally{M.value=!1}}},fe=()=>{T.push(n.config.createRoute)};e.watch(o,d=>{var m,g,V;if(d.status===u.FetcherStatus.Error){$.value={title:i("errors.general")},(V=(g=(m=d.error)==null?void 0:m.response)==null?void 0:g.data)!=null&&V.message&&($.value.message=d.error.response.data.message),f("error",d.error);return}$.value=null});const L=e.ref(!1);return e.onBeforeMount(async()=>{L.value=await n.canCreate()}),(d,m)=>{const g=e.resolveComponent("KButton"),V=e.resolveComponent("KBadge"),R=e.resolveComponent("KInputSwitch"),t=e.resolveComponent("KDropdownItem"),r=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",Te,[e.createVNode(e.unref(u.EntityBaseTable),{"cache-identifier":a.cacheIdentifier,"default-table-preferences":U,"disable-sorting":O.value,"empty-state-options":ge.value,"enable-entity-actions":"","error-message":$.value,fetcher:e.unref(oe),"fetcher-cache-key":e.unref(h),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-gateway-services-list",query:F.value,"table-headers":e.unref(ue),onClearSearchInput:me,"onClick:row":m[5]||(m[5]=c=>j(c)),onSort:re,onState:e.unref(E)},e.createSlots({"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(u.EntityFilter),{modelValue:F.value,"onUpdate:modelValue":m[0]||(m[0]=c=>F.value=c),config:W.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!a.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createElementVNode("div",Ie,[b.value?(e.openBlock(),e.createBlock(g,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"gateway-services-learn-more-button",icon:"",onClick:m[1]||(m[1]=c=>d.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Q.BookIcon),{decorative:""})]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(u.PermissionsWrapper),{"auth-function":()=>a.canCreate()},{default:e.withCtx(()=>[e.createVNode(g,{appearance:"primary","data-testid":"toolbar-add-gateway-service",size:a.useActionOutside?"medium":"large",to:a.config.createRoute},{default:e.withCtx(()=>[e.createVNode(e.unref(Q.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(i)("gateway_services.list.toolbar_actions.new_gateway_service")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:e.withCtx(({rowValue:c})=>[e.createElementVNode("b",null,e.toDisplayString(c??"-"),1)]),control_plane:e.withCtx(({row:c})=>{var _;return[(_=c.x_meta)!=null&&_.cluster_id?(e.openBlock(),e.createBlock(V,{key:0,tooltip:c.x_meta.cluster_id,"truncation-tooltip":"",onClick:e.withModifiers(y=>ae(c.x_meta.cluster_id),["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.x_meta.cluster_id),1)]),_:2},1032,["tooltip","onClick"])):(e.openBlock(),e.createElementBlock("b",Pe,"-"))]}),enabled:e.withCtx(({row:c})=>[e.createVNode(e.unref(u.PermissionsWrapper),{"auth-function":()=>a.canEdit(c),"force-show":""},{default:e.withCtx(({isAllowed:_})=>[e.createElementVNode("div",{onClick:m[4]||(m[4]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(R,{modelValue:c.enabled,"onUpdate:modelValue":y=>c.enabled=y,"data-testid":`row-${c.id}-toggle-input`,disabled:!_,onClick:e.withModifiers(y=>le(c),["prevent"])},null,8,["modelValue","onUpdate:modelValue","data-testid","disabled","onClick"])])]),_:2},1032,["auth-function"])]),tags:e.withCtx(({rowValue:c})=>[e.createVNode(e.unref(u.TableTags),{tags:c},null,8,["tags"])]),created_at:e.withCtx(({rowValue:c})=>[e.createTextVNode(e.toDisplayString(e.unref(w)(c)),1)]),updated_at:e.withCtx(({row:c,rowValue:_})=>[e.createTextVNode(e.toDisplayString(e.unref(w)(_??c.created_at)),1)]),actions:e.withCtx(({row:c})=>[e.createVNode(r,null,{default:e.withCtx(({copyToClipboard:_})=>[e.createVNode(t,{"data-testid":"action-entity-copy-id",onClick:y=>ye(c,_)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(r,null,{default:e.withCtx(({copyToClipboard:_})=>[e.createVNode(t,{"data-testid":"action-entity-copy-json",onClick:y=>ne(c,_)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(u.PermissionsWrapper),{"auth-function":()=>a.canRetrieve(c)},{default:e.withCtx(()=>[e.createVNode(t,{"data-testid":"action-entity-view","has-divider":"",item:z(c.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(u.PermissionsWrapper),{"auth-function":()=>a.canEdit(c)},{default:e.withCtx(()=>[e.createVNode(t,{"data-testid":"action-entity-edit",item:ce(c.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(u.PermissionsWrapper),{"auth-function":()=>a.canDelete(c)},{default:e.withCtx(()=>[e.createVNode(t,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_=>he(c)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.delete.menu_label")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!e.unref(s)&&I.value?{name:"outside-actions",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!a.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createVNode(g,{appearance:"secondary",class:"open-learning-hub","data-testid":"gateway-services-more-button",icon:"",onClick:m[2]||(m[2]=c=>d.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Q.BookIcon),{decorative:""})]),_:1})],8,["disabled"]))]),key:"0"}:void 0,a.enableV2EmptyStates&&a.config.app==="konnect"?{name:"empty-state",fn:e.withCtx(()=>[e.createVNode(e.unref(u.EntityEmptyState),{"action-button-text":e.unref(i)("gateway_services.empty_state_v2.create"),appearance:"secondary","can-create":()=>a.canCreate(),"data-testid":"gateway-services-entity-empty-state",description:e.unref(i)("gateway_services.empty_state_v2.description"),"learn-more":a.config.app==="konnect",title:e.unref(i)("gateway_services.empty_state_v2.title"),"onClick:create":fe,"onClick:learnMore":m[3]||(m[3]=c=>d.$emit("click:learn-more"))},{image:e.withCtx(()=>[e.createElementVNode("div",Be,[e.createVNode(e.unref(Q.ServicesIcon),{color:e.unref(xe),size:e.unref(Se)},null,8,["color","size"])])]),_:1},8,["action-button-text","can-create","description","learn-more","title"])]),key:"1"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","onState"]),e.createVNode(e.unref(u.EntityToggleModal),{action:G.value.action,"entity-id":G.value.id,"entity-name":G.value.name,"entity-type":e.unref(i)("glossary.gateway_services"),"on-confirm":se,visible:A.value,onCancel:ie,onProceed:ie},null,8,["action","entity-id","entity-name","entity-type","visible"]),e.createVNode(e.unref(u.EntityDeleteModal),{"action-pending":M.value,description:e.unref(i)("actions.delete.description"),"entity-name":S.value&&(S.value.name||S.value.id),"entity-type":e.unref(u.EntityTypes).GatewayService,error:H.value,title:e.unref(i)("actions.delete.title"),visible:Z.value,onCancel:de,onProceed:J},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),Ve=(a,k)=>{const f=a.__vccOpts||a;for(const[n,i]of k)f[n]=i;return f},Ae=Ve(Fe,[["__scopeId","data-v-fa0c855e"]]);typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const ve=()=>{};function Re(a,k){function f(...n){return new Promise((i,w)=>{Promise.resolve(a(()=>k.apply(this,n),{fn:k,thisArg:this,args:n})).then(i).catch(w)})}return f}function Ue(a,k={}){let f,n,i=ve;const w=s=>{clearTimeout(s),i(),i=ve};let T;return s=>{const E=e.toValue(a),b=e.toValue(k.maxWait);return f&&w(f),E<=0||b!==void 0&&b<=0?(n&&(w(n),n=null),Promise.resolve(s())):new Promise((I,O)=>{i=k.rejectOnCancel?O:I,T=s,b&&!n&&(n=setTimeout(()=>{f&&w(f),n=null,I(T())},b)),f=setTimeout(()=>{n&&w(n),n=null,I(s())},E)})}}function Ce(a,k=200,f={}){return Re(Ue(k,f),a)}const $e={class:"kong-ui-entities-gateway-service-form"},De={key:0,class:"gateway-service-form-general-info"},Me={class:"gateway-service-form-group-selection-wrapper"},Le={key:0,class:"gateway-service-form-group-fields"},qe={key:0,class:"gateway-service-form-group-fields"},Ke={key:0},Oe={key:0,class:"gateway-service-form-advanced-fields"},We={class:"gateway-service-form-margin-bottom"},Ge={class:"gateway-service-form-margin-bottom"},je={class:"gateway-service-form-margin-bottom"},ze={class:"gateway-service-form-margin-bottom"},Ze={key:0,class:"gateway-service-form-margin-bottom"},He={key:1,class:"gateway-service-form-margin-bottom"},Je={key:2,class:"gateway-service-form-margin-bottom"},Qe={key:0,class:"checkbox-aligned-radio"},Xe={key:1,class:"checkbox-aligned-radio"},Ye={class:"gateway-service-form-tags"},et={class:"form-error-list"},tt=Ve(e.defineComponent({__name:"GatewayServiceForm",props:{config:{type:Object,required:!0,validator:a=>!(!a||!["konnect","kongManager"].includes(a==null?void 0:a.app)||a.app==="konnect"&&!a.controlPlaneId||a.app==="kongManager"&&typeof a.workspace!="string"||!a.cancelRoute)},gatewayServiceId:{type:String,required:!1,default:""},hideSectionsInfo:{type:Boolean,required:!1,default:!1},hideTrySampleAPIButton:{type:Boolean,required:!1,default:!1},sampleApiList:{type:Array,required:!1,default:()=>[]}},emits:["update","error","url-valid:success","url-valid:error","loading","model-updated","try-sample-api"],setup(a,{expose:k,emit:f}){var R;const n=f,i=a,w=e.ref(!0),T=be.useRouter(),{i18nT:P,i18n:{t:s}}=X.useI18n(),{getMessageFromError:E,getErrorFieldsFromError:b}=u.useErrors(),{axiosInstance:I}=u.useAxios((R=i.config)==null?void 0:R.axiosRequestConfig),O=u.useValidators(),te=e.computed(()=>K.form[i.config.app].edit),U=e.computed(()=>i.gatewayServiceId?u.EntityBaseFormType.Edit:u.EntityBaseFormType.Create),ue=e.ref(!1),B=e.computed(()=>!!i.gatewayServiceId),C=e.ref(B.value?"protocol":"url"),F=X.usePortFromProtocol(),W=e.ref(""),oe=e.computed(()=>!!W.value),o=e.reactive({fields:{name:"",protocol:"http",host:"",path:"",port:80,url:"",retries:5,connect_timeout:6e4,write_timeout:6e4,read_timeout:6e4,client_certificate:"",ca_certificates:"",tls_verify_enabled:!1,tls_verify_value:!1,tags:""},isReadonly:!1,errorMessages:[],formFieldErrors:{host:"",port:"",path:"",url:"",tags:"",retries:"",connect_timeout:"",write_timeout:"",read_timeout:"",client_certificate:"",ca_certificates:"",tls_verify_enabled:"",tls_verify_value:""}}),h=e.reactive({name:"",protocol:"http",host:"",path:"",port:80,url:"",retries:5,connect_timeout:6e4,write_timeout:6e4,read_timeout:6e4,client_certificate:"",ca_certificates:"",tls_verify_enabled:!1,tls_verify_value:!1,tags:""}),me=i.config.app==="konnect"||u.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),re=[{label:s("gateway_services.form.fields.protocol.options.http"),value:"http",group:"http"},{label:s("gateway_services.form.fields.protocol.options.https"),value:"https",group:"http"},{label:s("gateway_services.form.fields.protocol.options.tcp"),value:"tcp",group:"tcp"},{label:s("gateway_services.form.fields.protocol.options.tls"),value:"tls",group:"tcp"},{label:s("gateway_services.form.fields.protocol.options.tls_passthrough"),value:"tls_passthrough",group:"tcp"},{label:s("gateway_services.form.fields.protocol.options.grpc"),value:"grpc",group:"grpc"},{label:s("gateway_services.form.fields.protocol.options.grpcs"),value:"grpcs",group:"grpc"},...me?[{label:s("gateway_services.form.fields.protocol.options.ws"),value:"ws",group:"websocket"},{label:s("gateway_services.form.fields.protocol.options.wss"),value:"wss",group:"websocket"}]:[],{label:s("gateway_services.form.fields.protocol.options.udp"),value:"udp",group:"udp"}],$={url:"url",protocol:"protocol"},ge=(t,r)=>{r.value},A=t=>t?parseFloat(t):0,N=()=>{w.value=!0,z(),o.errorMessages=[],o.fields.host=h.host,o.fields.path=h.path,o.fields.port=h.port,o.fields.protocol=h.protocol,o.fields.url=h.url,o.fields.retries=h.retries,o.fields.connect_timeout=h.connect_timeout,o.fields.write_timeout=h.write_timeout,o.fields.read_timeout=h.read_timeout,o.fields.client_certificate=h.client_certificate,o.fields.ca_certificates=h.ca_certificates,o.fields.tls_verify_enabled=h.tls_verify_enabled,o.fields.tls_verify_value=h.tls_verify_value},G=()=>{ye()},le=t=>!t||t.trim()===""?"host cannot be empty":/^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9])$|^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(t)?"":"invalid host",ie=t=>!t||t.trim()===""?"protocol cannot be empty":(t=t.slice(0,-1),re.find(c=>{if(c.value===t)return c})===void 0?'protocol - value must be one of "http", "https", "grpc", "grpcs", "tcp", "udp", "tls", "tls_passthrough", "ws", "wss"':""),se=t=>{if(t==null||t==="")return"";const r=typeof t=="string"?parseInt(t,10):t;return isNaN(r)?"Port must be a number":r<0||r>65535?"Port must be between 0 and 65535":""},ae=t=>!t||t===""?"":t.startsWith("/")?/[^A-Za-z0-9\-._~:/?#[\]@!$&'()*+,;=%]/.test(t)?"Path should not include characters outside of the reserved list of RFC 3986":"":"Path must begin with /",ye=Ce(()=>{if(z(),o.fields.url.length)try{const t=new URL(o.fields.url),r=ie(t.protocol);if(r)throw new Error(r);const c=le(t.hostname);if(c)throw new Error(c);const _=ae(t.pathname);if(_)throw new Error(_);const y=se(t.port);if(y)throw new Error(y)}catch(t){n("url-valid:error",t.message||"URL validation failed"),o.formFieldErrors.url=t.message||"URL validation failed"}},300),ne=e.computed(()=>t=>{const r=o.formFieldErrors;return t==="url"?r.host.length?r.host:r.path.length?r.path:r.url:r[t]?r[t]:""}),j=Ce(()=>{z();const t=le(o.fields.host);t&&(o.formFieldErrors.host=t);const r=ae(o.fields.path);r&&(o.formFieldErrors.path=r);const c=se(o.fields.port);c&&(o.formFieldErrors.port=c)},300),z=()=>{o.formFieldErrors={host:"",port:"",url:"",path:"",tags:"",retries:"",connect_timeout:"",write_timeout:"",read_timeout:"",client_certificate:"",ca_certificates:"",tls_verify_enabled:"",tls_verify_value:""}},ce=e.computed(()=>Object.values(o.formFieldErrors).some(t=>t!==null&&t!=="")&&!oe.value),S=()=>{if(o.fields.url&&C.value==="url")try{const t=new URL(o.fields.url);o.fields.protocol=t.protocol.slice(0,-1),o.fields.host=t.hostname,o.fields.path=t.pathname;const r=Number(t.port);ue.value=!!r,o.fields.port=r||F.getPortFromProtocol(o.fields.protocol),n("url-valid:success")}catch(t){n("url-valid:error",E(t))}else n("url-valid:success")},Z=()=>`new-service-${new Date().toISOString().replace(/\D/g,"").slice(0,17)}`,M=e.computed(()=>!["tcp","tls","tls_passthrough","grpc","grpcs","udp"].includes(o.fields.protocol)),H=e.computed(()=>{if(C.value==="url")return!0;const t=["https","wss","tls"].includes(o.fields.protocol);return C.value==="protocol"&&t}),_e=e.computed(()=>{if(C.value==="url")return!0;const t=["https","tls"].includes(o.fields.protocol);return C.value==="protocol"&&t}),he=e.computed(()=>{if(C.value==="url")return!0;const t=["https","wss","tls"].includes(o.fields.protocol);return C.value==="protocol"&&t}),de=t=>{W.value=O.utf8Name(t)},J=e.computed(()=>B.value&&JSON.stringify(o.fields)!==JSON.stringify(h)||C.value==="url"&&!!o.fields.url&&!ce.value||C.value==="protocol"&&!!o.fields.host&&!ce.value),fe=t=>{var r,c,_;o.fields.name=(t==null?void 0:t.name)||"",o.fields.tags=((r=t==null?void 0:t.tags)==null?void 0:r.join(", "))||"",o.fields.protocol=(t==null?void 0:t.protocol)||"http",o.fields.path=(t==null?void 0:t.path)||"",o.fields.read_timeout=t!=null&&t.read_timeout||(t==null?void 0:t.read_timeout)===0?t==null?void 0:t.read_timeout:6e4,o.fields.retries=t!=null&&t.retries||(t==null?void 0:t.retries)===0?t==null?void 0:t.retries:5,o.fields.host=(t==null?void 0:t.host)||"",o.fields.connect_timeout=t!=null&&t.connect_timeout||(t==null?void 0:t.connect_timeout)===0?t==null?void 0:t.connect_timeout:6e4,o.fields.tls_verify_enabled=(t==null?void 0:t.tls_verify)!==""&&(t==null?void 0:t.tls_verify)!==null&&(t==null?void 0:t.tls_verify)!==void 0,o.fields.tls_verify_value=t!=null&&t.tls_verify?t==null?void 0:t.tls_verify:!1,o.fields.ca_certificates=((c=t==null?void 0:t.ca_certificates)==null?void 0:c.join(","))||"",o.fields.client_certificate=((_=t==null?void 0:t.client_certificate)==null?void 0:_.id)||"",o.fields.write_timeout=t!=null&&t.write_timeout||(t==null?void 0:t.write_timeout)===0?t==null?void 0:t.write_timeout:6e4,o.fields.port=t!=null&&t.port||(t==null?void 0:t.port)===0?t==null?void 0:t.port:80,Object.assign(h,o.fields)},L=()=>{T.push(i.config.cancelRoute)},pe=e.computed(()=>{var r,c;let t=`${i.config.apiBaseUrl}${K.form[i.config.app].validate}`;return i.config.app==="konnect"?t=t.replace(/{controlPlaneId}/gi,((r=i.config)==null?void 0:r.controlPlaneId)||""):i.config.app==="kongManager"&&(t=t.replace(/\/{workspace}/gi,(c=i.config)!=null&&c.workspace?`/${i.config.workspace}`:"")),t=t.replace(/{id}/gi,i.gatewayServiceId),t}),d=e.computed(()=>{var r,c;let t=`${i.config.apiBaseUrl}${K.form[i.config.app][U.value]}`;return i.config.app==="konnect"?t=t.replace(/{controlPlaneId}/gi,((r=i.config)==null?void 0:r.controlPlaneId)||""):i.config.app==="kongManager"&&(t=t.replace(/\/{workspace}/gi,(c=i.config)!=null&&c.workspace?`/${i.config.workspace}`:"")),t=t.replace(/{id}/gi,i.gatewayServiceId),t}),m=t=>{let r="";t.url&&(r=new URL(t.url).protocol),(["https","wss","tls"].includes(t.protocol)||["https","wss","tls"].includes(r))&&(t.tls_verify=t.tls_verify_enabled?t.tls_verify_value:null),delete t.tls_verify_enabled,delete t.tls_verify_value},g=e.computed(()=>{var r,c,_,y;const t={name:o.fields.name||null,tags:o.fields.tags?(_=(c=(r=o.fields.tags)==null?void 0:r.split(","))==null?void 0:c.map(v=>String(v||"").trim()))==null?void 0:_.filter(v=>v!==""):null,protocol:o.fields.protocol,path:o.fields.path||null,read_timeout:o.fields.read_timeout,retries:o.fields.retries,host:o.fields.host,connect_timeout:o.fields.connect_timeout,tls_verify_value:o.fields.tls_verify_value,tls_verify_enabled:o.fields.tls_verify_enabled,ca_certificates:o.fields.ca_certificates?(y=o.fields.ca_certificates)==null?void 0:y.split(",").filter(v=>v!==""):null,client_certificate:o.fields.client_certificate?{id:o.fields.client_certificate}:null,write_timeout:o.fields.write_timeout,port:o.fields.port,url:o.fields.url};return o.fields.client_certificate&&["https","wss","tls"].includes(o.fields.protocol)&&(t.client_certificate={id:o.fields.client_certificate}),o.fields.tls_verify_enabled&&["https","wss","tls"].includes(o.fields.protocol)&&(t.tls_verify=o.fields.tls_verify_value),M.value||(t.path=null),U.value==="create"?C.value==="url"?(delete t.protocol,delete t.host,delete t.path,i.config.app==="konnect"&&delete t.port):delete t.url:U.value==="edit"&&delete t.url,t}),V=async()=>{var t,r,c,_;try{o.isReadonly=!0,S();const y=g.value;m(y);let v;if(await I.post(pe.value,y),U.value==="create"?v=await I.post(d.value,y):U.value==="edit"&&(v=((t=i.config)==null?void 0:t.app)==="konnect"?await I.put(d.value,y):await I.patch(d.value,y)),v){const{data:l}=v;o.fields.name=(l==null?void 0:l.name)||"",o.fields.port=l.port||F.getPortFromProtocol(l.protocol),o.fields.protocol=(l==null?void 0:l.protocol)||"http",o.fields.host=(l==null?void 0:l.host)||"",o.fields.path=(l==null?void 0:l.path)||"",o.fields.url=(l==null?void 0:l.url)||"",o.fields.retries=l!=null&&l.retries||(l==null?void 0:l.retries)===0?l==null?void 0:l.retries:5,o.fields.connect_timeout=l!=null&&l.connect_timeout||(l==null?void 0:l.connect_timeout)===0?l==null?void 0:l.connect_timeout:6e4,o.fields.write_timeout=l!=null&&l.write_timeout||(l==null?void 0:l.write_timeout)===0?l==null?void 0:l.write_timeout:6e4,o.fields.read_timeout=l!=null&&l.read_timeout||(l==null?void 0:l.read_timeout)===0?l==null?void 0:l.read_timeout:6e4,o.fields.client_certificate=((r=l==null?void 0:l.client_certificate)==null?void 0:r.id)||"",o.fields.ca_certificates=(c=l==null?void 0:l.ca_certificates)!=null&&c.length?l==null?void 0:l.ca_certificates.join(","):"",o.fields.tls_verify_enabled=(l==null?void 0:l.tls_verify)!==""&&(l==null?void 0:l.tls_verify)!==null&&(l==null?void 0:l.tls_verify)!==void 0,o.fields.tls_verify_value=o.fields.tls_verify_enabled&&(l==null?void 0:l.tls_verify),o.fields.tags=(_=l==null?void 0:l.tags)!=null&&_.length?l.tags.join(", "):"",Object.assign(h,o.fields),n("update",v==null?void 0:v.data)}return v}catch(y){const{fields:v,messages:l}=b(y);v.length&&(v.forEach(D=>{const q=D.field;q==="client_certificate.id"?o.formFieldErrors.client_certificate=D.message:q==="ca_certificates[0]"?o.formFieldErrors.ca_certificates=D.message:Object.keys(o.formFieldErrors).includes(q)&&(o.formFieldErrors={...o.formFieldErrors,[q]:D.message})}),o.errorMessages=l),n("error",y)}finally{o.isReadonly=!1}};return e.watch(()=>i.gatewayServiceId,()=>{Object.assign(o.fields,h)}),e.watch(o.fields,t=>{o.fields.port=F.getPortFromProtocol(t.protocol,String(t.port)),n("model-updated",g.value)}),e.onMounted(()=>{n("model-updated",g.value),B.value||(o.fields.name=Z())}),k({validateUrl:S,getPayload:g,saveFormData:V,canSubmit:J,initForm:fe}),(t,r)=>{const c=e.resolveComponent("KRadio"),_=e.resolveComponent("KButton"),y=e.resolveComponent("KInput"),v=e.resolveComponent("KSelect"),l=e.resolveComponent("KCheckbox"),D=e.resolveComponent("KCollapse"),q=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock("div",$e,[e.createVNode(e.unref(u.EntityBaseForm),{"can-submit":J.value,config:a.config,"edit-id":a.gatewayServiceId,"entity-type":e.unref(u.SupportedEntityType).GatewayService,"fetch-url":te.value,"form-fields":g.value,"is-readonly":o.isReadonly,onCancel:L,"onFetch:error":r[25]||(r[25]=p=>t.$emit("error",p)),"onFetch:success":fe,onLoading:r[26]||(r[26]=p=>t.$emit("loading",p)),onSubmit:V},{"form-actions":e.withCtx(()=>[e.renderSlot(t.$slots,"form-actions",{canSubmit:J.value,cancel:L,submit:V},void 0,!0)]),default:e.withCtx(()=>[e.createVNode(e.unref(u.EntityFormSection),{description:e.unref(s)("gateway_services.form.sections.keys.description"),"hide-info-header":a.hideSectionsInfo,title:e.unref(s)("gateway_services.form.sections.keys.title")},{default:e.withCtx(()=>[B.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",De,[e.createElementVNode("div",Me,[e.createVNode(c,{modelValue:C.value,"onUpdate:modelValue":r[0]||(r[0]=p=>C.value=p),card:"","card-orientation":"horizontal","data-testid":"gateway-service-url-radio",description:e.unref(s)("gateway_services.form.sections.keys.url.description"),label:e.unref(s)("gateway_services.form.sections.keys.url.label"),"selected-value":$.url,onChange:N},null,8,["modelValue","description","label","selected-value"]),e.createVNode(c,{modelValue:C.value,"onUpdate:modelValue":r[1]||(r[1]=p=>C.value=p),card:"","card-orientation":"horizontal","checked-group":"protocol","data-testid":"gateway-service-protocol-radio",description:e.unref(s)("gateway_services.form.sections.keys.protocol.description"),label:e.unref(s)("gateway_services.form.sections.keys.protocol.label"),"selected-value":$.protocol,onChange:N},null,8,["modelValue","description","label","selected-value"])]),e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[C.value==="url"?(e.openBlock(),e.createElementBlock("div",Le,[e.createVNode(y,{modelValue:o.fields.url,"onUpdate:modelValue":r[2]||(r[2]=p=>o.fields.url=p),modelModifiers:{trim:!0},class:"gateway-service-url-input gateway-service-form-margin-bottom","data-testid":"gateway-service-url-input",error:ne.value("url").length>0,"error-message":o.errorMessages.length<=1?ne.value("url"):void 0,label:e.unref(s)("gateway_services.form.fields.upstream_url.label"),"label-attributes":{info:a.config.app==="konnect"?e.unref(s)("gateway_services.form.fields.upstream_url.tooltip_for_konnect"):e.unref(s)("gateway_services.form.fields.upstream_url.tooltip_for_km"),tooltipAttributes:{maxWidth:"400"}},name:"url",placeholder:e.unref(s)("gateway_services.form.fields.upstream_url.placeholder"),required:"",onInput:G},{after:e.withCtx(()=>[e.createVNode(_,{appearance:"tertiary",size:"small"},{default:e.withCtx(()=>r[27]||(r[27]=[e.createTextVNode(" Try Sample API ")])),_:1})]),_:1},8,["modelValue","error","error-message","label","label-attributes","placeholder"])])):e.createCommentVNode("",!0)]),_:1})])),e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[C.value==="protocol"||B.value?(e.openBlock(),e.createElementBlock("div",qe,[e.createVNode(v,{modelValue:o.fields.protocol,"onUpdate:modelValue":r[3]||(r[3]=p=>o.fields.protocol=p),"data-testid":"gateway-service-protocol-select",items:re,label:e.unref(s)("gateway_services.form.fields.protocol.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.protocol.tooltip"),tooltipAttributes:{maxWidth:"400"}},readonly:o.isReadonly,required:"",width:"100%",onSelected:r[4]||(r[4]=p=>ge(o.fields.protocol,p))},null,8,["modelValue","label","label-attributes","readonly"]),e.createVNode(y,{modelValue:o.fields.host,"onUpdate:modelValue":r[5]||(r[5]=p=>o.fields.host=p),modelModifiers:{trim:!0},class:"gateway-service-form-margin-top","data-testid":"gateway-service-host-input",error:o.formFieldErrors.host.length>0,"error-message":o.formFieldErrors.host,label:e.unref(s)("gateway_services.form.fields.host.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.host.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"host",placeholder:e.unref(s)("gateway_services.form.fields.host.placeholder"),required:"",onInput:e.unref(j)},null,8,["modelValue","error","error-message","label","label-attributes","placeholder","onInput"]),M.value?(e.openBlock(),e.createElementBlock("div",Ke,[e.createVNode(y,{modelValue:o.fields.path,"onUpdate:modelValue":r[6]||(r[6]=p=>o.fields.path=p),modelModifiers:{trim:!0},class:"gateway-service-form-margin-top","data-testid":"gateway-service-path-input",error:o.formFieldErrors.path.length>0,"error-message":o.formFieldErrors.path,label:e.unref(s)("gateway_services.form.fields.path.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.path.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"path",placeholder:e.unref(s)("gateway_services.form.fields.path.placeholder"),onInput:e.unref(j)},null,8,["modelValue","error","error-message","label","label-attributes","placeholder","onInput"])])):e.createCommentVNode("",!0),e.createVNode(y,{modelValue:o.fields.port,"onUpdate:modelValue":[r[7]||(r[7]=p=>o.fields.port=p),r[8]||(r[8]=()=>{o.fields.port=A(o.fields.port+"")})],class:"gateway-service-form-margin-top","data-testid":"gateway-service-port-input",error:o.formFieldErrors.port.length>0,"error-message":o.formFieldErrors.port,label:e.unref(s)("gateway_services.form.fields.port.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.port.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"port",type:"number",onInput:e.unref(j)},null,8,["modelValue","error","error-message","label","label-attributes","onInput"])])):e.createCommentVNode("",!0)]),_:1}),e.createVNode(D,{modelValue:w.value,"onUpdate:modelValue":r[22]||(r[22]=p=>w.value=p),"data-testid":"advanced-fields-collapse","trigger-alignment":"leading","trigger-label":e.unref(s)("gateway_services.form.sections.keys.viewAdvancedFields")},{default:e.withCtx(()=>[e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[w.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Oe,[e.createElementVNode("div",We,[e.createVNode(y,{modelValue:o.fields.retries,"onUpdate:modelValue":[r[9]||(r[9]=p=>o.fields.retries=p),r[10]||(r[10]=()=>{o.fields.retries=A(o.fields.retries+"")})],autocomplete:"off","data-testid":"gateway-service-retries-input",label:e.unref(s)("gateway_services.form.fields.retries.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.retries.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"retries",readonly:o.isReadonly,type:"number"},null,8,["modelValue","label","label-attributes","readonly"])]),e.createElementVNode("div",Ge,[e.createVNode(y,{modelValue:o.fields.connect_timeout,"onUpdate:modelValue":[r[11]||(r[11]=p=>o.fields.connect_timeout=p),r[12]||(r[12]=()=>{o.fields.connect_timeout=A(o.fields.connect_timeout+"")})],autocomplete:"off","data-testid":"gateway-service-connTimeout-input",label:e.unref(s)("gateway_services.form.fields.connect_timeout.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.connect_timeout.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"connTimeout",readonly:o.isReadonly,type:"number"},null,8,["modelValue","label","label-attributes","readonly"])]),e.createElementVNode("div",je,[e.createVNode(y,{modelValue:o.fields.write_timeout,"onUpdate:modelValue":[r[13]||(r[13]=p=>o.fields.write_timeout=p),r[14]||(r[14]=()=>{o.fields.write_timeout=A(o.fields.write_timeout+"")})],autocomplete:"off","data-testid":"gateway-service-writeTimeout-input",label:e.unref(s)("gateway_services.form.fields.write_timeout.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.write_timeout.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"writeTimeout",readonly:o.isReadonly,type:"number"},null,8,["modelValue","label","label-attributes","readonly"])]),e.createElementVNode("div",ze,[e.createVNode(y,{modelValue:o.fields.read_timeout,"onUpdate:modelValue":[r[15]||(r[15]=p=>o.fields.read_timeout=p),r[16]||(r[16]=()=>{o.fields.read_timeout=A(o.fields.read_timeout+"")})],autocomplete:"off","data-testid":"gateway-service-readTimeout-input",label:e.unref(s)("gateway_services.form.fields.read_timeout.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.read_timeout.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"readTimeout",readonly:o.isReadonly,type:"number"},null,8,["modelValue","label","label-attributes","readonly"])]),H.value?(e.openBlock(),e.createElementBlock("div",Ze,[e.createVNode(y,{modelValue:o.fields.client_certificate,"onUpdate:modelValue":r[17]||(r[17]=p=>o.fields.client_certificate=p),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"gateway-service-clientCert-input",error:o.formFieldErrors.client_certificate.length>0,label:e.unref(s)("gateway_services.form.fields.client_certificate.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.client_certificate.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"clientCert",placeholder:e.unref(s)("gateway_services.form.fields.client_certificate.placeholder"),readonly:o.isReadonly,type:"text"},null,8,["modelValue","error","label","label-attributes","placeholder","readonly"])])):e.createCommentVNode("",!0),_e.value?(e.openBlock(),e.createElementBlock("div",He,[e.createVNode(y,{modelValue:o.fields.ca_certificates,"onUpdate:modelValue":r[18]||(r[18]=p=>o.fields.ca_certificates=p),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"gateway-service-ca-certs-input",error:o.formFieldErrors.ca_certificates.length>0,label:e.unref(s)("gateway_services.form.fields.ca_certificates.label"),"label-attributes":{tooltipAttributes:{maxWidth:"400"}},placeholder:e.unref(s)("gateway_services.form.fields.ca_certificates.placeholder"),readonly:o.isReadonly,type:"text"},{"label-tooltip":e.withCtx(()=>[e.createVNode(e.unref(P),{keypath:"gateway_services.form.fields.ca_certificates.tooltip",scope:"global"},{code1:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(s)("gateway_services.form.fields.ca_certificates.code1")),1)]),code2:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(s)("gateway_services.form.fields.ca_certificates.code2")),1)]),_:1})]),_:1},8,["modelValue","error","label","placeholder","readonly"])])):e.createCommentVNode("",!0),he.value?(e.openBlock(),e.createElementBlock("div",Je,[e.createVNode(l,{modelValue:o.fields.tls_verify_enabled,"onUpdate:modelValue":r[19]||(r[19]=p=>o.fields.tls_verify_enabled=p),"data-testid":"gateway-service-tls-verify-checkbox",description:e.unref(s)("gateway_services.form.fields.tls_verify_enabled.help"),label:e.unref(s)("gateway_services.form.fields.tls_verify_enabled.label"),"label-attributes":{tooltipAttributes:{maxWidth:"400"}}},{tooltip:e.withCtx(()=>[e.createVNode(e.unref(P),{keypath:"gateway_services.form.fields.tls_verify_enabled.tooltip",scope:"global"},{code1:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(s)("gateway_services.form.fields.tls_verify_enabled.code1")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),o.fields.tls_verify_enabled?(e.openBlock(),e.createElementBlock("div",Qe,[e.createVNode(c,{modelValue:o.fields.tls_verify_value,"onUpdate:modelValue":r[20]||(r[20]=p=>o.fields.tls_verify_value=p),"data-testid":"gateway-service-tls-verify-true-option",label:e.unref(s)("gateway_services.form.fields.tls_verify_option.true.label"),"selected-value":!0},null,8,["modelValue","label"])])):e.createCommentVNode("",!0),o.fields.tls_verify_enabled?(e.openBlock(),e.createElementBlock("div",Xe,[e.createVNode(c,{modelValue:o.fields.tls_verify_value,"onUpdate:modelValue":r[21]||(r[21]=p=>o.fields.tls_verify_value=p),"data-testid":"gateway-service-tls-verify-false-option",label:e.unref(s)("gateway_services.form.fields.tls_verify_option.false.label"),"selected-value":!1},null,8,["modelValue","label"])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]))]),_:1})]),_:1},8,["modelValue","trigger-label"])]),_:1},8,["description","hide-info-header","title"]),e.createVNode(e.unref(u.EntityFormSection),{description:e.unref(s)("gateway_services.form.sections.general.description"),"hide-info-header":a.hideSectionsInfo,title:e.unref(s)("gateway_services.form.sections.general.title")},{default:e.withCtx(()=>[e.createVNode(y,{modelValue:o.fields.name,"onUpdate:modelValue":r[23]||(r[23]=p=>o.fields.name=p),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"gateway-service-name-input",error:oe.value,"error-message":W.value,label:e.unref(s)("gateway_services.form.fields.name.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.name.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"name",placeholder:e.unref(s)("gateway_services.form.fields.name.placeholder"),readonly:o.isReadonly,type:"text",onInput:de},null,8,["modelValue","error","error-message","label","label-attributes","placeholder","readonly"]),e.createVNode(D,{"data-testid":"tags-collapse","trigger-alignment":"leading","trigger-label":e.unref(s)("gateway_services.form.fields.tags.collapse")},{default:e.withCtx(()=>[e.createElementVNode("div",Ye,[e.createVNode(y,{modelValue:o.fields.tags,"onUpdate:modelValue":r[24]||(r[24]=p=>o.fields.tags=p),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"gateway-service-tags-input",help:e.unref(s)("gateway_services.form.fields.tags.help"),label:e.unref(s)("gateway_services.form.fields.tags.label"),"label-attributes":{info:e.unref(s)("gateway_services.form.fields.tags.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"tags",placeholder:e.unref(s)("gateway_services.form.fields.tags.placeholder"),readonly:o.isReadonly,type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"])])]),_:1},8,["trigger-label"])]),_:1},8,["description","hide-info-header","title"]),o.errorMessages.length>1?(e.openBlock(),e.createBlock(q,{key:0,appearance:"danger"},{default:e.withCtx(()=>[e.createElementVNode("ul",et,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.errorMessages,p=>(e.openBlock(),e.createElementBlock("li",{key:p},e.toDisplayString(p),1))),128))])]),_:1})):e.createCommentVNode("",!0)]),_:3},8,["can-submit","config","edit-id","entity-type","fetch-url","form-fields","is-readonly"])])}}}),[["__scopeId","data-v-04ecb6bd"]]),ot={class:"kong-ui-gateway-service-entity-config-card"},rt=e.defineComponent({__name:"GatewayServiceConfigCard",props:{config:{type:Object,required:!0,validator:a=>!(!a||!["konnect","kongManager"].includes(a==null?void 0:a.app)||a.app==="konnect"&&!a.controlPlaneId||a.app==="kongManager"&&typeof a.workspace!="string"||!a.entityId)},configCardDoc:{type:String,default:"",required:!1},hideTitle:{type:Boolean,default:!1}},emits:["loading","fetch:error","fetch:success"],setup(a){const k=a,{i18n:{t:f},i18nT:n}=X.useI18n(),i=e.computed(()=>K.form[k.config.app].edit),{getPropValue:w}=u.useHelpers(),T=(s,E)=>w(s,E)===!0?f("gateway_services.form.fields.tls_verify_option.true.display"):f("gateway_services.form.fields.tls_verify_option.false.display"),P=e.ref({id:{},name:{tooltip:f("gateway_services.form.fields.name.tooltip")},enabled:{},updated_at:{},created_at:{},protocol:{section:u.ConfigurationSchemaSection.Basic,tooltip:f("gateway_services.form.fields.protocol.tooltip")},host:{section:u.ConfigurationSchemaSection.Basic,tooltip:f("gateway_services.form.fields.host.tooltip")},path:{section:u.ConfigurationSchemaSection.Basic,tooltip:f("gateway_services.form.fields.path.tooltip")},port:{section:u.ConfigurationSchemaSection.Basic,tooltip:f("gateway_services.form.fields.port.tooltip")},tags:{tooltip:f("gateway_services.form.fields.tags.tooltip")},retries:{order:1,tooltip:f("gateway_services.form.fields.retries.tooltip")},connect_timeout:{order:2,tooltip:f("gateway_services.form.fields.connect_timeout.tooltip")},write_timeout:{order:3,tooltip:f("gateway_services.form.fields.write_timeout.tooltip")},read_timeout:{order:4,tooltip:f("gateway_services.form.fields.read_timeout.tooltip")},client_certificate:{order:5,tooltip:f("gateway_services.form.fields.client_certificate.tooltip")},ca_certificates:{type:u.ConfigurationSchemaType.BadgeTag,label:f("gateway_services.form.fields.ca_certificates.label"),order:6},tls_verify:{label:f("gateway_services.form.fields.tls_verify_enabled.label")},tls_verify_depth:{hidden:!0}});return(s,E)=>(e.openBlock(),e.createElementBlock("div",ot,[e.createVNode(e.unref(u.EntityBaseConfigCard),{config:a.config,"config-card-doc":a.configCardDoc,"config-schema":P.value,"entity-type":e.unref(u.SupportedEntityType).GatewayService,"fetch-url":i.value,"hide-title":a.hideTitle,"onFetch:error":E[0]||(E[0]=b=>s.$emit("fetch:error",b)),"onFetch:success":E[1]||(E[1]=b=>s.$emit("fetch:success",b)),onLoading:E[2]||(E[2]=b=>s.$emit("loading",b))},{"enabled-label-tooltip":e.withCtx(()=>[e.createVNode(e.unref(n),{keypath:"gateway_services.form.fields.enabled.tooltip",scope:"global"},{false:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.enabled.false")),1)]),true:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.enabled.true")),1)]),_:1})]),"ca_certificates-label-tooltip":e.withCtx(()=>[e.createVNode(e.unref(n),{keypath:"gateway_services.form.fields.ca_certificates.tooltip",scope:"global"},{code1:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.ca_certificates.code1")),1)]),code2:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.ca_certificates.code2")),1)]),_:1})]),"tls_verify-label-tooltip":e.withCtx(()=>[e.createVNode(e.unref(n),{keypath:"gateway_services.form.fields.tls_verify_enabled.tooltip",scope:"global"},{code1:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.tls_verify_enabled.code1")),1)]),_:1})]),tls_verify:e.withCtx(b=>[e.createTextVNode(e.toDisplayString(typeof e.unref(w)("rowValue",b)=="boolean"?T("rowValue",b):e.unref(f)("gateway_services.form.fields.tls_verify_option.unset.display")),1)]),client_certificate:e.withCtx(b=>[e.createTextVNode(e.toDisplayString(e.unref(w)("rowValue",b)?e.unref(w)("rowValue",b).id:"–"),1)]),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title"])]))}});x.GatewayServiceConfigCard=rt,x.GatewayServiceForm=tt,x.GatewayServiceList=Ae,Object.defineProperty(x,Symbol.toStringTag,{value:"Module"})});
1
+ (function(k,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router"),require("@kong/icons"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-shared")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router","@kong/icons","@kong-ui-public/i18n","@kong-ui-public/entities-shared"],e):(k=typeof globalThis<"u"?globalThis:k||self,e(k["kong-ui-public-entities-gateway-services"]={},k.Vue,k.VueRouter,k.KongIcons,k["kong-ui-public-i18n"],k["kong-ui-public-entities-shared"]))})(this,function(k,e,me,Q,ye,p){"use strict";const _e={actions:{create:"New gateway service",serverless_create:"Add a Service",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",clear:"Clear",view:"View Details",delete:{title:"Delete a Gateway Service",description:"Deleting this Gateway Service will also remove any associated plugins. This action cannot be reversed.",menu_label:"Delete"}},search:{placeholder:{konnect:"Filter by name",kongManager:"Filter by exact name or ID"}},gateway_services:{title:"Gateway Services",list:{toolbar_actions:{new_gateway_service:"New gateway service"},table_headers:{name:"Name",control_plane:"Control Plane",protocol:"Protocol",host:"Host",port:"Port",path:"Path",enabled:"Enabled",tags:"Tags",id:"ID",created_at:"Created At",updated_at:"Last Modified"},empty_state:{title:"Configure a New Gateway Service",description:"Gateway services are used to proxy traffic.",serverless_title:"Configure your first Gateway Service"}},empty_state_v2:{create:"New gateway service",title:"Configure your first gateway service",description:"Services represent your upstream APIs, allowing for centralized configuration and streamlined management of backend endpoints."},form:{sections:{general:{title:"General Information",description:"General information will help identify and manage this Gateway Service."},keys:{title:"Service Endpoint",description:"Define the endpoint for this service by specifying the full URL or by its separate elements.",checkedGroupLabel:"Choose how and where to send traffic",urlLabel:"Full URL",checkedGroupAltLabel:"Protocol, Host, Port and Path",viewAdvancedFields:"View Advanced Fields"}},fields:{upstream_url:{label:"Upstream URL",placeholder:"Enter a URL",tooltip_for_konnect:"This is the URL of the API you will manage in Konnect.",tooltip_for_km:"This is the URL of the API you will manage in Kong Gateway."},name:{label:"Name",placeholder:"Enter a unique name",tooltip:"The Service name."},protocol:{label:"Protocol",tooltip:"The protocol used to communicate with the upstream.",options:{http:"http",https:"https",tcp:"tcp",tls:"tls",tls_passthrough:"tls_passthrough",grpc:"grpc",grpcs:"grpcs",ws:"ws",wss:"wss",udp:"udp"}},host:{label:"Host",placeholder:"Enter a host",tooltip:"The host of the upstream server. Note that the host value is case sensitive."},path:{label:"Path",placeholder:"Enter a path",tooltip:"The path to be used in request to the upstream server."},port:{label:"Port",tooltip:"The upstream server port."},retries:{label:"Retries",tooltip:"The number of retries to execute upon failure to proxy."},connect_timeout:{label:"Connection Timeout",tooltip:"The timeout in milliseconds for establishing a connection to the upstream server."},write_timeout:{label:"Write Timeout",tooltip:"The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server."},read_timeout:{label:"Read Timeout",tooltip:"The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server."},client_certificate:{label:"Client Certificate",placeholder:"Enter a Certificate ID",tooltip:"Certificate to be used as client certificate while TLS handshaking to the upstream server."},ca_certificates:{label:"CA Certificates",placeholder:"Enter a comma separated list of CA Certificate IDs",tooltip:"Array of {code1} object UUIDs that are used to build the trust store while verifying upstream server's TLS certificate. If set to {code2} when Nginx default is respected. If default CA list in Nginx are not specified and TLS verification is enabled, then handshake with upstream server will always fail (because no CA are trusted).",code1:"CA Certificate",code2:"null"},tls_verify_enabled:{label:"TLS Verify",help:"If unchecked, use default system setting",tooltip:"Whether to enable verification of upstream server TLS certificate. If set to {code1}, then the Nginx default is respected.",code1:"null"},tls_verify_option:{unset:{display:"Use default system setting"},true:{label:"True",display:"On"},false:{label:"False",display:"Off"}},tags:{label:"Tags",tooltip:"An optional set of strings associated with the Service for grouping and filtering.",placeholder:"Enter a list of tags separated by comma",help:"e.g. tag1, tag2, tag3"},enabled:{label:"Enabled",tooltip:"Whether the Service is active. If set to {false}, the proxy behavior will be as if any routes attached to it do not exist (404). Default: {true}.",false:"false",true:"true"}}}},errors:{general:"Gateway Services could not be retrieved",delete:"The gateway service could not be deleted at this time.",copy:"Failed to copy to clipboard",urlErrorMessage:"Error: invalid URL"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"},glossary:{gateway_services:"gateway services"}};function be(){const n=ye.createI18n("en-us",_e);return{i18n:n,i18nT:ye.i18nTComponent(n)}}function we(){return{getPortFromProtocol:(I,f)=>{const c=[80,443],s=Number(f);if((s||s===0)&&!c.includes(s))return s;switch(I){case"grpcs":case"tls":case"https":case"wss":return 443;case"grpc":case"tcp":case"http":case"ws":default:return 80}}}}const X={useI18n:be,usePortFromProtocol:we},Z="/v2/control-planes/{controlPlaneId}/core-entities",Y="/{workspace}",O={list:{konnect:{all:`${Z}/services`},kongManager:{all:`${Y}/services`}},form:{konnect:{create:`${Z}/services`,validate:`${Z}/v1/schemas/json/service/validate`,edit:`${Z}/services/{id}`},kongManager:{create:`${Y}/services`,validate:`${Y}/schemas/services/validate`,edit:`${Y}/services/{id}`}}},he="#00abd2",Ve="24px",ve={class:"kong-ui-entities-gateway-services-list"},ke={class:"button-row"},Ce={class:"empty-state-icon-gateway"},Ne={key:1},xe=e.defineComponent({__name:"GatewayServiceList",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.createRoute||!n.getViewRoute||!n.getEditRoute||n.app==="kongManager"&&!n.isExactMatch&&!n.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},useActionOutside:{type:Boolean,default:!1},isServerless:{type:Boolean,default:!1},enableV2EmptyStates:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle:success"],setup(n,{emit:I}){var l;const f=I,c=n,{i18n:{t:s,formatUnixTimeStamp:x}}=X.useI18n(),R=me.useRouter(),{axiosInstance:U}=p.useAxios((l=c.config)==null?void 0:l.axiosRequestConfig),{hasRecords:a,handleStateChange:C}=p.useTableState(()=>B.value),w=e.computed(()=>a.value&&c.config.app==="konnect"),re=e.computed(()=>!c.enableV2EmptyStates&&c.config.app==="konnect"),se=e.computed(()=>c.config.app!=="kongManager"||!!c.config.disableSorting),M={name:{label:s("gateway_services.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1},...c.config.showControlPlaneColumn?{control_plane:{label:s("gateway_services.list.table_headers.control_plane")}}:{},protocol:{label:s("gateway_services.list.table_headers.protocol"),searchable:!0,sortable:!0},host:{label:s("gateway_services.list.table_headers.host"),searchable:!0,sortable:!0},port:{label:s("gateway_services.list.table_headers.port"),searchable:!0,sortable:!0},path:{label:s("gateway_services.list.table_headers.path"),searchable:!0,sortable:!0},enabled:{label:s("gateway_services.list.table_headers.enabled"),searchable:!0,sortable:!0},tags:{label:s("gateway_services.list.table_headers.tags"),sortable:!1},updated_at:{label:s("gateway_services.list.table_headers.updated_at"),sortable:!0},created_at:{label:s("gateway_services.list.table_headers.created_at"),sortable:!0}},ae={columnVisibility:{created_at:!1}},A=M,g=e.computed(()=>{var r,y;let d=`${c.config.apiBaseUrl}${O.list[c.config.app].all}`;return c.config.app==="konnect"?d=d.replace(/{controlPlaneId}/gi,((r=c.config)==null?void 0:r.controlPlaneId)||""):c.config.app==="kongManager"&&(d=d.replace(/\/{workspace}/gi,(y=c.config)!=null&&y.workspace?`/${c.config.workspace}`:"")),d}),W=e.computed(()=>c.config.apiBaseUrl.startsWith("/")?new URL(`${window.location.origin}${g.value}`):new URL(g.value)),B=e.ref(""),ne=e.computed(()=>{const d=c.config.app==="konnect"||c.config.isExactMatch;if(d)return{isExactMatch:d,placeholder:s(`search.placeholder.${c.config.app}`)};const{name:r,enabled:y,protocol:V,host:K,port:E,path:ie}=M;return{isExactMatch:d,fields:{name:r,enabled:y,protocol:V,host:K,port:E,path:ie},schema:c.config.filterSchema}}),{fetcher:t,fetcherState:b,fetcherCacheKey:j}=p.useFetcher({...c.config,cacheIdentifier:c.cacheIdentifier},g.value),ce=()=>{B.value=""},ee=()=>{j.value++},F=e.ref(null),$=e.computed(()=>({ctaPath:c.config.createRoute,ctaText:_.value?c.isServerless?s("actions.serverless_create"):s("actions.create"):void 0,message:`${s("gateway_services.list.empty_state.description")}${c.config.additionMessageForEmptyState?` ${c.config.additionMessageForEmptyState}`:""}`,title:_.value?c.isServerless?s("gateway_services.list.empty_state.serverless_title"):s("gateway_services.list.empty_state.title"):s("gateway_services.title")})),L=e.ref(!1),v=e.ref(null),q=e.computed(()=>{const d={action:"disable",id:"",name:""};if(v.value){const{enabled:r,id:y,name:V}=v.value;d.action=r?"disable":"enable",d.id=y,d.name=V||y}return d}),de=d=>{L.value=!0,v.value=d},te=()=>{L.value=!1,v.value=null},fe=async()=>{var V,K;if(!await((V=c.canEdit)==null?void 0:V.call(c,v.value))||!v.value)return;const r=`${W.value.href}/${v.value.id}`,y=!v.value.enabled;try{const{data:E}=((K=c.config)==null?void 0:K.app)==="konnect"?await U.put(r,{...v.value,enabled:y}):await U.patch(r,{...v.value,enabled:y});f("toggle:success",E),v.value.enabled=y}catch(E){f("error",E)}},pe=d=>{c.config.getControlPlaneRoute&&R.push(c.config.getControlPlaneRoute(d))},H=(d,r)=>{const y=d.id;if(!r(y)){f("copy:error",{entity:d,field:"id",message:s("errors.copy")});return}f("copy:success",{entity:d,field:"id",message:s("copy.success",{val:y})})},oe=(d,r)=>{const y=JSON.stringify(d);if(!r(y)){f("copy:error",{entity:d,message:s("errors.copy")});return}f("copy:success",{entity:d,message:s("copy.success_brief")})},le=async d=>{var y;await((y=c.canRetrieve)==null?void 0:y.call(c,d))&&R.push(c.config.getViewRoute(d.id))},ue=d=>({label:s("actions.view"),to:c.config.getViewRoute(d)}),z=d=>({label:s("actions.edit"),to:c.config.getEditRoute(d)}),T=e.ref(void 0),P=e.ref(!1),D=e.ref(!1),G=e.ref(""),o=p.useDeleteUrlBuilder(c.config,g.value),i=d=>{T.value=d,P.value=!0,G.value=""},m=()=>{P.value=!1,T.value=void 0},N=async()=>{var d,r,y;if((d=T.value)!=null&&d.id){D.value=!0;try{await U.delete(o(T.value.id)),f("delete:success",T.value),m(),j.value++}catch(V){G.value=((y=(r=V.response)==null?void 0:r.data)==null?void 0:y.message)||V.message||s("errors.delete"),f("error",V)}finally{D.value=!1}}},h=()=>{R.push(c.config.createRoute)};e.watch(b,d=>{var r,y,V;if(d.status===p.FetcherStatus.Error){F.value={title:s("errors.general")},(V=(y=(r=d.error)==null?void 0:r.response)==null?void 0:y.data)!=null&&V.message&&(F.value.message=d.error.response.data.message),f("error",d.error);return}F.value=null});const _=e.ref(!1);return e.onBeforeMount(async()=>{_.value=await c.canCreate()}),(d,r)=>{const y=e.resolveComponent("KButton"),V=e.resolveComponent("KBadge"),K=e.resolveComponent("KInputSwitch"),E=e.resolveComponent("KDropdownItem"),ie=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",ve,[e.createVNode(e.unref(p.EntityBaseTable),{"cache-identifier":n.cacheIdentifier,"default-table-preferences":ae,"disable-sorting":se.value,"empty-state-options":$.value,"enable-entity-actions":"","error-message":F.value,fetcher:e.unref(t),"fetcher-cache-key":e.unref(j),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-gateway-services-list",query:B.value,"table-headers":e.unref(A),onClearSearchInput:ce,"onClick:row":r[5]||(r[5]=u=>le(u)),onSort:ee,onState:e.unref(C)},e.createSlots({"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(p.EntityFilter),{modelValue:B.value,"onUpdate:modelValue":r[0]||(r[0]=u=>B.value=u),config:ne.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!n.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createElementVNode("div",ke,[w.value?(e.openBlock(),e.createBlock(y,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"gateway-services-learn-more-button",icon:"",onClick:r[1]||(r[1]=u=>d.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Q.BookIcon),{decorative:""})]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(p.PermissionsWrapper),{"auth-function":()=>n.canCreate()},{default:e.withCtx(()=>[e.createVNode(y,{appearance:"primary","data-testid":"toolbar-add-gateway-service",size:n.useActionOutside?"medium":"large",to:n.config.createRoute},{default:e.withCtx(()=>[e.createVNode(e.unref(Q.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(s)("gateway_services.list.toolbar_actions.new_gateway_service")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:e.withCtx(({rowValue:u})=>[e.createElementVNode("b",null,e.toDisplayString(u??"-"),1)]),control_plane:e.withCtx(({row:u})=>{var S;return[(S=u.x_meta)!=null&&S.cluster_id?(e.openBlock(),e.createBlock(V,{key:0,tooltip:u.x_meta.cluster_id,"truncation-tooltip":"",onClick:e.withModifiers(J=>pe(u.x_meta.cluster_id),["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.x_meta.cluster_id),1)]),_:2},1032,["tooltip","onClick"])):(e.openBlock(),e.createElementBlock("b",Ne,"-"))]}),enabled:e.withCtx(({row:u})=>[e.createVNode(e.unref(p.PermissionsWrapper),{"auth-function":()=>n.canEdit(u),"force-show":""},{default:e.withCtx(({isAllowed:S})=>[e.createElementVNode("div",{onClick:r[4]||(r[4]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(K,{modelValue:u.enabled,"onUpdate:modelValue":J=>u.enabled=J,"data-testid":`row-${u.id}-toggle-input`,disabled:!S,onClick:e.withModifiers(J=>de(u),["prevent"])},null,8,["modelValue","onUpdate:modelValue","data-testid","disabled","onClick"])])]),_:2},1032,["auth-function"])]),tags:e.withCtx(({rowValue:u})=>[e.createVNode(e.unref(p.TableTags),{tags:u},null,8,["tags"])]),created_at:e.withCtx(({rowValue:u})=>[e.createTextVNode(e.toDisplayString(e.unref(x)(u)),1)]),updated_at:e.withCtx(({row:u,rowValue:S})=>[e.createTextVNode(e.toDisplayString(e.unref(x)(S??u.created_at)),1)]),actions:e.withCtx(({row:u})=>[e.createVNode(ie,null,{default:e.withCtx(({copyToClipboard:S})=>[e.createVNode(E,{"data-testid":"action-entity-copy-id",onClick:J=>H(u,S)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(ie,null,{default:e.withCtx(({copyToClipboard:S})=>[e.createVNode(E,{"data-testid":"action-entity-copy-json",onClick:J=>oe(u,S)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(e.unref(p.PermissionsWrapper),{"auth-function":()=>n.canRetrieve(u)},{default:e.withCtx(()=>[e.createVNode(E,{"data-testid":"action-entity-view","has-divider":"",item:ue(u.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(p.PermissionsWrapper),{"auth-function":()=>n.canEdit(u)},{default:e.withCtx(()=>[e.createVNode(E,{"data-testid":"action-entity-edit",item:z(u.id)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(p.PermissionsWrapper),{"auth-function":()=>n.canDelete(u)},{default:e.withCtx(()=>[e.createVNode(E,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:S=>i(u)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.delete.menu_label")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!e.unref(a)&&re.value?{name:"outside-actions",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!n.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createVNode(y,{appearance:"secondary",class:"open-learning-hub","data-testid":"gateway-services-more-button",icon:"",onClick:r[2]||(r[2]=u=>d.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Q.BookIcon),{decorative:""})]),_:1})],8,["disabled"]))]),key:"0"}:void 0,n.enableV2EmptyStates&&n.config.app==="konnect"?{name:"empty-state",fn:e.withCtx(()=>[e.createVNode(e.unref(p.EntityEmptyState),{"action-button-text":e.unref(s)("gateway_services.empty_state_v2.create"),appearance:"secondary","can-create":()=>n.canCreate(),"data-testid":"gateway-services-entity-empty-state",description:e.unref(s)("gateway_services.empty_state_v2.description"),"learn-more":n.config.app==="konnect",title:e.unref(s)("gateway_services.empty_state_v2.title"),"onClick:create":h,"onClick:learnMore":r[3]||(r[3]=u=>d.$emit("click:learn-more"))},{image:e.withCtx(()=>[e.createElementVNode("div",Ce,[e.createVNode(e.unref(Q.ServicesIcon),{color:e.unref(he),size:e.unref(Ve)},null,8,["color","size"])])]),_:1},8,["action-button-text","can-create","description","learn-more","title"])]),key:"1"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","onState"]),e.createVNode(e.unref(p.EntityToggleModal),{action:q.value.action,"entity-id":q.value.id,"entity-name":q.value.name,"entity-type":e.unref(s)("glossary.gateway_services"),"on-confirm":fe,visible:L.value,onCancel:te,onProceed:te},null,8,["action","entity-id","entity-name","entity-type","visible"]),e.createVNode(e.unref(p.EntityDeleteModal),{"action-pending":D.value,description:e.unref(s)("actions.delete.description"),"entity-name":T.value&&(T.value.name||T.value.id),"entity-type":e.unref(p.EntityTypes).GatewayService,error:G.value,title:e.unref(s)("actions.delete.title"),visible:P.value,onCancel:m,onProceed:N},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),ge=(n,I)=>{const f=n.__vccOpts||n;for(const[c,s]of I)f[c]=s;return f},Ee=ge(xe,[["__scopeId","data-v-fa0c855e"]]),Se={class:"kong-ui-entities-gateway-service-form"},Te={key:0},Ie={class:"gateway-service-form-traffic-label"},Be={class:"gateway-service-form-margin-bottom"},Pe={key:0,class:"gateway-service-form-group-fields"},Ue={key:1,class:"gateway-service-form-group-fields"},Me={key:0},Re={class:"gateway-service-form-margin-top"},$e={class:"gateway-service-form-margin-bottom"},De={class:"gateway-service-form-margin-bottom"},Ae={class:"gateway-service-form-margin-bottom"},Fe={class:"gateway-service-form-margin-bottom"},Le={key:0,class:"gateway-service-form-margin-bottom"},qe={key:1,class:"gateway-service-form-margin-bottom"},Ge={key:2,class:"gateway-service-form-margin-bottom"},Ke={key:0,class:"checkbox-aligned-radio"},Oe={key:1,class:"checkbox-aligned-radio"},We=ge(e.defineComponent({__name:"GatewayServiceForm",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&typeof n.workspace!="string"||!n.cancelRoute)},gatewayServiceId:{type:String,required:!1,default:""},hideSectionsInfo:{type:Boolean,required:!1,default:!1}},emits:["update","error","url-valid:success","url-valid:error","loading","model-updated"],setup(n,{expose:I,emit:f}){var G;const c=f,s=n,x=e.ref(!0),R=me.useRouter(),{i18nT:U,i18n:{t:a}}=X.useI18n(),{getMessageFromError:C}=p.useErrors(),{axiosInstance:w}=p.useAxios((G=s.config)==null?void 0:G.axiosRequestConfig),re=p.useValidators(),se=e.computed(()=>O.form[s.config.app].edit),M=e.computed(()=>s.gatewayServiceId?p.EntityBaseFormType.Edit:p.EntityBaseFormType.Create),ae=e.ref(!1),A=e.computed(()=>!!s.gatewayServiceId),g=e.ref(A.value?"protocol":"url"),W=X.usePortFromProtocol(),B=e.ref(""),ne=e.computed(()=>!!B.value),t=e.reactive({fields:{name:"",protocol:"http",host:"",path:"",port:80,url:"",retries:5,connect_timeout:6e4,write_timeout:6e4,read_timeout:6e4,client_certificate:"",ca_certificates:"",tls_verify_enabled:!1,tls_verify_value:!1,tags:""},isReadonly:!1,errorMessage:""}),b=e.reactive({name:"",protocol:"http",host:"",path:"",port:80,url:"",retries:5,connect_timeout:6e4,write_timeout:6e4,read_timeout:6e4,client_certificate:"",ca_certificates:"",tls_verify_enabled:!1,tls_verify_value:!1,tags:""}),j=s.config.app==="konnect"||p.useGatewayFeatureSupported({gatewayInfo:s.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),ce=[{label:a("gateway_services.form.fields.protocol.options.http"),value:"http",group:"http"},{label:a("gateway_services.form.fields.protocol.options.https"),value:"https",group:"http"},{label:a("gateway_services.form.fields.protocol.options.tcp"),value:"tcp",group:"tcp"},{label:a("gateway_services.form.fields.protocol.options.tls"),value:"tls",group:"tcp"},{label:a("gateway_services.form.fields.protocol.options.tls_passthrough"),value:"tls_passthrough",group:"tcp"},{label:a("gateway_services.form.fields.protocol.options.grpc"),value:"grpc",group:"grpc"},{label:a("gateway_services.form.fields.protocol.options.grpcs"),value:"grpcs",group:"grpc"},...j?[{label:a("gateway_services.form.fields.protocol.options.ws"),value:"ws",group:"websocket"},{label:a("gateway_services.form.fields.protocol.options.wss"),value:"wss",group:"websocket"}]:[],{label:a("gateway_services.form.fields.protocol.options.udp"),value:"udp",group:"udp"}],ee={url:"url",protocol:"protocol"},F=(o,i)=>{i.value},$=o=>o?parseFloat(o):0,L=()=>{x.value=!0,t.errorMessage="",t.fields.host=b.host,t.fields.path=b.path,t.fields.port=b.port,t.fields.protocol=b.protocol,t.fields.url=b.url,t.fields.retries=b.retries,t.fields.connect_timeout=b.connect_timeout,t.fields.write_timeout=b.write_timeout,t.fields.read_timeout=b.read_timeout,t.fields.client_certificate=b.client_certificate,t.fields.ca_certificates=b.ca_certificates,t.fields.tls_verify_enabled=b.tls_verify_enabled,t.fields.tls_verify_value=b.tls_verify_value},v=()=>{if(t.fields.url&&g.value==="url")try{const o=new URL(t.fields.url);t.errorMessage="",t.fields.protocol=o.protocol.slice(0,-1),t.fields.host=o.hostname,t.fields.path=o.pathname;const i=Number(o.port);ae.value=!!i,t.fields.port=i||W.getPortFromProtocol(t.fields.protocol),t.errorMessage="",c("url-valid:success")}catch(o){t.errorMessage=a("errors.urlErrorMessage"),c("url-valid:error",C(o))}else c("url-valid:success"),t.errorMessage=""},q=e.computed(()=>!["tcp","tls","tls_passthrough","grpc","grpcs","udp"].includes(t.fields.protocol)),de=e.computed(()=>{if(g.value==="url")return!0;const o=["https","wss","tls"].includes(t.fields.protocol);return g.value==="protocol"&&o}),te=e.computed(()=>{if(g.value==="url")return!0;const o=["https","tls"].includes(t.fields.protocol);return g.value==="protocol"&&o}),fe=e.computed(()=>{if(g.value==="url")return!0;const o=["https","wss","tls"].includes(t.fields.protocol);return g.value==="protocol"&&o}),pe=o=>{B.value=re.utf8Name(o)},H=e.computed(()=>A.value&&JSON.stringify(t.fields)!==JSON.stringify(b)||g.value==="url"&&!!t.fields.url||g.value==="protocol"&&!!t.fields.host),oe=o=>{var i,m,N;t.fields.name=(o==null?void 0:o.name)||"",t.fields.tags=((i=o==null?void 0:o.tags)==null?void 0:i.join(", "))||"",t.fields.protocol=(o==null?void 0:o.protocol)||"http",t.fields.path=(o==null?void 0:o.path)||"",t.fields.read_timeout=o!=null&&o.read_timeout||(o==null?void 0:o.read_timeout)===0?o==null?void 0:o.read_timeout:6e4,t.fields.retries=o!=null&&o.retries||(o==null?void 0:o.retries)===0?o==null?void 0:o.retries:5,t.fields.host=(o==null?void 0:o.host)||"",t.fields.connect_timeout=o!=null&&o.connect_timeout||(o==null?void 0:o.connect_timeout)===0?o==null?void 0:o.connect_timeout:6e4,t.fields.tls_verify_enabled=(o==null?void 0:o.tls_verify)!==""&&(o==null?void 0:o.tls_verify)!==null&&(o==null?void 0:o.tls_verify)!==void 0,t.fields.tls_verify_value=o!=null&&o.tls_verify?o==null?void 0:o.tls_verify:!1,t.fields.ca_certificates=((m=o==null?void 0:o.ca_certificates)==null?void 0:m.join(","))||"",t.fields.client_certificate=((N=o==null?void 0:o.client_certificate)==null?void 0:N.id)||"",t.fields.write_timeout=o!=null&&o.write_timeout||(o==null?void 0:o.write_timeout)===0?o==null?void 0:o.write_timeout:6e4,t.fields.port=o!=null&&o.port||(o==null?void 0:o.port)===0?o==null?void 0:o.port:80,Object.assign(b,t.fields)},le=()=>{R.push(s.config.cancelRoute)},ue=e.computed(()=>{var i,m;let o=`${s.config.apiBaseUrl}${O.form[s.config.app].validate}`;return s.config.app==="konnect"?o=o.replace(/{controlPlaneId}/gi,((i=s.config)==null?void 0:i.controlPlaneId)||""):s.config.app==="kongManager"&&(o=o.replace(/\/{workspace}/gi,(m=s.config)!=null&&m.workspace?`/${s.config.workspace}`:"")),o=o.replace(/{id}/gi,s.gatewayServiceId),o}),z=e.computed(()=>{var i,m;let o=`${s.config.apiBaseUrl}${O.form[s.config.app][M.value]}`;return s.config.app==="konnect"?o=o.replace(/{controlPlaneId}/gi,((i=s.config)==null?void 0:i.controlPlaneId)||""):s.config.app==="kongManager"&&(o=o.replace(/\/{workspace}/gi,(m=s.config)!=null&&m.workspace?`/${s.config.workspace}`:"")),o=o.replace(/{id}/gi,s.gatewayServiceId),o}),T=o=>{let i="";o.url&&(i=new URL(o.url).protocol),(["https","wss","tls"].includes(o.protocol)||["https","wss","tls"].includes(i))&&(o.tls_verify=o.tls_verify_enabled?o.tls_verify_value:null),delete o.tls_verify_enabled,delete o.tls_verify_value},P=e.computed(()=>{var i,m,N,h;const o={name:t.fields.name||null,tags:t.fields.tags?(N=(m=(i=t.fields.tags)==null?void 0:i.split(","))==null?void 0:m.map(_=>String(_||"").trim()))==null?void 0:N.filter(_=>_!==""):null,protocol:t.fields.protocol,path:t.fields.path||null,read_timeout:t.fields.read_timeout,retries:t.fields.retries,host:t.fields.host,connect_timeout:t.fields.connect_timeout,tls_verify_value:t.fields.tls_verify_value,tls_verify_enabled:t.fields.tls_verify_enabled,ca_certificates:t.fields.ca_certificates?(h=t.fields.ca_certificates)==null?void 0:h.split(",").filter(_=>_!==""):null,client_certificate:t.fields.client_certificate?{id:t.fields.client_certificate}:null,write_timeout:t.fields.write_timeout,port:t.fields.port,url:t.fields.url};return t.fields.client_certificate&&["https","wss","tls"].includes(t.fields.protocol)&&(o.client_certificate={id:t.fields.client_certificate}),t.fields.tls_verify_enabled&&["https","wss","tls"].includes(t.fields.protocol)&&(o.tls_verify=t.fields.tls_verify_value),q.value||(o.path=null),M.value==="create"?g.value==="url"?(delete o.protocol,delete o.host,delete o.path,s.config.app==="konnect"&&delete o.port):delete o.url:M.value==="edit"&&delete o.url,o}),D=async()=>{var o,i,m,N;try{t.isReadonly=!0,v();const h=P.value;T(h);let _;if(await w.post(ue.value,h),M.value==="create"?_=await w.post(z.value,h):M.value==="edit"&&(_=((o=s.config)==null?void 0:o.app)==="konnect"?await w.put(z.value,h):await w.patch(z.value,h)),_){const{data:l}=_;t.fields.name=(l==null?void 0:l.name)||"",t.fields.port=l.port||W.getPortFromProtocol(l.protocol),t.fields.protocol=(l==null?void 0:l.protocol)||"http",t.fields.host=(l==null?void 0:l.host)||"",t.fields.path=(l==null?void 0:l.path)||"",t.fields.url=(l==null?void 0:l.url)||"",t.fields.retries=l!=null&&l.retries||(l==null?void 0:l.retries)===0?l==null?void 0:l.retries:5,t.fields.connect_timeout=l!=null&&l.connect_timeout||(l==null?void 0:l.connect_timeout)===0?l==null?void 0:l.connect_timeout:6e4,t.fields.write_timeout=l!=null&&l.write_timeout||(l==null?void 0:l.write_timeout)===0?l==null?void 0:l.write_timeout:6e4,t.fields.read_timeout=l!=null&&l.read_timeout||(l==null?void 0:l.read_timeout)===0?l==null?void 0:l.read_timeout:6e4,t.fields.client_certificate=((i=l==null?void 0:l.client_certificate)==null?void 0:i.id)||"",t.fields.ca_certificates=(m=l==null?void 0:l.ca_certificates)!=null&&m.length?l==null?void 0:l.ca_certificates.join(","):"",t.fields.tls_verify_enabled=(l==null?void 0:l.tls_verify)!==""&&(l==null?void 0:l.tls_verify)!==null&&(l==null?void 0:l.tls_verify)!==void 0,t.fields.tls_verify_value=t.fields.tls_verify_enabled&&(l==null?void 0:l.tls_verify),t.fields.tags=(N=l==null?void 0:l.tags)!=null&&N.length?l.tags.join(", "):"",Object.assign(b,t.fields),c("update",_==null?void 0:_.data)}return _}catch(h){t.errorMessage=C(h),c("error",h)}finally{t.isReadonly=!1}};return e.watch(()=>s.gatewayServiceId,()=>{Object.assign(t.fields,b)}),e.watch(t.fields,o=>{t.fields.port=W.getPortFromProtocol(o.protocol,String(o.port)),c("model-updated",P.value)}),e.onMounted(()=>{c("model-updated",P.value)}),I({validateUrl:v,getPayload:P,saveFormData:D,canSubmit:H,initForm:oe}),(o,i)=>{const m=e.resolveComponent("KInput"),N=e.resolveComponent("KLabel"),h=e.resolveComponent("KRadio"),_=e.resolveComponent("KSelect"),l=e.resolveComponent("KCheckbox"),d=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock("div",Se,[e.createVNode(e.unref(p.EntityBaseForm),{"can-submit":H.value,config:n.config,"edit-id":n.gatewayServiceId,"entity-type":e.unref(p.SupportedEntityType).GatewayService,"error-message":t.errorMessage,"fetch-url":se.value,"form-fields":P.value,"is-readonly":t.isReadonly,onCancel:le,"onFetch:error":i[25]||(i[25]=r=>o.$emit("error",r)),"onFetch:success":oe,onLoading:i[26]||(i[26]=r=>o.$emit("loading",r)),onSubmit:D},{"form-actions":e.withCtx(()=>[e.renderSlot(o.$slots,"form-actions",{canSubmit:H.value,cancel:le,submit:D},void 0,!0)]),default:e.withCtx(()=>[e.createVNode(e.unref(p.EntityFormSection),{description:e.unref(a)("gateway_services.form.sections.general.description"),"hide-info-header":n.hideSectionsInfo,title:e.unref(a)("gateway_services.form.sections.general.title")},{default:e.withCtx(()=>[e.createVNode(m,{modelValue:t.fields.name,"onUpdate:modelValue":i[0]||(i[0]=r=>t.fields.name=r),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"gateway-service-name-input",error:ne.value,"error-message":B.value,label:e.unref(a)("gateway_services.form.fields.name.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.name.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"name",placeholder:e.unref(a)("gateway_services.form.fields.name.placeholder"),readonly:t.isReadonly,type:"text",onInput:pe},null,8,["modelValue","error","error-message","label","label-attributes","placeholder","readonly"]),e.createVNode(m,{modelValue:t.fields.tags,"onUpdate:modelValue":i[1]||(i[1]=r=>t.fields.tags=r),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"gateway-service-tags-input",help:e.unref(a)("gateway_services.form.fields.tags.help"),label:e.unref(a)("gateway_services.form.fields.tags.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.tags.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"tags",placeholder:e.unref(a)("gateway_services.form.fields.tags.placeholder"),readonly:t.isReadonly,type:"text"},null,8,["modelValue","help","label","label-attributes","placeholder","readonly"])]),_:1},8,["description","hide-info-header","title"]),e.createVNode(e.unref(p.EntityFormSection),{description:e.unref(a)("gateway_services.form.sections.keys.description"),"hide-info-header":n.hideSectionsInfo,title:e.unref(a)("gateway_services.form.sections.keys.title")},{default:e.withCtx(()=>[A.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Te,[e.createElementVNode("div",Ie,[e.createVNode(N,{required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("gateway_services.form.sections.keys.checkedGroupLabel")),1)]),_:1})]),e.createElementVNode("div",Be,[e.createVNode(h,{modelValue:g.value,"onUpdate:modelValue":i[2]||(i[2]=r=>g.value=r),"data-testid":"gateway-service-url-radio","selected-value":ee.url,onChange:L},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("gateway_services.form.sections.keys.urlLabel")),1)]),_:1},8,["modelValue","selected-value"])]),g.value==="url"?(e.openBlock(),e.createElementBlock("div",Pe,[e.createVNode(m,{modelValue:t.fields.url,"onUpdate:modelValue":i[3]||(i[3]=r=>t.fields.url=r),modelModifiers:{trim:!0},class:"gateway-service-url-input gateway-service-form-margin-bottom","data-testid":"gateway-service-url-input",label:e.unref(a)("gateway_services.form.fields.upstream_url.label"),"label-attributes":{info:n.config.app==="konnect"?e.unref(a)("gateway_services.form.fields.upstream_url.tooltip_for_konnect"):e.unref(a)("gateway_services.form.fields.upstream_url.tooltip_for_km"),tooltipAttributes:{maxWidth:"400"}},name:"url",placeholder:e.unref(a)("gateway_services.form.fields.upstream_url.placeholder"),required:""},null,8,["modelValue","label","label-attributes","placeholder"])])):e.createCommentVNode("",!0),e.createVNode(h,{modelValue:g.value,"onUpdate:modelValue":i[4]||(i[4]=r=>g.value=r),"checked-group":"protocol","data-testid":"gateway-service-protocol-radio","selected-value":ee.protocol,onChange:L},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("gateway_services.form.sections.keys.checkedGroupAltLabel")),1)]),_:1},8,["modelValue","selected-value"])])),g.value==="protocol"||A.value?(e.openBlock(),e.createElementBlock("div",Ue,[e.createVNode(_,{modelValue:t.fields.protocol,"onUpdate:modelValue":i[5]||(i[5]=r=>t.fields.protocol=r),"data-testid":"gateway-service-protocol-select",items:ce,label:e.unref(a)("gateway_services.form.fields.protocol.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.protocol.tooltip"),tooltipAttributes:{maxWidth:"400"}},readonly:t.isReadonly,required:"",width:"100%",onSelected:i[6]||(i[6]=r=>F(t.fields.protocol,r))},null,8,["modelValue","label","label-attributes","readonly"]),e.createVNode(m,{modelValue:t.fields.host,"onUpdate:modelValue":i[7]||(i[7]=r=>t.fields.host=r),modelModifiers:{trim:!0},class:"gateway-service-form-margin-top","data-testid":"gateway-service-host-input",label:e.unref(a)("gateway_services.form.fields.host.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.host.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"host",placeholder:e.unref(a)("gateway_services.form.fields.host.placeholder"),required:""},null,8,["modelValue","label","label-attributes","placeholder"]),q.value?(e.openBlock(),e.createElementBlock("div",Me,[e.createVNode(m,{modelValue:t.fields.path,"onUpdate:modelValue":i[8]||(i[8]=r=>t.fields.path=r),modelModifiers:{trim:!0},class:"gateway-service-form-margin-top","data-testid":"gateway-service-path-input",label:e.unref(a)("gateway_services.form.fields.path.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.path.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"path",placeholder:e.unref(a)("gateway_services.form.fields.path.placeholder")},null,8,["modelValue","label","label-attributes","placeholder"])])):e.createCommentVNode("",!0),e.createVNode(m,{modelValue:t.fields.port,"onUpdate:modelValue":[i[9]||(i[9]=r=>t.fields.port=r),i[10]||(i[10]=()=>{t.fields.port=$(t.fields.port+"")})],class:"gateway-service-form-margin-top","data-testid":"gateway-service-port-input",label:e.unref(a)("gateway_services.form.fields.port.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.port.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"port",type:"number"},null,8,["modelValue","label","label-attributes"])])):e.createCommentVNode("",!0),e.createVNode(d,{modelValue:x.value,"onUpdate:modelValue":i[24]||(i[24]=r=>x.value=r),"data-testid":"advanced-fields-collapse","trigger-alignment":"leading","trigger-label":e.unref(a)("gateway_services.form.sections.keys.viewAdvancedFields")},{default:e.withCtx(()=>[e.createElementVNode("div",Re,[e.createElementVNode("div",$e,[e.createVNode(m,{modelValue:t.fields.retries,"onUpdate:modelValue":[i[11]||(i[11]=r=>t.fields.retries=r),i[12]||(i[12]=()=>{t.fields.retries=$(t.fields.retries+"")})],autocomplete:"off","data-testid":"gateway-service-retries-input",label:e.unref(a)("gateway_services.form.fields.retries.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.retries.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"retries",readonly:t.isReadonly,type:"number"},null,8,["modelValue","label","label-attributes","readonly"])]),e.createElementVNode("div",De,[e.createVNode(m,{modelValue:t.fields.connect_timeout,"onUpdate:modelValue":[i[13]||(i[13]=r=>t.fields.connect_timeout=r),i[14]||(i[14]=()=>{t.fields.connect_timeout=$(t.fields.connect_timeout+"")})],autocomplete:"off","data-testid":"gateway-service-connTimeout-input",label:e.unref(a)("gateway_services.form.fields.connect_timeout.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.connect_timeout.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"connTimeout",readonly:t.isReadonly,type:"number"},null,8,["modelValue","label","label-attributes","readonly"])]),e.createElementVNode("div",Ae,[e.createVNode(m,{modelValue:t.fields.write_timeout,"onUpdate:modelValue":[i[15]||(i[15]=r=>t.fields.write_timeout=r),i[16]||(i[16]=()=>{t.fields.write_timeout=$(t.fields.write_timeout+"")})],autocomplete:"off","data-testid":"gateway-service-writeTimeout-input",label:e.unref(a)("gateway_services.form.fields.write_timeout.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.write_timeout.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"writeTimeout",readonly:t.isReadonly,type:"number"},null,8,["modelValue","label","label-attributes","readonly"])]),e.createElementVNode("div",Fe,[e.createVNode(m,{modelValue:t.fields.read_timeout,"onUpdate:modelValue":[i[17]||(i[17]=r=>t.fields.read_timeout=r),i[18]||(i[18]=()=>{t.fields.read_timeout=$(t.fields.read_timeout+"")})],autocomplete:"off","data-testid":"gateway-service-readTimeout-input",label:e.unref(a)("gateway_services.form.fields.read_timeout.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.read_timeout.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"readTimeout",readonly:t.isReadonly,type:"number"},null,8,["modelValue","label","label-attributes","readonly"])]),de.value?(e.openBlock(),e.createElementBlock("div",Le,[e.createVNode(m,{modelValue:t.fields.client_certificate,"onUpdate:modelValue":i[19]||(i[19]=r=>t.fields.client_certificate=r),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"gateway-service-clientCert-input",label:e.unref(a)("gateway_services.form.fields.client_certificate.label"),"label-attributes":{info:e.unref(a)("gateway_services.form.fields.client_certificate.tooltip"),tooltipAttributes:{maxWidth:"400"}},name:"clientCert",placeholder:e.unref(a)("gateway_services.form.fields.client_certificate.placeholder"),readonly:t.isReadonly,type:"text"},null,8,["modelValue","label","label-attributes","placeholder","readonly"])])):e.createCommentVNode("",!0),te.value?(e.openBlock(),e.createElementBlock("div",qe,[e.createVNode(m,{modelValue:t.fields.ca_certificates,"onUpdate:modelValue":i[20]||(i[20]=r=>t.fields.ca_certificates=r),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"gateway-service-ca-certs-input",label:e.unref(a)("gateway_services.form.fields.ca_certificates.label"),"label-attributes":{tooltipAttributes:{maxWidth:"400"}},placeholder:e.unref(a)("gateway_services.form.fields.ca_certificates.placeholder"),readonly:t.isReadonly,type:"text"},{"label-tooltip":e.withCtx(()=>[e.createVNode(e.unref(U),{keypath:"gateway_services.form.fields.ca_certificates.tooltip",scope:"global"},{code1:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(a)("gateway_services.form.fields.ca_certificates.code1")),1)]),code2:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(a)("gateway_services.form.fields.ca_certificates.code2")),1)]),_:1})]),_:1},8,["modelValue","label","placeholder","readonly"])])):e.createCommentVNode("",!0),fe.value?(e.openBlock(),e.createElementBlock("div",Ge,[e.createVNode(l,{modelValue:t.fields.tls_verify_enabled,"onUpdate:modelValue":i[21]||(i[21]=r=>t.fields.tls_verify_enabled=r),"data-testid":"gateway-service-tls-verify-checkbox",description:e.unref(a)("gateway_services.form.fields.tls_verify_enabled.help"),label:e.unref(a)("gateway_services.form.fields.tls_verify_enabled.label"),"label-attributes":{tooltipAttributes:{maxWidth:"400"}}},{tooltip:e.withCtx(()=>[e.createVNode(e.unref(U),{keypath:"gateway_services.form.fields.tls_verify_enabled.tooltip",scope:"global"},{code1:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(a)("gateway_services.form.fields.tls_verify_enabled.code1")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),t.fields.tls_verify_enabled?(e.openBlock(),e.createElementBlock("div",Ke,[e.createVNode(h,{modelValue:t.fields.tls_verify_value,"onUpdate:modelValue":i[22]||(i[22]=r=>t.fields.tls_verify_value=r),"data-testid":"gateway-service-tls-verify-true-option",label:e.unref(a)("gateway_services.form.fields.tls_verify_option.true.label"),"selected-value":!0},null,8,["modelValue","label"])])):e.createCommentVNode("",!0),t.fields.tls_verify_enabled?(e.openBlock(),e.createElementBlock("div",Oe,[e.createVNode(h,{modelValue:t.fields.tls_verify_value,"onUpdate:modelValue":i[23]||(i[23]=r=>t.fields.tls_verify_value=r),"data-testid":"gateway-service-tls-verify-false-option",label:e.unref(a)("gateway_services.form.fields.tls_verify_option.false.label"),"selected-value":!1},null,8,["modelValue","label"])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])]),_:1},8,["modelValue","trigger-label"])]),_:1},8,["description","hide-info-header","title"])]),_:3},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly"])])}}}),[["__scopeId","data-v-35e0db56"]]),je={class:"kong-ui-gateway-service-entity-config-card"},He=e.defineComponent({__name:"GatewayServiceConfigCard",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&typeof n.workspace!="string"||!n.entityId)},configCardDoc:{type:String,default:"",required:!1},hideTitle:{type:Boolean,default:!1}},emits:["loading","fetch:error","fetch:success"],setup(n){const I=n,{i18n:{t:f},i18nT:c}=X.useI18n(),s=e.computed(()=>O.form[I.config.app].edit),{getPropValue:x}=p.useHelpers(),R=(a,C)=>x(a,C)===!0?f("gateway_services.form.fields.tls_verify_option.true.display"):f("gateway_services.form.fields.tls_verify_option.false.display"),U=e.ref({id:{},name:{tooltip:f("gateway_services.form.fields.name.tooltip")},enabled:{},updated_at:{},created_at:{},protocol:{section:p.ConfigurationSchemaSection.Basic,tooltip:f("gateway_services.form.fields.protocol.tooltip")},host:{section:p.ConfigurationSchemaSection.Basic,tooltip:f("gateway_services.form.fields.host.tooltip")},path:{section:p.ConfigurationSchemaSection.Basic,tooltip:f("gateway_services.form.fields.path.tooltip")},port:{section:p.ConfigurationSchemaSection.Basic,tooltip:f("gateway_services.form.fields.port.tooltip")},tags:{tooltip:f("gateway_services.form.fields.tags.tooltip")},retries:{order:1,tooltip:f("gateway_services.form.fields.retries.tooltip")},connect_timeout:{order:2,tooltip:f("gateway_services.form.fields.connect_timeout.tooltip")},write_timeout:{order:3,tooltip:f("gateway_services.form.fields.write_timeout.tooltip")},read_timeout:{order:4,tooltip:f("gateway_services.form.fields.read_timeout.tooltip")},client_certificate:{order:5,tooltip:f("gateway_services.form.fields.client_certificate.tooltip")},ca_certificates:{type:p.ConfigurationSchemaType.BadgeTag,label:f("gateway_services.form.fields.ca_certificates.label"),order:6},tls_verify:{label:f("gateway_services.form.fields.tls_verify_enabled.label")},tls_verify_depth:{hidden:!0}});return(a,C)=>(e.openBlock(),e.createElementBlock("div",je,[e.createVNode(e.unref(p.EntityBaseConfigCard),{config:n.config,"config-card-doc":n.configCardDoc,"config-schema":U.value,"entity-type":e.unref(p.SupportedEntityType).GatewayService,"fetch-url":s.value,"hide-title":n.hideTitle,"onFetch:error":C[0]||(C[0]=w=>a.$emit("fetch:error",w)),"onFetch:success":C[1]||(C[1]=w=>a.$emit("fetch:success",w)),onLoading:C[2]||(C[2]=w=>a.$emit("loading",w))},{"enabled-label-tooltip":e.withCtx(()=>[e.createVNode(e.unref(c),{keypath:"gateway_services.form.fields.enabled.tooltip",scope:"global"},{false:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.enabled.false")),1)]),true:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.enabled.true")),1)]),_:1})]),"ca_certificates-label-tooltip":e.withCtx(()=>[e.createVNode(e.unref(c),{keypath:"gateway_services.form.fields.ca_certificates.tooltip",scope:"global"},{code1:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.ca_certificates.code1")),1)]),code2:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.ca_certificates.code2")),1)]),_:1})]),"tls_verify-label-tooltip":e.withCtx(()=>[e.createVNode(e.unref(c),{keypath:"gateway_services.form.fields.tls_verify_enabled.tooltip",scope:"global"},{code1:e.withCtx(()=>[e.createElementVNode("code",null,e.toDisplayString(e.unref(f)("gateway_services.form.fields.tls_verify_enabled.code1")),1)]),_:1})]),tls_verify:e.withCtx(w=>[e.createTextVNode(e.toDisplayString(typeof e.unref(x)("rowValue",w)=="boolean"?R("rowValue",w):e.unref(f)("gateway_services.form.fields.tls_verify_option.unset.display")),1)]),client_certificate:e.withCtx(w=>[e.createTextVNode(e.toDisplayString(e.unref(x)("rowValue",w)?e.unref(x)("rowValue",w).id:"–"),1)]),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title"])]))}});k.GatewayServiceConfigCard=He,k.GatewayServiceForm=We,k.GatewayServiceList=Ee,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})});
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .config-card-fieldset[data-v-f7096c33]{border:solid 1px #e0e4ea;border-radius:4px;margin-bottom:8px;margin-top:4px}.config-card-fieldset-title[data-v-f7096c33]{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-c96811e5] .k-button.navigation-button{font-size:14px;font-weight:400}.config-card-details-row[data-v-761f7e64]{align-items:center;border-bottom:var(--3ccdd5d2);box-sizing:border-box;display:var(--4b1da305);padding:16px 16px 16px 0;width:100%}.config-card-details-row .config-card-details-label[data-v-761f7e64]{box-sizing:border-box;padding-right:16px;width:var(--cd20788a)}.config-card-details-row .config-card-details-label label[data-v-761f7e64]{color:#3a3f51;display:inline-flex;max-width:100%}.config-card-details-row .config-card-details-label label .label-content[data-v-761f7e64]{line-height:initial;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-card-details-row .config-card-details-label label .k-popover[data-v-761f7e64]{min-width:0}.config-card-details-row .config-card-details-value[data-v-761f7e64]{box-sizing:border-box;width:var(--cd1becd4)}.config-card-details-row .config-card-details-value .truncated[data-v-761f7e64]{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-761f7e64]{overflow-wrap:anywhere}.config-card-details-row .config-card-details-value .copy-uuid-array[data-v-761f7e64] .k-copy:not(:last-of-type){margin-bottom:8px}.config-card-details-row .config-card-details-value .method-badge-array[data-v-761f7e64]{display:flex;flex-wrap:wrap;row-gap:10px}.config-card-details-row .config-badge[data-v-761f7e64]{margin-right:4px}.config-card-details-row[data-v-761f7e64] .k-label{margin-bottom:0}.config-card-details-row[data-v-761f7e64] .k-label .kong-icon-infoFilled{display:flex}.config-card-details-row[data-v-761f7e64] .config-card-details-row{width:auto}.json-content.k-code-block{border-top-left-radius:0;border-top-right-radius:0}.json-endpoint{align-items:baseline;background-color:#000933;border-bottom:1px solid rgba(255,255,255,.2);border-top-left-radius:8px;border-top-right-radius:8px;display:flex;padding:8px 0 8px 12px}.json-endpoint .k-code-block{flex:auto;z-index:2}.json-endpoint .k-code-block .code-block-content{padding-bottom:0;padding-top:0}.json-endpoint .k-code-block .code-block-secondary-actions{margin-top:0!important}.json-endpoint code{direction:rtl;max-width:var(--54aebfa2);overflow:hidden!important;text-align:left;text-overflow:ellipsis;white-space:nowrap}.config-card-prop-section-title[data-v-d67757a9]{color:#000933;font-size:16px;font-weight:600;margin-bottom:16px;margin-top:48px}.kong-ui-entity-base-config-card .config-card-actions[data-v-be491a0e]{align-items:center;display:flex}.kong-ui-entity-base-config-card .config-card-actions .config-format-select-label[data-v-be491a0e]{margin-bottom:0;margin-right:8px}.kong-ui-entity-base-config-card .config-card-prop-section-title[data-v-be491a0e]{color:#000933;font-size:16px;font-weight:600;margin-bottom:16px;margin-top:48px}.kong-ui-entity-base-config-card[data-v-be491a0e] .config-card-details-row:last-of-type{border-bottom:none}.kong-ui-entity-base-config-card .book-icon[data-v-be491a0e]{margin-left:8px;padding:0}.kong-ui-entity-base-form[data-v-18af080f]{box-sizing:border-box;max-width:1536px;width:100%}.kong-ui-entity-base-form[data-v-18af080f] .k-slideout-title{color:#000933!important;font-size:24px!important;font-weight:700!important;line-height:32px!important;margin-bottom:16px!important}.kong-ui-entity-base-form[data-v-18af080f] .k-card.content-card{padding:0 16px!important}.kong-ui-entity-base-form[data-v-18af080f] .tab-item>div.tab-link.has-panels{color:#6c7489!important;font-size:14px!important;font-weight:700!important;line-height:24px!important}.kong-ui-entity-base-form[data-v-18af080f] .tab-item.active>div.tab-link.has-panels{color:#000933!important;font-weight:600!important}.form-actions[data-v-18af080f]{align-items:center;display:flex;justify-content:flex-end;margin-top:24px}.form-actions[data-v-18af080f] .k-button:last-of-type,.form-actions[data-v-18af080f] .k-button:nth-last-of-type(2){margin-left:16px}.content-wrapper[data-v-b252463e] .k-tooltip{word-break:break-all}.kong-ui-entity-base-table .toolbar-container[data-v-d58db70c]{align-items:center;display:flex;width:100%}.kong-ui-entity-base-table .toolbar-button-container[data-v-d58db70c]{margin-left:auto}.kong-ui-entity-base-table .hidden[data-v-d58db70c]{display:none}.kong-ui-entity-base-table[data-v-d58db70c] .empty-state-icon-gateway{background-color:#ecfcff;border-radius:4px;padding:8px}.kong-ui-entity-base-table :deep(.k-table){table-layout:fixed}.kong-ui-entity-delete-modal .message[data-v-4361d622],.kong-ui-entity-delete-modal .description[data-v-4361d622]{line-height:24px;margin:0}.kong-ui-entity-delete-modal .message strong[data-v-4361d622]{font-weight:600}.kong-ui-entity-delete-modal .description[data-v-4361d622]{margin-top:32px}.kong-ui-entity-delete-error[data-v-4361d622]{margin-bottom:16px}.kong-ui-entity-filter-input[data-v-10fa27a5]{width:100%}.kong-ui-entity-filter-clear[data-v-10fa27a5]{cursor:pointer}.kong-ui-entity-filter[data-v-10fa27a5]{display:flex;position:relative}.kong-ui-entity-filter[data-v-10fa27a5] .menu-content{flex-direction:column}.kong-ui-entity-filter[data-v-10fa27a5] .k-menu-item-divider hr{margin:12px 0}.kong-ui-entity-filter-backdrop[data-v-10fa27a5]{bottom:0;left:0;position:fixed;right:0;top:0;z-index:1050}.kong-ui-entity-filter-menu[data-v-10fa27a5]{background-color:#fff;border:1px solid #afb7c5;border-radius:4px;box-shadow:0 4px 20px #e0e4ea;left:0;margin-top:16px;padding:8px 0 12px;position:absolute;top:100%;width:300px;z-index:1060}.kong-ui-entity-filter-menu-item[data-v-10fa27a5]{border-bottom:1px solid #e0e4ea;color:#6c7489;font-size:12px;font-weight:400;line-height:16px;list-style:none;margin:0 20px;padding:16px 0;position:relative;white-space:nowrap}.menu-item-title[data-v-10fa27a5]{align-items:center;cursor:pointer;display:flex;line-height:24px}.menu-item-title.expanded[data-v-10fa27a5]{color:#232633}.menu-item-expand-icon[data-v-10fa27a5]{margin-left:auto}.menu-item-expand-icon.expanded[data-v-10fa27a5]{transform:rotate(180deg)}.menu-item-indicator[data-v-10fa27a5]{background-color:#0044f4;border-radius:50%;height:4px;margin-left:4px;width:4px}.menu-item-body[data-v-10fa27a5]{align-items:center;display:flex;justify-content:space-between;margin-top:16px}.menu-item-body[data-v-10fa27a5] .input{padding-bottom:4px!important;padding-top:4px!important}.menu-item-body[data-v-10fa27a5] .k-input{width:100%}.menu-item-body[data-v-10fa27a5] .k-select-input .input{font-size:12px}.menu-item-body[data-v-10fa27a5] .k-select-input .input::placeholder{color:#00000073!important;font-size:12px}.menu-item-label[data-v-10fa27a5]{margin-bottom:0;margin-right:12px}.menu-item-buttons[data-v-10fa27a5]{display:flex;justify-content:space-between;margin:10px 0 6px}.filter-clear-button-container[data-v-10fa27a5]{padding:12px 20px 0}fieldset[data-v-b1f74200]{margin:0;min-width:0;padding:0}.kong-ui-entity-form-section[data-v-b1f74200]{border:0}.kong-ui-entity-form-section .form-section-wrapper[data-v-b1f74200]{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-b1f74200]{flex-direction:row}}.kong-ui-entity-form-section .form-section-wrapper .form-section-info[data-v-b1f74200]{flex:1}@media (min-width: 1024px){.kong-ui-entity-form-section .form-section-wrapper .form-section-info[data-v-b1f74200]{max-width:350px}.kong-ui-entity-form-section .form-section-wrapper .form-section-info.sticky[data-v-b1f74200]{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-b1f74200]{color:#000933;font-size:16px;font-weight:700;line-height:20px;margin-bottom:8px;margin-top:0}.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description[data-v-b1f74200],.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description p[data-v-b1f74200],.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description[data-v-b1f74200] 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-b1f74200]{margin-top:32px}.kong-ui-entity-form-section .form-section-wrapper .form-section-content[data-v-b1f74200]{flex:1}.kong-ui-entity-form-section .form-section-wrapper .form-section-content[data-v-b1f74200]>*:not(:first-child){margin-top:24px}.kong-ui-entity-form-section.has-divider .form-section-wrapper[data-v-b1f74200]{border-bottom:1px solid #e0e4ea}.kong-ui-public-entity-link[data-v-2e2c07e5]{align-items:center;display:flex}.kong-ui-public-entity-link .deleted-entity[data-v-2e2c07e5]{font-style:italic}.kong-ui-public-entity-link .entity-link[data-v-2e2c07e5]{display:flex}.kong-ui-public-entity-link .entity-link[data-v-2e2c07e5] .external-link-icon{color:#0044f4;margin-left:4px;padding:2px}.kong-ui-public-entity-link .entity-link-label[data-v-2e2c07e5]{display:inline-block;font-weight:400;max-width:20ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kong-ui-public-entity-link .copy-uuid-tooltip[data-v-2e2c07e5]{align-items:center;cursor:pointer;display:flex}.kong-ui-public-entity-link .copy-uuid-tooltip .entity-link-copy-id[data-v-2e2c07e5]{margin-left:2px}.kong-ui-public-entity-empty-state[data-v-775534d4]{align-items:center;background-color:#fff;box-sizing:border-box;display:flex;flex-direction:column;font-family:Inter,Roboto,Helvetica,sans-serif;gap:24px;padding:64px 0;width:100%}@media (min-width: 640px){.kong-ui-public-entity-empty-state[data-v-775534d4]{padding:64px 96px}}.kong-ui-public-entity-empty-state .empty-state-image[data-v-775534d4]{margin-bottom:8px}.kong-ui-public-entity-empty-state .entity-empty-state-content[data-v-775534d4]{align-items:center;display:flex;flex-direction:column;gap:8px;text-align:center;width:100%}.kong-ui-public-entity-empty-state .entity-empty-state-content .entity-empty-state-title h1[data-v-775534d4]{align-items:center;color:#000933;display:flex;font-size:24px;font-weight:700;gap:8px;line-height:32px;margin:0}.kong-ui-public-entity-empty-state .entity-empty-state-content .entity-empty-state-title h1.secondary[data-v-775534d4]{font-size:18px}.kong-ui-public-entity-empty-state .entity-empty-state-description[data-v-775534d4],.kong-ui-public-entity-empty-state .entity-empty-state-pricing[data-v-775534d4]{color:#52596e;font-size:14px;font-weight:400;line-height:20px;max-width:640px}.kong-ui-public-entity-empty-state .entity-empty-state-description p[data-v-775534d4],.kong-ui-public-entity-empty-state .entity-empty-state-pricing p[data-v-775534d4]{margin:0}.kong-ui-public-entity-empty-state .entity-empty-state-pricing[data-v-775534d4]{margin-top:16px}.kong-ui-public-entity-empty-state .entity-empty-state-action[data-v-775534d4]{align-items:center;display:flex;gap:12px}.kong-ui-public-entity-empty-state .entity-empty-state-card-container[data-v-775534d4]{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-around;margin-top:8px;width:312px}@media (min-width: 640px){.kong-ui-public-entity-empty-state .entity-empty-state-card-container[data-v-775534d4]{width:640px}}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card[data-v-775534d4]{background-color:#f9fafb;border:1px solid #e0e4ea;border-radius:6px;color:#afb7c5;gap:8px;height:160px;padding:20px;width:312px}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card .feature-icon[data-v-775534d4]{color:#3a3f51;display:flex;margin-bottom:12px}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card .feature-icon[data-v-775534d4] .kui-icon{height:20px!important;width:20px!important}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card[data-v-775534d4] .card-title{font-size:14px;font-weight:600}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card[data-v-775534d4] .card-content{-webkit-box-orient:vertical;color:#6c7489;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}.kong-ui-public-entity-empty-state .entity-empty-state-bottom-container[data-v-775534d4]{border-top:1px solid #e0e4ea;display:flex;flex-direction:column;gap:16px;padding-top:48px;width:100%}@media (min-width: 640px){.kong-ui-public-entity-empty-state .entity-empty-state-bottom-container[data-v-775534d4]{width:640px}}.button-row[data-v-fa0c855e]{align-items:center;display:flex;gap:12px}.kong-ui-entities-gateway-services-list[data-v-fa0c855e]{width:100%}.kong-ui-entities-gateway-services-list .kong-ui-entity-filter-input[data-v-fa0c855e]{margin-right:12px}.kong-ui-entities-gateway-service-form[data-v-04ecb6bd]{width:100%}.kong-ui-entities-gateway-service-form[data-v-04ecb6bd] .k-tooltip{max-width:300px}.kong-ui-entities-gateway-service-form[data-v-04ecb6bd] .form-section-wrapper{padding-bottom:48px}.kong-ui-entities-gateway-service-form .form-error-list[data-v-04ecb6bd]{margin:0;padding-left:16px}.kong-ui-entities-gateway-service-form .gateway-service-form-margin-top[data-v-04ecb6bd]{margin-top:16px}.kong-ui-entities-gateway-service-form .gateway-service-form-advanced-fields[data-v-04ecb6bd]{display:flex;flex-direction:column;gap:16px;margin-left:12px}.kong-ui-entities-gateway-service-form .gateway-service-form-tags[data-v-04ecb6bd]{margin-left:12px}.kong-ui-entities-gateway-service-form .gateway-service-form-traffic-label[data-v-04ecb6bd]{margin-bottom:16px}.kong-ui-entities-gateway-service-form .gateway-service-url-input[data-v-04ecb6bd],.kong-ui-entities-gateway-service-form .gateway-service-url-input[data-v-04ecb6bd] .input-element-wrapper{display:flex}.kong-ui-entities-gateway-service-form .gateway-service-form-general-info[data-v-04ecb6bd]{display:flex;flex-direction:column;gap:24px}.kong-ui-entities-gateway-service-form .gateway-service-form-group-selection-wrapper[data-v-04ecb6bd]{display:flex;flex-direction:row;gap:16px}.kong-ui-entities-gateway-service-form .gateway-service-form-group-selection-wrapper[data-v-04ecb6bd] .radio-label-wrapper{height:auto}.kong-ui-entities-gateway-service-form .checkbox-aligned-radio[data-v-04ecb6bd]{margin:4px;padding-left:24px}.slide-fade-enter-active[data-v-04ecb6bd]{transition:all .5s ease}.slide-fade-enter-from[data-v-04ecb6bd]{opacity:0;transform:translateY(-5px)}.slide-fade-leave-to[data-v-04ecb6bd]{opacity:0;transform:translateY(5px)}
1
+ .config-card-fieldset[data-v-f7096c33]{border:solid 1px #e0e4ea;border-radius:4px;margin-bottom:8px;margin-top:4px}.config-card-fieldset-title[data-v-f7096c33]{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-c96811e5] .k-button.navigation-button{font-size:14px;font-weight:400}.config-card-details-row[data-v-761f7e64]{align-items:center;border-bottom:var(--3ccdd5d2);box-sizing:border-box;display:var(--4b1da305);padding:16px 16px 16px 0;width:100%}.config-card-details-row .config-card-details-label[data-v-761f7e64]{box-sizing:border-box;padding-right:16px;width:var(--cd20788a)}.config-card-details-row .config-card-details-label label[data-v-761f7e64]{color:#3a3f51;display:inline-flex;max-width:100%}.config-card-details-row .config-card-details-label label .label-content[data-v-761f7e64]{line-height:initial;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-card-details-row .config-card-details-label label .k-popover[data-v-761f7e64]{min-width:0}.config-card-details-row .config-card-details-value[data-v-761f7e64]{box-sizing:border-box;width:var(--cd1becd4)}.config-card-details-row .config-card-details-value .truncated[data-v-761f7e64]{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-761f7e64]{overflow-wrap:anywhere}.config-card-details-row .config-card-details-value .copy-uuid-array[data-v-761f7e64] .k-copy:not(:last-of-type){margin-bottom:8px}.config-card-details-row .config-card-details-value .method-badge-array[data-v-761f7e64]{display:flex;flex-wrap:wrap;row-gap:10px}.config-card-details-row .config-badge[data-v-761f7e64]{margin-right:4px}.config-card-details-row[data-v-761f7e64] .k-label{margin-bottom:0}.config-card-details-row[data-v-761f7e64] .k-label .kong-icon-infoFilled{display:flex}.config-card-details-row[data-v-761f7e64] .config-card-details-row{width:auto}.json-content.k-code-block{border-top-left-radius:0;border-top-right-radius:0}.json-endpoint{align-items:baseline;background-color:#000933;border-bottom:1px solid rgba(255,255,255,.2);border-top-left-radius:8px;border-top-right-radius:8px;display:flex;padding:8px 0 8px 12px}.json-endpoint .k-code-block{flex:auto;z-index:2}.json-endpoint .k-code-block .code-block-content{padding-bottom:0;padding-top:0}.json-endpoint .k-code-block .code-block-secondary-actions{margin-top:0!important}.json-endpoint code{direction:rtl;max-width:var(--54aebfa2);overflow:hidden!important;text-align:left;text-overflow:ellipsis;white-space:nowrap}.config-card-prop-section-title[data-v-d67757a9]{color:#000933;font-size:16px;font-weight:600;margin-bottom:16px;margin-top:48px}.kong-ui-entity-base-config-card .config-card-actions[data-v-be491a0e]{align-items:center;display:flex}.kong-ui-entity-base-config-card .config-card-actions .config-format-select-label[data-v-be491a0e]{margin-bottom:0;margin-right:8px}.kong-ui-entity-base-config-card .config-card-prop-section-title[data-v-be491a0e]{color:#000933;font-size:16px;font-weight:600;margin-bottom:16px;margin-top:48px}.kong-ui-entity-base-config-card[data-v-be491a0e] .config-card-details-row:last-of-type{border-bottom:none}.kong-ui-entity-base-config-card .book-icon[data-v-be491a0e]{margin-left:8px;padding:0}.kong-ui-entity-base-form[data-v-18af080f]{box-sizing:border-box;max-width:1536px;width:100%}.kong-ui-entity-base-form[data-v-18af080f] .k-slideout-title{color:#000933!important;font-size:24px!important;font-weight:700!important;line-height:32px!important;margin-bottom:16px!important}.kong-ui-entity-base-form[data-v-18af080f] .k-card.content-card{padding:0 16px!important}.kong-ui-entity-base-form[data-v-18af080f] .tab-item>div.tab-link.has-panels{color:#6c7489!important;font-size:14px!important;font-weight:700!important;line-height:24px!important}.kong-ui-entity-base-form[data-v-18af080f] .tab-item.active>div.tab-link.has-panels{color:#000933!important;font-weight:600!important}.form-actions[data-v-18af080f]{align-items:center;display:flex;justify-content:flex-end;margin-top:24px}.form-actions[data-v-18af080f] .k-button:last-of-type,.form-actions[data-v-18af080f] .k-button:nth-last-of-type(2){margin-left:16px}.content-wrapper[data-v-b252463e] .k-tooltip{word-break:break-all}.kong-ui-entity-base-table .toolbar-container[data-v-d58db70c]{align-items:center;display:flex;width:100%}.kong-ui-entity-base-table .toolbar-button-container[data-v-d58db70c]{margin-left:auto}.kong-ui-entity-base-table .hidden[data-v-d58db70c]{display:none}.kong-ui-entity-base-table[data-v-d58db70c] .empty-state-icon-gateway{background-color:#ecfcff;border-radius:4px;padding:8px}.kong-ui-entity-base-table :deep(.k-table){table-layout:fixed}.kong-ui-entity-delete-modal .message[data-v-4361d622],.kong-ui-entity-delete-modal .description[data-v-4361d622]{line-height:24px;margin:0}.kong-ui-entity-delete-modal .message strong[data-v-4361d622]{font-weight:600}.kong-ui-entity-delete-modal .description[data-v-4361d622]{margin-top:32px}.kong-ui-entity-delete-error[data-v-4361d622]{margin-bottom:16px}.kong-ui-entity-filter-input[data-v-10fa27a5]{width:100%}.kong-ui-entity-filter-clear[data-v-10fa27a5]{cursor:pointer}.kong-ui-entity-filter[data-v-10fa27a5]{display:flex;position:relative}.kong-ui-entity-filter[data-v-10fa27a5] .menu-content{flex-direction:column}.kong-ui-entity-filter[data-v-10fa27a5] .k-menu-item-divider hr{margin:12px 0}.kong-ui-entity-filter-backdrop[data-v-10fa27a5]{bottom:0;left:0;position:fixed;right:0;top:0;z-index:1050}.kong-ui-entity-filter-menu[data-v-10fa27a5]{background-color:#fff;border:1px solid #afb7c5;border-radius:4px;box-shadow:0 4px 20px #e0e4ea;left:0;margin-top:16px;padding:8px 0 12px;position:absolute;top:100%;width:300px;z-index:1060}.kong-ui-entity-filter-menu-item[data-v-10fa27a5]{border-bottom:1px solid #e0e4ea;color:#6c7489;font-size:12px;font-weight:400;line-height:16px;list-style:none;margin:0 20px;padding:16px 0;position:relative;white-space:nowrap}.menu-item-title[data-v-10fa27a5]{align-items:center;cursor:pointer;display:flex;line-height:24px}.menu-item-title.expanded[data-v-10fa27a5]{color:#232633}.menu-item-expand-icon[data-v-10fa27a5]{margin-left:auto}.menu-item-expand-icon.expanded[data-v-10fa27a5]{transform:rotate(180deg)}.menu-item-indicator[data-v-10fa27a5]{background-color:#0044f4;border-radius:50%;height:4px;margin-left:4px;width:4px}.menu-item-body[data-v-10fa27a5]{align-items:center;display:flex;justify-content:space-between;margin-top:16px}.menu-item-body[data-v-10fa27a5] .input{padding-bottom:4px!important;padding-top:4px!important}.menu-item-body[data-v-10fa27a5] .k-input{width:100%}.menu-item-body[data-v-10fa27a5] .k-select-input .input{font-size:12px}.menu-item-body[data-v-10fa27a5] .k-select-input .input::placeholder{color:#00000073!important;font-size:12px}.menu-item-label[data-v-10fa27a5]{margin-bottom:0;margin-right:12px}.menu-item-buttons[data-v-10fa27a5]{display:flex;justify-content:space-between;margin:10px 0 6px}.filter-clear-button-container[data-v-10fa27a5]{padding:12px 20px 0}fieldset[data-v-b1f74200]{margin:0;min-width:0;padding:0}.kong-ui-entity-form-section[data-v-b1f74200]{border:0}.kong-ui-entity-form-section .form-section-wrapper[data-v-b1f74200]{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-b1f74200]{flex-direction:row}}.kong-ui-entity-form-section .form-section-wrapper .form-section-info[data-v-b1f74200]{flex:1}@media (min-width: 1024px){.kong-ui-entity-form-section .form-section-wrapper .form-section-info[data-v-b1f74200]{max-width:350px}.kong-ui-entity-form-section .form-section-wrapper .form-section-info.sticky[data-v-b1f74200]{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-b1f74200]{color:#000933;font-size:16px;font-weight:700;line-height:20px;margin-bottom:8px;margin-top:0}.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description[data-v-b1f74200],.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description p[data-v-b1f74200],.kong-ui-entity-form-section .form-section-wrapper .form-section-info .form-section-description[data-v-b1f74200] 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-b1f74200]{margin-top:32px}.kong-ui-entity-form-section .form-section-wrapper .form-section-content[data-v-b1f74200]{flex:1}.kong-ui-entity-form-section .form-section-wrapper .form-section-content[data-v-b1f74200]>*:not(:first-child){margin-top:24px}.kong-ui-entity-form-section.has-divider .form-section-wrapper[data-v-b1f74200]{border-bottom:1px solid #e0e4ea}.kong-ui-public-entity-link[data-v-6f25ab21]{align-items:center;display:flex}.kong-ui-public-entity-link .deleted-entity[data-v-6f25ab21]{font-style:italic}.kong-ui-public-entity-link .entity-link[data-v-6f25ab21]{display:flex;flex:1}.kong-ui-public-entity-link .entity-link[data-v-6f25ab21] .external-link-icon{color:#0044f4;margin-left:4px;padding:2px}.kong-ui-public-entity-link .entity-link-label[data-v-6f25ab21]{display:inline-block;font-weight:400;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kong-ui-public-entity-link .copy-uuid-tooltip[data-v-6f25ab21]{align-items:center;cursor:pointer;display:flex}.kong-ui-public-entity-link .copy-uuid-tooltip .entity-link-copy-id[data-v-6f25ab21]{margin-left:2px}.kong-ui-public-entity-empty-state[data-v-775534d4]{align-items:center;background-color:#fff;box-sizing:border-box;display:flex;flex-direction:column;font-family:Inter,Roboto,Helvetica,sans-serif;gap:24px;padding:64px 0;width:100%}@media (min-width: 640px){.kong-ui-public-entity-empty-state[data-v-775534d4]{padding:64px 96px}}.kong-ui-public-entity-empty-state .empty-state-image[data-v-775534d4]{margin-bottom:8px}.kong-ui-public-entity-empty-state .entity-empty-state-content[data-v-775534d4]{align-items:center;display:flex;flex-direction:column;gap:8px;text-align:center;width:100%}.kong-ui-public-entity-empty-state .entity-empty-state-content .entity-empty-state-title h1[data-v-775534d4]{align-items:center;color:#000933;display:flex;font-size:24px;font-weight:700;gap:8px;line-height:32px;margin:0}.kong-ui-public-entity-empty-state .entity-empty-state-content .entity-empty-state-title h1.secondary[data-v-775534d4]{font-size:18px}.kong-ui-public-entity-empty-state .entity-empty-state-description[data-v-775534d4],.kong-ui-public-entity-empty-state .entity-empty-state-pricing[data-v-775534d4]{color:#52596e;font-size:14px;font-weight:400;line-height:20px;max-width:640px}.kong-ui-public-entity-empty-state .entity-empty-state-description p[data-v-775534d4],.kong-ui-public-entity-empty-state .entity-empty-state-pricing p[data-v-775534d4]{margin:0}.kong-ui-public-entity-empty-state .entity-empty-state-pricing[data-v-775534d4]{margin-top:16px}.kong-ui-public-entity-empty-state .entity-empty-state-action[data-v-775534d4]{align-items:center;display:flex;gap:12px}.kong-ui-public-entity-empty-state .entity-empty-state-card-container[data-v-775534d4]{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-around;margin-top:8px;width:312px}@media (min-width: 640px){.kong-ui-public-entity-empty-state .entity-empty-state-card-container[data-v-775534d4]{width:640px}}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card[data-v-775534d4]{background-color:#f9fafb;border:1px solid #e0e4ea;border-radius:6px;color:#afb7c5;gap:8px;height:160px;padding:20px;width:312px}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card .feature-icon[data-v-775534d4]{color:#3a3f51;display:flex;margin-bottom:12px}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card .feature-icon[data-v-775534d4] .kui-icon{height:20px!important;width:20px!important}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card[data-v-775534d4] .card-title{font-size:14px;font-weight:600}.kong-ui-public-entity-empty-state .entity-empty-state-card-container .entity-empty-state-card[data-v-775534d4] .card-content{-webkit-box-orient:vertical;color:#6c7489;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}.kong-ui-public-entity-empty-state .entity-empty-state-bottom-container[data-v-775534d4]{border-top:1px solid #e0e4ea;display:flex;flex-direction:column;gap:16px;padding-top:48px;width:100%}@media (min-width: 640px){.kong-ui-public-entity-empty-state .entity-empty-state-bottom-container[data-v-775534d4]{width:640px}}.button-row[data-v-fa0c855e]{align-items:center;display:flex;gap:12px}.kong-ui-entities-gateway-services-list[data-v-fa0c855e]{width:100%}.kong-ui-entities-gateway-services-list .kong-ui-entity-filter-input[data-v-fa0c855e]{margin-right:12px}.kong-ui-entities-gateway-service-form[data-v-35e0db56]{width:100%}.kong-ui-entities-gateway-service-form[data-v-35e0db56] .k-tooltip{max-width:300px}.kong-ui-entities-gateway-service-form .gateway-service-form-margin-top[data-v-35e0db56]{margin-top:16px}.kong-ui-entities-gateway-service-form .gateway-service-form-traffic-label[data-v-35e0db56]{margin-bottom:16px}.kong-ui-entities-gateway-service-form .gateway-service-url-input[data-v-35e0db56],.kong-ui-entities-gateway-service-form .gateway-service-url-input[data-v-35e0db56] .input-element-wrapper{display:flex}.kong-ui-entities-gateway-service-form .gateway-service-form-group-fields[data-v-35e0db56]{margin-left:24px}.kong-ui-entities-gateway-service-form .gateway-service-form-margin-bottom[data-v-35e0db56]{margin-bottom:16px}.kong-ui-entities-gateway-service-form .checkbox-aligned-radio[data-v-35e0db56]{margin:4px;padding-left:24px}
@@ -33,17 +33,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
33
33
  required: false;
34
34
  default: boolean;
35
35
  };
36
- /** Whether show or hide Try sample API button */
37
- hideTrySampleAPIButton: {
38
- type: BooleanConstructor;
39
- required: false;
40
- default: boolean;
41
- };
42
- sampleApiList: {
43
- type: ArrayConstructor;
44
- required: false;
45
- default: () => never[];
46
- };
47
36
  }>, {
48
37
  validateUrl: () => void;
49
38
  getPayload: import("vue").ComputedRef<Record<string, any>>;
@@ -57,7 +46,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
57
46
  "url-valid:error": (error: string) => any;
58
47
  loading: (isLoading: boolean) => any;
59
48
  "model-updated": (val: Record<string, any>) => any;
60
- "try-sample-api": (val: Record<string, any>) => any;
61
49
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
62
50
  /** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
63
51
  config: {
@@ -77,17 +65,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
77
65
  required: false;
78
66
  default: boolean;
79
67
  };
80
- /** Whether show or hide Try sample API button */
81
- hideTrySampleAPIButton: {
82
- type: BooleanConstructor;
83
- required: false;
84
- default: boolean;
85
- };
86
- sampleApiList: {
87
- type: ArrayConstructor;
88
- required: false;
89
- default: () => never[];
90
- };
91
68
  }>> & Readonly<{
92
69
  onError?: ((error: any) => any) | undefined;
93
70
  onUpdate?: ((data: Record<string, any>) => any) | undefined;
@@ -95,12 +72,9 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
95
72
  "onUrl-valid:error"?: ((error: string) => any) | undefined;
96
73
  onLoading?: ((isLoading: boolean) => any) | undefined;
97
74
  "onModel-updated"?: ((val: Record<string, any>) => any) | undefined;
98
- "onTry-sample-api"?: ((val: Record<string, any>) => any) | undefined;
99
75
  }>, {
100
76
  gatewayServiceId: string;
101
77
  hideSectionsInfo: boolean;
102
- hideTrySampleAPIButton: boolean;
103
- sampleApiList: unknown[];
104
78
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
105
79
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
106
80
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"GatewayServiceForm.vue.d.ts","sourceRoot":"","sources":["../../../src/components/GatewayServiceForm.vue"],"names":[],"mappings":"AAosCA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAGnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EACV,+BAA+B,EAC/B,mCAAmC,EAIpC,MAAM,UAAU,CAAA;AAajB,OAAO,gDAAgD,CAAA;AA4uBvD,iBAAS,cAAc;;;;0BAlQO,IAAI;0BAmGH,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;YA40B3B,GAAG;;;WAS3B,OAAO,IAA6B;EAEjD;AAmFD,KAAK,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAC9D,QAAA,MAAM,eAAe;IAgBnB,oHAAoH;;cAElG,QAAQ,CAAC,+BAA+B,GAAG,mCAAmC,CAAC;;4BAE3E,+BAA+B,GAAG,mCAAmC,KAAG,OAAO;;IAQrG,qGAAqG;;;;;;IAMrG,yDAAyD;;;;;;IAMzD,iDAAiD;;;;;;;;;;;;uBA3pC3B,IAAI;;wBAwMG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;;qBAtHzC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,IAAI;;;;;;;;;;IAijChD,oHAAoH;;cAElG,QAAQ,CAAC,+BAA+B,GAAG,mCAAmC,CAAC;;4BAE3E,+BAA+B,GAAG,mCAAmC,KAAG,OAAO;;IAQrG,qGAAqG;;;;;;IAMrG,yDAAyD;;;;;;IAMzD,iDAAiD;;;;;;;;;;;;;;;;;;;;;;;;4EAYjD,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAAnG,wBAAoG;AAKpG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IACxC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"GatewayServiceForm.vue.d.ts","sourceRoot":"","sources":["../../../src/components/GatewayServiceForm.vue"],"names":[],"mappings":"AAu4BA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAGnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EACV,+BAA+B,EAC/B,mCAAmC,EAGpC,MAAM,UAAU,CAAA;AAajB,OAAO,gDAAgD,CAAA;AAkgBvD,iBAAS,cAAc;;;;0BA/NO,IAAI;0BAmGH,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;YA2rB3B,GAAG;;;WAS3B,OAAO,IAA6B;EAEjD;AAoED,KAAK,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAC9D,QAAA,MAAM,eAAe;IAenB,oHAAoH;;cAElG,QAAQ,CAAC,+BAA+B,GAAG,mCAAmC,CAAC;;4BAE3E,+BAA+B,GAAG,mCAAmC,KAAG,OAAO;;IAQrG,qGAAqG;;;;;;IAMrG,yDAAyD;;;;;;;uBA9+BnC,IAAI;;wBAkMG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;;qBAtHzC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,IAAI;;;;;;;;;IAg5BhD,oHAAoH;;cAElG,QAAQ,CAAC,+BAA+B,GAAG,mCAAmC,CAAC;;4BAE3E,+BAA+B,GAAG,mCAAmC,KAAG,OAAO;;IAQrG,qGAAqG;;;;;;IAMrG,yDAAyD;;;;;;;;;;;;;;;;4EAOzD,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAAnG,wBAAoG;AAKpG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IACxC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -27,30 +27,13 @@ export interface GatewayServiceFormFields {
27
27
  tls_verify_value: boolean;
28
28
  tags: string;
29
29
  }
30
- export interface FormFieldErrors {
31
- host: string;
32
- port: string;
33
- path: string;
34
- url: string;
35
- tags: string;
36
- retries: string;
37
- connect_timeout: string;
38
- write_timeout: string;
39
- read_timeout: string;
40
- client_certificate: string;
41
- ca_certificates: string;
42
- tls_verify_enabled: string;
43
- tls_verify_value: string;
44
- }
45
30
  export interface GatewayServiceFormState {
46
31
  /** Form fields */
47
32
  fields: GatewayServiceFormFields;
48
33
  /** Form readonly state (only used when saving entity details) */
49
34
  isReadonly: boolean;
50
- /** The Array of error messages to show */
51
- errorMessages: string[];
52
- /** The error Object is to show error on each form field */
53
- formFieldErrors: FormFieldErrors;
35
+ /** The error message to show on the form */
36
+ errorMessage: string;
54
37
  }
55
38
  export interface SelectItem {
56
39
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-service-form.d.ts","sourceRoot":"","sources":["../../../src/types/gateway-service-form.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAA;AAEvG,yCAAyC;AACzC,MAAM,WAAW,+BAAgC,SAAQ,qBAAqB;IAC5E,mEAAmE;IACnE,WAAW,EAAE,gBAAgB,CAAA;CAC9B;AAED,8CAA8C;AAC9C,MAAM,WAAW,mCAAoC,SAAQ,yBAAyB;IACpF,mEAAmE;IACnE,WAAW,EAAE,gBAAgB,CAAA;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,gBAAgB,EAAE,OAAO,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;CACb;AACD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,kBAAkB;IAClB,MAAM,EAAE,wBAAwB,CAAA;IAChC,iEAAiE;IACjE,UAAU,EAAE,OAAO,CAAA;IACnB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,2DAA2D;IAC3D,eAAe,EAAE,eAAe,CAAA;CACjC;AAGD,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB"}
1
+ {"version":3,"file":"gateway-service-form.d.ts","sourceRoot":"","sources":["../../../src/types/gateway-service-form.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAA;AAEvG,yCAAyC;AACzC,MAAM,WAAW,+BAAgC,SAAQ,qBAAqB;IAC5E,mEAAmE;IACnE,WAAW,EAAE,gBAAgB,CAAA;CAC9B;AAED,8CAA8C;AAC9C,MAAM,WAAW,mCAAoC,SAAQ,yBAAyB;IACpF,mEAAmE;IACnE,WAAW,EAAE,gBAAgB,CAAA;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,gBAAgB,EAAE,OAAO,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,uBAAuB;IACtC,kBAAkB;IAClB,MAAM,EAAE,wBAAwB,CAAA;IAChC,iEAAiE;IACjE,UAAU,EAAE,OAAO,CAAA;IACnB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAA;CACrB;AAGD,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kong-ui-public/entities-gateway-services",
3
- "version": "3.10.4-pr.2001.6ea4ed63c.0",
3
+ "version": "3.10.4",
4
4
  "type": "module",
5
5
  "main": "./dist/entities-gateway-services.umd.js",
6
6
  "module": "./dist/entities-gateway-services.es.js",
@@ -26,7 +26,7 @@
26
26
  "axios": "^1.7.7",
27
27
  "vue": ">= 3.3.13 < 4",
28
28
  "vue-router": "^4.4.5",
29
- "@kong-ui-public/entities-shared": "^3.19.1-pr.2001.6ea4ed63c.0",
29
+ "@kong-ui-public/entities-shared": "^3.19.1",
30
30
  "@kong-ui-public/i18n": "^2.2.10"
31
31
  },
32
32
  "devDependencies": {
@@ -36,8 +36,8 @@
36
36
  "axios": "^1.7.7",
37
37
  "vue": "^3.5.13",
38
38
  "vue-router": "^4.4.5",
39
- "@kong-ui-public/entities-shared": "^3.19.1-pr.2001.6ea4ed63c.0",
40
- "@kong-ui-public/i18n": "^2.2.10"
39
+ "@kong-ui-public/i18n": "^2.2.10",
40
+ "@kong-ui-public/entities-shared": "^3.19.1"
41
41
  },
42
42
  "repository": {
43
43
  "type": "git",
@@ -1,69 +0,0 @@
1
- export declare const demoWeatherService: {
2
- name: string;
3
- tags: string[];
4
- protocol: string;
5
- path: string;
6
- read_timeout: number;
7
- retries: number;
8
- host: string;
9
- connect_timeout: number;
10
- ca_certificates: null;
11
- client_certificate: null;
12
- write_timeout: number;
13
- port: number;
14
- };
15
- export declare const WEATHER_ROUTE_PATH = "/examples/weather/utopia";
16
- export declare const demoWeatherRoute: {
17
- name: string;
18
- paths: string[];
19
- snis: null;
20
- hosts: null;
21
- methods: string[];
22
- headers: null;
23
- sources: null;
24
- destinations: null;
25
- tags: string[];
26
- regex_priority: number;
27
- path_handling: string;
28
- strip_path: boolean;
29
- preserve_host: boolean;
30
- https_redirect_status_code: number;
31
- protocols: string[];
32
- request_buffering: boolean;
33
- response_buffering: boolean;
34
- };
35
- export declare const demoStockService: {
36
- name: string;
37
- tags: string[];
38
- protocol: string;
39
- path: string;
40
- read_timeout: number;
41
- retries: number;
42
- host: string;
43
- connect_timeout: number;
44
- ca_certificates: null;
45
- client_certificate: null;
46
- write_timeout: number;
47
- port: number;
48
- };
49
- export declare const STOCK_ROUTE_PATH = "/examples/stock/piper";
50
- export declare const demoStockRoute: {
51
- name: string;
52
- paths: string[];
53
- snis: null;
54
- hosts: null;
55
- methods: string[];
56
- headers: null;
57
- sources: null;
58
- destinations: null;
59
- tags: string[];
60
- regex_priority: number;
61
- path_handling: string;
62
- strip_path: boolean;
63
- preserve_host: boolean;
64
- https_redirect_status_code: number;
65
- protocols: string[];
66
- request_buffering: boolean;
67
- response_buffering: boolean;
68
- };
69
- //# sourceMappingURL=contants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"contants.d.ts","sourceRoot":"","sources":["../../src/contants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;CAgB9B,CAAA;AAGD,eAAO,MAAM,kBAAkB,6BAA6B,CAAA;AAC5D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;CAgC5B,CAAA;AAGD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;CAgB5B,CAAA;AAGD,eAAO,MAAM,gBAAgB,0BAA0B,CAAA;AACvD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;CAgC1B,CAAA"}