@kong-ui-public/entities-plugins 9.10.8 → 9.10.9

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.
@@ -63,6 +63,6 @@ Please report this to https://github.com/markedjs/marked.`,n){const o="<p>An err
63
63
  will be generated for you.`,inputType:"text",encrypted:!0}},{client_secret:{submitWhenNull:!1,hint:`You can optionally set your own unique client_secret. If missing,
64
64
  it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:Dt.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
65
65
  authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:Dt.tags}]},Sl={fields:[{id:{uuid:!0,auto:!0,type:"string",description:"A string representing a UUID (universally unique identifier)."}},{created_at:{description:"An integer representing an automatic Unix timestamp in seconds.",timestamp:!0,auto:!0,type:"integer"}},{consumer:{on_delete:"cascade",type:"foreign",reference:"consumers",required:!0}},{name:{required:!0,type:"string"}},{client_id:{required:!1,hint:"You can optionally set your own unique client_id. If missing, it will be generated for you.",unique:!0,auto:!0,type:"string"}},{client_secret:{required:!1,hint:"You can optionally set your own unique client_secret. If missing, it will be generated for you.",auto:!0,type:"string",encrypted:!0}},{hash_secret:{required:!0,type:"boolean",default:!1}},{redirect_uris:{required:!1,hint:"One or more URLs in your app where users will be sent after authorization (RFC 6742 Section 3.1.2)",type:"array",elements:{type:"string"}}},{tags:{elements:{required:!0,type:"string",description:"A string representing a tag."},type:"set",description:"A set of strings representing tags."}},{client_type:{required:!0,default:"confidential",type:"string",one_of:["confidential","public"]}}]},Ki={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
66
- client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Ct}]},xl={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}}]},We={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},jwt:{descriptionKey:"plugins.meta.jwt.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.jwt.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",group:R.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},cors:{descriptionKey:"plugins.meta.cors.description",group:R.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.cors.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",group:R.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]}},opa:{descriptionKey:"plugins.meta.opa.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.opa.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",group:R.DEPLOYMENT,isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",scope:[c.GLOBAL]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]}},acl:{descriptionKey:"plugins.meta.acl.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.acl.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],fieldRules:{onlyOneOf:[["config.allow","config.deny"]]}},canary:{descriptionKey:"plugins.meta.canary.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.canary.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]}},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]}},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],imageName:"proxy-cache"},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],imageName:"graphql"},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]}},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},mocking:{descriptionKey:"plugins.meta.mocking.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.mocking.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]}},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],useLegacyForm:!0},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-azure-content-safety.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],useLegacyForm:!0},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",group:R.SERVERLESS,isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",group:R.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",group:R.SERVERLESS,isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",group:R.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],imageName:"kong-function"},"post-function":{descriptionKey:"plugins.meta.post-function.description",group:R.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.post-function.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],imageName:"kong-function"},datadog:{descriptionKey:"plugins.meta.datadog.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.datadog.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},prometheus:{descriptionKey:"plugins.meta.prometheus.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},zipkin:{descriptionKey:"plugins.meta.zipkin.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},collector:{descriptionKey:"plugins.meta.collector.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.collector.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]}},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},jq:{descriptionKey:"plugins.meta.jq.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.jq.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]}},"file-log":{descriptionKey:"plugins.meta.file-log.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.file-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"http-log":{descriptionKey:"plugins.meta.http-log.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.http-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},loggly:{descriptionKey:"plugins.meta.loggly.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.loggly.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},statsd:{descriptionKey:"plugins.meta.statsd.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.statsd.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},syslog:{descriptionKey:"plugins.meta.syslog.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.syslog.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",group:R.LOGGING,isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},session:{descriptionKey:"plugins.meta.session.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.session.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",scope:[c.SERVICE]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",scope:[c.GLOBAL,c.SERVICE],imageName:"application-registration"},acme:{descriptionKey:"plugins.meta.acme.description",group:R.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.acme.name",scope:[c.GLOBAL]},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]}},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]}},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},saml:{descriptionKey:"plugins.meta.saml.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.saml.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.json-threat-protection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-proxy-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-cache.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-prompt-guard.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.header-cert-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],imageName:"tls-metadata-headers",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]}},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],imageName:"oauth2"},confluent:{descriptionKey:"plugins.meta.confluent.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.confluent.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",scope:[c.GLOBAL,c.SERVICE]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},redirect:{descriptionKey:"plugins.meta.redirect.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.redirect.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]}},Pt={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ui,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:wt(Ui),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:ji,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:wt(ji)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Yi,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:wt(Yi)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Ki,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:wt(Ki)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Fi,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:wt(Fi)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Hi,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:wt(Hi)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Rl,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Vl={acls:Il,basicauth_credentials:vl,keyauth_credentials:Ol,keyauth_enc_credentials:xl,oauth2_credentials:Sl,hmacauth_credentials:Ml,jwt_secrets:Tl},zi=e=>{var a;const n=((a=We[e])==null?void 0:a.imageName)||e||"missing",i=new URL(Object.assign({"../assets/images/plugin-icons/acl.png":Dr,"../assets/images/plugin-icons/acme.png":Pr,"../assets/images/plugin-icons/ai-azure-content-safety.png":Lr,"../assets/images/plugin-icons/ai-data-sanitization.png":Gr,"../assets/images/plugin-icons/ai-prompt-decorator.png":Ur,"../assets/images/plugin-icons/ai-prompt-guard.png":jr,"../assets/images/plugin-icons/ai-prompt-template.png":Yr,"../assets/images/plugin-icons/ai-proxy-advanced.png":Hr,"../assets/images/plugin-icons/ai-proxy.png":Fr,"../assets/images/plugin-icons/ai-rate-limiting-advanced.png":Kr,"../assets/images/plugin-icons/ai-request-transformer.png":zr,"../assets/images/plugin-icons/ai-response-transformer.png":Jr,"../assets/images/plugin-icons/ai-semantic-cache.png":Qr,"../assets/images/plugin-icons/ai-semantic-prompt-guard.png":Xr,"../assets/images/plugin-icons/app-dynamics.png":qr,"../assets/images/plugin-icons/application-registration.png":Zr,"../assets/images/plugin-icons/aws-lambda.png":Wr,"../assets/images/plugin-icons/azure-functions.png":_r,"../assets/images/plugin-icons/basic-auth.png":$r,"../assets/images/plugin-icons/bot-detection.png":es,"../assets/images/plugin-icons/canary.png":ts,"../assets/images/plugin-icons/collector.png":ns,"../assets/images/plugin-icons/confluent.png":is,"../assets/images/plugin-icons/correlation-id.png":as,"../assets/images/plugin-icons/cors.png":os,"../assets/images/plugin-icons/datadog.png":rs,"../assets/images/plugin-icons/degraphql.png":ss,"../assets/images/plugin-icons/dynamic-ssl.png":ls,"../assets/images/plugin-icons/exit-transformer.png":cs,"../assets/images/plugin-icons/file-log.png":ds,"../assets/images/plugin-icons/forward-proxy.png":us,"../assets/images/plugin-icons/graphql-rate-limiting-advanced.png":ps,"../assets/images/plugin-icons/graphql.png":As,"../assets/images/plugin-icons/grpc-gateway.png":gs,"../assets/images/plugin-icons/grpc-web.png":ms,"../assets/images/plugin-icons/hmac-auth.png":fs,"../assets/images/plugin-icons/http-log.png":hs,"../assets/images/plugin-icons/injection-protection.png":ys,"../assets/images/plugin-icons/ip-restriction.png":bs,"../assets/images/plugin-icons/jq.png":Es,"../assets/images/plugin-icons/json-threat-protection.png":ws,"../assets/images/plugin-icons/jwe-decrypt.png":Cs,"../assets/images/plugin-icons/jwt-signer.png":Bs,"../assets/images/plugin-icons/jwt.png":ks,"../assets/images/plugin-icons/kafka-log.png":Is,"../assets/images/plugin-icons/kafka-upstream.png":vs,"../assets/images/plugin-icons/key-auth-enc.png":Os,"../assets/images/plugin-icons/key-auth.png":Ms,"../assets/images/plugin-icons/kong-function.png":Rs,"../assets/images/plugin-icons/kubernetes-sidecar-injector.png":Ts,"../assets/images/plugin-icons/ldap-auth-advanced.png":Ss,"../assets/images/plugin-icons/ldap-auth.png":xs,"../assets/images/plugin-icons/loggly.png":Vs,"../assets/images/plugin-icons/missing.png":Ns,"../assets/images/plugin-icons/mocking.png":Ds,"../assets/images/plugin-icons/mtls-auth.png":Ps,"../assets/images/plugin-icons/new.png":Ls,"../assets/images/plugin-icons/oas-validation.png":Gs,"../assets/images/plugin-icons/oauth2-introspection.png":Us,"../assets/images/plugin-icons/oauth2.png":js,"../assets/images/plugin-icons/opa.png":Ys,"../assets/images/plugin-icons/openid-connect.png":Hs,"../assets/images/plugin-icons/opentelemetry.png":Fs,"../assets/images/plugin-icons/openwhisk.png":Ks,"../assets/images/plugin-icons/prometheus.png":zs,"../assets/images/plugin-icons/proxy-cache.png":Js,"../assets/images/plugin-icons/rate-limiting-advanced.png":Qs,"../assets/images/plugin-icons/rate-limiting.png":Xs,"../assets/images/plugin-icons/redirect.png":qs,"../assets/images/plugin-icons/request-size-limiting.png":Zs,"../assets/images/plugin-icons/request-termination.png":Ws,"../assets/images/plugin-icons/request-transformer-advanced.png":_s,"../assets/images/plugin-icons/request-transformer.png":$s,"../assets/images/plugin-icons/request-validator.png":el,"../assets/images/plugin-icons/response-ratelimiting.png":tl,"../assets/images/plugin-icons/response-transformer-advanced.png":nl,"../assets/images/plugin-icons/response-transformer.png":il,"../assets/images/plugin-icons/route-by-header.png":al,"../assets/images/plugin-icons/route-transformer-advanced.png":ol,"../assets/images/plugin-icons/runscope.png":rl,"../assets/images/plugin-icons/saml.png":sl,"../assets/images/plugin-icons/service-protection.png":ll,"../assets/images/plugin-icons/session.png":cl,"../assets/images/plugin-icons/standard-webhooks.png":dl,"../assets/images/plugin-icons/statsd-advanced.png":ul,"../assets/images/plugin-icons/statsd.png":pl,"../assets/images/plugin-icons/syslog.png":Al,"../assets/images/plugin-icons/tcp-log.png":gl,"../assets/images/plugin-icons/tls-handshake-modifier.png":ml,"../assets/images/plugin-icons/tls-metadata-headers.png":fl,"../assets/images/plugin-icons/udp-log.png":hl,"../assets/images/plugin-icons/upstream-timeout.png":yl,"../assets/images/plugin-icons/upstream-tls.png":bl,"../assets/images/plugin-icons/vault-auth.png":El,"../assets/images/plugin-icons/websocket-size-limit.png":wl,"../assets/images/plugin-icons/websocket-validator.png":Cl,"../assets/images/plugin-icons/xml-threat-protection.png":Bl,"../assets/images/plugin-icons/zipkin.png":kl})[`../assets/images/plugin-icons/${n}.png`],typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:$e&&$e.tagName.toUpperCase()==="SCRIPT"&&$e.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;return i.includes("undefined")?new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAMAAABKCk6nAAAAhFBMVEUAAADs+fnr8PTo7fLm7PDl6e7j6+7j6O3i6Ozh5+vp9PTm7PDj6e319fXn7PHj6O739/fn7PDi6e3////o7fLj6Ozt8fbj6u7r7vPi6ezo7fL////n7PHm6/Dl6+/q8PTs8vbu9Pjv9frw9vri6ezv9fnp7/Pt8vfk6u6cpar////e4ePLpSv+AAAAHnRSTlMAKIq93/T6/f7/W8z3GbL4Hr/9AZ39OPFo/Z4FzOeuk05oAAAFJklEQVR4Ae3ThZLjyhWA4SNdWJ9BMy/KA3n/twoXBafWWYb2QPi6Vd9XKGz4q5t4QPNZHDP2n8W/4uT0bJBUZHB2ehL/pPOLy6wQlxfn8bThaJxUajwaxuMm01lSsdl0Eo+YL5LKLebxoOUqqd5qGQ9YD7IHGKzjPptt9gTbzT19n2dv8Pyw8DZ7hG0U1tkrrOM7y0H2CoNlfGO+yp5hNY8vJovsHRaT+GyaPcQ03mkiYvjnNu4za94Ljtn+vd/Efc7+/sf4YJT32L286qjE1ctd3mMUH5yP89D1m46KvLnOQ+PzeO8iD+xuOipzs8sDF/HeZZZuX3dU5/Vtli7jnZMs7fSts/AuSycRcZqlm44q3WTpNCLOsnDdUanrLJxF29zF9zZ3QaXuNuWNJtosvOyo1ssstG0ThZ+Dah3Ea+LHIvmLjoq9KHL+2DYHyanYQc6jDYzACCxwZKGjallog177DwIjMAIjMAIjsMAIjMAIjMAIjMAILDACIzACIzACI7DACIzACIzACIzAAiMwAiMwAiMwAiOwwAiMwAiMwAiMwAIjMAIjMAIjMAILjMAIjMAIjMAIjMACIzACIzACIzACC4zACIzACIzACIzAAiMwAiMwAiMwAguMwAiMwAiMwAgsMAIjMAIjMAIjMAILjMAIjMAIjMAILDACIzACI/DP/6GjGENgBEZgBBYYgREYgREYgRGYJwMjMAIjMAI3TziCMQTmaAIjMAIjMAIjMAILjMAIjMAIjMAITBa6X9CveqD7hWWhDXpNYIERGIERGIERGIEFRmAERmAERuBKCdw2R68VGIERGIERWGAERmAERmAERmCBERiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIEFRmAERmAERuB+EPjt/ui9FRiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgWshcNscvVZgBEZgBEZggREYgREYgREYgQVGYARGYARGYARGYIERGIERGIERGIEFRmAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBBYYgREYgREYgftB4Lf7o/dWYARGYARGYIERGIERGIERGIEFRmAE5kj9GEfkb/EfwwkWGIERGIERGIERWGAERmAERmAERmAEFhiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIERWGAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBEZggREYgREYgREYgQVGYARGYARGYAQWGIERGIERGIERGIEFRmAERmAERmAEFhiBERiBERiBEZh2r3iflPn2B4HvgordPRl4H1RsL7DAfSJw/JCFq45qXWXhh3Yfhb8F1TqIt2/3ZeGf9kGl9j/F997XPcvCdUelrrNwFhGnWbrpqNJNlk4j4iRLu9cdFXq9y9JJvHOZpVuFa+x7m6XLeO8iD+xuOipzs8sDF/He+TgPXb/pqMib6zw0Po8PRnmP3curjkpcvdzlPUYR0UTE8M9t3GfWvBfHjP17v4n7nP39j/HRNOmhaXw2WSS9s5jEF/NV0jOreXxjOUh6ZbCM76yTXllHYZv0yDZKm+dJbzzfxGHhbdIT203cZz1IemCwjgcsV0n1Vst40HyRVG4xj0dMprOkYrPpJB43HI2TSo1Hw3ja+cVlUqHLi/P4J52cng2SigzOTk/iPk08oPksjhn7z+J+/wBSUhUZLUGZBgAAAABJRU5ErkJggg==",typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:$e&&$e.tagName.toUpperCase()==="SCRIPT"&&$e.src||new URL("entities-plugins.umd.js",document.baseURI).href).href:i},Nl=()=>{const{i18n:{t:e}}=mn(),n={},i={};for(const[o,r]of Object.entries(We))n[o]={...r,name:e(r.nameKey),description:e(r.descriptionKey)};for(const[o,r]of Object.entries(Pt))i[o]={...r,name:e(r.nameKey),title:e(r.titleKey)};return{pluginMetaData:n,credentialMetaData:i,credentialSchemas:Pt,getDisplayName:o=>{var r;return((r=n[o])==null?void 0:r.name)||o}}};function Ji(e,n){for(var i=-1,a=e==null?0:e.length;++i<a&&n(e[i],i,e)!==!1;);return e}function Dl(e){return function(n,i,a){for(var o=-1,r=Object(n),s=a(n),l=s.length;l--;){var d=s[++o];if(i(r[d],d,r)===!1)break}return n}}var Pl=Dl();function Ll(e,n){for(var i=-1,a=Array(e);++i<e;)a[i]=n(i);return a}var Qi=typeof global=="object"&&global&&global.Object===Object&&global,Gl=typeof self=="object"&&self&&self.Object===Object&&self,Qe=Qi||Gl||Function("return this")(),rt=Qe.Symbol,Xi=Object.prototype,Ul=Xi.hasOwnProperty,jl=Xi.toString,Zt=rt?rt.toStringTag:void 0;function Yl(e){var n=Ul.call(e,Zt),i=e[Zt];try{e[Zt]=void 0;var a=!0}catch{}var o=jl.call(e);return a&&(n?e[Zt]=i:delete e[Zt]),o}var Hl=Object.prototype,Fl=Hl.toString;function Kl(e){return Fl.call(e)}var zl="[object Null]",Jl="[object Undefined]",qi=rt?rt.toStringTag:void 0;function st(e){return e==null?e===void 0?Jl:zl:qi&&qi in Object(e)?Yl(e):Kl(e)}function lt(e){return e!=null&&typeof e=="object"}var Ql="[object Arguments]";function Zi(e){return lt(e)&&st(e)==Ql}var Wi=Object.prototype,Xl=Wi.hasOwnProperty,ql=Wi.propertyIsEnumerable,Zl=Zi(function(){return arguments}())?Zi:function(e){return lt(e)&&Xl.call(e,"callee")&&!ql.call(e,"callee")},ct=Array.isArray;function Wl(){return!1}var _i=typeof $=="object"&&$&&!$.nodeType&&$,$i=_i&&typeof module=="object"&&module&&!module.nodeType&&module,_l=$i&&$i.exports===_i,ea=_l?Qe.Buffer:void 0,$l=ea?ea.isBuffer:void 0,ta=$l||Wl,ec=9007199254740991,tc=/^(?:0|[1-9]\d*)$/;function na(e,n){var i=typeof e;return n=n??ec,!!n&&(i=="number"||i!="symbol"&&tc.test(e))&&e>-1&&e%1==0&&e<n}var nc=9007199254740991;function ia(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=nc}var ic="[object Arguments]",ac="[object Array]",oc="[object Boolean]",rc="[object Date]",sc="[object Error]",lc="[object Function]",cc="[object Map]",dc="[object Number]",uc="[object Object]",pc="[object RegExp]",Ac="[object Set]",gc="[object String]",mc="[object WeakMap]",fc="[object ArrayBuffer]",hc="[object DataView]",yc="[object Float32Array]",bc="[object Float64Array]",Ec="[object Int8Array]",wc="[object Int16Array]",Cc="[object Int32Array]",Bc="[object Uint8Array]",kc="[object Uint8ClampedArray]",Ic="[object Uint16Array]",vc="[object Uint32Array]",fe={};fe[yc]=fe[bc]=fe[Ec]=fe[wc]=fe[Cc]=fe[Bc]=fe[kc]=fe[Ic]=fe[vc]=!0,fe[ic]=fe[ac]=fe[fc]=fe[oc]=fe[hc]=fe[rc]=fe[sc]=fe[lc]=fe[cc]=fe[dc]=fe[uc]=fe[pc]=fe[Ac]=fe[gc]=fe[mc]=!1;function Oc(e){return lt(e)&&ia(e.length)&&!!fe[st(e)]}function Yn(e){return function(n){return e(n)}}var aa=typeof $=="object"&&$&&!$.nodeType&&$,Wt=aa&&typeof module=="object"&&module&&!module.nodeType&&module,Mc=Wt&&Wt.exports===aa,Hn=Mc&&Qi.process,Lt=function(){try{var e=Wt&&Wt.require&&Wt.require("util").types;return e||Hn&&Hn.binding&&Hn.binding("util")}catch{}}(),oa=Lt&&Lt.isTypedArray,Rc=oa?Yn(oa):Oc,Tc=Object.prototype,Sc=Tc.hasOwnProperty;function ra(e,n){var i=ct(e),a=!i&&Zl(e),o=!i&&!a&&ta(e),r=!i&&!a&&!o&&Rc(e),s=i||a||o||r,l=s?Ll(e.length,String):[],d=l.length;for(var p in e)(n||Sc.call(e,p))&&!(s&&(p=="length"||o&&(p=="offset"||p=="parent")||r&&(p=="buffer"||p=="byteLength"||p=="byteOffset")||na(p,d)))&&l.push(p);return l}var xc=Object.prototype;function Fn(e){var n=e&&e.constructor,i=typeof n=="function"&&n.prototype||xc;return e===i}function sa(e,n){return function(i){return e(n(i))}}var Vc=sa(Object.keys,Object),Nc=Object.prototype,Dc=Nc.hasOwnProperty;function Pc(e){if(!Fn(e))return Vc(e);var n=[];for(var i in Object(e))Dc.call(e,i)&&i!="constructor"&&n.push(i);return n}function He(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var Lc="[object AsyncFunction]",Gc="[object Function]",Uc="[object GeneratorFunction]",jc="[object Proxy]";function he(e){if(!He(e))return!1;var n=st(e);return n==Gc||n==Uc||n==Lc||n==jc}function fn(e){return e!=null&&ia(e.length)&&!he(e)}function hn(e){return fn(e)?ra(e):Pc(e)}function Yc(e,n){return e&&Pl(e,n,hn)}function Hc(e,n){return function(i,a){if(i==null)return i;if(!fn(i))return e(i,a);for(var o=i.length,r=-1,s=Object(i);++r<o&&a(s[r],r,s)!==!1;);return i}}var Fc=Hc(Yc);function Kn(e){return e}function Kc(e){return typeof e=="function"?e:Kn}function De(e,n){var i=ct(e)?Ji:Fc;return i(e,Kc(n))}var zc="[object Symbol]";function yn(e){return typeof e=="symbol"||lt(e)&&st(e)==zc}var Jc=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Qc=/^\w*$/;function Xc(e,n){if(ct(e))return!1;var i=typeof e;return i=="number"||i=="symbol"||i=="boolean"||e==null||yn(e)?!0:Qc.test(e)||!Jc.test(e)||n!=null&&e in Object(n)}var zn=Qe["__core-js_shared__"],la=function(){var e=/[^.]+$/.exec(zn&&zn.keys&&zn.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function qc(e){return!!la&&la in e}var Zc=Function.prototype,Wc=Zc.toString;function Bt(e){if(e!=null){try{return Wc.call(e)}catch{}try{return e+""}catch{}}return""}var _c=/[\\^$.*+?()[\]{}|]/g,$c=/^\[object .+?Constructor\]$/,ed=Function.prototype,td=Object.prototype,nd=ed.toString,id=td.hasOwnProperty,ad=RegExp("^"+nd.call(id).replace(_c,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function od(e){if(!He(e)||qc(e))return!1;var n=he(e)?ad:$c;return n.test(Bt(e))}function rd(e,n){return e==null?void 0:e[n]}function kt(e,n){var i=rd(e,n);return od(i)?i:void 0}var _t=kt(Object,"create");function sd(){this.__data__=_t?_t(null):{},this.size=0}function ld(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var cd="__lodash_hash_undefined__",dd=Object.prototype,ud=dd.hasOwnProperty;function pd(e){var n=this.__data__;if(_t){var i=n[e];return i===cd?void 0:i}return ud.call(n,e)?n[e]:void 0}var Ad=Object.prototype,gd=Ad.hasOwnProperty;function md(e){var n=this.__data__;return _t?n[e]!==void 0:gd.call(n,e)}var fd="__lodash_hash_undefined__";function hd(e,n){var i=this.__data__;return this.size+=this.has(e)?0:1,i[e]=_t&&n===void 0?fd:n,this}function It(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}It.prototype.clear=sd,It.prototype.delete=ld,It.prototype.get=pd,It.prototype.has=md,It.prototype.set=hd;function yd(){this.__data__=[],this.size=0}function bn(e,n){return e===n||e!==e&&n!==n}function En(e,n){for(var i=e.length;i--;)if(bn(e[i][0],n))return i;return-1}var bd=Array.prototype,Ed=bd.splice;function wd(e){var n=this.__data__,i=En(n,e);if(i<0)return!1;var a=n.length-1;return i==a?n.pop():Ed.call(n,i,1),--this.size,!0}function Cd(e){var n=this.__data__,i=En(n,e);return i<0?void 0:n[i][1]}function Bd(e){return En(this.__data__,e)>-1}function kd(e,n){var i=this.__data__,a=En(i,e);return a<0?(++this.size,i.push([e,n])):i[a][1]=n,this}function et(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}et.prototype.clear=yd,et.prototype.delete=wd,et.prototype.get=Cd,et.prototype.has=Bd,et.prototype.set=kd;var $t=kt(Qe,"Map");function Id(){this.size=0,this.__data__={hash:new It,map:new($t||et),string:new It}}function vd(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function wn(e,n){var i=e.__data__;return vd(n)?i[typeof n=="string"?"string":"hash"]:i.map}function Od(e){var n=wn(this,e).delete(e);return this.size-=n?1:0,n}function Md(e){return wn(this,e).get(e)}function Rd(e){return wn(this,e).has(e)}function Td(e,n){var i=wn(this,e),a=i.size;return i.set(e,n),this.size+=i.size==a?0:1,this}function tt(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}tt.prototype.clear=Id,tt.prototype.delete=Od,tt.prototype.get=Md,tt.prototype.has=Rd,tt.prototype.set=Td;var Sd="Expected a function";function Jn(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(Sd);var i=function(){var a=arguments,o=n?n.apply(this,a):a[0],r=i.cache;if(r.has(o))return r.get(o);var s=e.apply(this,a);return i.cache=r.set(o,s)||r,s};return i.cache=new(Jn.Cache||tt),i}Jn.Cache=tt;var xd=500;function Vd(e){var n=Jn(e,function(a){return i.size===xd&&i.clear(),a}),i=n.cache;return n}var Nd=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Dd=/\\(\\)?/g,Pd=Vd(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Nd,function(i,a,o,r){n.push(o?r.replace(Dd,"$1"):a||i)}),n});function Ld(e,n){for(var i=-1,a=e==null?0:e.length,o=Array(a);++i<a;)o[i]=n(e[i],i,e);return o}var Gd=1/0,ca=rt?rt.prototype:void 0,da=ca?ca.toString:void 0;function ua(e){if(typeof e=="string")return e;if(ct(e))return Ld(e,ua)+"";if(yn(e))return da?da.call(e):"";var n=e+"";return n=="0"&&1/e==-Gd?"-0":n}function pa(e){return e==null?"":ua(e)}function Ud(e,n){return ct(e)?e:Xc(e,n)?[e]:Pd(pa(e))}var jd=1/0;function Yd(e){if(typeof e=="string"||yn(e))return e;var n=e+"";return n=="0"&&1/e==-jd?"-0":n}function Hd(e,n){n=Ud(n,e);for(var i=0,a=n.length;e!=null&&i<a;)e=e[Yd(n[i++])];return i&&i==a?e:void 0}function le(e,n,i){var a=e==null?void 0:Hd(e,n);return a===void 0?i:a}function Me(e){return e==null}const dt="kong-ui-forms-api",ut="autofill",Xe="autofillSlot";function Fd(){this.__data__=new et,this.size=0}function Kd(e){var n=this.__data__,i=n.delete(e);return this.size=n.size,i}function zd(e){return this.__data__.get(e)}function Jd(e){return this.__data__.has(e)}var Qd=200;function Xd(e,n){var i=this.__data__;if(i instanceof et){var a=i.__data__;if(!$t||a.length<Qd-1)return a.push([e,n]),this.size=++i.size,this;i=this.__data__=new tt(a)}return i.set(e,n),this.size=i.size,this}function Gt(e){var n=this.__data__=new et(e);this.size=n.size}Gt.prototype.clear=Fd,Gt.prototype.delete=Kd,Gt.prototype.get=zd,Gt.prototype.has=Jd,Gt.prototype.set=Xd;var Cn=function(){try{var e=kt(Object,"defineProperty");return e({},"",{}),e}catch{}}();function Aa(e,n,i){n=="__proto__"&&Cn?Cn(e,n,{configurable:!0,enumerable:!0,value:i,writable:!0}):e[n]=i}var qd=Object.prototype,Zd=qd.hasOwnProperty;function ga(e,n,i){var a=e[n];(!(Zd.call(e,n)&&bn(a,i))||i===void 0&&!(n in e))&&Aa(e,n,i)}function Bn(e,n,i,a){var o=!i;i||(i={});for(var r=-1,s=n.length;++r<s;){var l=n[r],d=void 0;d===void 0&&(d=e[l]),o?Aa(i,l,d):ga(i,l,d)}return i}function Wd(e,n){return e&&Bn(n,hn(n),e)}function _d(e){var n=[];if(e!=null)for(var i in Object(e))n.push(i);return n}var $d=Object.prototype,eu=$d.hasOwnProperty;function tu(e){if(!He(e))return _d(e);var n=Fn(e),i=[];for(var a in e)a=="constructor"&&(n||!eu.call(e,a))||i.push(a);return i}function kn(e){return fn(e)?ra(e,!0):tu(e)}function nu(e,n){return e&&Bn(n,kn(n),e)}var ma=typeof $=="object"&&$&&!$.nodeType&&$,fa=ma&&typeof module=="object"&&module&&!module.nodeType&&module,iu=fa&&fa.exports===ma,ha=iu?Qe.Buffer:void 0,ya=ha?ha.allocUnsafe:void 0;function au(e,n){if(n)return e.slice();var i=e.length,a=ya?ya(i):new e.constructor(i);return e.copy(a),a}function ou(e,n){var i=-1,a=e.length;for(n||(n=Array(a));++i<a;)n[i]=e[i];return n}function ru(e,n){for(var i=-1,a=e==null?0:e.length,o=0,r=[];++i<a;){var s=e[i];n(s,i,e)&&(r[o++]=s)}return r}function ba(){return[]}var su=Object.prototype,lu=su.propertyIsEnumerable,Ea=Object.getOwnPropertySymbols,Qn=Ea?function(e){return e==null?[]:(e=Object(e),ru(Ea(e),function(n){return lu.call(e,n)}))}:ba;function cu(e,n){return Bn(e,Qn(e),n)}function wa(e,n){for(var i=-1,a=n.length,o=e.length;++i<a;)e[o+i]=n[i];return e}var Ca=sa(Object.getPrototypeOf,Object),du=Object.getOwnPropertySymbols,Ba=du?function(e){for(var n=[];e;)wa(n,Qn(e)),e=Ca(e);return n}:ba;function uu(e,n){return Bn(e,Ba(e),n)}function ka(e,n,i){var a=n(e);return ct(e)?a:wa(a,i(e))}function pu(e){return ka(e,hn,Qn)}function Au(e){return ka(e,kn,Ba)}var Xn=kt(Qe,"DataView"),qn=kt(Qe,"Promise"),Ut=kt(Qe,"Set"),Zn=kt(Qe,"WeakMap"),Ia="[object Map]",gu="[object Object]",va="[object Promise]",Oa="[object Set]",Ma="[object WeakMap]",Ra="[object DataView]",mu=Bt(Xn),fu=Bt($t),hu=Bt(qn),yu=Bt(Ut),bu=Bt(Zn),nt=st;(Xn&&nt(new Xn(new ArrayBuffer(1)))!=Ra||$t&&nt(new $t)!=Ia||qn&&nt(qn.resolve())!=va||Ut&&nt(new Ut)!=Oa||Zn&&nt(new Zn)!=Ma)&&(nt=function(e){var n=st(e),i=n==gu?e.constructor:void 0,a=i?Bt(i):"";if(a)switch(a){case mu:return Ra;case fu:return Ia;case hu:return va;case yu:return Oa;case bu:return Ma}return n});var Eu=Object.prototype,wu=Eu.hasOwnProperty;function Cu(e){var n=e.length,i=new e.constructor(n);return n&&typeof e[0]=="string"&&wu.call(e,"index")&&(i.index=e.index,i.input=e.input),i}var Ta=Qe.Uint8Array;function Wn(e){var n=new e.constructor(e.byteLength);return new Ta(n).set(new Ta(e)),n}function Bu(e,n){var i=n?Wn(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.byteLength)}var ku=/\w*$/;function Iu(e){var n=new e.constructor(e.source,ku.exec(e));return n.lastIndex=e.lastIndex,n}var Sa=rt?rt.prototype:void 0,xa=Sa?Sa.valueOf:void 0;function vu(e){return xa?Object(xa.call(e)):{}}function Ou(e,n){var i=n?Wn(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.length)}var Mu="[object Boolean]",Ru="[object Date]",Tu="[object Map]",Su="[object Number]",xu="[object RegExp]",Vu="[object Set]",Nu="[object String]",Du="[object Symbol]",Pu="[object ArrayBuffer]",Lu="[object DataView]",Gu="[object Float32Array]",Uu="[object Float64Array]",ju="[object Int8Array]",Yu="[object Int16Array]",Hu="[object Int32Array]",Fu="[object Uint8Array]",Ku="[object Uint8ClampedArray]",zu="[object Uint16Array]",Ju="[object Uint32Array]";function Qu(e,n,i){var a=e.constructor;switch(n){case Pu:return Wn(e);case Mu:case Ru:return new a(+e);case Lu:return Bu(e,i);case Gu:case Uu:case ju:case Yu:case Hu:case Fu:case Ku:case zu:case Ju:return Ou(e,i);case Tu:return new a;case Su:case Nu:return new a(e);case xu:return Iu(e);case Vu:return new a;case Du:return vu(e)}}var Va=Object.create,Xu=function(){function e(){}return function(n){if(!He(n))return{};if(Va)return Va(n);e.prototype=n;var i=new e;return e.prototype=void 0,i}}();function qu(e){return typeof e.constructor=="function"&&!Fn(e)?Xu(Ca(e)):{}}var Zu="[object Map]";function Wu(e){return lt(e)&&nt(e)==Zu}var Na=Lt&&Lt.isMap,_u=Na?Yn(Na):Wu,$u="[object Set]";function ep(e){return lt(e)&&nt(e)==$u}var Da=Lt&&Lt.isSet,tp=Da?Yn(Da):ep,np=1,ip=2,ap=4,Pa="[object Arguments]",op="[object Array]",rp="[object Boolean]",sp="[object Date]",lp="[object Error]",La="[object Function]",cp="[object GeneratorFunction]",dp="[object Map]",up="[object Number]",Ga="[object Object]",pp="[object RegExp]",Ap="[object Set]",gp="[object String]",mp="[object Symbol]",fp="[object WeakMap]",hp="[object ArrayBuffer]",yp="[object DataView]",bp="[object Float32Array]",Ep="[object Float64Array]",wp="[object Int8Array]",Cp="[object Int16Array]",Bp="[object Int32Array]",kp="[object Uint8Array]",Ip="[object Uint8ClampedArray]",vp="[object Uint16Array]",Op="[object Uint32Array]",me={};me[Pa]=me[op]=me[hp]=me[yp]=me[rp]=me[sp]=me[bp]=me[Ep]=me[wp]=me[Cp]=me[Bp]=me[dp]=me[up]=me[Ga]=me[pp]=me[Ap]=me[gp]=me[mp]=me[kp]=me[Ip]=me[vp]=me[Op]=!0,me[lp]=me[La]=me[fp]=!1;function en(e,n,i,a,o,r){var s,l=n&np,d=n&ip,p=n&ap;if(s!==void 0)return s;if(!He(e))return e;var u=ct(e);if(u){if(s=Cu(e),!l)return ou(e,s)}else{var A=nt(e),g=A==La||A==cp;if(ta(e))return au(e,l);if(A==Ga||A==Pa||g&&!o){if(s=d||g?{}:qu(e),!l)return d?uu(e,nu(s,e)):cu(e,Wd(s,e))}else{if(!me[A])return o?e:{};s=Qu(e,A,l)}}r||(r=new Gt);var E=r.get(e);if(E)return E;r.set(e,s),tp(e)?e.forEach(function(I){s.add(en(I,n,i,I,e,r))}):_u(e)&&e.forEach(function(I,w){s.set(w,en(I,n,i,w,e,r))});var S=p?d?Au:pu:d?kn:hn,h=u?void 0:S(e);return Ji(h||e,function(I,w){h&&(w=I,I=e[w]),ga(s,w,en(I,n,i,w,e,r))}),s}var Mp=1,Rp=4;function it(e){return en(e,Mp|Rp)}const _n=(e,n="")=>typeof e.id<"u"?n+e.id+"":n+(e.inputName||e.label||e.model||"").toString().trim().toLowerCase().replace(/ |_/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-]+)/g,""),Ua=(e="")=>e.toString().trim().replace(/ /g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-_/./:]+)/g,"");var Tp="[object String]";function vt(e){return typeof e=="string"||!ct(e)&&lt(e)&&st(e)==Tp}const ja={methods:{getFieldRowClasses(e){const n=this.fieldErrors(e).length>0,i={[le(this.options,"validationErrorClass","error")]:n,[le(this.options,"validationSuccessClass","valid")]:!n,disabled:this.fieldDisabled(e),readonly:this.fieldReadonly(e),featured:this.fieldFeatured(e),required:this.fieldRequired(e)};return Array.isArray(e.styleClasses)?De(e.styleClasses,a=>i[a]=!0):vt(e.styleClasses)&&(i[e.styleClasses]=!0),Me(e.type)||(i["field-"+e.type]=!0),i},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},fieldDisabled(e){return he(e.disabled)?e.disabled.call(this,this.model,e,this):Me(e.disabled)?!1:e.disabled},fieldReadonly(e){return he(e.readonly)?e.readonly.call(this,this.model,e,this):Me(e.readonly)?!1:e.readonly},fieldFeatured(e){return he(e.featured)?e.featured.call(this,this.model,e,this):Me(e.featured)?!1:e.featured},fieldRequired(e){return he(e.required)?e.required.call(this,this.model,e,this):Me(e.required)?!1:e.required}}};var $n=function(){return Qe.Date.now()},Sp=/\s/;function xp(e){for(var n=e.length;n--&&Sp.test(e.charAt(n)););return n}var Vp=/^\s+/;function Np(e){return e&&e.slice(0,xp(e)+1).replace(Vp,"")}var Ya=NaN,Dp=/^[-+]0x[0-9a-f]+$/i,Pp=/^0b[01]+$/i,Lp=/^0o[0-7]+$/i,Gp=parseInt;function ei(e){if(typeof e=="number")return e;if(yn(e))return Ya;if(He(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=He(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=Np(e);var i=Pp.test(e);return i||Lp.test(e)?Gp(e.slice(2),i?2:8):Dp.test(e)?Ya:+e}var Up="Expected a function",jp=Math.max,Yp=Math.min;function tn(e,n,i){var a,o,r,s,l,d,p=0,u=!1,A=!1,g=!0;if(typeof e!="function")throw new TypeError(Up);n=ei(n)||0,He(i)&&(u=!!i.leading,A="maxWait"in i,r=A?jp(ei(i.maxWait)||0,n):r,g="trailing"in i?!!i.trailing:g);function E(f){var k=a,O=o;return a=o=void 0,p=f,s=e.apply(O,k),s}function S(f){return p=f,l=setTimeout(w,n),u?E(f):s}function h(f){var k=f-d,O=f-p,H=n-k;return A?Yp(H,r-O):H}function I(f){var k=f-d,O=f-p;return d===void 0||k>=n||k<0||A&&O>=r}function w(){var f=$n();if(I(f))return j(f);l=setTimeout(w,h(f))}function j(f){return l=void 0,g&&a?E(f):(a=o=void 0,s)}function y(){l!==void 0&&clearTimeout(l),p=0,a=d=o=l=void 0}function m(){return l===void 0?s:j($n())}function b(){var f=$n(),k=I(f);if(a=arguments,o=this,d=f,k){if(l===void 0)return S(d);if(A)return clearTimeout(l),l=setTimeout(w,n),E(d)}return l===void 0&&(l=setTimeout(w,n)),s}return b.cancel=y,b.flush=m,b}var Hp="__lodash_hash_undefined__";function Fp(e){return this.__data__.set(e,Hp),this}function Kp(e){return this.__data__.has(e)}function In(e){var n=-1,i=e==null?0:e.length;for(this.__data__=new tt;++n<i;)this.add(e[n])}In.prototype.add=In.prototype.push=Fp,In.prototype.has=Kp;function zp(e,n,i,a){for(var o=e.length,r=i+-1;++r<o;)if(n(e[r],r,e))return r;return-1}function Jp(e){return e!==e}function Qp(e,n,i){for(var a=i-1,o=e.length;++a<o;)if(e[a]===n)return a;return-1}function Xp(e,n,i){return n===n?Qp(e,n,i):zp(e,Jp,i)}function qp(e,n){var i=e==null?0:e.length;return!!i&&Xp(e,n,0)>-1}function Zp(e,n){return e.has(n)}function Wp(){}function Ha(e){var n=-1,i=Array(e.size);return e.forEach(function(a){i[++n]=a}),i}var _p=1/0,$p=Ut&&1/Ha(new Ut([,-0]))[1]==_p?function(e){return new Ut(e)}:Wp,eA=200;function tA(e,n,i){var a=-1,o=qp,r=e.length,s=!0,l=[],d=l;if(r>=eA){var p=$p(e);if(p)return Ha(p);s=!1,o=Zp,d=new In}else d=l;e:for(;++a<r;){var u=e[a],A=u;if(u=u!==0?u:0,s&&A===A){for(var g=d.length;g--;)if(d[g]===A)continue e;l.push(u)}else o(d,A,i)||(d!==l&&d.push(A),l.push(u))}return l}function Fa(e){return e&&e.length?tA(e):[]}var nA=0;function Ka(e){var n=++nA;return pa(e)+n}var za=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,pt="\\d\\d?",At="\\d\\d",iA="\\d{3}",aA="\\d{4}",nn="[^\\s]+",Ja=/\[([^]*?)\]/gm;function Qa(e,n){for(var i=[],a=0,o=e.length;a<o;a++)i.push(e[a].substr(0,n));return i}var Xa=function(e){return function(n,i){var a=i[e].map(function(r){return r.toLowerCase()}),o=a.indexOf(n.toLowerCase());return o>-1?o:null}};function Ot(e){for(var n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];for(var a=0,o=n;a<o.length;a++){var r=o[a];for(var s in r)e[s]=r[s]}return e}var qa=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Za=["January","February","March","April","May","June","July","August","September","October","November","December"],oA=Qa(Za,3),rA=Qa(qa,3),Wa={dayNamesShort:rA,dayNames:qa,monthNamesShort:oA,monthNames:Za,amPm:["am","pm"],DoFn:function(e){return e+["th","st","nd","rd"][e%10>3?0:(e-e%10!==10?1:0)*e%10]}},vn=Ot({},Wa),sA=function(e){return vn=Ot(vn,e)},_a=function(e){return e.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},Pe=function(e,n){for(n===void 0&&(n=2),e=String(e);e.length<n;)e="0"+e;return e},lA={D:function(e){return String(e.getDate())},DD:function(e){return Pe(e.getDate())},Do:function(e,n){return n.DoFn(e.getDate())},d:function(e){return String(e.getDay())},dd:function(e){return Pe(e.getDay())},ddd:function(e,n){return n.dayNamesShort[e.getDay()]},dddd:function(e,n){return n.dayNames[e.getDay()]},M:function(e){return String(e.getMonth()+1)},MM:function(e){return Pe(e.getMonth()+1)},MMM:function(e,n){return n.monthNamesShort[e.getMonth()]},MMMM:function(e,n){return n.monthNames[e.getMonth()]},YY:function(e){return Pe(String(e.getFullYear()),4).substr(2)},YYYY:function(e){return Pe(e.getFullYear(),4)},h:function(e){return String(e.getHours()%12||12)},hh:function(e){return Pe(e.getHours()%12||12)},H:function(e){return String(e.getHours())},HH:function(e){return Pe(e.getHours())},m:function(e){return String(e.getMinutes())},mm:function(e){return Pe(e.getMinutes())},s:function(e){return String(e.getSeconds())},ss:function(e){return Pe(e.getSeconds())},S:function(e){return String(Math.round(e.getMilliseconds()/100))},SS:function(e){return Pe(Math.round(e.getMilliseconds()/10),2)},SSS:function(e){return Pe(e.getMilliseconds(),3)},a:function(e,n){return e.getHours()<12?n.amPm[0]:n.amPm[1]},A:function(e,n){return e.getHours()<12?n.amPm[0].toUpperCase():n.amPm[1].toUpperCase()},ZZ:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Pe(Math.floor(Math.abs(n)/60)*100+Math.abs(n)%60,4)},Z:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Pe(Math.floor(Math.abs(n)/60),2)+":"+Pe(Math.abs(n)%60,2)}},$a=function(e){return+e-1},eo=[null,pt],to=[null,nn],no=["isPm",nn,function(e,n){var i=e.toLowerCase();return i===n.amPm[0]?0:i===n.amPm[1]?1:null}],io=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(e){var n=(e+"").match(/([+-]|\d\d)/gi);if(n){var i=+n[1]*60+parseInt(n[2],10);return n[0]==="+"?i:-i}return 0}],cA={D:["day",pt],DD:["day",At],Do:["day",pt+nn,function(e){return parseInt(e,10)}],M:["month",pt,$a],MM:["month",At,$a],YY:["year",At,function(e){var n=new Date,i=+(""+n.getFullYear()).substr(0,2);return+(""+(+e>68?i-1:i)+e)}],h:["hour",pt,void 0,"isPm"],hh:["hour",At,void 0,"isPm"],H:["hour",pt],HH:["hour",At],m:["minute",pt],mm:["minute",At],s:["second",pt],ss:["second",At],YYYY:["year",aA],S:["millisecond","\\d",function(e){return+e*100}],SS:["millisecond",At,function(e){return+e*10}],SSS:["millisecond",iA],d:eo,dd:eo,ddd:to,dddd:to,MMM:["month",nn,Xa("monthNamesShort")],MMMM:["month",nn,Xa("monthNames")],a:no,A:no,ZZ:io,Z:io},On={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},dA=function(e){return Ot(On,e)},uA=function(e,n,i){if(n===void 0&&(n=On.default),i===void 0&&(i={}),typeof e=="number"&&(e=new Date(e)),Object.prototype.toString.call(e)!=="[object Date]"||isNaN(e.getTime()))throw new Error("Invalid Date pass to format");n=On[n]||n;var a=[];n=n.replace(Ja,function(r,s){return a.push(s),"@@@"});var o=Ot(Ot({},vn),i);return n=n.replace(za,function(r){return lA[r](e,o)}),n.replace(/@@@/g,function(){return a.shift()})};function pA(e,n,i){if(i===void 0&&(i={}),typeof n!="string")throw new Error("Invalid format in fecha parse");if(n=On[n]||n,e.length>1e3)return null;var a=new Date,o={year:a.getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},r=[],s=[],l=n.replace(Ja,function(m,b){return s.push(_a(b)),"@@@"}),d={},p={};l=_a(l).replace(za,function(m){var b=cA[m],f=b[0],k=b[1],O=b[3];if(d[f])throw new Error("Invalid format. "+f+" specified twice in format");return d[f]=!0,O&&(p[O]=!0),r.push(b),"("+k+")"}),Object.keys(p).forEach(function(m){if(!d[m])throw new Error("Invalid format. "+m+" is required in specified format")}),l=l.replace(/@@@/g,function(){return s.shift()});var u=e.match(new RegExp(l,"i"));if(!u)return null;for(var A=Ot(Ot({},vn),i),g=1;g<u.length;g++){var E=r[g-1],S=E[0],h=E[2],I=h?h(u[g],A):+u[g];if(I==null)return null;o[S]=I}o.isPm===1&&o.hour!=null&&+o.hour!=12?o.hour=+o.hour+12:o.isPm===0&&+o.hour==12&&(o.hour=0);var w;if(o.timezoneOffset==null){w=new Date(o.year,o.month,o.day,o.hour,o.minute,o.second,o.millisecond);for(var j=[["month","getMonth"],["day","getDate"],["hour","getHours"],["minute","getMinutes"],["second","getSeconds"]],g=0,y=j.length;g<y;g++)if(d[j[g][0]]&&o[j[g][0]]!==w[j[g][1]]())return null}else if(w=new Date(Date.UTC(o.year,o.month,o.day,o.hour,o.minute-o.timezoneOffset,o.second,o.millisecond)),o.month>11||o.month<0||o.day>31||o.day<1||o.hour>23||o.hour<0||o.minute>59||o.minute<0||o.second>59||o.second<0)return null;return w}var jt={format:uA,parse:pA,defaultI18n:Wa,setGlobalDateI18n:sA,setGlobalDateMasks:dA};function AA(e,n,i){switch(i.length){case 0:return e.call(n);case 1:return e.call(n,i[0]);case 2:return e.call(n,i[0],i[1]);case 3:return e.call(n,i[0],i[1],i[2])}return e.apply(n,i)}var ao=Math.max;function gA(e,n,i){return n=ao(n===void 0?e.length-1:n,0),function(){for(var a=arguments,o=-1,r=ao(a.length-n,0),s=Array(r);++o<r;)s[o]=a[n+o];o=-1;for(var l=Array(n+1);++o<n;)l[o]=a[o];return l[n]=i(s),AA(e,this,l)}}function mA(e){return function(){return e}}var fA=Cn?function(e,n){return Cn(e,"toString",{configurable:!0,enumerable:!1,value:mA(n),writable:!0})}:Kn,hA=800,yA=16,bA=Date.now;function EA(e){var n=0,i=0;return function(){var a=bA(),o=yA-(a-i);if(i=a,o>0){if(++n>=hA)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}var wA=EA(fA);function CA(e,n){return wA(gA(e,n,Kn),e+"")}function BA(e,n,i){if(!He(i))return!1;var a=typeof n;return(a=="number"?fn(i)&&na(n,i.length):a=="string"&&n in i)?bn(i[n],e):!1}var oo=Object.prototype,kA=oo.hasOwnProperty,IA=CA(function(e,n){e=Object(e);var i=-1,a=n.length,o=a>2?n[2]:void 0;for(o&&BA(n[0],n[1],o)&&(a=1);++i<a;)for(var r=n[i],s=kn(r),l=-1,d=s.length;++l<d;){var p=s[l],u=e[p];(u===void 0||bn(u,oo[p])&&!kA.call(e,p))&&(e[p]=r[p])}return e}),vA=Qe.isFinite;function OA(e){return typeof e=="number"&&vA(e)}var ro=1/0,MA=17976931348623157e292;function RA(e){if(!e)return e===0?e:0;if(e=ei(e),e===ro||e===-ro){var n=e<0?-1:1;return n*MA}return e===e?e:0}function TA(e){var n=RA(e),i=n%1;return n===n?i?n-i:n:0}function SA(e){return typeof e=="number"&&e==TA(e)}var xA="[object Number]";function ti(e){return typeof e=="number"||lt(e)&&st(e)==xA}const VA={packageName:"forms",disable_global_radio:"The plugin is set to 'Scoped' by default when configured under a {scope}. To configure a global plugin, navigate to the global plugin list page.",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it."},NA={view_advanced_fields:"View Advanced Fields",window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},start_with_a_use_case:"Start with a use case:",use_case_index:"Use case {index}",error_message:{label:"Error Message",code_placeholder:"Code Message",message_placeholder:"Error Message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},identifiers:{label:"Identifiers",options:{ip:"IP",credential:"Credential",consumer:"Consumer",service:"Service",header:"Header",path:"Path","consumer-group":"Consumer Group"}},redis:{title:"Configure your Redis",address_example:"e.g. localhost:6379"}},DA={field_is_required:"This field is required",invalid_format:"Invalid format",number_too_small:"The number is too small. Minimum: {0}",number_too_large:"The number is too large. Maximum: {0}",invalid_number:"Invalid number",invalid_integer:"The value is not an integer",text_too_short:"The length of text is too short. Current: {0}, Minimum: {1}",text_too_long:"The length of text is too long. Current: {0}, Maximum: {1}",this_not_text:"This is not a text",this_not_array:"This is not an array",select_min_items:"Select minimum {0} items",select_max_items:"Select maximum {0} items",invalid_date:"Invalid date",date_is_early:"The date is too early. Current: {0}, Minimum: {1}",date_is_late:"The date is too late. Current: {0}, Maximum: {1}",invalid_email:"Invalid e-mail address",invalid_url:"Invalid URL",invalid_card:"Invalid card format",invalid_card_number:"Invalid card number",invalid_text_contain_number:"Invalid text - cannot contains numbers or special characters",invalid_tex_contain_spec:"Invalid text - cannot contains special characters"},PA={labels:{on:"On",off:"Off"}},Mt={general:VA,"post-function":{tags:{hint:"e.g. tag1, tag2, tag3",newElementButtonLabel:"+ Add"},enabled:{newElementButtonLabel:"+ Add"},selectionGroup:{newElementButtonLabel:"+ Add"},instance_name:{newElementButtonLabel:"+ Add"},name:{newElementButtonLabel:"+ Add"},"config-certificate":{help:"Array of stringified Lua code to be cached and run in sequence during the certificate phase.",newElementButtonLabel:"+ Add"},"config-access":{help:"Array of stringified Lua code to be cached and run in sequence during the access phase.",newElementButtonLabel:"+ Add"},"config-body_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the body_filter phase.",newElementButtonLabel:"+ Add"},"config-header_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the header_filter phase.",newElementButtonLabel:"+ Add"},"config-functions":{newElementButtonLabel:"+ Add"},"config-log":{newElementButtonLabel:"+ Add"},"config-rewrite":{newElementButtonLabel:"+ Add"},"config-ws_client_frame":{newElementButtonLabel:"+ Add"},"config-ws_close":{newElementButtonLabel:"+ Add"},"config-ws_handshake":{newElementButtonLabel:"+ Add"},"config-ws_upstream_frame":{newElementButtonLabel:"+ Add"}},"exit-transformer":{"config-functions":{newElementButtonLabel:"+ Add"}},rla:NA,validators:DA,vfg:PA},{t:ve}=Ze.createI18n("en-us",Mt),Te={fieldIsRequired:ve("validators.field_is_required"),invalidFormat:ve("validators.invalid_format"),numberTooSmall:ve("validators.number_too_small"),numberTooBig:ve("validators.number_too_large"),invalidNumber:ve("validators.invalid_number"),invalidInteger:ve("validators.invalid_integer"),textTooSmall:ve("validators.text_too_short"),textTooBig:ve("validators.text_too_long"),thisNotText:ve("validators.this_not_text"),thisNotArray:ve("validators.this_not_array"),selectMinItems:ve("validators.select_min_items"),selectMaxItems:ve("validators.select_max_items"),invalidDate:ve("validators.invalid_date"),dateIsEarly:ve("validators.date_is_early"),dateIsLate:ve("validators.date_is_late"),invalidEmail:ve("validators.invalid_email"),invalidURL:ve("validators.invalid_url"),invalidCard:ve("validators.invalid_card"),invalidCardNumber:ve("validators.invalid_card_number"),invalidTextContainNumber:ve("validators.invalid_text_contain_number"),invalidTextContainSpec:ve("validators.invalid_tex_contain_spec")},we=(e,...n)=>{if(e&&n.length>0)for(let i=0;i<n.length;i++)e=e.replace("{"+(i-1)+"}",String(n[i]||""));return e},qe=(e,n,i=Te)=>Me(e)||e===""?n?[we(i.fieldIsRequired)]:[]:null,Rt={required:(e,n,i,a=Te)=>qe(e,n.required,a)||[],number:(e,n,i,a=Te)=>{let o=qe(e,n.required,a);return o!=null||(o=[],OA(e)?(!Me(n.min)&&e<n.min,(a=Te)&&o.push(we(a.numberTooSmall,n.min)),!Me(n.max)&&e>n.max,(a=Te)&&o.push(we(a.numberTooBig,n.max))):o.push(we(a.invalidNumber))),o},integer:(e,n,i,a=Te)=>{let o=qe(e,n.required,a);return o!=null||(o=[],o.concat(Rt.number(e,n,i,a)),SA(e)||o.push(we(a.invalidInteger))),o},double:(e,n,i,a=Te)=>qe(e,n.required,a)??(!ti(e)||isNaN(e)?[we(a.invalidNumber)]:[]),string:(e,n,i,a=Te)=>{let o=qe(e,n.required,a);return o!=null||(o=[],vt(e)?(!Me(n.min)&&e.length<n.min&&o.push(we(a.textTooSmall,e.length,n.min)),!Me(n.max)&&e.length>n.max&&o.push(we(a.textTooBig,e.length,n.max))):o.push(we(a.thisNotText))),o},array:(e,n,i,a=Te)=>{if(n.required){if(!Array.isArray(e))return[we(a.thisNotArray)];if(e.length===0)return[we(a.fieldIsRequired)]}if(!Me(e)){if(!Me(n.min)&&e.length<n.min)return[we(a.selectMinItems,n.min)];if(!Me(n.max)&&e.length>n.max)return[we(a.selectMaxItems,n.max)]}return[]},date:(e,n,i,a=Te)=>{let o=qe(e,n.required,a);if(o!=null)return o;o=[];const r=new Date(e);if(isNaN(r.getDate()))return[we(a.invalidDate)];if(!Me(n.min)){const s=new Date(n.min);r.valueOf()<s.valueOf()&&o.push(we(a.dateIsEarly,jt.format(r),jt.format(s)))}if(!Me(n.max)){const s=new Date(n.max);r.valueOf()>s.valueOf()&&o.push(we(a.dateIsLate,jt.format(r),jt.format(s)))}return o},regexp:(e,n,i,a=Te)=>qe(e,n.required,a)??(!Me(n.pattern)&&!new RegExp(n.pattern).test(e)?[we(a.invalidFormat)]:[]),email:(e,n,i,a=Te)=>qe(e,n.required,a)??(/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e)?[]:[we(a.invalidEmail)]),url:(e,n,i,a=Te)=>qe(e,n.required,a)??(/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g.test(e)?[]:[we(a.invalidURL)]),creditCard:(e,n,i,a=Te)=>{const o=qe(e,n.required,a);if(o!=null)return o;const r=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,s=e.replace(/[^0-9]+/g,"");if(!r.test(s))return[we(a.invalidCard)];let l=0,d,p,u;for(let A=s.length-1;A>=0;A--)d=s.substring(A,A+1),p=parseInt(d,10),u?(p*=2,p>=10?l+=p%10+1:l+=p):l+=p,u=!u;return l%10===0&&s?[]:[we(a.invalidCardNumber)]},alpha:(e,n,i,a=Te)=>qe(e,n.required,a)??(/^[a-zA-Z]*$/.test(e)?[]:[we(a.invalidTextContainNumber)]),alphaNumeric:(e,n,i,a=Te)=>qe(e,n.required,a)??(/^[a-zA-Z0-9]*$/.test(e)?[]:[we(a.invalidTextContainSpec)])};Object.keys(Rt).forEach(e=>{const n=Rt[e];he(n)&&(n.locale=i=>(a,o,r)=>n(a,o,r,IA(i,Te)))});function so(e){return vt(e)?Rt[e]!=null?Rt[e]:(console.warn(`'${e}' is not a validator function!`),null):e}function ni(e,n,i){let a=le(i.context,"schema.attributes",{});const o=n.value||"input";vt(o)&&(a=le(a,o)||a),De(a,(r,s)=>{e.setAttribute(s,r)})}const at={name:"abstractField",props:["vfg","model","schema","formOptions","disabled"],emits:["validated","modelUpdated"],data(){return{errors:[],debouncedValidateFunc:null,debouncedFormatFunc:null}},directives:{attributes:{beforeMount:ni,updated:ni,componentUpdated:ni}},computed:{value:{cache:!1,get(){let e;return he(le(this.schema,"get"))?e=this.schema.get(this.model):e=le(this.model,this.schema.model),this.formatValueToField(e)},set(e){const n=this.value;e=this.formatValueToModel(e),he(e)?e(e,n):this.updateModelValue(e,n)}}},methods:{validate(e){this.clearValidationErrors();const n=le(this.formOptions,"validateAsync",!1);let i=[];if(this.schema.validator&&this.schema.readonly!==!0&&this.disabled!==!0){const o=[];Array.isArray(this.schema.validator)?De(this.schema.validator,r=>{o.push(so(r).bind(this))}):o.push(so(this.schema.validator).bind(this)),De(o,r=>{if(n)i.push(r(this.value,this.schema,this.model));else{const s=r(this.value,this.schema,this.model);s&&he(s.then)?s.then(l=>{l&&(this.errors=this.errors.concat(l));const d=this.errors.length===0;this.$emit("validated",d,this.errors,this)}):s&&(i=i.concat(s))}})}const a=o=>{let r=[];De(Fa(o),l=>{Array.isArray(l)&&l.length>0?r=r.concat(l):vt(l)&&r.push(l)}),he(this.schema.onValidated)&&this.schema.onValidated.call(this,this.model,r,this.schema);const s=r.length===0;return e||this.$emit("validated",s,r,this),this.errors=r,r};return n?Promise.all(i).then(a):a(i)},debouncedValidate(){he(this.debouncedValidateFunc)||(this.debouncedValidateFunc=tn(this.validate.bind(this),le(this.schema,"validateDebounceTime",le(this.formOptions,"validateDebounceTime",500)))),this.debouncedValidateFunc()},updateModelValue(e,n){let i=!1;he(this.schema.set)?(this.schema.set(this.model,e),i=!0):this.schema.model&&(this.setModelValueByPath(this.schema.model,e),i=!0),i&&(this.$emit("modelUpdated",e,this.schema.model),he(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,e,n,this.schema),le(this.formOptions,"validateAfterChanged",!1)===!0&&(le(this.schema,"validateDebounceTime",le(this.formOptions,"validateDebounceTime",0))>0?this.debouncedValidate():this.validate()))},clearValidationErrors(){this.errors.splice(0)},setModelValueByPath(e,n){let i=e.replace(/\[(\w+)\]/g,".$1");i=i.replace(/^\./,"");let a=this.model;const o=i.split(".");let r=0;const s=o.length;for(;r<s;){const l=o[r];if(r<s-1)a[l]!==void 0||(a[l]={}),a=a[l];else{a[l]=n;return}++r}},getFieldID(e,n=!1){const i=le(this.formOptions,"fieldIdPrefix","");return _n(e,i)+(n?"-"+Ka():"")},getLabelId(e){return`${this.getFieldID(e)}-label`},getFieldClasses(){return le(this.schema,"fieldClasses",[])},formatValueToField(e){return e},formatValueToModel(e){return e}}},Ee=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},LA={mixins:[at],emits:["model-updated"],data(){return{isOpen:!1}},computed:{openClass(){return this.isOpen?"open":"closed"},fieldCount(){return this.schema.fields.length},titleText(){return`${this.isOpen?"Hide":"View"} ${this.fieldCount} Advanced Fields`}},methods:{handleOpen(){this.isOpen=!this.isOpen},updateModel(e,n){this.$emit("model-updated",e,n)}}},GA={class:"advanced-field-dropdown-wrapper","data-testid":"advanced-field-dropdown-wrapper"},UA={class:"material-icons"};function jA(e,n,i,a,o,r){const s=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",GA,[t.createElementVNode("button",{class:"advanced-field-title",type:"button",onClick:n[0]||(n[0]=(...l)=>r.handleOpen&&r.handleOpen(...l))},[t.createElementVNode("i",UA,t.toDisplayString(o.isOpen?"keyboard_arrow_up":"keyboard_arrow_right"),1),t.createElementVNode("span",null,t.toDisplayString(r.titleText),1)]),t.createElementVNode("div",{class:t.normalizeClass(["advanced-field-dropdown",r.openClass])},[t.createVNode(s,{model:e.model,options:{helpAsHtml:!0},schema:e.schema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])],2)])}const YA=Ee(LA,[["render",jA],["__scopeId","data-v-acfccff7"]]),HA={class:"array-card-container"},FA=t.defineComponent({__name:"FieldArrayCardContainer",props:{model:{type:Object,default:()=>null},schema:{type:Object,default:()=>null},index:{type:Number,default:void 0}},emits:["remove-item"],setup(e){return t.provide("vfg-array-item-index",e.index),(n,i)=>{const a=t.resolveComponent("KCard"),o=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",HA,[t.createVNode(a,{class:"card"},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default",{},void 0,!0)]),_:3}),t.createVNode(o,{appearance:"tertiary",class:"array-card-remove-button",onClick:i[0]||(i[0]=r=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(je.TrashIcon))]),_:1})])}}}),lo=Ee(FA,[["__scopeId","data-v-96055692"]]),KA={class:"array-item-wrapper"},zA={class:"array-item"},JA={class:"array-item-after"},QA=t.defineComponent({__name:"FieldArrayItem",props:{model:{type:String,default:""}},emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",KA,[t.createElementVNode("div",zA,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(a,{appearance:"tertiary",class:"delete",onClick:i[0]||(i[0]=o=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(je.TrashIcon))]),_:1})]),t.createElementVNode("div",JA,[t.renderSlot(n.$slots,"after",{},void 0,!0)])])}}}),co=Ee(QA,[["__scopeId","data-v-eb9975cc"]]),XA={class:"multi-item-wrapper"},qA=t.defineComponent({__name:"FieldArrayMultiItem",emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",XA,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(a,{appearance:"danger",class:"delete",onClick:i[0]||(i[0]=o=>n.$emit("remove-item"))},{default:t.withCtx(()=>i[1]||(i[1]=[t.createTextVNode(" - Remove Field ")])),_:1}),i[2]||(i[2]=t.createElementVNode("hr",null,null,-1))])}}}),uo=Ee(qA,[["__scopeId","data-v-37458a0a"]]),ZA="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",WA=e=>e?e.length===36&&new RegExp(`^${ZA}$`).test(e):!1,ii=50,Tt={CREATE_NOT_FROM_ENTITY:"CREATE_NOT_FROM_ENTITY",CREATE_FROM_ENTITY:"CREATE_FROM_ENTITY",UPDATE_ENTITY:"UPDATE_ENTITY",SET_REFERRAL_VALUE:"SET_REFERRAL_VALUE"};function _A(e,n,i){return i?Tt.SET_REFERRAL_VALUE:e&&!n||!e&&n?Tt.UPDATE_ENTITY:e&&n?Tt.CREATE_FROM_ENTITY:Tt.CREATE_NOT_FROM_ENTITY}const $A={mixins:[at],inject:[dt],emits:["model-updated"],setup(){const{t:e}=Ze.createI18n("en-us",Mt);return{t:e}},data(){return{suggestions:[],idValue:"",message:"Type something to search",items:[],initialItems:[],loading:!1}},computed:{fieldState(){return _A(this.model[this.schema.model],this.associatedEntity||this.entityId,this.bypassSearch)},associatedEntity(){return this.$route&&this.$route.params[this.entity]},entity(){return this.schema.entity},scope(){return this.schema.label.toLowerCase()},bypassSearch(){return this.$route&&this.$route.query&&this.$route.query.no_search}},async created(){await this.$nextTick();let e,n;switch(this.fieldState){case Tt.UPDATE_ENTITY:if(!this[dt]){console.warn("[@kong-ui-public/forms] No API service provided");break}n=(await this[dt].getOne(this.entity,this.model[this.schema.model])).data,e=this.getItem(this.schema.entityDataKey?n[this.schema.entityDataKey]:n),this.idValue=e.id;break;case Tt.CREATE_FROM_ENTITY:this.idValue=this.associatedEntity.id;break;case Tt.SET_REFERRAL_VALUE:this.idValue=this.value}try{e&&(this.initialItems=[{...e,label:this.getSuggestionLabel(e),value:e.id}]),this.items=this.initialItems}catch(i){this.message=`There was an error loading ${this.schema.entity}`,console.error("err!",i)}},methods:{onQueryChange(e){e.trim().length===0&&(this.items=[],this.message="Type something to search"),typeof this.performSearch!="function"&&(this.performSearch=tn(this.search,500)),this.performSearch(e)},async search(e){if(e.trim().length===0)return;this.loading=!0;const n=[],i=[],a=this.getInputFields(),o=new Set;WA(e)&&a.includes("id")?i.push((async()=>{const r=await this.fetchExact(e);n.push({...r,label:this.getSuggestionLabel(r),value:r.id})})()):i.push(...a.filter(r=>r!=="id").map(async r=>{(await this.fetchSuggestions(e,r)).forEach(s=>{o.has(s.id)||(o.add(s.id),n.push({...s,label:this.getSuggestionLabel(s),value:s.id}))})})),await Promise.all(i),this.items=n,this.items.length===0&&(this.message="No results"),this.loading=!1},getItem(e){return e.data?e.data.length>0?e.data[0]:[]:e},async fetchUntilLimit(e){const n=[];let i=null;if(!this[dt])return console.warn("[@kong-ui-public/forms] No API service provided"),[];for(;n.length<ii;){const a=await this[dt].getAll(this.entity,{size:ii,offset:i,...e});if(n.push(...a.data.data),i=a.data.offset,!i)break}return n.slice(0,ii)},async fetchSuggestions(e,n){return this.fetchUntilLimit({[n]:e})},async fetchExact(e){return this[dt]?(await this[dt].getOne(this.entity,e)).data:(console.warn("[@kong-ui-public/forms] No API service provided"),{})},getInputFields(){var e,n;return((n=(e=this.schema)==null?void 0:e.inputValues)==null?void 0:n.fields)||[]},getSuggestionLabel(e){const n=this.getInputFields();return n.length&&e?n.map(i=>e[i]).filter(Boolean).join(" - "):""},updateModel(e){this.$emit("model-updated",e!=null&&e.length?e:null,this.schema.model)},onSelected(e){this.idValue=e&&e.id,this.updateModel(this.getReturnValue(e||{}))},getReturnValue(e){var n;const i=(n=this.schema)==null?void 0:n.returnKey;return i?e[i]:e.id}}},eg=["data-testid","data-testlabel"],tg=["data-testid"],ng={class:"autosuggest__results_message"};function ig(e,n,i,a,o,r){const s=t.resolveComponent("KSelect");return t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.disabled?"k-tooltip":"div"),{class:"field-wrap autosuggest","max-width":"300",text:a.t("general.disable_source_scope_change",{scope:r.scope})},{default:t.withCtx(()=>[t.createVNode(s,{id:e.schema.model,ref:"suggestion",modelValue:o.idValue,"onUpdate:modelValue":n[0]||(n[0]=l=>o.idValue=l),clearable:"",disabled:e.schema.disabled,"enable-filtering":"","filter-function":()=>!0,items:o.items,loading:o.loading,placeholder:e.schema.placeholder,width:"100%",onChange:r.onSelected,onQueryChange:r.onQueryChange},{"item-template":t.withCtx(({item:l})=>[t.createElementVNode("span",{class:"first-part","data-testid":l.id&&`${l.id}-0`,"data-testlabel":l.label},t.toDisplayString(r.getSuggestionLabel(l).split(" - ")[0]),9,eg),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.getSuggestionLabel(l).split(" - ").slice(1),(d,p)=>(t.openBlock(),t.createElementBlock("span",{key:p,class:"field-span","data-testid":l.id&&`${l.id}-${p+1}`||p+1},t.toDisplayString(d),9,tg))),128))]),empty:t.withCtx(()=>[t.createElementVNode("div",ng,[t.createElementVNode("span",null,t.toDisplayString(o.message),1)])]),_:1},8,["id","modelValue","disabled","items","loading","placeholder","onChange","onQueryChange"])]),_:1},8,["text"])}const po=Ee($A,[["render",ig],["__scopeId","data-v-40a272a2"]]);function ag(e){const n=t.ref([]),i=t.ref(null),a=h=>vt(h)?Rt[h]!=null?Rt[h]:(console.warn(`'${h}' is not a validator function!`),null):h,o=t.computed({get(){var h,I;let w;return he(le(e.schema,"get"))?w=e.schema.get((h=e.model)==null?void 0:h.value):w=le((I=e.model)==null?void 0:I.value,e.schema.model),E(w)},set(h){const I=o;h=S(h),he(h)?h(h,I):l(h,I)}}),r=h=>{var I;d();const w=(I=e.schema)==null?void 0:I.validator,j=le(e.formOptions,"validateAsync",!1);let y=[];if(w&&e.schema.readonly!==!0&&e.disabled!==!0){const b=[];Array.isArray(w)?De(w,f=>{b.push(a(f))}):b.push(a(w)),De(b,f=>{var k,O;if(j)y.push(f(o.value,e.schema,(k=e.model)==null?void 0:k.value));else{const H=f(o.value,e.schema,(O=e.model)==null?void 0:O.value);H&&he(H.then)?H.then(x=>{x&&(n.value=n.value.concat(x));const D=n.value.length===0;e.emitValidated&&e.emitValidated({isValid:D,errors:n.value,field:e.schema})}):H&&(y=y.concat(H))}})}const m=b=>{var f,k;let O=[];if(De(Fa(b),H=>{Array.isArray(H)&&H.length>0?O=O.concat(H):vt(H)&&O.push(H)}),he((f=e.schema)==null?void 0:f.onValidated)&&e.schema.onValidated((k=e.model)==null?void 0:k.value,O,e.schema),!h){const H=O.length===0;e.emitValidated&&e.emitValidated({isValid:H,errors:O,field:e.schema})}return b=O,O};return j?Promise.all(y).then(m):m(y)},s=()=>{he(i.value)?i.value():i.value=tn(r,le(e.schema,"validateDebounceTime",le(e.formOptions,"validateDebounceTime",500)))},l=(h,I)=>{var w,j,y;let m=!1;he(e.schema.set)?(e.schema.set((w=e.model)==null?void 0:w.value,h),m=!0):e.schema.model&&(p(e.schema.model,h),m=!0),m&&(e.emitModelUpdated&&(j=e.model)!=null&&j.value&&e.emitModelUpdated({value:h,model:e.schema.model}),he(e.schema.onChanged)&&e.schema.onChanged((y=e.model)==null?void 0:y.value,h,I,e.schema),le(e.formOptions,"validateAfterChanged",!1)===!0&&(le(e.schema,"validateDebounceTime",le(e.formOptions,"validateDebounceTime",0))>0?s():r()))},d=()=>{n.value.splice(0)},p=(h,I)=>{var w;let j=h.replace(/\[(\w+)\]/g,".$1");j=j.replace(/^\./,"");let y=((w=e.model)==null?void 0:w.value)||{},m=0;const b=j.split("."),f=b.length;for(;m<f;){const k=b[m];if(m<f-1)y[k]!==void 0||(y[k]={}),y=y[k];else{y[k]=I;return}++m}},u=(h,I=!1)=>{const w=le(e.formOptions,"fieldIdPrefix","");return _n(h,w)+(I?"-"+Ka():"")},A=h=>`${u(h)}-label`,g=()=>le(e.schema,"fieldClasses",[]),E=h=>e.formatValueToField&&typeof e.formatValueToField=="function"?e.formatValueToField(h):h,S=h=>e.formatValueToModel&&typeof e.formatValueToModel=="function"?e.formatValueToModel(h):h;return{value:o,clearValidationErrors:d,getFieldID:u,getLabelId:A,getFieldClasses:g,updateModelValue:l}}const gt={useAbstractFields:ag},og={class:"form-field-wrapper"},rg=t.defineComponent({__name:"FieldInput",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRefs(a),s=t.inject(Xe,void 0),{updateModelValue:l,getFieldID:d,clearValidationErrors:p,value:u}=gt.useAbstractFields({model:r.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:y=>{o("modelUpdated",y.value,y.model)}});n({clearValidationErrors:p});const A=t.computed(()=>{var y;const m=(y=a.schema)==null?void 0:y.inputType.toLowerCase();switch(m){case"string":return"text";case"datetime":return"datetime-local";default:return m||"text"}}),g={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss","datetime-local":"YYYY-MM-DDTHH:mm:ss"},E=(y,m)=>{var b,f;let k=y;const O=g[A.value]||"",H=jt.parse(y,O);H&&((b=a.schema)!=null&&b.format?k=jt.format(H,(f=a.schema)==null?void 0:f.format):k=H.valueOf()),l(k,m)},S=(y,m)=>{ti(y)||(y=NaN),l(y,m)},h=y=>{let m=y;switch(A.value){case"number":case"range":ti(parseFloat(y))&&(m=parseFloat(y));break}u.value=m,l(m,y)},I=y=>{u.value=y,l(y,y)},w=t.ref(null),j=()=>{var y;he(w.value)&&((y=w.value)==null||y.flush())};return t.onMounted(()=>{switch(A.value){case"number":case"range":w.value=tn((y,m)=>{S(y,m)},parseInt(le(a.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break;case"date":case"datetime":case"datetime-local":w.value=tn((y,m)=>{E(y,m)},parseInt(le(a.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break}}),t.onBeforeMount(()=>{A.value==="checkbox"?console.warn("The use of 'checkbox' inputType with 'input' type fields is deprecated. Use 'checkbox' type instead."):A.value==="radio"?console.warn("The use of 'radio' inputType with 'input' type fields is deprecated. Use 'radio' type instead."):A.value==="file"&&console.warn("The 'file' type in input field is deprecated. Use 'file' field instead.")}),(y,m)=>{const b=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock("div",og,[t.createVNode(b,t.mergeProps(y.$attrs,{id:t.unref(d)(e.schema),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint?e.hint:A.value==="color"||A.value==="range"?t.unref(u):void 0,max:e.schema.max,maxlength:e.schema.maxlength,min:e.schema.min,minlength:e.schema.minlength,"model-value":t.unref(u),name:e.schema.inputName,pattern:e.schema.pattern,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,"show-password-mask-toggle":A.value==="password",type:A.value,width:e.schema.width,onBlur:j,"onUpdate:modelValue":h}),null,16,["id","autocomplete","class","disabled","help","max","maxlength","min","minlength","model-value","name","pattern","placeholder","readonly","required","show-password-mask-toggle","type","width"]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(s)),{schema:e.schema,update:I,value:t.unref(u)},null,8,["schema","value"]))])}}}),Ao=Ee(rg,[["__scopeId","data-v-fe1132bb"]]),sg={name:"FieldMetric",components:{AddIcon:je.AddIcon,TrashIcon:je.TrashIcon},mixins:[at],emits:["remove-item"],data(){return{contentVisible:!1}}},lg={key:0,class:"content"};function cg(e,n,i,a,o,r){const s=t.resolveComponent("AddIcon"),l=t.resolveComponent("TrashIcon"),d=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["field-dropdown",{active:o.contentVisible}])},[t.createElementVNode("div",{class:"title",onClick:n[0]||(n[0]=p=>o.contentVisible=!o.contentVisible)},[t.createTextVNode(t.toDisplayString(e.model.name?e.model.name:"New Item")+" ",1),t.createVNode(s,{class:"metric-add-icon"})]),t.createVNode(t.Transition,{name:"slide-fade"},{default:t.withCtx(()=>[o.contentVisible?(t.openBlock(),t.createElementBlock("div",lg,[t.renderSlot(e.$slots,"default"),t.createVNode(d,{appearance:"tertiary",class:"metric-remove-button",onClick:n[1]||(n[1]=p=>e.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(l)]),_:1})])):t.createCommentVNode("",!0)]),_:3})],2)}const go=Ee(sg,[["render",cg]]),dg={mixins:[at],emits:["modelUpdated"],data(){return{attributes:this.schema?this.schema.attributes:void 0,newKeyType:"string",newKeyName:"",keyTypes:{}}},created(){this.value||(this.value={})},mounted(){if(!this.value)return;const e=Object.keys(this.value),n={};for(let i=0;i<e.length;i++){const a=e[i];n[a]=typeof this.value[a]}this.keyTypes=n},methods:{removeElement(e){const n=this.value;delete n[e],this.value=JSON.parse(JSON.stringify(n));const i=this.keyTypes;delete i[e],this.keyTypes=JSON.parse(JSON.stringify(i))},addKey(){this.value[this.newKeyName]=void 0,this.value={...this.value},this.keyTypes[this.newKeyName]=this.newKeyType,this.keyTypes={...this.keyTypes},this.newKeyName=""},updateModel(e,n){this.$emit("modelUpdated",e,n)}}},ug={class:"field-object-container"},pg={key:1},Ag=["id"],gg={key:0},mg=["onUpdate:modelValue"],fg={key:1},hg=["onUpdate:modelValue"],yg={key:2},bg=["onUpdate:modelValue"],Eg=["onClick"];function wg(e,n,i,a,o,r){const s=t.resolveComponent("vue-form-generator"),l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",ug,[e.schema.schema?(t.openBlock(),t.createBlock(s,{key:0,model:e.value,options:e.formOptions,schema:e.schema.schema,onModelUpdated:r.updateModel},null,8,["model","options","schema","onModelUpdated"])):(t.openBlock(),t.createElementBlock("div",pg,[t.createElementVNode("table",{id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(d,p)=>(t.openBlock(),t.createElementBlock("tr",{key:p},[t.createElementVNode("td",null,t.toDisplayString(p),1),o.keyTypes[p]==="string"?(t.openBlock(),t.createElementBlock("td",gg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[p]=u,type:"text"},null,8,mg),[[t.vModelText,e.value[p]]])])):t.createCommentVNode("",!0),o.keyTypes[p]==="boolean"?(t.openBlock(),t.createElementBlock("td",fg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[p]=u,type:"checkbox"},null,8,hg),[[t.vModelCheckbox,e.value[p]]])])):t.createCommentVNode("",!0),o.keyTypes[p]==="number"?(t.openBlock(),t.createElementBlock("td",yg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[p]=u,type:"number"},null,8,bg),[[t.vModelText,e.value[p]]])])):t.createCommentVNode("",!0),t.createElementVNode("td",null,[t.createElementVNode("input",{type:"button",value:"x",onClick:u=>r.removeElement(p)},null,8,Eg)])]))),128))],10,Ag),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":n[0]||(n[0]=d=>o.newKeyType=d)},n[3]||(n[3]=[t.createElementVNode("option",{value:"string"}," String ",-1),t.createElementVNode("option",{value:"number"}," Number ",-1),t.createElementVNode("option",{value:"boolean"}," Boolean ",-1)]),512),[[t.vModelSelect,o.newKeyType]]),t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[1]||(n[1]=d=>o.newKeyName=d),type:"text"},null,512),[[t.vModelText,o.newKeyName]]),t.createElementVNode("input",{type:"button",value:"Add key",onClick:n[2]||(n[2]=(...d)=>r.addKey&&r.addKey(...d))})]))])),[[l,o.attributes]])}const mo=Ee(dg,[["render",wg],["__scopeId","data-v-b7e3dcd7"]]),Cg={components:{TrashIcon:je.TrashIcon},mixins:[at],inject:{autofillSlot:{from:Xe,default:void 0}},emits:["model-updated"],data(){return{newKeyName:""}},computed:{subSchema(){return this.schema.schema&&this.schema.schema.fields[0].schema},subFields(){return!this.subSchema&&this.schema.fields},hasObjectKeys(){return this.value&&Object.keys(this.value).length>0},transformedModel(){return this.subSchema&&this.subSchema.fields.length>=1&&this.subSchema.fields[0].type==="array"?new Proxy(this.model[this.schema.model],{get:(e,n)=>({[this.schema.model]:e[n]}),set:(e,n,i)=>e[n]=i[this.schema.model]}):this.model[this.schema.model]},valueInputType(){var e;return["number","integer"].includes((e=this.schema.values)==null?void 0:e.type)?"number":"text"}},mounted(){this.value||(this.value={});let e=[];this.subSchema?e=this.subSchema.fields:this.subFields&&(e=this.schema.fields[0].schema),this.value=this.transformMapModelValuesToObject(this.model,e,this.schema.model)},methods:{removeElement(e){const n=this.value;delete n[e],this.value={...n}},transformMapModelValuesToObject(e,n,i){const a={};return Object.keys(e).map(o=>{const r=o.indexOf(i+"-");if(r>-1&&Array.isArray(n))if(n.length>0){const s=o.split("-").filter(d=>n.find(p=>p.model===d)),l=o.split(`-${s}`)[0].split(`${i}-`)[1];s.length?a[l]={...a[l],[s]:e[o]}:a[o.substring(r+`${i}-`.length)]=e[o]}else a[o.substring(`${i}-`.length)]=e[o];else{const s=o.split("-").filter(d=>d===this.schema.model),l=o.split(`-${s}`)[0].split(`${i}-`)[1];l&&(a[l]=e[o])}return o}),a},addKey(){var e;const n=this.subSchema&&Array.isArray(this.subSchema.fields)&&this.subSchema.fields.length===1&&this.subSchema.fields[0].type==="array",i=((e=this.schema.values)==null?void 0:e.default)??(this.valueInputType==="number"?0:""),a=this.subSchema?n?[""]:{}:i;this.value[this.newKeyName]=a,this.newKeyName=""},updateModel(e,n){this.$emit("model-updated",this.model[this.schema.model],n)}}},Bg=["id"],kg=["data-testid"],Ig={class:"item-wrapper"},vg={class:"index-wrapper"},Og={key:0},Mg={key:1},Rg=["onUpdate:modelValue","placeholder","type","onInput"],Tg={key:0,class:"hint"},Sg={class:"input-item"},xg=["placeholder"],Vg={key:0,class:"hint"};function Ng(e,n,i,a,o,r){const s=t.resolveComponent("TrashIcon"),l=t.resolveComponent("KButton"),d=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",{id:e.getFieldID(e.schema),class:t.normalizeClass(["object-advanced-wrapper",e.schema.fieldClasses])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(p,u)=>(t.openBlock(),t.createElementBlock("div",{key:u,"data-testid":`field-object-key-${u}`},[t.createElementVNode("div",null,[t.createElementVNode("div",Ig,[t.createElementVNode("div",vg,[t.createElementVNode("strong",null,t.toDisplayString(u),1),t.createElementVNode("div",null,[t.createVNode(l,{appearance:"tertiary",class:"delete",icon:"",type:"button",onClick:A=>r.removeElement(u)},{default:t.withCtx(()=>[t.createVNode(s)]),_:2},1032,["onClick"])])]),n[1]||(n[1]=t.createElementVNode("hr",{class:"divider"},null,-1)),r.subSchema?(t.openBlock(),t.createElementBlock("div",Og,[t.createVNode(d,{model:r.transformedModel[u],options:{helpAsHtml:!0},schema:r.subSchema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])):(t.openBlock(),t.createElementBlock("div",Mg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":A=>e.value[u]=A,class:"form-control",placeholder:e.schema.fields&&e.schema.fields[0].schema.placeholder,type:r.valueInputType,onInput:A=>r.updateModel(e.value[u],e.model[e.schema.model])},null,40,Rg),[[t.vModelDynamic,e.value[u]]]),e.schema.fields&&e.schema.fields[0].schema.hint?(t.openBlock(),t.createElementBlock("p",Tg,t.toDisplayString(e.schema.fields[0].schema.hint),1)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema.fields&&e.schema.fields[0].schema||e.schema.values,update:A=>e.value[u]=A,value:e.value[u]},null,8,["schema","update","value"]))])),n[2]||(n[2]=t.createElementVNode("hr",{class:"wide-divider"},null,-1))])])],8,kg))),128)),t.createElementVNode("div",{class:t.normalizeClass(["input-wrapper",{indent:r.hasObjectKeys}])},[t.createElementVNode("div",Sg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=p=>o.newKeyName=p),class:"form-control","data-testid":"keyname-input",placeholder:e.schema.placeholder,type:"text"},null,8,xg),[[t.vModelText,o.newKeyName]]),t.createVNode(l,{appearance:"tertiary","data-testid":"add-key",disabled:!o.newKeyName,onClick:r.addKey},{default:t.withCtx(()=>[t.createTextVNode(" + Add "+t.toDisplayString(e.schema.buttonLabel||e.schema.label),1)]),_:1},8,["disabled","onClick"])]),e.schema.hintText?(t.openBlock(),t.createElementBlock("p",Vg,t.toDisplayString(e.schema.hintText),1)):t.createCommentVNode("",!0)],2)],10,Bg)}const fo=Ee(Cg,[["render",Ng],["__scopeId","data-v-5b7aaeef"]]),Dg={class:"radio-selection-group"},Pg=t.defineComponent({__name:"FieldRadio",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRefs(a),{updateModelValue:s,value:l,clearValidationErrors:d}=gt.useAbstractFields({model:r.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:u=>{o("modelUpdated",u.value,u.model)}});n({clearValidationErrors:d});const p=u=>{let A=u;typeof u=="string"&&(A=u.split(","),a.schema.array||(A=A.toString())),s(A,u)};return(u,A)=>{const g=t.resolveComponent("KRadio");return t.openBlock(),t.createElementBlock("div",Dg,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.values,(E,S)=>(t.openBlock(),t.createBlock(g,{id:e.schema.name+"-"+S,key:E.value,modelValue:t.unref(l),"onUpdate:modelValue":A[0]||(A[0]=h=>t.isRef(l)?l.value=h:null),label:E.name,"label-attributes":{info:e.schema.help},name:e.schema.name,required:e.schema.required||void 0,"selected-value":E.value,onChange:p},null,8,["id","modelValue","label","label-attributes","name","required","selected-value"]))),128))])}}}),ho=Ee(Pg,[["__scopeId","data-v-09b8afda"]]),yo=t.defineComponent({__name:"FieldSelect",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.computed(()=>a.schema.selectOptions||{}),s=h=>Me(h)?null:h,l=t.toRefs(a),{getFieldID:d,clearValidationErrors:p,value:u}=gt.useAbstractFields({model:l.model,schema:a.schema,formOptions:a.formOptions,formatValueToField:s,emitModelUpdated:h=>{o("modelUpdated",h.value,h.model)}});n({clearValidationErrors:p});const A=t.computed(()=>{const h=a.schema.values;return g(typeof h=="function"?h.apply(this,[a.model,a.schema]):h)}),g=h=>{const I=[];return h.forEach(w=>{I.push({label:S(w),value:E(w),disabled:typeof w=="object"&&w.disabled||void 0,group:typeof w=="object"&&String(w.group||"").toUpperCase()||void 0})}),I},E=h=>{if(He(h)){if(r.value&&typeof r.value.value<"u")return h[r.value.value];if(typeof h.id<"u")return String(h.id);throw new Error("`id` is not defined. If you want to use another key name, add a `value` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return h},S=h=>{if(He(h)){if(r.value&&typeof r.value.name<"u")return h[r.value.name];if(typeof h.name<"u")return String(h.name);throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return String(h)};return(h,I)=>{const w=t.resolveComponent("KSelect");return t.openBlock(),t.createBlock(w,{id:t.unref(d)(e.schema),modelValue:t.unref(u),"onUpdate:modelValue":I[0]||(I[0]=j=>t.isRef(u)?u.value=j:null),class:t.normalizeClass(e.schema.fieldClasses),clearable:!e.schema.required,disabled:e.disabled||void 0,items:A.value,"kpop-attributes":{"data-testid":`${t.unref(d)(e.schema)}-items`},"label-attributes":{info:e.schema.help},name:e.schema.inputName,placeholder:r.value.hideNoneSelectedText?void 0:r.value.noneSelectedText||"Nothing Selected",required:e.schema.required||void 0,width:"100%"},null,8,["id","modelValue","class","clearable","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),Lg={name:"FieldArray",components:{FieldArrayItem:co,FieldArrayMultiItem:uo,FieldSelect:yo,FieldMetric:go,FieldObject:mo,FieldObjectAdvanced:fo,FieldAutoSuggest:po,FieldRadio:ho,FieldArrayCardContainer:lo,FieldInput:Ao},mixins:[at],inject:{autofillSlot:{from:Xe,default:void 0}},props:{newElementButtonLabel:{type:String,default:"New Item"},removeElementButtonLabel:{type:String,default:"x"}},emits:["refreshModel"],methods:{generateSchema(e,n,i){var a,o,r;let s;return n&&(s=JSON.parse(JSON.stringify(n)),(r=(o=(a=s.schema)==null?void 0:a.fields)==null?void 0:o.map)==null||r.call(o,l=>(l.id=`${l.id||l.model}-${i}`,l))),{...s,set(l,d){e[i]=d},get(){return e[i]}}},newElement(){let e=this.value,n;(!e||!e.push)&&(e=[]),this.schema.items&&this.schema.items.default&&(typeof this.schema.items.default=="function"?n=this.schema.items.default():n=this.schema.items.default),e.push(n),this.value=[...e]},removeElement(e){this.value=this.value.filter((n,i)=>i!==e)},getFieldType(e){return"field-"+e.type},modelUpdated(){this.$emit("refreshModel")},handleInput(e,n){this.value=this.value.map((i,a)=>a===n?e:i)}}},Gg=["id"],Ug={key:1},jg=["onUpdate:modelValue","aria-labelledby","type"],Yg=["onUpdate:modelValue","aria-labelledby"];function Hg(e,n,i,a,o,r){const s=t.resolveComponent("KTextArea"),l=t.resolveComponent("KInput"),d=t.resolveComponent("KButton");return e.schema?(t.openBlock(),t.createElementBlock("div",{key:0,id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(p,u)=>(t.openBlock(),t.createElementBlock("div",{key:u,class:t.normalizeClass(e.schema.fieldItemsClasses)},[e.schema.items&&e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:0,index:u,model:p,schema:r.generateSchema(e.value,e.schema.items,u),onRemoveItem:A=>r.removeElement(u)},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:p,schema:r.generateSchema(e.value,e.schema.items,u),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))]),_:2},1064,["index","model","schema","onRemoveItem"])):e.schema.items?(t.openBlock(),t.createElementBlock("span",Ug,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:p,schema:r.generateSchema(e.value,e.schema.items,u),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))])):e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:2,"data-testid":`${e.getFieldID(e.schema)}-item-${u}`,model:p,schema:r.generateSchema(e.value,e.schema.items,u),onRemoveItem:A=>r.removeElement(u)},{after:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema,update:A=>e.value[u]=A,value:e.value[u]},null,8,["schema","update","value"]))]),default:t.withCtx(()=>{var A;return[e.schema.inputAttributes&&e.schema.inputAttributes.type==="textarea"?(t.openBlock(),t.createBlock(s,t.mergeProps({key:0,ref_for:!0},e.schema.inputAttributes,{id:e.getFieldID(e.schema),modelValue:e.value[u],"onUpdate:modelValue":g=>e.value[u]=g,"aria-labelledby":e.getLabelId(e.schema),class:e.schema.fieldClasses,maxlength:e.schema.max,minlength:e.schema.min,name:e.schema.inputName,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,resizable:"",rows:e.schema.rows||3}),null,16,["id","modelValue","onUpdate:modelValue","aria-labelledby","class","maxlength","minlength","name","placeholder","readonly","required","rows"])):!e.schema.inputAttributes||!e.schema.inputAttributes.type||e.schema.inputAttributes.type==="text"||e.schema.inputAttributes.type==="number"?(t.openBlock(),t.createBlock(l,t.mergeProps({key:1,"aria-labelledby":e.getLabelId(e.schema),ref_for:!0},e.schema.inputAttributes,{"model-value":e.value[u],type:e.schema.inputAttributes&&e.schema.inputAttributes.type||"text",onInput:g=>{r.handleInput(g,u)}}),null,16,["aria-labelledby","model-value","type","onInput"])):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:2,"onUpdate:modelValue":g=>e.value[u]=g,"aria-labelledby":e.getLabelId(e.schema),ref_for:!0},e.schema.inputAttributes,{type:((A=e.schema.inputAttributes)==null?void 0:A.type)||"text"}),null,16,jg)),[[t.vModelDynamic,e.value[u]]])]}),_:2},1064,["data-testid","model","schema","onRemoveItem"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.withDirectives(t.createElementVNode("input",t.mergeProps({ref_for:!0},e.schema.inputAttributes,{"onUpdate:modelValue":A=>e.value[u]=A,"aria-labelledby":e.getLabelId(e.schema),type:"text"}),null,16,Yg),[[t.vModelText,e.value[u]]]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema,update:A=>e.value[u]=A,value:e.value[u]},null,8,["schema","update","value"]))],64))],2))),128)),t.createVNode(d,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`add-${e.getFieldID(e.schema)}`,type:"button",onClick:r.newElement},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel||i.newElementButtonLabel),1)]),_:1},8,["class","data-testid","onClick"])],10,Gg)):t.createCommentVNode("",!0)}const Fg=Ee(Lg,[["render",Hg],["__scopeId","data-v-a05b4cb6"]]),Kg={class:"form-field-wrapper field-checkbox"},zg=t.defineComponent({__name:"FieldCheckbox",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRefs(a),{getFieldID:s,value:l,clearValidationErrors:d}=gt.useAbstractFields({model:r.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:p=>{o("modelUpdated",p.value,p.model)}});return n({clearValidationErrors:d}),(p,u)=>{const A=t.resolveComponent("KCheckbox");return t.openBlock(),t.createElementBlock("div",Kg,[t.createVNode(A,t.mergeProps(p.$attrs,{id:t.unref(s)(e.schema),modelValue:t.unref(l),"onUpdate:modelValue":u[0]||(u[0]=g=>t.isRef(l)?l.value=g:null),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint?e.hint:void 0,name:e.schema.inputName,readonly:e.schema.readonly,required:e.schema.required,width:e.schema.width}),null,16,["id","modelValue","autocomplete","class","disabled","help","name","readonly","required","width"])])}}}),Jg=Ee(zg,[["__scopeId","data-v-6b4ee1cd"]]);var Qg=4;function bo(e){return en(e,Qg)}const Xg={class:"wrapper"},qg=["disabled"],Zg=["id","checked","disabled","onChange","name"],Wg=["disabled"],_g={class:"info"},$g={class:"dropList"},em=["id","checked","disabled","onChange","name"];function tm(e,n,i,a,o,r){const s=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",Xg,[e.schema.listBox?(t.openBlock(),t.createElementBlock("div",{key:0,class:"listbox form-control",disabled:e.disabled||null},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,l=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":r.isItemChecked(l)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:r.isItemChecked(l)||null,disabled:e.disabled||null,onChange:d=>r.onChanged(d,l),name:r.getInputName(l)},null,40,Zg),[[s,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(l)),1)])],2))),256))],8,qg)):t.createCommentVNode("",!0),e.schema.listBox?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:1,class:"combobox form-control",disabled:e.disabled||null},[t.createElementVNode("div",{class:t.normalizeClass(["mainRow",{expanded:o.comboExpanded}]),onClick:n[0]||(n[0]=(...l)=>r.onExpandCombo&&r.onExpandCombo(...l))},[t.createElementVNode("div",_g,t.toDisplayString(r.selectedCount)+" selected",1),n[1]||(n[1]=t.createElementVNode("div",{class:"arrow"},null,-1))],2),t.createElementVNode("div",$g,[o.comboExpanded?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(r.items,l=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":r.isItemChecked(l)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:r.isItemChecked(l)||null,disabled:e.disabled||null,onChange:d=>r.onChanged(d,l),name:r.getInputName(l)},null,40,em),[[s,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(l)),1)])],2))),256)):t.createCommentVNode("",!0)])],8,Wg))])),[[s,"wrapper"]])}const nm={mixins:[at],data(){return{comboExpanded:!1}},computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e},selectedCount(){return this.value?this.value.length:0}},methods:{getInputName(e){return this.schema&&this.schema.inputName&&this.schema.inputName.length>0?Ua(this.schema.inputName+"_"+this.getItemValue(e)):Ua(this.getItemValue(e))},getItemValue(e){if(He(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.value<"u")return e[this.schema.checklistOptions.value];if(typeof e.value<"u")return e.value;throw new Error("`value` is not defined. If you want to use another key name, add a `value` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},getItemName(e){if(He(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.name<"u")return e[this.schema.checklistOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},isItemChecked(e){return this.value&&this.value.indexOf(this.getItemValue(e))!==-1},onChanged(e,n){if((Me(this.value)||!Array.isArray(this.value))&&(this.value=[]),e.target.checked){const i=bo(this.value);i.push(this.getItemValue(n)),this.value=i}else{const i=bo(this.value);i.splice(this.value.indexOf(this.getItemValue(n)),1),this.value=i}},onExpandCombo(){this.comboExpanded=!this.comboExpanded}}},im=Ee(nm,[["render",tm]]),am={name:"FieldKeyValuePairs",components:{TrashIcon:je.TrashIcon},mixins:[at],inject:{autofillSlot:{from:Xe,default:void 0}},data(){return{pairs:[]}},watch:{pairs:{handler(){this.updateValue()},deep:!0}},created(){var e,n;this.value||(this.value={});const i=((n=this.model)==null?void 0:n[(e=this.schema)==null?void 0:e.model])??{};Object.keys(i).forEach(a=>{this.pairs.push({key:a,value:i[a]})})},methods:{onInput(e,n,i){this.pairs[n][i]=e.target.value},updateValue(){this.value=this.pairs.reduce((e,{key:n,value:i})=>({...e,...n&&i?{[n]:i}:null}),{})},addPair(){this.pairs.push({key:"",value:""})},removePair(e){this.pairs.splice(e,1)}}},om={class:"key-value-pairs-editor"},rm={class:"pair-item-cell"},sm=["data-testid","placeholder","value","onInput"],lm={class:"pair-item-cell"},cm=["data-testid","placeholder","value","onInput"];function dm(e,n,i,a,o,r){const s=t.resolveComponent("TrashIcon"),l=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",om,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.pairs,(d,p)=>(t.openBlock(),t.createElementBlock("div",{key:p,class:"pair-item"},[t.createElementVNode("div",rm,[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-key-${p}`,placeholder:e.schema.keyInputPlaceholder??"Key",type:"text",value:d.key,onInput:u=>{r.onInput(u,p,"key")}},null,40,sm),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema,update:u=>r.onInput({target:{value:u}},p,"key"),value:d.key},null,8,["schema","update","value"]))]),t.createElementVNode("div",lm,[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-value-${p}`,placeholder:e.schema.valueInputPlaceholder??"Value",type:"text",value:d.value,onInput:u=>{r.onInput(u,p,"value")}},null,40,cm),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema,update:u=>r.onInput({target:{value:u}},p,"value"),value:d.value},null,8,["schema","update","value"]))]),t.createVNode(l,{appearance:"tertiary","data-testid":`${e.getFieldID(e.schema)}-remove-pair-${p}`,onClick:()=>{r.removePair(p)}},{default:t.withCtx(()=>[t.createVNode(s)]),_:2},1032,["data-testid","onClick"])]))),128)),t.createVNode(l,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`${e.getFieldID(e.schema)}-add-pair`,type:"button",onClick:r.addPair},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel??"+ Add Pair"),1)]),_:1},8,["class","data-testid","onClick"])])}const um=Ee(am,[["render",dm],["__scopeId","data-v-70998d5b"]]),pm=t.defineComponent({__name:"FieldLabel",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0}},setup(e){const n=e,i=t.toRefs(n),{getFieldID:a,value:o}=gt.useAbstractFields({model:i.model,schema:n.schema,formOptions:n.formOptions});return(r,s)=>{const l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["field-label",e.schema.fieldClasses])},[t.createVNode(l,{id:t.unref(a)(e.schema)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)),1)]),_:1},8,["id"])],2)}}}),Am=Ee(pm,[["__scopeId","data-v-d046a15a"]]),gm=t.defineComponent({__name:"FieldMultiselect",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRef(a,"model"),{getLabelId:s,getFieldID:l,clearValidationErrors:d,value:p}=gt.useAbstractFields({model:r,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:A=>{o("modelUpdated",A.value,A.model)}});n({clearValidationErrors:d});const u=t.computed(()=>{var A,g;return a.schema.values?a.schema.values:(g=(A=a.schema.elements)==null?void 0:A.one_of)!=null&&g.length?a.schema.elements.one_of.map(E=>({label:String(E),value:String(E)})):[]});return(A,g)=>{const E=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(E,{id:t.unref(l)(e.schema),modelValue:t.unref(p),"onUpdate:modelValue":g[0]||(g[0]=S=>t.isRef(p)?p.value=S:null),"aria-labelledby":t.unref(s)(e.schema),class:t.normalizeClass(e.schema.fieldClasses),"data-testid":"field-multiselect",disabled:e.disabled||void 0,items:u.value,"kpop-attributes":{"data-testid":`${t.unref(l)(e.schema)}-items`},"label-attributes":{info:e.schema.help},name:e.schema.inputName,placeholder:e.schema.placeholder,required:e.schema.required||void 0,width:"100%"},null,8,["id","modelValue","aria-labelledby","class","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),mm={mixins:[at],emits:["model-updated"],setup(){const{t:e}=Ze.createI18n("en-us",Mt);return{t:e}},data(){return{checkedGroup:null,fieldModel:{...this.model},fieldSchema:[],scope:"scope"}},watch:{checkedGroup:{handler(e,n){if(n===null){this.fieldModel={...this.model};return}const i=this.schema.fields[e].fields,a=this.schema.fields[n].fields;a&&a.forEach(o=>this.updateModel("",o.model)),i&&i.forEach(o=>this.updateModel(this.fieldModel[o.model],o.model))}}},async created(){await this.$nextTick(),this.schema.fields.forEach((e,n)=>{e.fields&&e.fields.forEach(i=>{var a;this.model[i.model]&&(this.checkedGroup=n,this.fieldSchema.push(i.model),this.scope=(a=i.label)==null?void 0:a.toLowerCase())})}),this.checkedGroup===null&&(this.checkedGroup=0)},methods:{updateModel(e,n){this.$emit("model-updated",e,n)}}},fm={class:"selection-group"},hm={class:"form-group horizontal-radios"},ym={class:"radio-group"},bm=["disabled","value"],Em={class:"control-help"},wm={class:"option-field"},Cm={class:"option-field-container"};function Bm(e,n,i,a,o,r){const s=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",fm,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.$props.disabled?"k-tooltip":"div"),{"max-width":"300",text:a.t("general.disable_global_radio",{scope:o.scope})},{default:t.withCtx(()=>[t.createElementVNode("div",hm,[t.createElementVNode("div",ym,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(l,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:t.normalizeClass(["option-group",{"radio-disabled":e.$props.disabled}])},[t.createElementVNode("label",{class:t.normalizeClass(["k-label",`${l.label}-check`])},[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=p=>o.checkedGroup=p),class:"k-input",disabled:e.$props.disabled,type:"radio",value:d},null,8,bm),[[t.vModelRadio,o.checkedGroup]]),t.createTextVNode(" "+t.toDisplayString(l.label)+" ",1),t.createElementVNode("div",Em,t.toDisplayString(l.description),1)],2)],2))),128))])])]),_:1},8,["text"])),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(l,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:"option-group"},[t.withDirectives(t.createElementVNode("div",wm,[t.createElementVNode("div",Cm,[t.createVNode(s,{model:e.model,options:{helpAsHtml:!0},schema:{fields:l.fields},onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])],512),[[t.vShow,l.fields&&o.checkedGroup===d]])]))),128))])}const km=Ee(mm,[["render",Bm],["__scopeId","data-v-56d57edb"]]),Im={class:"form-field-wrapper"},vm=t.defineComponent({__name:"FieldSwitch",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,{t:r}=Ze.createI18n("en-us",Mt),s=g=>g!=null&&a.schema.valueOn?g===a.schema.valueOn:g,l=g=>g!=null&&a.schema.valueOn?g?a.schema.valueOn:a.schema.valueOff:g,d=t.toRefs(a),{getFieldID:p,value:u,clearValidationErrors:A}=gt.useAbstractFields({model:d.model,schema:a.schema,formOptions:a.formOptions,formatValueToField:s,formatValueToModel:l,emitModelUpdated:g=>{o("modelUpdated",g.value,g.model)}});return n({clearValidationErrors:A}),(g,E)=>{const S=t.resolveComponent("KInputSwitch");return t.openBlock(),t.createElementBlock("div",Im,[t.createVNode(S,{id:t.unref(p)(e.schema),modelValue:t.unref(u),"onUpdate:modelValue":E[0]||(E[0]=h=>t.isRef(u)?u.value=h:null),autocomplete:e.schema.autocomplete,class:t.normalizeClass(e.schema.fieldClasses),disabled:e.disabled||void 0,label:t.unref(u)?e.schema.textOn||t.unref(r)("vfg.labels.on"):e.schema.textOff||t.unref(r)("vfg.labels.off"),"label-attributes":{info:e.schema.help},name:e.schema.inputName,required:e.schema.required||void 0},null,8,["id","modelValue","autocomplete","class","disabled","label","label-attributes","name","required"])])}}}),Om={class:"field-textarea"},Mm=t.defineComponent({__name:"FieldTextArea",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRefs(a),s=t.inject(Xe,void 0),{updateModelValue:l,getFieldID:d,clearValidationErrors:p,value:u}=gt.useAbstractFields({model:r.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:g=>{o("modelUpdated",g.value,g.model)}});n({clearValidationErrors:p});const A=g=>{u.value=g,l(g,g)};return(g,E)=>{const S=t.resolveComponent("KTextArea");return t.openBlock(),t.createElementBlock("div",Om,[t.createVNode(S,t.mergeProps(g.$attrs,{id:t.unref(d)(e.schema),modelValue:t.unref(u),"onUpdate:modelValue":E[0]||(E[0]=h=>t.isRef(u)?u.value=h:null),"character-limit":e.schema.max,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint||void 0,minlength:e.schema.min,name:e.schema.inputName,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,resizable:"",rows:e.schema.rows||3}),null,16,["id","modelValue","character-limit","class","disabled","help","minlength","name","placeholder","readonly","required","rows"]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(s)),{schema:e.schema,update:A,value:t.unref(u)},null,8,["schema","value"]))])}}}),Rm=Ee(Mm,[["__scopeId","data-v-58a14059"]]),Tm=Object.freeze(Object.defineProperty({__proto__:null,FieldAdvanced:YA,FieldArray:Fg,FieldArrayCardContainer:lo,FieldArrayItem:co,FieldArrayMultiItem:uo,FieldAutoSuggest:po,FieldCheckbox:Jg,FieldChecklist:im,FieldInput:Ao,FieldKeyValuePairs:um,FieldLabel:Am,FieldMetric:go,FieldMultiselect:gm,FieldObject:mo,FieldObjectAdvanced:fo,FieldRadio:ho,FieldSelect:yo,FieldSelectionGroup:km,FieldSwitch:vm,FieldTextArea:Rm},Symbol.toStringTag,{value:"Module"})),Sm={name:"FormGroup",components:Tm,mixins:[ja],inject:{"vfg-array-item-index":{default:void 0}},props:{vfg:{type:Object,required:!0},model:{type:Object,default:()=>{}},options:{type:Object,default:()=>{}},field:{type:Object,required:!0},errors:{type:Array,default(){return[]}}},emits:["validated","modelUpdated","refreshModel"],data(){return{child:t.ref()}},computed:{schema(){var e;if(!((e=this.field)!=null&&e.schema)||!Array.isArray(this.field.schema.fields))return this.field;const n=this["vfg-array-item-index"];return typeof n!="number"||Number.isNaN(n)?this.field:{...this.field,schema:{...this.field.schema,fields:this.field.schema.fields.map(i=>({...i,...i.id?{id:`${i.id}-${n}`}:void 0}))}}}},methods:{fieldTypeHasLabel(e){if(Me(e.label))return!1;let n="";switch(e.type==="input"?n=e.inputType:n=e.type,n){case"button":case"submit":case"reset":return!1;default:return!0}},getFieldID(e){const n=le(this.options,"fieldIdPrefix","");return _n(e,n)},getTooltipId(e){return`${this.getFieldID(e)}-tooltip`},getFieldType(e){return"field-"+e.type},getButtonType(e){return le(e,"type","button")},onFieldValidated(e,n,i){this.$emit("validated",e,n,i)},buttonVisibility(e){return e.buttons&&e.buttons.length>0},buttonClickHandler(e,n,i){return e.onclick.call(this,this.model,n,i,this)},fieldHint(e){return he(e.hint)?e.hint.call(this,this.model,e,this):e.hint},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e){return this.$refs.child.validate(e)},clearValidationErrors(){if(this.$refs.child)return this.$refs.child.clearValidationErrors()},formattedLabel(e){return e?e.replace(/^[cC]onfig\./,""):""}}},xm=["innerHTML"],Vm={class:"icon-wrapper"},Nm=["innerHTML"],Dm={key:0,class:"link-wrapper"},Pm={class:"field-wrap"},Lm={key:0,class:"buttons"},Gm=["type","onClick","textContent"],Um=["innerHTML"],jm={key:2,class:"errors help-block"},Ym=["innerHTML"];function Hm(e,n,i,a,o,r){const s=t.resolveComponent("KExternalLink"),l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["form-group",e.getFieldRowClasses(i.field)])},[r.fieldTypeHasLabel(i.field)?(t.openBlock(),t.createBlock(l,{key:0,"aria-describedby":i.field.help?r.getTooltipId(i.field):void 0,class:t.normalizeClass([i.field.labelClasses,"form-group-label"]),for:r.getFieldID(i.field),info:!i.options.helpAsHtml&&i.field.help?i.field.help:void 0,"tooltip-attributes":i.field.help?{maxWidth:"300",placement:"top",tooltipId:r.getTooltipId(i.field)}:void 0},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",Vm,[t.createElementVNode("span",{innerHTML:r.formattedLabel(i.field.label)},null,8,Nm)]),i.field.link?(t.openBlock(),t.createElementBlock("div",Dm,[t.createVNode(s,{href:i.field.link},{default:t.withCtx(()=>n[0]||(n[0]=[t.createElementVNode("span",{class:"section-header"},"More info",-1)])),_:1},8,["href"])])):t.createCommentVNode("",!0)]),_:2},[i.options.helpAsHtml&&i.field.help?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:i.field.help},null,8,xm)]),key:"0"}:void 0]),1032,["aria-describedby","class","for","info","tooltip-attributes"])):t.createCommentVNode("",!0),t.createElementVNode("div",Pm,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(i.field)),t.mergeProps(e.$attrs,{ref:"child",disabled:e.fieldDisabled(i.field)||null,"form-options":i.options,hint:i.field.hint&&r.getFieldType(i.field)==="field-input"?r.fieldHint(i.field):void 0,model:i.model,schema:r.schema,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated}),null,16,["disabled","form-options","hint","model","schema","vfg","onModelUpdated","onRefreshModel","onValidated"])),r.buttonVisibility(i.field)?(t.openBlock(),t.createElementBlock("div",Lm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.field.buttons,(d,p)=>(t.openBlock(),t.createElementBlock("button",{key:p,class:t.normalizeClass(d.classes),type:r.getButtonType(d),onClick:u=>r.buttonClickHandler(d,i.field,u),textContent:t.toDisplayString(d.label)},null,10,Gm))),128))])):t.createCommentVNode("",!0)]),i.field.hint&&r.getFieldType(i.field)!=="field-input"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"hint",innerHTML:r.fieldHint(i.field)},null,8,Um)):t.createCommentVNode("",!0),r.fieldErrors(i.field).length>0?(t.openBlock(),t.createElementBlock("div",jm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.fieldErrors(i.field),(d,p)=>(t.openBlock(),t.createElementBlock("span",{key:p,innerHTML:d},null,8,Ym))),128))])):t.createCommentVNode("",!0)],2)}const Fm=Ee(Sm,[["render",Hm],["__scopeId","data-v-0cb2e226"]]),Km={name:"FormGenerator",components:{formGroup:Fm},mixins:[ja],inject:{autofillSlot:{from:Xe,default:void 0}},provide(){var e;return{...!this.autofillSlot&&{[Xe]:(e=this.$slots)==null?void 0:e[ut]}}},props:{schema:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},options:{type:Object,default(){return{validateAfterLoad:!1,validateAfterChanged:!1,child:t.ref([]),fieldIdPrefix:"",validateAsync:!1,validationErrorClass:"error",validationSuccessClass:"",helpAsHtml:!1}}},multiple:{type:Boolean,default:!1},isNewModel:{type:Boolean,default:!1},tag:{type:String,default:"fieldset",validator:function(e){return e.length>0}}},emits:["validated","modelUpdated","refreshModel"],data(){return{vfg:this,errors:[],children:t.ref([]),collapseStates:{}}},computed:{fields(){const e=[];return this.schema&&this.schema.fields&&De(this.schema.fields,n=>{(!this.multiple||n.multi===!0)&&e.push(n)}),e},groups(){const e=[];return this.schema&&this.schema.groups&&De(this.schema.groups.slice(0),n=>{e.push(n)}),e}},watch:{model:{deep:!0,handler(e,n){n!==e&&e!=null&&this.$nextTick(()=>{this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors()})}}},mounted(){this.$nextTick(()=>{this.model&&(this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors())})},methods:{fieldVisible(e){return he(e.visible)?e.visible.call(this,this.model,e,this):Me(e.visible)?!0:e.visible},onFieldValidated(e,n,i){this.errors=this.errors.filter(o=>o.field.fieldName!==i.schema.fieldName),!e&&n&&n.length>0&&De(n,o=>{this.errors.push({field:i.schema,error:o})});const a=this.errors.length===0;this.$emit("validated",a,this.errors,this)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e=null){e===null&&(e=le(this.options,"validateAsync",!1)),this.clearValidationErrors();const n=[],i=[];De(this.$refs.children,o=>{he(o.validate)&&(n.push(o.$refs.child),i.push(o.$refs.child.validate(!0)))});const a=o=>{const r=[];De(o,(l,d)=>{Array.isArray(l)&&l.length>0&&De(l,p=>{r.push({field:n[d].schema,error:p})})}),this.errors=r;const s=r.length===0;return this.$emit("validated",s,r,this),e?r:s};return e?Promise.all(i).then(a):a(i)},clearValidationErrors(){this.errors.splice(0),De(this.$refs.children,e=>{e.clearValidationErrors()})}}},zm={key:0,class:"vue-form-generator"},Jm={key:0};function Qm(e,n,i,a,o,r){const s=t.resolveComponent("form-group"),l=t.resolveComponent("KCollapse");return i.schema!=null?(t.openBlock(),t.createElementBlock("div",zm,[i.schema.fields?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.fields,d=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:d.model},[r.fieldVisible(d)?(t.openBlock(),t.createBlock(s,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:d,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:1})):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.groups,(d,p)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`group-${p}`},[d.collapsible!==void 0&&d.collapsible!==!1?(t.openBlock(),t.createBlock(l,{key:0,class:"root-level-collapse","model-value":!1,title:d.collapsible.title},t.createSlots({default:t.withCtx(()=>{var u,A,g,E;return[(u=d.slots)!=null&&u.beforeContent?t.renderSlot(e.$slots,(A=d.slots)==null?void 0:A.beforeContent,{key:0}):t.createCommentVNode("",!0),d.fields.length===0&&(g=d.slots)!=null&&g.emptyState?t.renderSlot(e.$slots,(E=d.slots)==null?void 0:E.emptyState,{key:1}):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:2,class:t.normalizeClass(e.getFieldRowClasses(d))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.fields,S=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:S.model},[r.fieldVisible(S)?(t.openBlock(),t.createBlock(s,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:S,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"])),d.collapsible!==!0&&d.collapsible.nestedCollapsible&&d.collapsible.nestedCollapsible.fields.length>0?(t.openBlock(),t.createBlock(l,{key:3,class:"nested-collapse","model-value":o.collapseStates[`group-${p}-nested`]??!0,"trigger-alignment":"leading","trigger-label":o.collapseStates[`group-${p}-nested`]??!0?d.collapsible.nestedCollapsible.triggerLabel.expand:d.collapsible.nestedCollapsible.triggerLabel.collapse,"onUpdate:modelValue":S=>o.collapseStates[`group-${p}-nested`]=S},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{class:t.normalizeClass(e.getFieldRowClasses(d))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.collapsible.nestedCollapsible.fields,S=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:S.model},[r.fieldVisible(S)?(t.openBlock(),t.createBlock(s,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:S,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))]),_:2},1032,["model-value","trigger-label","onUpdate:modelValue"])):t.createCommentVNode("",!0)]}),_:2},[d.collapsible.description?{name:"visible-content",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(d.collapsible.description),1)]),key:"0"}:void 0]),1032,["title"])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:1,class:t.normalizeClass(e.getFieldRowClasses(d))},{default:t.withCtx(()=>[d.legend?(t.openBlock(),t.createElementBlock("legend",Jm,t.toDisplayString(d.legend),1)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.fields,u=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:u.model},[r.fieldVisible(u)?(t.openBlock(),t.createBlock(s,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:u,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))],64))),128))])):t.createCommentVNode("",!0)}const Le=Ee(Km,[["render",Qm]]),Eo=new Set(["config-client_id","config-client_secret","config-issuer"]),wo=new Set(["config-scopes_claim","config-scopes_required","config-audience_claim","config-audience_required","config-roles_claim","config-roles_required","config-groups_claim","config-groups_required","config-authenticated_groups_claim"]),Xm={name:"OIDCForm",components:{VueFormGenerator:Le},provide(){var e;return{[Xe]:(e=this.$slots)==null?void 0:e[ut]}},props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},data(){return{init:!1,authMethods:[],sessionManagement:!1,globalFields:null,commonFieldsSchema:null,authFieldsSchema:null,advancedFieldsSchema:{fields:[]},advancedFields:null,tabs:[{hash:"#common",title:"Common"},{hash:"#authorization",title:"Authorization"},{hash:"#advanced",title:"Advanced"}]}},computed:{displayForm(){return this.formModel.id&&this.isEditing||!this.isEditing}},watch:{formModel:{handler:function(){this.oidcSetup()}}},mounted(){this.oidcSetup()},methods:{oidcSetup(){var e;if(!this.init){this.init=!0,this.globalFields={fields:this.formSchema.fields.filter(i=>!i.model.startsWith("config")&&i.model!=="tags")};const n=this.formSchema.fields.reduce((i,a)=>(i[a.model]=a,i),{});this.commonFieldsSchema={fields:Array.from(Eo).reduce((i,a)=>(n[a]&&i.push(n[a]),i),[])},this.authFieldsSchema={fields:Array.from(wo).reduce((i,a)=>(n[a]&&i.push(n[a]),i),[])},this.advancedFieldsSchema={fields:this.formSchema.fields.filter(i=>i.model.startsWith("config")&&i.model!=="config-auth_methods"&&!Eo.has(i.model)&&!wo.has(i.model)||i.model==="tags").reduce((i,a)=>{var o,r,s,l;switch(a.model){case"config-client_jwk":{if(Array.isArray((r=(o=a.items)==null?void 0:o.schema)==null?void 0:r.fields))for(const d of a.items.schema.fields)d.label=d.model;i.push({...a,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#jwk-record",newElementButtonLabel:"+ Add Client JWK",...Array.isArray((l=(s=a.items)==null?void 0:s.schema)==null?void 0:l.fields)&&a.items.schema.fields.map(d=>({...d,label:d.model}))});break}case"config-session_redis_cluster_nodes":{i.push({...a,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#host-record",newElementButtonLabel:"+ Add Cluster Node"});break}default:i.push(a)}return i},[])},this.sessionManagement=this.isEditing?this.formModel["config-auth_methods"].includes("session"):!1,this.authMethods=[{label:"Authorization Code Flow",value:"authorization_code",hint:"authorization code flow",prop:this.isEditing?this.formModel["config-auth_methods"].includes("authorization_code"):!1},{label:"Bearer Access Token",value:"bearer",hint:"JWT access token verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("bearer"):!1},{label:"Client Credentials Grant",value:"client_credentials",hint:"OAuth client credentials grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("client_credentials"):!1},{label:"Passwords Grant",value:"password",hint:"OAuth legacy password grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("password"):!1},{label:"Introspection",value:"introspection",hint:"OAuth introspection",prop:this.isEditing?this.formModel["config-auth_methods"].includes("introspection"):!1},{label:"UserInfo",value:"userinfo",hint:"OpenID Connect user info endpoint authentication",prop:this.isEditing?this.formModel["config-auth_methods"].includes("userinfo"):!1},{label:"Kong OAuth",value:"kong_oauth2",hint:"Kong OAuth plugin issued tokens verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("kong_oauth2"):!1},{label:"Refresh Token",value:"refresh_token",hint:"OAuth refresh token grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("refresh_token"):!1}];for(const i of[this.commonFieldsSchema,this.authFieldsSchema,this.advancedFieldsSchema])for(const a of i.fields){const o=(e=n[a.model])==null?void 0:e.help;a.help===void 0&&typeof o=="string"&&(a.help=o)}}},getAuthMethodsValue(e,n){const i=[];for(let a=0;a<this.authMethods.length;a++)this.authMethods[a].prop&&this.authMethods[a].value!==e&&i.push(this.authMethods[a].value);return this.sessionManagement&&e&&i.push("session"),n&&(e?i.push(e):i.push("session")),i},handleUpdate(e,n){this.formModel["config-auth_methods"]=this.getAuthMethodsValue(n,e),this.onModelUpdated()}}},qm={class:"general-settings"},Zm={class:"link-wrapper"},Wm={class:"auth-method-container"},_m={class:"general-settings"},$m={class:"link-wrapper"},ef={class:"general-settings"},tf={class:"link-wrapper"};function nf(e,n,i,a,o,r){const s=t.resolveComponent("VueFormGenerator"),l=t.resolveComponent("KExternalLink"),d=t.resolveComponent("KLabel"),p=t.resolveComponent("KCheckbox"),u=t.resolveComponent("KInputSwitch"),A=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[i.formModel.id&&i.isEditing||!i.isEditing?(t.openBlock(),t.createBlock(s,{key:0,class:"global-fields",model:i.formModel,options:i.formOptions,schema:o.globalFields,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(A,{tabs:o.tabs},{common:t.withCtx(()=>[t.createElementVNode("div",qm,[t.createElementVNode("div",Zm,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#important-configuration-parameters"},{default:t.withCtx(()=>n[1]||(n[1]=[t.createElementVNode("span",{class:"section-header"},"Common Configuration Settings",-1)])),_:1})]),n[3]||(n[3]=t.createElementVNode("div",{class:"description"}," Parameters for enabling the OpenID Connect plugin. Set these parameters before adding authorization, authentication, or other advanced configuration details. ",-1)),r.displayForm?(t.openBlock(),t.createBlock(s,{key:0,model:i.formModel,options:i.formOptions,schema:o.commonFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(d,null,{default:t.withCtx(()=>n[2]||(n[2]=[t.createTextVNode("Auth Methods")])),_:1}),t.createElementVNode("div",Wm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.authMethods,g=>(t.openBlock(),t.createElementBlock("div",{key:g.value,class:"auth-method"},[t.createVNode(p,{modelValue:g.prop,"onUpdate:modelValue":E=>g.prop=E,onChange:E=>r.handleUpdate(E,g.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.label),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]))),128))]),t.createVNode(u,{modelValue:o.sessionManagement,"onUpdate:modelValue":n[0]||(n[0]=g=>o.sessionManagement=g),label:"Enable Session Management",onChange:r.handleUpdate},null,8,["modelValue","onChange"])])]),authorization:t.withCtx(()=>[t.createElementVNode("div",_m,[t.createElementVNode("div",$m,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#authorization"},{default:t.withCtx(()=>n[4]||(n[4]=[t.createElementVNode("span",{class:"section-header"},"Authorization Configuration Settings",-1)])),_:1})]),n[5]||(n[5]=t.createElementVNode("div",{class:"description"}," Parameters for setting up claims-based authorization. ",-1)),r.displayForm?(t.openBlock(),t.createBlock(s,{key:0,model:i.formModel,options:i.formOptions,schema:o.authFieldsSchema,onModelUpdated:i.onModelUpdated},{"autofill-provider":t.withCtx(g=>[t.renderSlot(e.$slots,"autofill-provider",t.normalizeProps(t.guardReactiveProps(g)),void 0,!0)]),_:3},8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),advanced:t.withCtx(()=>[t.createElementVNode("div",ef,[t.createElementVNode("div",tf,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/"},{default:t.withCtx(()=>n[6]||(n[6]=[t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings",-1)])),_:1})]),n[7]||(n[7]=t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the OpenID Connect plugin. ",-1)),r.displayForm?(t.openBlock(),t.createBlock(s,{key:0,model:i.formModel,options:i.formOptions,schema:o.advancedFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:3},8,["tabs"])])}const af=Ee(Xm,[["render",nf],["__scopeId","data-v-bb72c68e"]]),of=t.defineComponent({__name:"PostFunction",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var n;t.provide(Xe,(n=t.useSlots())==null?void 0:n[ut]);const{t:i,te:a}=Ze.createI18n("en-us",Mt),o=e,r=t.computed(()=>o.formModel.id&&o.isEditing||!o.isEditing),s=t.computed(()=>{const l=o.formSchema;return l.fields.map(d=>{const p=`post-function.${d.model}`;return d.hint=a(`${p}.hint`)&&i(`${p}.hint`)||d.hint,d.help=a(`${p}.help`)&&i(`${p}.help`)||d.help,d.newElementButtonLabel=a(`${p}.newElementButtonLabel`)&&i(`${p}.newElementButtonLabel`)||d.newElementButtonLabel,d.model!=="tags"&&(d.valueType==="array"||d.type==="array")&&(d.type="array",d.valueArrayType="array",d.itemContainerComponent="FieldArrayItem",d.fieldClasses="post-function-array-item-container",d.fieldItemsClasses="post-function-array-item",d.inputAttributes={...d.inputAttributes,type:"textarea"}),d}),l});return(l,d)=>r.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),rf=Ee(of,[["__scopeId","data-v-f54f37ae"]]),sf=t.defineComponent({__name:"ExitTransformer",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var n;t.provide(Xe,(n=t.useSlots())==null?void 0:n[ut]);const{t:i,te:a}=Ze.createI18n("en-us",Mt),o=e,r=t.computed(()=>o.formModel.id&&o.isEditing||!o.isEditing),s=t.computed(()=>{const l=o.formSchema;return l.fields.map(d=>{const p=`exit-transformer.${d.model}`;return d.hint=a(`${p}.hint`)&&i(`${p}.hint`)||d.hint,d.help=a(`${p}.help`)&&i(`${p}.help`)||d.help,d.newElementButtonLabel=a(`${p}.newElementButtonLabel`)&&i(`${p}.newElementButtonLabel`)||d.newElementButtonLabel,d.model!=="tags"&&(d.valueType==="array"||d.type==="array")&&(d.type="array",d.valueArrayType="array",d.itemContainerComponent="FieldArrayItem",d.fieldClasses="exit-transformer-array-item-container",d.fieldItemsClasses="exit-transformer-array-item",d.inputAttributes={...d.inputAttributes,type:"textarea"}),d}),l});return(l,d)=>r.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),lf=Ee(sf,[["__scopeId","data-v-0d5c541f"]]),cf={fields:[{inputType:"text",label:"Config.Account Email",model:"config-account_email",required:!0,type:"input"},{inputType:"text",label:"Config.Account Key.Key Id",model:"config-account_key-key_id",required:!0,type:"input"},{type:"input",inputType:"text",valueType:"string",label:"Config.Account Key.Key Set",model:"config-account_key-key_set",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",label:"Config.Allow Any Domain",model:"config-allow_any_domain",order:0,disabled:!1}]},df={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",model:"config-tos_accepted",label:"Config.Tos Accepted",order:0,disabled:!1}]},uf={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_hmac_key",label:"Config.Eab Hmac Key",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_kid",label:"Config.Eab Kid",order:0,disabled:!1}]},pf={class:"general-settings"},Af={class:"sub-form"},gf={class:"general-settings"},mf={class:"sub-form"},ff={class:"general-settings"},hf=t.defineComponent({__name:"ACMEForm",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var n;t.provide(Xe,(n=t.useSlots())==null?void 0:n[ut]);const i=e,a=t.ref("zeroSsl"),o=t.ref("shm"),r=t.computed(()=>{var f;const k={};if((f=i.formSchema)!=null&&f.fields)for(const O of i.formSchema.fields)k[O.model]=O;return k}),s=t.computed(()=>{var f;const k=it(cf);for(const O of k.fields){const H=(f=r.value[O.model])==null?void 0:f.help;O.help===void 0&&typeof H=="string"&&(O.help=H)}return k}),l=t.computed(()=>{var f;const k=it(df);for(const O of k.fields){const H=(f=r.value[O.model])==null?void 0:f.help;O.help===void 0&&typeof H=="string"&&(O.help=H)}return k}),d=t.computed(()=>{var f;const k=it(uf);for(const O of k.fields){const H=(f=r.value[O.model])==null?void 0:f.help;O.help===void 0&&typeof H=="string"&&(O.help=H)}return k}),p=t.computed(()=>({fields:i.formSchema.fields.filter(f=>!f.model.startsWith("config")&&f.model!=="tags")})),u=t.computed(()=>({fields:s.value.fields.filter(f=>!l.value.fields.some(k=>k.model===f.model)&&!d.value.fields.some(k=>k.model===f.model))})),A=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage")&&!f.model.startsWith("config-storage_config-consul")&&!f.model.startsWith("config-storage_config-redis")&&!f.model.startsWith("config-storage_config-shm")&&!f.model.startsWith("config-storage_config-vault"))})),g=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage_config-consul"))})),E=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage_config-redis"))})),S=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage_config-shm"))})),h=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage_config-vault"))})),I=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config")&&!u.value.fields.filter(k=>k.model===f.model).length&&!A.value.fields.filter(k=>k.model===f.model).length||f.model==="tags")})),w=t.computed(()=>i.formModel.id&&i.isEditing||!i.isEditing),j=[{hash:"#general",title:"General"},{hash:"#storage",title:"Storage"},{hash:"#advanced",title:"Advanced"}],y=[{label:"Lets Encrypt",value:"letsEncrypt"},{label:"Zero SSL",value:"zeroSsl",selected:!0},{label:"Other",value:"other"}];t.onMounted(()=>{a.value==="zeroSsl"&&(i.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90")});const m=f=>{a.value=f.value,(f.value==="zeroSsl"||f.value==="other")&&(f.value==="zeroSsl"?i.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90":i.formModel["config-api_uri"]="https://acme.example.com/",i.formModel["config-tos_accepted"]=!1),f.value==="letsEncrypt"&&(i.formModel["config-api_uri"]="https://acme-v02.api.letsencrypt.org/directory",i.formModel["config-eab_hmac_key"]="",i.formModel["config-eab_kid"]=""),i.onModelUpdated()},b=(f,k)=>{k==="config-storage"&&(o.value=f),i.onModelUpdated()};return(f,k)=>{const O=t.resolveComponent("KSelect"),H=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[e.formModel.id&&e.isEditing||!e.isEditing?(t.openBlock(),t.createBlock(Le,{key:0,class:"global-fields",model:e.formModel,options:e.formOptions,schema:p.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(H,{tabs:j},{general:t.withCtx(()=>[t.createElementVNode("div",pf,[k[0]||(k[0]=t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"General Configuration Settings")],-1)),k[1]||(k[1]=t.createElementVNode("div",{class:"description"}," Parameters for enabling the ACME plugin. ",-1)),w.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:u.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),k[2]||(k[2]=t.createElementVNode("hr",null,null,-1)),t.createVNode(O,{class:"issuer-select",items:y,label:"Issuer",onChange:m}),t.createElementVNode("div",Af,[a.value==="letsEncrypt"?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:l.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),a.value==="zeroSsl"||a.value==="other"?(t.openBlock(),t.createBlock(Le,{key:1,model:e.formModel,options:e.formOptions,schema:d.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),storage:t.withCtx(()=>[t.createElementVNode("div",gf,[k[3]||(k[3]=t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Storage Configuration Settings")],-1)),k[4]||(k[4]=t.createElementVNode("div",{class:"description"}," Parameters for setting up storage. ",-1)),w.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:A.value,onModelUpdated:b},null,8,["model","options","schema"])):t.createCommentVNode("",!0),t.createElementVNode("div",mf,[o.value==="consul"?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:g.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),o.value==="redis"?(t.openBlock(),t.createBlock(Le,{key:1,model:e.formModel,options:e.formOptions,schema:E.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),o.value==="shm"?(t.openBlock(),t.createBlock(Le,{key:2,model:e.formModel,options:e.formOptions,schema:S.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),o.value==="vault"?(t.openBlock(),t.createBlock(Le,{key:3,model:e.formModel,options:e.formOptions,schema:h.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),advanced:t.withCtx(()=>[t.createElementVNode("div",ff,[k[5]||(k[5]=t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings")],-1)),k[6]||(k[6]=t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the ACME plugin. ",-1)),w.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:I.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:1})])}}}),yf=Ee(hf,[["__scopeId","data-v-07cecf5b"]]),bf={class:"rla-form-basic-fields"},Ef={class:"rla-form-request-limits-subtitle"},wf={class:"rla-form-request-limits-content"},Cf={class:"rla-form-window-type"},Bf=["innerHTML"],kf={class:"rla-form-window-type-radios"},If={class:"rla-form-request-limits-items"},vf={class:"rla-form-request-limits-row"},Of=["id"],Mf={class:"rla-form-request-limits-actions"},Rf={key:0,class:"rla-form-request-limits-examples"},Tf={class:"rla-form-request-limits-examples-badges"},Sf=["innerHTML"],xf={id:"rla-form-error-legend",class:"rla-form-error-inputs"},Vf=t.defineComponent({__name:"RLAForm",props:{formSchema:{},formModel:{},formOptions:{},onModelUpdated:{type:Function},isEditing:{type:Boolean}},setup(e){var n;t.provide(Xe,(n=t.useSlots())==null?void 0:n[ut]);const i={fixed:[{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit.",config:{limit:500,window_size:3600}},{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits.",config:{limit:200,window_size:1800}},{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences.",config:{limit:500,window_size:86400}}],sliding:[{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset.",config:{limit:100,window_size:3600}},{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made.",config:{limit:300,window_size:1800}},{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
66
+ client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Ct}]},xl={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}}]},We={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},jwt:{descriptionKey:"plugins.meta.jwt.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.jwt.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",group:R.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},cors:{descriptionKey:"plugins.meta.cors.description",group:R.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.cors.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",group:R.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]}},opa:{descriptionKey:"plugins.meta.opa.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.opa.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",group:R.DEPLOYMENT,isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",scope:[c.GLOBAL]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]}},acl:{descriptionKey:"plugins.meta.acl.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.acl.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],fieldRules:{onlyOneOf:[["config.allow","config.deny"]]}},canary:{descriptionKey:"plugins.meta.canary.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.canary.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]}},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]}},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],imageName:"proxy-cache"},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],imageName:"graphql"},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]}},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},mocking:{descriptionKey:"plugins.meta.mocking.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.mocking.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]}},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],useLegacyForm:!0},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-azure-content-safety.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],useLegacyForm:!0},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",group:R.SERVERLESS,isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",group:R.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",group:R.SERVERLESS,isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",group:R.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],imageName:"kong-function"},"post-function":{descriptionKey:"plugins.meta.post-function.description",group:R.SERVERLESS,isEnterprise:!0,nameKey:"plugins.meta.post-function.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],imageName:"kong-function"},datadog:{descriptionKey:"plugins.meta.datadog.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.datadog.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},prometheus:{descriptionKey:"plugins.meta.prometheus.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},zipkin:{descriptionKey:"plugins.meta.zipkin.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},collector:{descriptionKey:"plugins.meta.collector.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.collector.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]}},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},jq:{descriptionKey:"plugins.meta.jq.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.jq.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]}},"file-log":{descriptionKey:"plugins.meta.file-log.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.file-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"http-log":{descriptionKey:"plugins.meta.http-log.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.http-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},loggly:{descriptionKey:"plugins.meta.loggly.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.loggly.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},statsd:{descriptionKey:"plugins.meta.statsd.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.statsd.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},syslog:{descriptionKey:"plugins.meta.syslog.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.syslog.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",group:R.LOGGING,isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",group:R.LOGGING,isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},session:{descriptionKey:"plugins.meta.session.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.session.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",scope:[c.SERVICE]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",group:R.AUTHENTICATION,isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",scope:[c.GLOBAL,c.SERVICE],imageName:"application-registration"},acme:{descriptionKey:"plugins.meta.acme.description",group:R.SECURITY,isEnterprise:!1,nameKey:"plugins.meta.acme.name",scope:[c.GLOBAL]},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",group:R.TRANSFORMATIONS,isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]}},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER],fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]}},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},saml:{descriptionKey:"plugins.meta.saml.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.saml.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",group:R.ANALYTICS_AND_MONITORING,isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.json-threat-protection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-proxy-advanced.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-cache.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",group:R.AI,isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-prompt-guard.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],useLegacyForm:!0},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.header-cert-auth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE],imageName:"tls-metadata-headers",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]}},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",group:R.AUTHENTICATION,isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP],imageName:"oauth2"},confluent:{descriptionKey:"plugins.meta.confluent.description",group:R.TRANSFORMATIONS,isEnterprise:!0,nameKey:"plugins.meta.confluent.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER]},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",group:R.TRAFFIC_CONTROL,isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",scope:[c.GLOBAL,c.SERVICE]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",group:R.SECURITY,isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE]},redirect:{descriptionKey:"plugins.meta.redirect.description",group:R.TRAFFIC_CONTROL,isEnterprise:!1,nameKey:"plugins.meta.redirect.name",scope:[c.GLOBAL,c.SERVICE,c.ROUTE,c.CONSUMER,c.CONSUMER_GROUP]}},Pt={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ui,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:wt(Ui),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:ji,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:wt(ji)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Yi,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:wt(Yi)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Ki,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:wt(Ki)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Fi,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:wt(Fi)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Hi,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:wt(Hi)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Rl,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Vl={acls:Il,basicauth_credentials:vl,keyauth_credentials:Ol,keyauth_enc_credentials:xl,oauth2_credentials:Sl,hmacauth_credentials:Ml,jwt_secrets:Tl},zi=e=>{var a;const n=((a=We[e])==null?void 0:a.imageName)||e||"missing",i=new URL(Object.assign({"../assets/images/plugin-icons/acl.png":Dr,"../assets/images/plugin-icons/acme.png":Pr,"../assets/images/plugin-icons/ai-azure-content-safety.png":Lr,"../assets/images/plugin-icons/ai-data-sanitization.png":Gr,"../assets/images/plugin-icons/ai-prompt-decorator.png":Ur,"../assets/images/plugin-icons/ai-prompt-guard.png":jr,"../assets/images/plugin-icons/ai-prompt-template.png":Yr,"../assets/images/plugin-icons/ai-proxy-advanced.png":Hr,"../assets/images/plugin-icons/ai-proxy.png":Fr,"../assets/images/plugin-icons/ai-rate-limiting-advanced.png":Kr,"../assets/images/plugin-icons/ai-request-transformer.png":zr,"../assets/images/plugin-icons/ai-response-transformer.png":Jr,"../assets/images/plugin-icons/ai-semantic-cache.png":Qr,"../assets/images/plugin-icons/ai-semantic-prompt-guard.png":Xr,"../assets/images/plugin-icons/app-dynamics.png":qr,"../assets/images/plugin-icons/application-registration.png":Zr,"../assets/images/plugin-icons/aws-lambda.png":Wr,"../assets/images/plugin-icons/azure-functions.png":_r,"../assets/images/plugin-icons/basic-auth.png":$r,"../assets/images/plugin-icons/bot-detection.png":es,"../assets/images/plugin-icons/canary.png":ts,"../assets/images/plugin-icons/collector.png":ns,"../assets/images/plugin-icons/confluent.png":is,"../assets/images/plugin-icons/correlation-id.png":as,"../assets/images/plugin-icons/cors.png":os,"../assets/images/plugin-icons/datadog.png":rs,"../assets/images/plugin-icons/degraphql.png":ss,"../assets/images/plugin-icons/dynamic-ssl.png":ls,"../assets/images/plugin-icons/exit-transformer.png":cs,"../assets/images/plugin-icons/file-log.png":ds,"../assets/images/plugin-icons/forward-proxy.png":us,"../assets/images/plugin-icons/graphql-rate-limiting-advanced.png":ps,"../assets/images/plugin-icons/graphql.png":As,"../assets/images/plugin-icons/grpc-gateway.png":gs,"../assets/images/plugin-icons/grpc-web.png":ms,"../assets/images/plugin-icons/hmac-auth.png":fs,"../assets/images/plugin-icons/http-log.png":hs,"../assets/images/plugin-icons/injection-protection.png":ys,"../assets/images/plugin-icons/ip-restriction.png":bs,"../assets/images/plugin-icons/jq.png":Es,"../assets/images/plugin-icons/json-threat-protection.png":ws,"../assets/images/plugin-icons/jwe-decrypt.png":Cs,"../assets/images/plugin-icons/jwt-signer.png":Bs,"../assets/images/plugin-icons/jwt.png":ks,"../assets/images/plugin-icons/kafka-log.png":Is,"../assets/images/plugin-icons/kafka-upstream.png":vs,"../assets/images/plugin-icons/key-auth-enc.png":Os,"../assets/images/plugin-icons/key-auth.png":Ms,"../assets/images/plugin-icons/kong-function.png":Rs,"../assets/images/plugin-icons/kubernetes-sidecar-injector.png":Ts,"../assets/images/plugin-icons/ldap-auth-advanced.png":Ss,"../assets/images/plugin-icons/ldap-auth.png":xs,"../assets/images/plugin-icons/loggly.png":Vs,"../assets/images/plugin-icons/missing.png":Ns,"../assets/images/plugin-icons/mocking.png":Ds,"../assets/images/plugin-icons/mtls-auth.png":Ps,"../assets/images/plugin-icons/new.png":Ls,"../assets/images/plugin-icons/oas-validation.png":Gs,"../assets/images/plugin-icons/oauth2-introspection.png":Us,"../assets/images/plugin-icons/oauth2.png":js,"../assets/images/plugin-icons/opa.png":Ys,"../assets/images/plugin-icons/openid-connect.png":Hs,"../assets/images/plugin-icons/opentelemetry.png":Fs,"../assets/images/plugin-icons/openwhisk.png":Ks,"../assets/images/plugin-icons/prometheus.png":zs,"../assets/images/plugin-icons/proxy-cache.png":Js,"../assets/images/plugin-icons/rate-limiting-advanced.png":Qs,"../assets/images/plugin-icons/rate-limiting.png":Xs,"../assets/images/plugin-icons/redirect.png":qs,"../assets/images/plugin-icons/request-size-limiting.png":Zs,"../assets/images/plugin-icons/request-termination.png":Ws,"../assets/images/plugin-icons/request-transformer-advanced.png":_s,"../assets/images/plugin-icons/request-transformer.png":$s,"../assets/images/plugin-icons/request-validator.png":el,"../assets/images/plugin-icons/response-ratelimiting.png":tl,"../assets/images/plugin-icons/response-transformer-advanced.png":nl,"../assets/images/plugin-icons/response-transformer.png":il,"../assets/images/plugin-icons/route-by-header.png":al,"../assets/images/plugin-icons/route-transformer-advanced.png":ol,"../assets/images/plugin-icons/runscope.png":rl,"../assets/images/plugin-icons/saml.png":sl,"../assets/images/plugin-icons/service-protection.png":ll,"../assets/images/plugin-icons/session.png":cl,"../assets/images/plugin-icons/standard-webhooks.png":dl,"../assets/images/plugin-icons/statsd-advanced.png":ul,"../assets/images/plugin-icons/statsd.png":pl,"../assets/images/plugin-icons/syslog.png":Al,"../assets/images/plugin-icons/tcp-log.png":gl,"../assets/images/plugin-icons/tls-handshake-modifier.png":ml,"../assets/images/plugin-icons/tls-metadata-headers.png":fl,"../assets/images/plugin-icons/udp-log.png":hl,"../assets/images/plugin-icons/upstream-timeout.png":yl,"../assets/images/plugin-icons/upstream-tls.png":bl,"../assets/images/plugin-icons/vault-auth.png":El,"../assets/images/plugin-icons/websocket-size-limit.png":wl,"../assets/images/plugin-icons/websocket-validator.png":Cl,"../assets/images/plugin-icons/xml-threat-protection.png":Bl,"../assets/images/plugin-icons/zipkin.png":kl})[`../assets/images/plugin-icons/${n}.png`],typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:$e&&$e.tagName.toUpperCase()==="SCRIPT"&&$e.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;return i.includes("undefined")?new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAMAAABKCk6nAAAAhFBMVEUAAADs+fnr8PTo7fLm7PDl6e7j6+7j6O3i6Ozh5+vp9PTm7PDj6e319fXn7PHj6O739/fn7PDi6e3////o7fLj6Ozt8fbj6u7r7vPi6ezo7fL////n7PHm6/Dl6+/q8PTs8vbu9Pjv9frw9vri6ezv9fnp7/Pt8vfk6u6cpar////e4ePLpSv+AAAAHnRSTlMAKIq93/T6/f7/W8z3GbL4Hr/9AZ39OPFo/Z4FzOeuk05oAAAFJklEQVR4Ae3ThZLjyhWA4SNdWJ9BMy/KA3n/twoXBafWWYb2QPi6Vd9XKGz4q5t4QPNZHDP2n8W/4uT0bJBUZHB2ehL/pPOLy6wQlxfn8bThaJxUajwaxuMm01lSsdl0Eo+YL5LKLebxoOUqqd5qGQ9YD7IHGKzjPptt9gTbzT19n2dv8Pyw8DZ7hG0U1tkrrOM7y0H2CoNlfGO+yp5hNY8vJovsHRaT+GyaPcQ03mkiYvjnNu4za94Ljtn+vd/Efc7+/sf4YJT32L286qjE1ctd3mMUH5yP89D1m46KvLnOQ+PzeO8iD+xuOipzs8sDF/HeZZZuX3dU5/Vtli7jnZMs7fSts/AuSycRcZqlm44q3WTpNCLOsnDdUanrLJxF29zF9zZ3QaXuNuWNJtosvOyo1ssstG0ThZ+Dah3Ea+LHIvmLjoq9KHL+2DYHyanYQc6jDYzACCxwZKGjallog177DwIjMAIjMAIjsMAIjMAIjMAIjMAILDACIzACIzACI7DACIzACIzACIzAAiMwAiMwAiMwAiOwwAiMwAiMwAiMwAIjMAIjMAIjMAILjMAIjMAIjMAIjMACIzACIzACIzACC4zACIzACIzACIzAAiMwAiMwAiMwAguMwAiMwAiMwAgsMAIjMAIjMAIjMAILjMAIjMAIjMAILDACIzACI/DP/6GjGENgBEZgBBYYgREYgREYgRGYJwMjMAIjMAI3TziCMQTmaAIjMAIjMAIjMAILjMAIjMAIjMAITBa6X9CveqD7hWWhDXpNYIERGIERGIERGIEFRmAERmAERuBKCdw2R68VGIERGIERWGAERmAERmAERmCBERiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIEFRmAERmAERuB+EPjt/ui9FRiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgWshcNscvVZgBEZgBEZggREYgREYgREYgQVGYARGYARGYARGYIERGIERGIERGIEFRmAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBBYYgREYgREYgftB4Lf7o/dWYARGYARGYIERGIERGIERGIEFRmAE5kj9GEfkb/EfwwkWGIERGIERGIERWGAERmAERmAERmAEFhiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIERWGAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBEZggREYgREYgREYgQVGYARGYARGYAQWGIERGIERGIERGIEFRmAERmAERmAEFhiBERiBERiBEZh2r3iflPn2B4HvgordPRl4H1RsL7DAfSJw/JCFq45qXWXhh3Yfhb8F1TqIt2/3ZeGf9kGl9j/F997XPcvCdUelrrNwFhGnWbrpqNJNlk4j4iRLu9cdFXq9y9JJvHOZpVuFa+x7m6XLeO8iD+xuOipzs8sDF/He+TgPXb/pqMib6zw0Po8PRnmP3curjkpcvdzlPUYR0UTE8M9t3GfWvBfHjP17v4n7nP39j/HRNOmhaXw2WSS9s5jEF/NV0jOreXxjOUh6ZbCM76yTXllHYZv0yDZKm+dJbzzfxGHhbdIT203cZz1IemCwjgcsV0n1Vst40HyRVG4xj0dMprOkYrPpJB43HI2TSo1Hw3ja+cVlUqHLi/P4J52cng2SigzOTk/iPk08oPksjhn7z+J+/wBSUhUZLUGZBgAAAABJRU5ErkJggg==",typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:$e&&$e.tagName.toUpperCase()==="SCRIPT"&&$e.src||new URL("entities-plugins.umd.js",document.baseURI).href).href:i},Nl=()=>{const{i18n:{t:e}}=mn(),n={},i={};for(const[o,r]of Object.entries(We))n[o]={...r,name:e(r.nameKey),description:e(r.descriptionKey)};for(const[o,r]of Object.entries(Pt))i[o]={...r,name:e(r.nameKey),title:e(r.titleKey)};return{pluginMetaData:n,credentialMetaData:i,credentialSchemas:Pt,getDisplayName:o=>{var r;return((r=n[o])==null?void 0:r.name)||o}}};function Ji(e,n){for(var i=-1,a=e==null?0:e.length;++i<a&&n(e[i],i,e)!==!1;);return e}function Dl(e){return function(n,i,a){for(var o=-1,r=Object(n),s=a(n),l=s.length;l--;){var d=s[++o];if(i(r[d],d,r)===!1)break}return n}}var Pl=Dl();function Ll(e,n){for(var i=-1,a=Array(e);++i<e;)a[i]=n(i);return a}var Qi=typeof global=="object"&&global&&global.Object===Object&&global,Gl=typeof self=="object"&&self&&self.Object===Object&&self,Qe=Qi||Gl||Function("return this")(),rt=Qe.Symbol,Xi=Object.prototype,Ul=Xi.hasOwnProperty,jl=Xi.toString,Zt=rt?rt.toStringTag:void 0;function Yl(e){var n=Ul.call(e,Zt),i=e[Zt];try{e[Zt]=void 0;var a=!0}catch{}var o=jl.call(e);return a&&(n?e[Zt]=i:delete e[Zt]),o}var Hl=Object.prototype,Fl=Hl.toString;function Kl(e){return Fl.call(e)}var zl="[object Null]",Jl="[object Undefined]",qi=rt?rt.toStringTag:void 0;function st(e){return e==null?e===void 0?Jl:zl:qi&&qi in Object(e)?Yl(e):Kl(e)}function lt(e){return e!=null&&typeof e=="object"}var Ql="[object Arguments]";function Zi(e){return lt(e)&&st(e)==Ql}var Wi=Object.prototype,Xl=Wi.hasOwnProperty,ql=Wi.propertyIsEnumerable,Zl=Zi(function(){return arguments}())?Zi:function(e){return lt(e)&&Xl.call(e,"callee")&&!ql.call(e,"callee")},ct=Array.isArray;function Wl(){return!1}var _i=typeof $=="object"&&$&&!$.nodeType&&$,$i=_i&&typeof module=="object"&&module&&!module.nodeType&&module,_l=$i&&$i.exports===_i,ea=_l?Qe.Buffer:void 0,$l=ea?ea.isBuffer:void 0,ta=$l||Wl,ec=9007199254740991,tc=/^(?:0|[1-9]\d*)$/;function na(e,n){var i=typeof e;return n=n??ec,!!n&&(i=="number"||i!="symbol"&&tc.test(e))&&e>-1&&e%1==0&&e<n}var nc=9007199254740991;function ia(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=nc}var ic="[object Arguments]",ac="[object Array]",oc="[object Boolean]",rc="[object Date]",sc="[object Error]",lc="[object Function]",cc="[object Map]",dc="[object Number]",uc="[object Object]",pc="[object RegExp]",Ac="[object Set]",gc="[object String]",mc="[object WeakMap]",fc="[object ArrayBuffer]",hc="[object DataView]",yc="[object Float32Array]",bc="[object Float64Array]",Ec="[object Int8Array]",wc="[object Int16Array]",Cc="[object Int32Array]",Bc="[object Uint8Array]",kc="[object Uint8ClampedArray]",Ic="[object Uint16Array]",vc="[object Uint32Array]",fe={};fe[yc]=fe[bc]=fe[Ec]=fe[wc]=fe[Cc]=fe[Bc]=fe[kc]=fe[Ic]=fe[vc]=!0,fe[ic]=fe[ac]=fe[fc]=fe[oc]=fe[hc]=fe[rc]=fe[sc]=fe[lc]=fe[cc]=fe[dc]=fe[uc]=fe[pc]=fe[Ac]=fe[gc]=fe[mc]=!1;function Oc(e){return lt(e)&&ia(e.length)&&!!fe[st(e)]}function Yn(e){return function(n){return e(n)}}var aa=typeof $=="object"&&$&&!$.nodeType&&$,Wt=aa&&typeof module=="object"&&module&&!module.nodeType&&module,Mc=Wt&&Wt.exports===aa,Hn=Mc&&Qi.process,Lt=function(){try{var e=Wt&&Wt.require&&Wt.require("util").types;return e||Hn&&Hn.binding&&Hn.binding("util")}catch{}}(),oa=Lt&&Lt.isTypedArray,Rc=oa?Yn(oa):Oc,Tc=Object.prototype,Sc=Tc.hasOwnProperty;function ra(e,n){var i=ct(e),a=!i&&Zl(e),o=!i&&!a&&ta(e),r=!i&&!a&&!o&&Rc(e),s=i||a||o||r,l=s?Ll(e.length,String):[],d=l.length;for(var p in e)(n||Sc.call(e,p))&&!(s&&(p=="length"||o&&(p=="offset"||p=="parent")||r&&(p=="buffer"||p=="byteLength"||p=="byteOffset")||na(p,d)))&&l.push(p);return l}var xc=Object.prototype;function Fn(e){var n=e&&e.constructor,i=typeof n=="function"&&n.prototype||xc;return e===i}function sa(e,n){return function(i){return e(n(i))}}var Vc=sa(Object.keys,Object),Nc=Object.prototype,Dc=Nc.hasOwnProperty;function Pc(e){if(!Fn(e))return Vc(e);var n=[];for(var i in Object(e))Dc.call(e,i)&&i!="constructor"&&n.push(i);return n}function He(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var Lc="[object AsyncFunction]",Gc="[object Function]",Uc="[object GeneratorFunction]",jc="[object Proxy]";function he(e){if(!He(e))return!1;var n=st(e);return n==Gc||n==Uc||n==Lc||n==jc}function fn(e){return e!=null&&ia(e.length)&&!he(e)}function hn(e){return fn(e)?ra(e):Pc(e)}function Yc(e,n){return e&&Pl(e,n,hn)}function Hc(e,n){return function(i,a){if(i==null)return i;if(!fn(i))return e(i,a);for(var o=i.length,r=-1,s=Object(i);++r<o&&a(s[r],r,s)!==!1;);return i}}var Fc=Hc(Yc);function Kn(e){return e}function Kc(e){return typeof e=="function"?e:Kn}function De(e,n){var i=ct(e)?Ji:Fc;return i(e,Kc(n))}var zc="[object Symbol]";function yn(e){return typeof e=="symbol"||lt(e)&&st(e)==zc}var Jc=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Qc=/^\w*$/;function Xc(e,n){if(ct(e))return!1;var i=typeof e;return i=="number"||i=="symbol"||i=="boolean"||e==null||yn(e)?!0:Qc.test(e)||!Jc.test(e)||n!=null&&e in Object(n)}var zn=Qe["__core-js_shared__"],la=function(){var e=/[^.]+$/.exec(zn&&zn.keys&&zn.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function qc(e){return!!la&&la in e}var Zc=Function.prototype,Wc=Zc.toString;function Bt(e){if(e!=null){try{return Wc.call(e)}catch{}try{return e+""}catch{}}return""}var _c=/[\\^$.*+?()[\]{}|]/g,$c=/^\[object .+?Constructor\]$/,ed=Function.prototype,td=Object.prototype,nd=ed.toString,id=td.hasOwnProperty,ad=RegExp("^"+nd.call(id).replace(_c,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function od(e){if(!He(e)||qc(e))return!1;var n=he(e)?ad:$c;return n.test(Bt(e))}function rd(e,n){return e==null?void 0:e[n]}function kt(e,n){var i=rd(e,n);return od(i)?i:void 0}var _t=kt(Object,"create");function sd(){this.__data__=_t?_t(null):{},this.size=0}function ld(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var cd="__lodash_hash_undefined__",dd=Object.prototype,ud=dd.hasOwnProperty;function pd(e){var n=this.__data__;if(_t){var i=n[e];return i===cd?void 0:i}return ud.call(n,e)?n[e]:void 0}var Ad=Object.prototype,gd=Ad.hasOwnProperty;function md(e){var n=this.__data__;return _t?n[e]!==void 0:gd.call(n,e)}var fd="__lodash_hash_undefined__";function hd(e,n){var i=this.__data__;return this.size+=this.has(e)?0:1,i[e]=_t&&n===void 0?fd:n,this}function It(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}It.prototype.clear=sd,It.prototype.delete=ld,It.prototype.get=pd,It.prototype.has=md,It.prototype.set=hd;function yd(){this.__data__=[],this.size=0}function bn(e,n){return e===n||e!==e&&n!==n}function En(e,n){for(var i=e.length;i--;)if(bn(e[i][0],n))return i;return-1}var bd=Array.prototype,Ed=bd.splice;function wd(e){var n=this.__data__,i=En(n,e);if(i<0)return!1;var a=n.length-1;return i==a?n.pop():Ed.call(n,i,1),--this.size,!0}function Cd(e){var n=this.__data__,i=En(n,e);return i<0?void 0:n[i][1]}function Bd(e){return En(this.__data__,e)>-1}function kd(e,n){var i=this.__data__,a=En(i,e);return a<0?(++this.size,i.push([e,n])):i[a][1]=n,this}function et(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}et.prototype.clear=yd,et.prototype.delete=wd,et.prototype.get=Cd,et.prototype.has=Bd,et.prototype.set=kd;var $t=kt(Qe,"Map");function Id(){this.size=0,this.__data__={hash:new It,map:new($t||et),string:new It}}function vd(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function wn(e,n){var i=e.__data__;return vd(n)?i[typeof n=="string"?"string":"hash"]:i.map}function Od(e){var n=wn(this,e).delete(e);return this.size-=n?1:0,n}function Md(e){return wn(this,e).get(e)}function Rd(e){return wn(this,e).has(e)}function Td(e,n){var i=wn(this,e),a=i.size;return i.set(e,n),this.size+=i.size==a?0:1,this}function tt(e){var n=-1,i=e==null?0:e.length;for(this.clear();++n<i;){var a=e[n];this.set(a[0],a[1])}}tt.prototype.clear=Id,tt.prototype.delete=Od,tt.prototype.get=Md,tt.prototype.has=Rd,tt.prototype.set=Td;var Sd="Expected a function";function Jn(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(Sd);var i=function(){var a=arguments,o=n?n.apply(this,a):a[0],r=i.cache;if(r.has(o))return r.get(o);var s=e.apply(this,a);return i.cache=r.set(o,s)||r,s};return i.cache=new(Jn.Cache||tt),i}Jn.Cache=tt;var xd=500;function Vd(e){var n=Jn(e,function(a){return i.size===xd&&i.clear(),a}),i=n.cache;return n}var Nd=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Dd=/\\(\\)?/g,Pd=Vd(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Nd,function(i,a,o,r){n.push(o?r.replace(Dd,"$1"):a||i)}),n});function Ld(e,n){for(var i=-1,a=e==null?0:e.length,o=Array(a);++i<a;)o[i]=n(e[i],i,e);return o}var Gd=1/0,ca=rt?rt.prototype:void 0,da=ca?ca.toString:void 0;function ua(e){if(typeof e=="string")return e;if(ct(e))return Ld(e,ua)+"";if(yn(e))return da?da.call(e):"";var n=e+"";return n=="0"&&1/e==-Gd?"-0":n}function pa(e){return e==null?"":ua(e)}function Ud(e,n){return ct(e)?e:Xc(e,n)?[e]:Pd(pa(e))}var jd=1/0;function Yd(e){if(typeof e=="string"||yn(e))return e;var n=e+"";return n=="0"&&1/e==-jd?"-0":n}function Hd(e,n){n=Ud(n,e);for(var i=0,a=n.length;e!=null&&i<a;)e=e[Yd(n[i++])];return i&&i==a?e:void 0}function le(e,n,i){var a=e==null?void 0:Hd(e,n);return a===void 0?i:a}function Me(e){return e==null}const dt="kong-ui-forms-api",ut="autofill",Xe="autofillSlot";function Fd(){this.__data__=new et,this.size=0}function Kd(e){var n=this.__data__,i=n.delete(e);return this.size=n.size,i}function zd(e){return this.__data__.get(e)}function Jd(e){return this.__data__.has(e)}var Qd=200;function Xd(e,n){var i=this.__data__;if(i instanceof et){var a=i.__data__;if(!$t||a.length<Qd-1)return a.push([e,n]),this.size=++i.size,this;i=this.__data__=new tt(a)}return i.set(e,n),this.size=i.size,this}function Gt(e){var n=this.__data__=new et(e);this.size=n.size}Gt.prototype.clear=Fd,Gt.prototype.delete=Kd,Gt.prototype.get=zd,Gt.prototype.has=Jd,Gt.prototype.set=Xd;var Cn=function(){try{var e=kt(Object,"defineProperty");return e({},"",{}),e}catch{}}();function Aa(e,n,i){n=="__proto__"&&Cn?Cn(e,n,{configurable:!0,enumerable:!0,value:i,writable:!0}):e[n]=i}var qd=Object.prototype,Zd=qd.hasOwnProperty;function ga(e,n,i){var a=e[n];(!(Zd.call(e,n)&&bn(a,i))||i===void 0&&!(n in e))&&Aa(e,n,i)}function Bn(e,n,i,a){var o=!i;i||(i={});for(var r=-1,s=n.length;++r<s;){var l=n[r],d=void 0;d===void 0&&(d=e[l]),o?Aa(i,l,d):ga(i,l,d)}return i}function Wd(e,n){return e&&Bn(n,hn(n),e)}function _d(e){var n=[];if(e!=null)for(var i in Object(e))n.push(i);return n}var $d=Object.prototype,eu=$d.hasOwnProperty;function tu(e){if(!He(e))return _d(e);var n=Fn(e),i=[];for(var a in e)a=="constructor"&&(n||!eu.call(e,a))||i.push(a);return i}function kn(e){return fn(e)?ra(e,!0):tu(e)}function nu(e,n){return e&&Bn(n,kn(n),e)}var ma=typeof $=="object"&&$&&!$.nodeType&&$,fa=ma&&typeof module=="object"&&module&&!module.nodeType&&module,iu=fa&&fa.exports===ma,ha=iu?Qe.Buffer:void 0,ya=ha?ha.allocUnsafe:void 0;function au(e,n){if(n)return e.slice();var i=e.length,a=ya?ya(i):new e.constructor(i);return e.copy(a),a}function ou(e,n){var i=-1,a=e.length;for(n||(n=Array(a));++i<a;)n[i]=e[i];return n}function ru(e,n){for(var i=-1,a=e==null?0:e.length,o=0,r=[];++i<a;){var s=e[i];n(s,i,e)&&(r[o++]=s)}return r}function ba(){return[]}var su=Object.prototype,lu=su.propertyIsEnumerable,Ea=Object.getOwnPropertySymbols,Qn=Ea?function(e){return e==null?[]:(e=Object(e),ru(Ea(e),function(n){return lu.call(e,n)}))}:ba;function cu(e,n){return Bn(e,Qn(e),n)}function wa(e,n){for(var i=-1,a=n.length,o=e.length;++i<a;)e[o+i]=n[i];return e}var Ca=sa(Object.getPrototypeOf,Object),du=Object.getOwnPropertySymbols,Ba=du?function(e){for(var n=[];e;)wa(n,Qn(e)),e=Ca(e);return n}:ba;function uu(e,n){return Bn(e,Ba(e),n)}function ka(e,n,i){var a=n(e);return ct(e)?a:wa(a,i(e))}function pu(e){return ka(e,hn,Qn)}function Au(e){return ka(e,kn,Ba)}var Xn=kt(Qe,"DataView"),qn=kt(Qe,"Promise"),Ut=kt(Qe,"Set"),Zn=kt(Qe,"WeakMap"),Ia="[object Map]",gu="[object Object]",va="[object Promise]",Oa="[object Set]",Ma="[object WeakMap]",Ra="[object DataView]",mu=Bt(Xn),fu=Bt($t),hu=Bt(qn),yu=Bt(Ut),bu=Bt(Zn),nt=st;(Xn&&nt(new Xn(new ArrayBuffer(1)))!=Ra||$t&&nt(new $t)!=Ia||qn&&nt(qn.resolve())!=va||Ut&&nt(new Ut)!=Oa||Zn&&nt(new Zn)!=Ma)&&(nt=function(e){var n=st(e),i=n==gu?e.constructor:void 0,a=i?Bt(i):"";if(a)switch(a){case mu:return Ra;case fu:return Ia;case hu:return va;case yu:return Oa;case bu:return Ma}return n});var Eu=Object.prototype,wu=Eu.hasOwnProperty;function Cu(e){var n=e.length,i=new e.constructor(n);return n&&typeof e[0]=="string"&&wu.call(e,"index")&&(i.index=e.index,i.input=e.input),i}var Ta=Qe.Uint8Array;function Wn(e){var n=new e.constructor(e.byteLength);return new Ta(n).set(new Ta(e)),n}function Bu(e,n){var i=n?Wn(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.byteLength)}var ku=/\w*$/;function Iu(e){var n=new e.constructor(e.source,ku.exec(e));return n.lastIndex=e.lastIndex,n}var Sa=rt?rt.prototype:void 0,xa=Sa?Sa.valueOf:void 0;function vu(e){return xa?Object(xa.call(e)):{}}function Ou(e,n){var i=n?Wn(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.length)}var Mu="[object Boolean]",Ru="[object Date]",Tu="[object Map]",Su="[object Number]",xu="[object RegExp]",Vu="[object Set]",Nu="[object String]",Du="[object Symbol]",Pu="[object ArrayBuffer]",Lu="[object DataView]",Gu="[object Float32Array]",Uu="[object Float64Array]",ju="[object Int8Array]",Yu="[object Int16Array]",Hu="[object Int32Array]",Fu="[object Uint8Array]",Ku="[object Uint8ClampedArray]",zu="[object Uint16Array]",Ju="[object Uint32Array]";function Qu(e,n,i){var a=e.constructor;switch(n){case Pu:return Wn(e);case Mu:case Ru:return new a(+e);case Lu:return Bu(e,i);case Gu:case Uu:case ju:case Yu:case Hu:case Fu:case Ku:case zu:case Ju:return Ou(e,i);case Tu:return new a;case Su:case Nu:return new a(e);case xu:return Iu(e);case Vu:return new a;case Du:return vu(e)}}var Va=Object.create,Xu=function(){function e(){}return function(n){if(!He(n))return{};if(Va)return Va(n);e.prototype=n;var i=new e;return e.prototype=void 0,i}}();function qu(e){return typeof e.constructor=="function"&&!Fn(e)?Xu(Ca(e)):{}}var Zu="[object Map]";function Wu(e){return lt(e)&&nt(e)==Zu}var Na=Lt&&Lt.isMap,_u=Na?Yn(Na):Wu,$u="[object Set]";function ep(e){return lt(e)&&nt(e)==$u}var Da=Lt&&Lt.isSet,tp=Da?Yn(Da):ep,np=1,ip=2,ap=4,Pa="[object Arguments]",op="[object Array]",rp="[object Boolean]",sp="[object Date]",lp="[object Error]",La="[object Function]",cp="[object GeneratorFunction]",dp="[object Map]",up="[object Number]",Ga="[object Object]",pp="[object RegExp]",Ap="[object Set]",gp="[object String]",mp="[object Symbol]",fp="[object WeakMap]",hp="[object ArrayBuffer]",yp="[object DataView]",bp="[object Float32Array]",Ep="[object Float64Array]",wp="[object Int8Array]",Cp="[object Int16Array]",Bp="[object Int32Array]",kp="[object Uint8Array]",Ip="[object Uint8ClampedArray]",vp="[object Uint16Array]",Op="[object Uint32Array]",me={};me[Pa]=me[op]=me[hp]=me[yp]=me[rp]=me[sp]=me[bp]=me[Ep]=me[wp]=me[Cp]=me[Bp]=me[dp]=me[up]=me[Ga]=me[pp]=me[Ap]=me[gp]=me[mp]=me[kp]=me[Ip]=me[vp]=me[Op]=!0,me[lp]=me[La]=me[fp]=!1;function en(e,n,i,a,o,r){var s,l=n&np,d=n&ip,p=n&ap;if(s!==void 0)return s;if(!He(e))return e;var u=ct(e);if(u){if(s=Cu(e),!l)return ou(e,s)}else{var A=nt(e),g=A==La||A==cp;if(ta(e))return au(e,l);if(A==Ga||A==Pa||g&&!o){if(s=d||g?{}:qu(e),!l)return d?uu(e,nu(s,e)):cu(e,Wd(s,e))}else{if(!me[A])return o?e:{};s=Qu(e,A,l)}}r||(r=new Gt);var E=r.get(e);if(E)return E;r.set(e,s),tp(e)?e.forEach(function(I){s.add(en(I,n,i,I,e,r))}):_u(e)&&e.forEach(function(I,w){s.set(w,en(I,n,i,w,e,r))});var S=p?d?Au:pu:d?kn:hn,h=u?void 0:S(e);return Ji(h||e,function(I,w){h&&(w=I,I=e[w]),ga(s,w,en(I,n,i,w,e,r))}),s}var Mp=1,Rp=4;function it(e){return en(e,Mp|Rp)}const _n=(e,n="")=>typeof e.id<"u"?n+e.id+"":n+(e.inputName||e.label||e.model||"").toString().trim().toLowerCase().replace(/ |_/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-]+)/g,""),Ua=(e="")=>e.toString().trim().replace(/ /g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-_/./:]+)/g,"");var Tp="[object String]";function vt(e){return typeof e=="string"||!ct(e)&&lt(e)&&st(e)==Tp}const ja={methods:{getFieldRowClasses(e){const n=this.fieldErrors(e).length>0,i={[le(this.options,"validationErrorClass","error")]:n,[le(this.options,"validationSuccessClass","valid")]:!n,disabled:this.fieldDisabled(e),readonly:this.fieldReadonly(e),featured:this.fieldFeatured(e),required:this.fieldRequired(e)};return Array.isArray(e.styleClasses)?De(e.styleClasses,a=>i[a]=!0):vt(e.styleClasses)&&(i[e.styleClasses]=!0),Me(e.type)||(i["field-"+e.type]=!0),i},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},fieldDisabled(e){return he(e.disabled)?e.disabled.call(this,this.model,e,this):Me(e.disabled)?!1:e.disabled},fieldReadonly(e){return he(e.readonly)?e.readonly.call(this,this.model,e,this):Me(e.readonly)?!1:e.readonly},fieldFeatured(e){return he(e.featured)?e.featured.call(this,this.model,e,this):Me(e.featured)?!1:e.featured},fieldRequired(e){return he(e.required)?e.required.call(this,this.model,e,this):Me(e.required)?!1:e.required}}};var $n=function(){return Qe.Date.now()},Sp=/\s/;function xp(e){for(var n=e.length;n--&&Sp.test(e.charAt(n)););return n}var Vp=/^\s+/;function Np(e){return e&&e.slice(0,xp(e)+1).replace(Vp,"")}var Ya=NaN,Dp=/^[-+]0x[0-9a-f]+$/i,Pp=/^0b[01]+$/i,Lp=/^0o[0-7]+$/i,Gp=parseInt;function ei(e){if(typeof e=="number")return e;if(yn(e))return Ya;if(He(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=He(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=Np(e);var i=Pp.test(e);return i||Lp.test(e)?Gp(e.slice(2),i?2:8):Dp.test(e)?Ya:+e}var Up="Expected a function",jp=Math.max,Yp=Math.min;function tn(e,n,i){var a,o,r,s,l,d,p=0,u=!1,A=!1,g=!0;if(typeof e!="function")throw new TypeError(Up);n=ei(n)||0,He(i)&&(u=!!i.leading,A="maxWait"in i,r=A?jp(ei(i.maxWait)||0,n):r,g="trailing"in i?!!i.trailing:g);function E(f){var k=a,O=o;return a=o=void 0,p=f,s=e.apply(O,k),s}function S(f){return p=f,l=setTimeout(w,n),u?E(f):s}function h(f){var k=f-d,O=f-p,H=n-k;return A?Yp(H,r-O):H}function I(f){var k=f-d,O=f-p;return d===void 0||k>=n||k<0||A&&O>=r}function w(){var f=$n();if(I(f))return j(f);l=setTimeout(w,h(f))}function j(f){return l=void 0,g&&a?E(f):(a=o=void 0,s)}function y(){l!==void 0&&clearTimeout(l),p=0,a=d=o=l=void 0}function m(){return l===void 0?s:j($n())}function b(){var f=$n(),k=I(f);if(a=arguments,o=this,d=f,k){if(l===void 0)return S(d);if(A)return clearTimeout(l),l=setTimeout(w,n),E(d)}return l===void 0&&(l=setTimeout(w,n)),s}return b.cancel=y,b.flush=m,b}var Hp="__lodash_hash_undefined__";function Fp(e){return this.__data__.set(e,Hp),this}function Kp(e){return this.__data__.has(e)}function In(e){var n=-1,i=e==null?0:e.length;for(this.__data__=new tt;++n<i;)this.add(e[n])}In.prototype.add=In.prototype.push=Fp,In.prototype.has=Kp;function zp(e,n,i,a){for(var o=e.length,r=i+-1;++r<o;)if(n(e[r],r,e))return r;return-1}function Jp(e){return e!==e}function Qp(e,n,i){for(var a=i-1,o=e.length;++a<o;)if(e[a]===n)return a;return-1}function Xp(e,n,i){return n===n?Qp(e,n,i):zp(e,Jp,i)}function qp(e,n){var i=e==null?0:e.length;return!!i&&Xp(e,n,0)>-1}function Zp(e,n){return e.has(n)}function Wp(){}function Ha(e){var n=-1,i=Array(e.size);return e.forEach(function(a){i[++n]=a}),i}var _p=1/0,$p=Ut&&1/Ha(new Ut([,-0]))[1]==_p?function(e){return new Ut(e)}:Wp,eA=200;function tA(e,n,i){var a=-1,o=qp,r=e.length,s=!0,l=[],d=l;if(r>=eA){var p=$p(e);if(p)return Ha(p);s=!1,o=Zp,d=new In}else d=l;e:for(;++a<r;){var u=e[a],A=u;if(u=u!==0?u:0,s&&A===A){for(var g=d.length;g--;)if(d[g]===A)continue e;l.push(u)}else o(d,A,i)||(d!==l&&d.push(A),l.push(u))}return l}function Fa(e){return e&&e.length?tA(e):[]}var nA=0;function Ka(e){var n=++nA;return pa(e)+n}var za=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,pt="\\d\\d?",At="\\d\\d",iA="\\d{3}",aA="\\d{4}",nn="[^\\s]+",Ja=/\[([^]*?)\]/gm;function Qa(e,n){for(var i=[],a=0,o=e.length;a<o;a++)i.push(e[a].substr(0,n));return i}var Xa=function(e){return function(n,i){var a=i[e].map(function(r){return r.toLowerCase()}),o=a.indexOf(n.toLowerCase());return o>-1?o:null}};function Ot(e){for(var n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];for(var a=0,o=n;a<o.length;a++){var r=o[a];for(var s in r)e[s]=r[s]}return e}var qa=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Za=["January","February","March","April","May","June","July","August","September","October","November","December"],oA=Qa(Za,3),rA=Qa(qa,3),Wa={dayNamesShort:rA,dayNames:qa,monthNamesShort:oA,monthNames:Za,amPm:["am","pm"],DoFn:function(e){return e+["th","st","nd","rd"][e%10>3?0:(e-e%10!==10?1:0)*e%10]}},vn=Ot({},Wa),sA=function(e){return vn=Ot(vn,e)},_a=function(e){return e.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},Pe=function(e,n){for(n===void 0&&(n=2),e=String(e);e.length<n;)e="0"+e;return e},lA={D:function(e){return String(e.getDate())},DD:function(e){return Pe(e.getDate())},Do:function(e,n){return n.DoFn(e.getDate())},d:function(e){return String(e.getDay())},dd:function(e){return Pe(e.getDay())},ddd:function(e,n){return n.dayNamesShort[e.getDay()]},dddd:function(e,n){return n.dayNames[e.getDay()]},M:function(e){return String(e.getMonth()+1)},MM:function(e){return Pe(e.getMonth()+1)},MMM:function(e,n){return n.monthNamesShort[e.getMonth()]},MMMM:function(e,n){return n.monthNames[e.getMonth()]},YY:function(e){return Pe(String(e.getFullYear()),4).substr(2)},YYYY:function(e){return Pe(e.getFullYear(),4)},h:function(e){return String(e.getHours()%12||12)},hh:function(e){return Pe(e.getHours()%12||12)},H:function(e){return String(e.getHours())},HH:function(e){return Pe(e.getHours())},m:function(e){return String(e.getMinutes())},mm:function(e){return Pe(e.getMinutes())},s:function(e){return String(e.getSeconds())},ss:function(e){return Pe(e.getSeconds())},S:function(e){return String(Math.round(e.getMilliseconds()/100))},SS:function(e){return Pe(Math.round(e.getMilliseconds()/10),2)},SSS:function(e){return Pe(e.getMilliseconds(),3)},a:function(e,n){return e.getHours()<12?n.amPm[0]:n.amPm[1]},A:function(e,n){return e.getHours()<12?n.amPm[0].toUpperCase():n.amPm[1].toUpperCase()},ZZ:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Pe(Math.floor(Math.abs(n)/60)*100+Math.abs(n)%60,4)},Z:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Pe(Math.floor(Math.abs(n)/60),2)+":"+Pe(Math.abs(n)%60,2)}},$a=function(e){return+e-1},eo=[null,pt],to=[null,nn],no=["isPm",nn,function(e,n){var i=e.toLowerCase();return i===n.amPm[0]?0:i===n.amPm[1]?1:null}],io=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(e){var n=(e+"").match(/([+-]|\d\d)/gi);if(n){var i=+n[1]*60+parseInt(n[2],10);return n[0]==="+"?i:-i}return 0}],cA={D:["day",pt],DD:["day",At],Do:["day",pt+nn,function(e){return parseInt(e,10)}],M:["month",pt,$a],MM:["month",At,$a],YY:["year",At,function(e){var n=new Date,i=+(""+n.getFullYear()).substr(0,2);return+(""+(+e>68?i-1:i)+e)}],h:["hour",pt,void 0,"isPm"],hh:["hour",At,void 0,"isPm"],H:["hour",pt],HH:["hour",At],m:["minute",pt],mm:["minute",At],s:["second",pt],ss:["second",At],YYYY:["year",aA],S:["millisecond","\\d",function(e){return+e*100}],SS:["millisecond",At,function(e){return+e*10}],SSS:["millisecond",iA],d:eo,dd:eo,ddd:to,dddd:to,MMM:["month",nn,Xa("monthNamesShort")],MMMM:["month",nn,Xa("monthNames")],a:no,A:no,ZZ:io,Z:io},On={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},dA=function(e){return Ot(On,e)},uA=function(e,n,i){if(n===void 0&&(n=On.default),i===void 0&&(i={}),typeof e=="number"&&(e=new Date(e)),Object.prototype.toString.call(e)!=="[object Date]"||isNaN(e.getTime()))throw new Error("Invalid Date pass to format");n=On[n]||n;var a=[];n=n.replace(Ja,function(r,s){return a.push(s),"@@@"});var o=Ot(Ot({},vn),i);return n=n.replace(za,function(r){return lA[r](e,o)}),n.replace(/@@@/g,function(){return a.shift()})};function pA(e,n,i){if(i===void 0&&(i={}),typeof n!="string")throw new Error("Invalid format in fecha parse");if(n=On[n]||n,e.length>1e3)return null;var a=new Date,o={year:a.getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},r=[],s=[],l=n.replace(Ja,function(m,b){return s.push(_a(b)),"@@@"}),d={},p={};l=_a(l).replace(za,function(m){var b=cA[m],f=b[0],k=b[1],O=b[3];if(d[f])throw new Error("Invalid format. "+f+" specified twice in format");return d[f]=!0,O&&(p[O]=!0),r.push(b),"("+k+")"}),Object.keys(p).forEach(function(m){if(!d[m])throw new Error("Invalid format. "+m+" is required in specified format")}),l=l.replace(/@@@/g,function(){return s.shift()});var u=e.match(new RegExp(l,"i"));if(!u)return null;for(var A=Ot(Ot({},vn),i),g=1;g<u.length;g++){var E=r[g-1],S=E[0],h=E[2],I=h?h(u[g],A):+u[g];if(I==null)return null;o[S]=I}o.isPm===1&&o.hour!=null&&+o.hour!=12?o.hour=+o.hour+12:o.isPm===0&&+o.hour==12&&(o.hour=0);var w;if(o.timezoneOffset==null){w=new Date(o.year,o.month,o.day,o.hour,o.minute,o.second,o.millisecond);for(var j=[["month","getMonth"],["day","getDate"],["hour","getHours"],["minute","getMinutes"],["second","getSeconds"]],g=0,y=j.length;g<y;g++)if(d[j[g][0]]&&o[j[g][0]]!==w[j[g][1]]())return null}else if(w=new Date(Date.UTC(o.year,o.month,o.day,o.hour,o.minute-o.timezoneOffset,o.second,o.millisecond)),o.month>11||o.month<0||o.day>31||o.day<1||o.hour>23||o.hour<0||o.minute>59||o.minute<0||o.second>59||o.second<0)return null;return w}var jt={format:uA,parse:pA,defaultI18n:Wa,setGlobalDateI18n:sA,setGlobalDateMasks:dA};function AA(e,n,i){switch(i.length){case 0:return e.call(n);case 1:return e.call(n,i[0]);case 2:return e.call(n,i[0],i[1]);case 3:return e.call(n,i[0],i[1],i[2])}return e.apply(n,i)}var ao=Math.max;function gA(e,n,i){return n=ao(n===void 0?e.length-1:n,0),function(){for(var a=arguments,o=-1,r=ao(a.length-n,0),s=Array(r);++o<r;)s[o]=a[n+o];o=-1;for(var l=Array(n+1);++o<n;)l[o]=a[o];return l[n]=i(s),AA(e,this,l)}}function mA(e){return function(){return e}}var fA=Cn?function(e,n){return Cn(e,"toString",{configurable:!0,enumerable:!1,value:mA(n),writable:!0})}:Kn,hA=800,yA=16,bA=Date.now;function EA(e){var n=0,i=0;return function(){var a=bA(),o=yA-(a-i);if(i=a,o>0){if(++n>=hA)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}var wA=EA(fA);function CA(e,n){return wA(gA(e,n,Kn),e+"")}function BA(e,n,i){if(!He(i))return!1;var a=typeof n;return(a=="number"?fn(i)&&na(n,i.length):a=="string"&&n in i)?bn(i[n],e):!1}var oo=Object.prototype,kA=oo.hasOwnProperty,IA=CA(function(e,n){e=Object(e);var i=-1,a=n.length,o=a>2?n[2]:void 0;for(o&&BA(n[0],n[1],o)&&(a=1);++i<a;)for(var r=n[i],s=kn(r),l=-1,d=s.length;++l<d;){var p=s[l],u=e[p];(u===void 0||bn(u,oo[p])&&!kA.call(e,p))&&(e[p]=r[p])}return e}),vA=Qe.isFinite;function OA(e){return typeof e=="number"&&vA(e)}var ro=1/0,MA=17976931348623157e292;function RA(e){if(!e)return e===0?e:0;if(e=ei(e),e===ro||e===-ro){var n=e<0?-1:1;return n*MA}return e===e?e:0}function TA(e){var n=RA(e),i=n%1;return n===n?i?n-i:n:0}function SA(e){return typeof e=="number"&&e==TA(e)}var xA="[object Number]";function ti(e){return typeof e=="number"||lt(e)&&st(e)==xA}const VA={packageName:"forms",disable_global_radio:"The plugin is set to 'Scoped' by default when configured under a {scope}. To configure a global plugin, navigate to the global plugin list page.",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it."},NA={view_advanced_fields:"View Advanced Fields",window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},start_with_a_use_case:"Start with a use case:",use_case_index:"Use case {index}",error_message:{label:"Error Message",code_placeholder:"Code Message",message_placeholder:"Error Message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},identifiers:{label:"Identifiers",options:{ip:"IP",credential:"Credential",consumer:"Consumer",service:"Service",header:"Header",path:"Path","consumer-group":"Consumer Group"}},redis:{title:"Configure your Redis",address_example:"e.g. localhost:6379"}},DA={field_is_required:"This field is required",invalid_format:"Invalid format",number_too_small:"The number is too small. Minimum: {0}",number_too_large:"The number is too large. Maximum: {0}",invalid_number:"Invalid number",invalid_integer:"The value is not an integer",text_too_short:"The length of text is too short. Current: {0}, Minimum: {1}",text_too_long:"The length of text is too long. Current: {0}, Maximum: {1}",this_not_text:"This is not a text",this_not_array:"This is not an array",select_min_items:"Select minimum {0} items",select_max_items:"Select maximum {0} items",invalid_date:"Invalid date",date_is_early:"The date is too early. Current: {0}, Minimum: {1}",date_is_late:"The date is too late. Current: {0}, Maximum: {1}",invalid_email:"Invalid e-mail address",invalid_url:"Invalid URL",invalid_card:"Invalid card format",invalid_card_number:"Invalid card number",invalid_text_contain_number:"Invalid text - cannot contains numbers or special characters",invalid_tex_contain_spec:"Invalid text - cannot contains special characters"},PA={labels:{on:"On",off:"Off"}},Mt={general:VA,"post-function":{tags:{hint:"e.g. tag1, tag2, tag3",newElementButtonLabel:"+ Add"},enabled:{newElementButtonLabel:"+ Add"},selectionGroup:{newElementButtonLabel:"+ Add"},instance_name:{newElementButtonLabel:"+ Add"},name:{newElementButtonLabel:"+ Add"},"config-certificate":{help:"Array of stringified Lua code to be cached and run in sequence during the certificate phase.",newElementButtonLabel:"+ Add"},"config-access":{help:"Array of stringified Lua code to be cached and run in sequence during the access phase.",newElementButtonLabel:"+ Add"},"config-body_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the body_filter phase.",newElementButtonLabel:"+ Add"},"config-header_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the header_filter phase.",newElementButtonLabel:"+ Add"},"config-functions":{newElementButtonLabel:"+ Add"},"config-log":{newElementButtonLabel:"+ Add"},"config-rewrite":{newElementButtonLabel:"+ Add"},"config-ws_client_frame":{newElementButtonLabel:"+ Add"},"config-ws_close":{newElementButtonLabel:"+ Add"},"config-ws_handshake":{newElementButtonLabel:"+ Add"},"config-ws_upstream_frame":{newElementButtonLabel:"+ Add"}},"exit-transformer":{"config-functions":{newElementButtonLabel:"+ Add"}},rla:NA,validators:DA,vfg:PA},{t:ve}=Ze.createI18n("en-us",Mt),Te={fieldIsRequired:ve("validators.field_is_required"),invalidFormat:ve("validators.invalid_format"),numberTooSmall:ve("validators.number_too_small"),numberTooBig:ve("validators.number_too_large"),invalidNumber:ve("validators.invalid_number"),invalidInteger:ve("validators.invalid_integer"),textTooSmall:ve("validators.text_too_short"),textTooBig:ve("validators.text_too_long"),thisNotText:ve("validators.this_not_text"),thisNotArray:ve("validators.this_not_array"),selectMinItems:ve("validators.select_min_items"),selectMaxItems:ve("validators.select_max_items"),invalidDate:ve("validators.invalid_date"),dateIsEarly:ve("validators.date_is_early"),dateIsLate:ve("validators.date_is_late"),invalidEmail:ve("validators.invalid_email"),invalidURL:ve("validators.invalid_url"),invalidCard:ve("validators.invalid_card"),invalidCardNumber:ve("validators.invalid_card_number"),invalidTextContainNumber:ve("validators.invalid_text_contain_number"),invalidTextContainSpec:ve("validators.invalid_tex_contain_spec")},we=(e,...n)=>{if(e&&n.length>0)for(let i=0;i<n.length;i++)e=e.replace("{"+(i-1)+"}",String(n[i]||""));return e},qe=(e,n,i=Te)=>Me(e)||e===""?n?[we(i.fieldIsRequired)]:[]:null,Rt={required:(e,n,i,a=Te)=>qe(e,n.required,a)||[],number:(e,n,i,a=Te)=>{let o=qe(e,n.required,a);return o!=null||(o=[],OA(e)?(!Me(n.min)&&e<n.min,(a=Te)&&o.push(we(a.numberTooSmall,n.min)),!Me(n.max)&&e>n.max,(a=Te)&&o.push(we(a.numberTooBig,n.max))):o.push(we(a.invalidNumber))),o},integer:(e,n,i,a=Te)=>{let o=qe(e,n.required,a);return o!=null||(o=[],o.concat(Rt.number(e,n,i,a)),SA(e)||o.push(we(a.invalidInteger))),o},double:(e,n,i,a=Te)=>qe(e,n.required,a)??(!ti(e)||isNaN(e)?[we(a.invalidNumber)]:[]),string:(e,n,i,a=Te)=>{let o=qe(e,n.required,a);return o!=null||(o=[],vt(e)?(!Me(n.min)&&e.length<n.min&&o.push(we(a.textTooSmall,e.length,n.min)),!Me(n.max)&&e.length>n.max&&o.push(we(a.textTooBig,e.length,n.max))):o.push(we(a.thisNotText))),o},array:(e,n,i,a=Te)=>{if(n.required){if(!Array.isArray(e))return[we(a.thisNotArray)];if(e.length===0)return[we(a.fieldIsRequired)]}if(!Me(e)){if(!Me(n.min)&&e.length<n.min)return[we(a.selectMinItems,n.min)];if(!Me(n.max)&&e.length>n.max)return[we(a.selectMaxItems,n.max)]}return[]},date:(e,n,i,a=Te)=>{let o=qe(e,n.required,a);if(o!=null)return o;o=[];const r=new Date(e);if(isNaN(r.getDate()))return[we(a.invalidDate)];if(!Me(n.min)){const s=new Date(n.min);r.valueOf()<s.valueOf()&&o.push(we(a.dateIsEarly,jt.format(r),jt.format(s)))}if(!Me(n.max)){const s=new Date(n.max);r.valueOf()>s.valueOf()&&o.push(we(a.dateIsLate,jt.format(r),jt.format(s)))}return o},regexp:(e,n,i,a=Te)=>qe(e,n.required,a)??(!Me(n.pattern)&&!new RegExp(n.pattern).test(e)?[we(a.invalidFormat)]:[]),email:(e,n,i,a=Te)=>qe(e,n.required,a)??(/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e)?[]:[we(a.invalidEmail)]),url:(e,n,i,a=Te)=>qe(e,n.required,a)??(/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g.test(e)?[]:[we(a.invalidURL)]),creditCard:(e,n,i,a=Te)=>{const o=qe(e,n.required,a);if(o!=null)return o;const r=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,s=e.replace(/[^0-9]+/g,"");if(!r.test(s))return[we(a.invalidCard)];let l=0,d,p,u;for(let A=s.length-1;A>=0;A--)d=s.substring(A,A+1),p=parseInt(d,10),u?(p*=2,p>=10?l+=p%10+1:l+=p):l+=p,u=!u;return l%10===0&&s?[]:[we(a.invalidCardNumber)]},alpha:(e,n,i,a=Te)=>qe(e,n.required,a)??(/^[a-zA-Z]*$/.test(e)?[]:[we(a.invalidTextContainNumber)]),alphaNumeric:(e,n,i,a=Te)=>qe(e,n.required,a)??(/^[a-zA-Z0-9]*$/.test(e)?[]:[we(a.invalidTextContainSpec)])};Object.keys(Rt).forEach(e=>{const n=Rt[e];he(n)&&(n.locale=i=>(a,o,r)=>n(a,o,r,IA(i,Te)))});function so(e){return vt(e)?Rt[e]!=null?Rt[e]:(console.warn(`'${e}' is not a validator function!`),null):e}function ni(e,n,i){let a=le(i.context,"schema.attributes",{});const o=n.value||"input";vt(o)&&(a=le(a,o)||a),De(a,(r,s)=>{e.setAttribute(s,r)})}const at={name:"abstractField",props:["vfg","model","schema","formOptions","disabled"],emits:["validated","modelUpdated"],data(){return{errors:[],debouncedValidateFunc:null,debouncedFormatFunc:null}},directives:{attributes:{beforeMount:ni,updated:ni,componentUpdated:ni}},computed:{value:{cache:!1,get(){let e;return he(le(this.schema,"get"))?e=this.schema.get(this.model):e=le(this.model,this.schema.model),this.formatValueToField(e)},set(e){const n=this.value;e=this.formatValueToModel(e),he(e)?e(e,n):this.updateModelValue(e,n)}}},methods:{validate(e){this.clearValidationErrors();const n=le(this.formOptions,"validateAsync",!1);let i=[];if(this.schema.validator&&this.schema.readonly!==!0&&this.disabled!==!0){const o=[];Array.isArray(this.schema.validator)?De(this.schema.validator,r=>{o.push(so(r).bind(this))}):o.push(so(this.schema.validator).bind(this)),De(o,r=>{if(n)i.push(r(this.value,this.schema,this.model));else{const s=r(this.value,this.schema,this.model);s&&he(s.then)?s.then(l=>{l&&(this.errors=this.errors.concat(l));const d=this.errors.length===0;this.$emit("validated",d,this.errors,this)}):s&&(i=i.concat(s))}})}const a=o=>{let r=[];De(Fa(o),l=>{Array.isArray(l)&&l.length>0?r=r.concat(l):vt(l)&&r.push(l)}),he(this.schema.onValidated)&&this.schema.onValidated.call(this,this.model,r,this.schema);const s=r.length===0;return e||this.$emit("validated",s,r,this),this.errors=r,r};return n?Promise.all(i).then(a):a(i)},debouncedValidate(){he(this.debouncedValidateFunc)||(this.debouncedValidateFunc=tn(this.validate.bind(this),le(this.schema,"validateDebounceTime",le(this.formOptions,"validateDebounceTime",500)))),this.debouncedValidateFunc()},updateModelValue(e,n){let i=!1;he(this.schema.set)?(this.schema.set(this.model,e),i=!0):this.schema.model&&(this.setModelValueByPath(this.schema.model,e),i=!0),i&&(this.$emit("modelUpdated",e,this.schema.model),he(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,e,n,this.schema),le(this.formOptions,"validateAfterChanged",!1)===!0&&(le(this.schema,"validateDebounceTime",le(this.formOptions,"validateDebounceTime",0))>0?this.debouncedValidate():this.validate()))},clearValidationErrors(){this.errors.splice(0)},setModelValueByPath(e,n){let i=e.replace(/\[(\w+)\]/g,".$1");i=i.replace(/^\./,"");let a=this.model;const o=i.split(".");let r=0;const s=o.length;for(;r<s;){const l=o[r];if(r<s-1)a[l]!==void 0||(a[l]={}),a=a[l];else{a[l]=n;return}++r}},getFieldID(e,n=!1){const i=le(this.formOptions,"fieldIdPrefix","");return _n(e,i)+(n?"-"+Ka():"")},getLabelId(e){return`${this.getFieldID(e)}-label`},getFieldClasses(){return le(this.schema,"fieldClasses",[])},formatValueToField(e){return e},formatValueToModel(e){return e}}},Ee=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},LA={mixins:[at],emits:["model-updated"],data(){return{isOpen:!1}},computed:{openClass(){return this.isOpen?"open":"closed"},fieldCount(){return this.schema.fields.length},titleText(){return`${this.isOpen?"Hide":"View"} ${this.fieldCount} Advanced Fields`}},methods:{handleOpen(){this.isOpen=!this.isOpen},updateModel(e,n){this.$emit("model-updated",e,n)}}},GA={class:"advanced-field-dropdown-wrapper","data-testid":"advanced-field-dropdown-wrapper"},UA={class:"material-icons"};function jA(e,n,i,a,o,r){const s=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",GA,[t.createElementVNode("button",{class:"advanced-field-title",type:"button",onClick:n[0]||(n[0]=(...l)=>r.handleOpen&&r.handleOpen(...l))},[t.createElementVNode("i",UA,t.toDisplayString(o.isOpen?"keyboard_arrow_up":"keyboard_arrow_right"),1),t.createElementVNode("span",null,t.toDisplayString(r.titleText),1)]),t.createElementVNode("div",{class:t.normalizeClass(["advanced-field-dropdown",r.openClass])},[t.createVNode(s,{model:e.model,options:{helpAsHtml:!0},schema:e.schema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])],2)])}const YA=Ee(LA,[["render",jA],["__scopeId","data-v-acfccff7"]]),HA={class:"array-card-container"},FA=t.defineComponent({__name:"FieldArrayCardContainer",props:{model:{type:Object,default:()=>null},schema:{type:Object,default:()=>null},index:{type:Number,default:void 0}},emits:["remove-item"],setup(e){return t.provide("vfg-array-item-index",e.index),(n,i)=>{const a=t.resolveComponent("KCard"),o=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",HA,[t.createVNode(a,{class:"card"},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default",{},void 0,!0)]),_:3}),t.createVNode(o,{appearance:"tertiary",class:"array-card-remove-button",onClick:i[0]||(i[0]=r=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(je.TrashIcon))]),_:1})])}}}),lo=Ee(FA,[["__scopeId","data-v-96055692"]]),KA={class:"array-item-wrapper"},zA={class:"array-item"},JA={class:"array-item-after"},QA=t.defineComponent({__name:"FieldArrayItem",props:{model:{type:String,default:""}},emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",KA,[t.createElementVNode("div",zA,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(a,{appearance:"tertiary",class:"delete",onClick:i[0]||(i[0]=o=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(je.TrashIcon))]),_:1})]),t.createElementVNode("div",JA,[t.renderSlot(n.$slots,"after",{},void 0,!0)])])}}}),co=Ee(QA,[["__scopeId","data-v-eb9975cc"]]),XA={class:"multi-item-wrapper"},qA=t.defineComponent({__name:"FieldArrayMultiItem",emits:["remove-item"],setup(e){return(n,i)=>{const a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",XA,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(a,{appearance:"danger",class:"delete",onClick:i[0]||(i[0]=o=>n.$emit("remove-item"))},{default:t.withCtx(()=>i[1]||(i[1]=[t.createTextVNode(" - Remove Field ")])),_:1}),i[2]||(i[2]=t.createElementVNode("hr",null,null,-1))])}}}),uo=Ee(qA,[["__scopeId","data-v-37458a0a"]]),ZA="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",WA=e=>e?e.length===36&&new RegExp(`^${ZA}$`).test(e):!1,ii=50,Tt={CREATE_NOT_FROM_ENTITY:"CREATE_NOT_FROM_ENTITY",CREATE_FROM_ENTITY:"CREATE_FROM_ENTITY",UPDATE_ENTITY:"UPDATE_ENTITY",SET_REFERRAL_VALUE:"SET_REFERRAL_VALUE"};function _A(e,n,i){return i?Tt.SET_REFERRAL_VALUE:e&&!n||!e&&n?Tt.UPDATE_ENTITY:e&&n?Tt.CREATE_FROM_ENTITY:Tt.CREATE_NOT_FROM_ENTITY}const $A={mixins:[at],inject:[dt],emits:["model-updated"],setup(){const{t:e}=Ze.createI18n("en-us",Mt);return{t:e}},data(){return{suggestions:[],idValue:"",message:"Type something to search",items:[],initialItems:[],loading:!1}},computed:{fieldState(){return _A(this.model[this.schema.model],this.associatedEntity||this.entityId,this.bypassSearch)},associatedEntity(){return this.$route&&this.$route.params[this.entity]},entity(){return this.schema.entity},scope(){return this.schema.label.toLowerCase()},bypassSearch(){return this.$route&&this.$route.query&&this.$route.query.no_search}},async created(){await this.$nextTick();let e,n;switch(this.fieldState){case Tt.UPDATE_ENTITY:if(!this[dt]){console.warn("[@kong-ui-public/forms] No API service provided");break}n=(await this[dt].getOne(this.entity,this.model[this.schema.model])).data,e=this.getItem(this.schema.entityDataKey?n[this.schema.entityDataKey]:n),this.idValue=e.id;break;case Tt.CREATE_FROM_ENTITY:this.idValue=this.associatedEntity.id;break;case Tt.SET_REFERRAL_VALUE:this.idValue=this.value}try{e&&(this.initialItems=[{...e,label:this.getSuggestionLabel(e),value:e.id}]),this.items=this.initialItems}catch(i){this.message=`There was an error loading ${this.schema.entity}`,console.error("err!",i)}},methods:{onQueryChange(e){e.trim().length===0&&(this.items=[],this.message="Type something to search"),typeof this.performSearch!="function"&&(this.performSearch=tn(this.search,500)),this.performSearch(e)},async search(e){if(e.trim().length===0)return;this.loading=!0;const n=[],i=[],a=this.getInputFields(),o=new Set;WA(e)&&a.includes("id")?i.push((async()=>{const r=await this.fetchExact(e);n.push({...r,label:this.getSuggestionLabel(r),value:r.id})})()):i.push(...a.filter(r=>r!=="id").map(async r=>{(await this.fetchSuggestions(e,r)).forEach(s=>{o.has(s.id)||(o.add(s.id),n.push({...s,label:this.getSuggestionLabel(s),value:s.id}))})})),await Promise.all(i),this.items=n,this.items.length===0&&(this.message="No results"),this.loading=!1},getItem(e){return e.data?e.data.length>0?e.data[0]:[]:e},async fetchUntilLimit(e){const n=[];let i=null;if(!this[dt])return console.warn("[@kong-ui-public/forms] No API service provided"),[];for(;n.length<ii;){const a=await this[dt].getAll(this.entity,{size:ii,offset:i,...e});if(n.push(...a.data.data),i=a.data.offset,!i)break}return n.slice(0,ii)},async fetchSuggestions(e,n){return this.fetchUntilLimit({[n]:e})},async fetchExact(e){return this[dt]?(await this[dt].getOne(this.entity,e)).data:(console.warn("[@kong-ui-public/forms] No API service provided"),{})},getInputFields(){var e,n;return((n=(e=this.schema)==null?void 0:e.inputValues)==null?void 0:n.fields)||[]},getSuggestionLabel(e){const n=this.getInputFields();return n.length&&e?n.map(i=>e[i]).filter(Boolean).join(" - "):""},updateModel(e){this.$emit("model-updated",e!=null&&e.length?e:null,this.schema.model)},onSelected(e){this.idValue=e&&e.id,this.updateModel(this.getReturnValue(e||{}))},getReturnValue(e){var n;const i=(n=this.schema)==null?void 0:n.returnKey;return i?e[i]:e.id}}},eg=["data-testid","data-testlabel"],tg=["data-testid"],ng={class:"autosuggest__results_message"};function ig(e,n,i,a,o,r){const s=t.resolveComponent("KSelect");return t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.disabled?"k-tooltip":"div"),{class:"field-wrap autosuggest","max-width":"300",text:a.t("general.disable_source_scope_change",{scope:r.scope})},{default:t.withCtx(()=>[t.createVNode(s,{id:e.schema.model,ref:"suggestion",modelValue:o.idValue,"onUpdate:modelValue":n[0]||(n[0]=l=>o.idValue=l),clearable:"",disabled:e.schema.disabled,"enable-filtering":"","filter-function":()=>!0,items:o.items,loading:o.loading,placeholder:e.schema.placeholder,width:"100%",onChange:r.onSelected,onQueryChange:r.onQueryChange},{"item-template":t.withCtx(({item:l})=>[t.createElementVNode("span",{class:"first-part","data-testid":l.id&&`${l.id}-0`,"data-testlabel":l.label},t.toDisplayString(r.getSuggestionLabel(l).split(" - ")[0]),9,eg),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.getSuggestionLabel(l).split(" - ").slice(1),(d,p)=>(t.openBlock(),t.createElementBlock("span",{key:p,class:"field-span","data-testid":l.id&&`${l.id}-${p+1}`||p+1},t.toDisplayString(d),9,tg))),128))]),empty:t.withCtx(()=>[t.createElementVNode("div",ng,[t.createElementVNode("span",null,t.toDisplayString(o.message),1)])]),_:1},8,["id","modelValue","disabled","items","loading","placeholder","onChange","onQueryChange"])]),_:1},8,["text"])}const po=Ee($A,[["render",ig],["__scopeId","data-v-40a272a2"]]);function ag(e){const n=t.ref([]),i=t.ref(null),a=h=>vt(h)?Rt[h]!=null?Rt[h]:(console.warn(`'${h}' is not a validator function!`),null):h,o=t.computed({get(){var h,I;let w;return he(le(e.schema,"get"))?w=e.schema.get((h=e.model)==null?void 0:h.value):w=le((I=e.model)==null?void 0:I.value,e.schema.model),E(w)},set(h){const I=o;h=S(h),he(h)?h(h,I):l(h,I)}}),r=h=>{var I;d();const w=(I=e.schema)==null?void 0:I.validator,j=le(e.formOptions,"validateAsync",!1);let y=[];if(w&&e.schema.readonly!==!0&&e.disabled!==!0){const b=[];Array.isArray(w)?De(w,f=>{b.push(a(f))}):b.push(a(w)),De(b,f=>{var k,O;if(j)y.push(f(o.value,e.schema,(k=e.model)==null?void 0:k.value));else{const H=f(o.value,e.schema,(O=e.model)==null?void 0:O.value);H&&he(H.then)?H.then(x=>{x&&(n.value=n.value.concat(x));const D=n.value.length===0;e.emitValidated&&e.emitValidated({isValid:D,errors:n.value,field:e.schema})}):H&&(y=y.concat(H))}})}const m=b=>{var f,k;let O=[];if(De(Fa(b),H=>{Array.isArray(H)&&H.length>0?O=O.concat(H):vt(H)&&O.push(H)}),he((f=e.schema)==null?void 0:f.onValidated)&&e.schema.onValidated((k=e.model)==null?void 0:k.value,O,e.schema),!h){const H=O.length===0;e.emitValidated&&e.emitValidated({isValid:H,errors:O,field:e.schema})}return b=O,O};return j?Promise.all(y).then(m):m(y)},s=()=>{he(i.value)?i.value():i.value=tn(r,le(e.schema,"validateDebounceTime",le(e.formOptions,"validateDebounceTime",500)))},l=(h,I)=>{var w,j,y;let m=!1;he(e.schema.set)?(e.schema.set((w=e.model)==null?void 0:w.value,h),m=!0):e.schema.model&&(p(e.schema.model,h),m=!0),m&&(e.emitModelUpdated&&(j=e.model)!=null&&j.value&&e.emitModelUpdated({value:h,model:e.schema.model}),he(e.schema.onChanged)&&e.schema.onChanged((y=e.model)==null?void 0:y.value,h,I,e.schema),le(e.formOptions,"validateAfterChanged",!1)===!0&&(le(e.schema,"validateDebounceTime",le(e.formOptions,"validateDebounceTime",0))>0?s():r()))},d=()=>{n.value.splice(0)},p=(h,I)=>{var w;let j=h.replace(/\[(\w+)\]/g,".$1");j=j.replace(/^\./,"");let y=((w=e.model)==null?void 0:w.value)||{},m=0;const b=j.split("."),f=b.length;for(;m<f;){const k=b[m];if(m<f-1)y[k]!==void 0||(y[k]={}),y=y[k];else{y[k]=I;return}++m}},u=(h,I=!1)=>{const w=le(e.formOptions,"fieldIdPrefix","");return _n(h,w)+(I?"-"+Ka():"")},A=h=>`${u(h)}-label`,g=()=>le(e.schema,"fieldClasses",[]),E=h=>e.formatValueToField&&typeof e.formatValueToField=="function"?e.formatValueToField(h):h,S=h=>e.formatValueToModel&&typeof e.formatValueToModel=="function"?e.formatValueToModel(h):h;return{value:o,clearValidationErrors:d,getFieldID:u,getLabelId:A,getFieldClasses:g,updateModelValue:l}}const gt={useAbstractFields:ag},og={class:"form-field-wrapper"},rg=t.defineComponent({__name:"FieldInput",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRefs(a),s=t.inject(Xe,void 0),{updateModelValue:l,getFieldID:d,clearValidationErrors:p,value:u}=gt.useAbstractFields({model:r.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:y=>{o("modelUpdated",y.value,y.model)}});n({clearValidationErrors:p});const A=t.computed(()=>{var y;const m=(y=a.schema)==null?void 0:y.inputType.toLowerCase();switch(m){case"string":return"text";case"datetime":return"datetime-local";default:return m||"text"}}),g={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss","datetime-local":"YYYY-MM-DDTHH:mm:ss"},E=(y,m)=>{var b,f;let k=y;const O=g[A.value]||"",H=jt.parse(y,O);H&&((b=a.schema)!=null&&b.format?k=jt.format(H,(f=a.schema)==null?void 0:f.format):k=H.valueOf()),l(k,m)},S=(y,m)=>{ti(y)||(y=NaN),l(y,m)},h=y=>{let m=y;switch(A.value){case"number":case"range":ti(parseFloat(y))&&(m=parseFloat(y));break}u.value=m,l(m,y)},I=y=>{u.value=y,l(y,y)},w=t.ref(null),j=()=>{var y;he(w.value)&&((y=w.value)==null||y.flush())};return t.onMounted(()=>{switch(A.value){case"number":case"range":w.value=tn((y,m)=>{S(y,m)},parseInt(le(a.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break;case"date":case"datetime":case"datetime-local":w.value=tn((y,m)=>{E(y,m)},parseInt(le(a.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break}}),t.onBeforeMount(()=>{A.value==="checkbox"?console.warn("The use of 'checkbox' inputType with 'input' type fields is deprecated. Use 'checkbox' type instead."):A.value==="radio"?console.warn("The use of 'radio' inputType with 'input' type fields is deprecated. Use 'radio' type instead."):A.value==="file"&&console.warn("The 'file' type in input field is deprecated. Use 'file' field instead.")}),(y,m)=>{const b=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock("div",og,[t.createVNode(b,t.mergeProps(y.$attrs,{id:t.unref(d)(e.schema),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint?e.hint:A.value==="color"||A.value==="range"?t.unref(u):void 0,max:e.schema.max,maxlength:e.schema.maxlength,min:e.schema.min,minlength:e.schema.minlength,"model-value":t.unref(u),name:e.schema.inputName,pattern:e.schema.pattern,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,"show-password-mask-toggle":A.value==="password",type:A.value,width:e.schema.width,onBlur:j,"onUpdate:modelValue":h}),null,16,["id","autocomplete","class","disabled","help","max","maxlength","min","minlength","model-value","name","pattern","placeholder","readonly","required","show-password-mask-toggle","type","width"]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(s)),{schema:e.schema,update:I,value:t.unref(u)},null,8,["schema","value"]))])}}}),Ao=Ee(rg,[["__scopeId","data-v-fe1132bb"]]),sg={name:"FieldMetric",components:{AddIcon:je.AddIcon,TrashIcon:je.TrashIcon},mixins:[at],emits:["remove-item"],data(){return{contentVisible:!1}}},lg={key:0,class:"content"};function cg(e,n,i,a,o,r){const s=t.resolveComponent("AddIcon"),l=t.resolveComponent("TrashIcon"),d=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["field-dropdown",{active:o.contentVisible}])},[t.createElementVNode("div",{class:"title",onClick:n[0]||(n[0]=p=>o.contentVisible=!o.contentVisible)},[t.createTextVNode(t.toDisplayString(e.model.name?e.model.name:"New Item")+" ",1),t.createVNode(s,{class:"metric-add-icon"})]),t.createVNode(t.Transition,{name:"slide-fade"},{default:t.withCtx(()=>[o.contentVisible?(t.openBlock(),t.createElementBlock("div",lg,[t.renderSlot(e.$slots,"default"),t.createVNode(d,{appearance:"tertiary",class:"metric-remove-button",onClick:n[1]||(n[1]=p=>e.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(l)]),_:1})])):t.createCommentVNode("",!0)]),_:3})],2)}const go=Ee(sg,[["render",cg]]),dg={mixins:[at],emits:["modelUpdated"],data(){return{attributes:this.schema?this.schema.attributes:void 0,newKeyType:"string",newKeyName:"",keyTypes:{}}},created(){this.value||(this.value={})},mounted(){if(!this.value)return;const e=Object.keys(this.value),n={};for(let i=0;i<e.length;i++){const a=e[i];n[a]=typeof this.value[a]}this.keyTypes=n},methods:{removeElement(e){const n=this.value;delete n[e],this.value=JSON.parse(JSON.stringify(n));const i=this.keyTypes;delete i[e],this.keyTypes=JSON.parse(JSON.stringify(i))},addKey(){this.value[this.newKeyName]=void 0,this.value={...this.value},this.keyTypes[this.newKeyName]=this.newKeyType,this.keyTypes={...this.keyTypes},this.newKeyName=""},updateModel(e,n){this.$emit("modelUpdated",e,n)}}},ug={class:"field-object-container"},pg={key:1},Ag=["id"],gg={key:0},mg=["onUpdate:modelValue"],fg={key:1},hg=["onUpdate:modelValue"],yg={key:2},bg=["onUpdate:modelValue"],Eg=["onClick"];function wg(e,n,i,a,o,r){const s=t.resolveComponent("vue-form-generator"),l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",ug,[e.schema.schema?(t.openBlock(),t.createBlock(s,{key:0,model:e.value,options:e.formOptions,schema:e.schema.schema,onModelUpdated:r.updateModel},null,8,["model","options","schema","onModelUpdated"])):(t.openBlock(),t.createElementBlock("div",pg,[t.createElementVNode("table",{id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(d,p)=>(t.openBlock(),t.createElementBlock("tr",{key:p},[t.createElementVNode("td",null,t.toDisplayString(p),1),o.keyTypes[p]==="string"?(t.openBlock(),t.createElementBlock("td",gg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[p]=u,type:"text"},null,8,mg),[[t.vModelText,e.value[p]]])])):t.createCommentVNode("",!0),o.keyTypes[p]==="boolean"?(t.openBlock(),t.createElementBlock("td",fg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[p]=u,type:"checkbox"},null,8,hg),[[t.vModelCheckbox,e.value[p]]])])):t.createCommentVNode("",!0),o.keyTypes[p]==="number"?(t.openBlock(),t.createElementBlock("td",yg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":u=>e.value[p]=u,type:"number"},null,8,bg),[[t.vModelText,e.value[p]]])])):t.createCommentVNode("",!0),t.createElementVNode("td",null,[t.createElementVNode("input",{type:"button",value:"x",onClick:u=>r.removeElement(p)},null,8,Eg)])]))),128))],10,Ag),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":n[0]||(n[0]=d=>o.newKeyType=d)},n[3]||(n[3]=[t.createElementVNode("option",{value:"string"}," String ",-1),t.createElementVNode("option",{value:"number"}," Number ",-1),t.createElementVNode("option",{value:"boolean"}," Boolean ",-1)]),512),[[t.vModelSelect,o.newKeyType]]),t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[1]||(n[1]=d=>o.newKeyName=d),type:"text"},null,512),[[t.vModelText,o.newKeyName]]),t.createElementVNode("input",{type:"button",value:"Add key",onClick:n[2]||(n[2]=(...d)=>r.addKey&&r.addKey(...d))})]))])),[[l,o.attributes]])}const mo=Ee(dg,[["render",wg],["__scopeId","data-v-b7e3dcd7"]]),Cg={components:{TrashIcon:je.TrashIcon},mixins:[at],inject:{autofillSlot:{from:Xe,default:void 0}},emits:["model-updated"],data(){return{newKeyName:""}},computed:{subSchema(){return this.schema.schema&&this.schema.schema.fields[0].schema},subFields(){return!this.subSchema&&this.schema.fields},hasObjectKeys(){return this.value&&Object.keys(this.value).length>0},transformedModel(){return this.subSchema&&this.subSchema.fields.length>=1&&this.subSchema.fields[0].type==="array"?new Proxy(this.model[this.schema.model],{get:(e,n)=>({[this.schema.model]:e[n]}),set:(e,n,i)=>e[n]=i[this.schema.model]}):this.model[this.schema.model]},valueInputType(){var e;return["number","integer"].includes((e=this.schema.values)==null?void 0:e.type)?"number":"text"}},mounted(){this.value||(this.value={});let e=[];this.subSchema?e=this.subSchema.fields:this.subFields&&(e=this.schema.fields[0].schema),this.value=this.transformMapModelValuesToObject(this.model,e,this.schema.model)},methods:{removeElement(e){const n=this.value;delete n[e],this.value={...n}},transformMapModelValuesToObject(e,n,i){const a={};return Object.keys(e).map(o=>{const r=o.indexOf(i+"-");if(r>-1&&Array.isArray(n))if(n.length>0){const s=o.split("-").filter(d=>n.find(p=>p.model===d)),l=o.split(`-${s}`)[0].split(`${i}-`)[1];s.length?a[l]={...a[l],[s]:e[o]}:a[o.substring(r+`${i}-`.length)]=e[o]}else a[o.substring(`${i}-`.length)]=e[o];else{const s=o.split("-").filter(d=>d===this.schema.model),l=o.split(`-${s}`)[0].split(`${i}-`)[1];l&&(a[l]=e[o])}return o}),a},addKey(){var e;const n=this.subSchema&&Array.isArray(this.subSchema.fields)&&this.subSchema.fields.length===1&&this.subSchema.fields[0].type==="array",i=((e=this.schema.values)==null?void 0:e.default)??(this.valueInputType==="number"?0:""),a=this.subSchema?n?[""]:{}:i;this.value[this.newKeyName]=a,this.newKeyName=""},updateModel(e,n){this.$emit("model-updated",this.model[this.schema.model],n)}}},Bg=["id"],kg=["data-testid"],Ig={class:"item-wrapper"},vg={class:"index-wrapper"},Og={key:0},Mg={key:1},Rg=["onUpdate:modelValue","placeholder","type","onInput"],Tg={key:0,class:"hint"},Sg={class:"input-item"},xg=["placeholder"],Vg={key:0,class:"hint"};function Ng(e,n,i,a,o,r){const s=t.resolveComponent("TrashIcon"),l=t.resolveComponent("KButton"),d=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",{id:e.getFieldID(e.schema),class:t.normalizeClass(["object-advanced-wrapper",e.schema.fieldClasses])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(p,u)=>(t.openBlock(),t.createElementBlock("div",{key:u,"data-testid":`field-object-key-${u}`},[t.createElementVNode("div",null,[t.createElementVNode("div",Ig,[t.createElementVNode("div",vg,[t.createElementVNode("strong",null,t.toDisplayString(u),1),t.createElementVNode("div",null,[t.createVNode(l,{appearance:"tertiary",class:"delete",icon:"",type:"button",onClick:A=>r.removeElement(u)},{default:t.withCtx(()=>[t.createVNode(s)]),_:2},1032,["onClick"])])]),n[1]||(n[1]=t.createElementVNode("hr",{class:"divider"},null,-1)),r.subSchema?(t.openBlock(),t.createElementBlock("div",Og,[t.createVNode(d,{model:r.transformedModel[u],options:{helpAsHtml:!0},schema:r.subSchema,onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])):(t.openBlock(),t.createElementBlock("div",Mg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":A=>e.value[u]=A,class:"form-control",placeholder:e.schema.fields&&e.schema.fields[0].schema.placeholder,type:r.valueInputType,onInput:A=>r.updateModel(e.value[u],e.model[e.schema.model])},null,40,Rg),[[t.vModelDynamic,e.value[u]]]),e.schema.fields&&e.schema.fields[0].schema.hint?(t.openBlock(),t.createElementBlock("p",Tg,t.toDisplayString(e.schema.fields[0].schema.hint),1)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema.fields&&e.schema.fields[0].schema||e.schema.values,update:A=>e.value[u]=A,value:e.value[u]},null,8,["schema","update","value"]))])),n[2]||(n[2]=t.createElementVNode("hr",{class:"wide-divider"},null,-1))])])],8,kg))),128)),t.createElementVNode("div",{class:t.normalizeClass(["input-wrapper",{indent:r.hasObjectKeys}])},[t.createElementVNode("div",Sg,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=p=>o.newKeyName=p),class:"form-control","data-testid":"keyname-input",placeholder:e.schema.placeholder,type:"text"},null,8,xg),[[t.vModelText,o.newKeyName]]),t.createVNode(l,{appearance:"tertiary","data-testid":"add-key",disabled:!o.newKeyName,onClick:r.addKey},{default:t.withCtx(()=>[t.createTextVNode(" + Add "+t.toDisplayString(e.schema.buttonLabel||e.schema.label),1)]),_:1},8,["disabled","onClick"])]),e.schema.hintText?(t.openBlock(),t.createElementBlock("p",Vg,t.toDisplayString(e.schema.hintText),1)):t.createCommentVNode("",!0)],2)],10,Bg)}const fo=Ee(Cg,[["render",Ng],["__scopeId","data-v-5b7aaeef"]]),Dg={class:"radio-selection-group"},Pg=t.defineComponent({__name:"FieldRadio",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRefs(a),{updateModelValue:s,value:l,clearValidationErrors:d}=gt.useAbstractFields({model:r.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:u=>{o("modelUpdated",u.value,u.model)}});n({clearValidationErrors:d});const p=u=>{let A=u;typeof u=="string"&&(A=u.split(","),a.schema.array||(A=A.toString())),s(A,u)};return(u,A)=>{const g=t.resolveComponent("KRadio");return t.openBlock(),t.createElementBlock("div",Dg,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.values,(E,S)=>(t.openBlock(),t.createBlock(g,{id:e.schema.name+"-"+S,key:E.value,modelValue:t.unref(l),"onUpdate:modelValue":A[0]||(A[0]=h=>t.isRef(l)?l.value=h:null),label:E.name,"label-attributes":{info:e.schema.help},name:e.schema.name,required:e.schema.required||void 0,"selected-value":E.value,onChange:p},null,8,["id","modelValue","label","label-attributes","name","required","selected-value"]))),128))])}}}),ho=Ee(Pg,[["__scopeId","data-v-09b8afda"]]),yo=t.defineComponent({__name:"FieldSelect",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.computed(()=>a.schema.selectOptions||{}),s=h=>Me(h)?null:h,l=t.toRefs(a),{getFieldID:d,clearValidationErrors:p,value:u}=gt.useAbstractFields({model:l.model,schema:a.schema,formOptions:a.formOptions,formatValueToField:s,emitModelUpdated:h=>{o("modelUpdated",h.value,h.model)}});n({clearValidationErrors:p});const A=t.computed(()=>{const h=a.schema.values;return g(typeof h=="function"?h.apply(this,[a.model,a.schema]):h)}),g=h=>{const I=[];return h.forEach(w=>{I.push({label:S(w),value:E(w),disabled:typeof w=="object"&&w.disabled||void 0,group:typeof w=="object"&&String(w.group||"").toUpperCase()||void 0})}),I},E=h=>{if(He(h)){if(r.value&&typeof r.value.value<"u")return h[r.value.value];if(typeof h.id<"u")return String(h.id);throw new Error("`id` is not defined. If you want to use another key name, add a `value` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return h},S=h=>{if(He(h)){if(r.value&&typeof r.value.name<"u")return h[r.value.name];if(typeof h.name<"u")return String(h.name);throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return String(h)};return(h,I)=>{const w=t.resolveComponent("KSelect");return t.openBlock(),t.createBlock(w,{id:t.unref(d)(e.schema),modelValue:t.unref(u),"onUpdate:modelValue":I[0]||(I[0]=j=>t.isRef(u)?u.value=j:null),class:t.normalizeClass(e.schema.fieldClasses),clearable:!e.schema.required,disabled:e.disabled||void 0,items:A.value,"kpop-attributes":{"data-testid":`${t.unref(d)(e.schema)}-items`},"label-attributes":{info:e.schema.help},name:e.schema.inputName,placeholder:r.value.hideNoneSelectedText?void 0:r.value.noneSelectedText||"Nothing Selected",required:e.schema.required||void 0,width:"100%"},null,8,["id","modelValue","class","clearable","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),Lg={name:"FieldArray",components:{FieldArrayItem:co,FieldArrayMultiItem:uo,FieldSelect:yo,FieldMetric:go,FieldObject:mo,FieldObjectAdvanced:fo,FieldAutoSuggest:po,FieldRadio:ho,FieldArrayCardContainer:lo,FieldInput:Ao},mixins:[at],inject:{autofillSlot:{from:Xe,default:void 0}},props:{newElementButtonLabel:{type:String,default:"New Item"},removeElementButtonLabel:{type:String,default:"x"}},emits:["refreshModel"],methods:{generateSchema(e,n,i){var a,o,r;let s;return n&&(s=JSON.parse(JSON.stringify(n)),(r=(o=(a=s.schema)==null?void 0:a.fields)==null?void 0:o.map)==null||r.call(o,l=>(l.id=`${l.id||l.model}-${i}`,l))),{...s,set(l,d){e[i]=d},get(){return e[i]}}},newElement(){let e=this.value,n;(!e||!e.push)&&(e=[]),this.schema.items&&this.schema.items.default&&(typeof this.schema.items.default=="function"?n=this.schema.items.default():n=this.schema.items.default),e.push(n),this.value=[...e]},removeElement(e){this.value=this.value.filter((n,i)=>i!==e)},getFieldType(e){return"field-"+e.type},modelUpdated(){this.$emit("refreshModel")},handleInput(e,n){this.value=this.value.map((i,a)=>a===n?e:i)}}},Gg=["id"],Ug={key:1},jg=["onUpdate:modelValue","aria-labelledby","type"],Yg=["onUpdate:modelValue","aria-labelledby"];function Hg(e,n,i,a,o,r){const s=t.resolveComponent("KTextArea"),l=t.resolveComponent("KInput"),d=t.resolveComponent("KButton");return e.schema?(t.openBlock(),t.createElementBlock("div",{key:0,id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(p,u)=>(t.openBlock(),t.createElementBlock("div",{key:u,class:t.normalizeClass(e.schema.fieldItemsClasses)},[e.schema.items&&e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:0,index:u,model:p,schema:r.generateSchema(e.value,e.schema.items,u),onRemoveItem:A=>r.removeElement(u)},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:p,schema:r.generateSchema(e.value,e.schema.items,u),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))]),_:2},1064,["index","model","schema","onRemoveItem"])):e.schema.items?(t.openBlock(),t.createElementBlock("span",Ug,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:p,schema:r.generateSchema(e.value,e.schema.items,u),onModelUpdated:r.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))])):e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:2,"data-testid":`${e.getFieldID(e.schema)}-item-${u}`,model:p,schema:r.generateSchema(e.value,e.schema.items,u),onRemoveItem:A=>r.removeElement(u)},{after:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema,update:A=>e.value[u]=A,value:e.value[u]},null,8,["schema","update","value"]))]),default:t.withCtx(()=>{var A;return[e.schema.inputAttributes&&e.schema.inputAttributes.type==="textarea"?(t.openBlock(),t.createBlock(s,t.mergeProps({key:0,ref_for:!0},e.schema.inputAttributes,{id:e.getFieldID(e.schema),modelValue:e.value[u],"onUpdate:modelValue":g=>e.value[u]=g,"aria-labelledby":e.getLabelId(e.schema),autosize:"","character-limit":e.schema.inputAttributes.max,class:e.schema.fieldClasses,maxlength:e.schema.max,minlength:e.schema.min,name:e.schema.inputName,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,resizable:"",rows:e.schema.rows||3}),null,16,["id","modelValue","onUpdate:modelValue","aria-labelledby","character-limit","class","maxlength","minlength","name","placeholder","readonly","required","rows"])):!e.schema.inputAttributes||!e.schema.inputAttributes.type||e.schema.inputAttributes.type==="text"||e.schema.inputAttributes.type==="number"?(t.openBlock(),t.createBlock(l,t.mergeProps({key:1,"aria-labelledby":e.getLabelId(e.schema),ref_for:!0},e.schema.inputAttributes,{"model-value":e.value[u],type:e.schema.inputAttributes&&e.schema.inputAttributes.type||"text",onInput:g=>{r.handleInput(g,u)}}),null,16,["aria-labelledby","model-value","type","onInput"])):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:2,"onUpdate:modelValue":g=>e.value[u]=g,"aria-labelledby":e.getLabelId(e.schema),ref_for:!0},e.schema.inputAttributes,{type:((A=e.schema.inputAttributes)==null?void 0:A.type)||"text"}),null,16,jg)),[[t.vModelDynamic,e.value[u]]])]}),_:2},1064,["data-testid","model","schema","onRemoveItem"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.withDirectives(t.createElementVNode("input",t.mergeProps({ref_for:!0},e.schema.inputAttributes,{"onUpdate:modelValue":A=>e.value[u]=A,"aria-labelledby":e.getLabelId(e.schema),type:"text"}),null,16,Yg),[[t.vModelText,e.value[u]]]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema,update:A=>e.value[u]=A,value:e.value[u]},null,8,["schema","update","value"]))],64))],2))),128)),t.createVNode(d,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`add-${e.getFieldID(e.schema)}`,type:"button",onClick:r.newElement},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel||i.newElementButtonLabel),1)]),_:1},8,["class","data-testid","onClick"])],10,Gg)):t.createCommentVNode("",!0)}const Fg=Ee(Lg,[["render",Hg],["__scopeId","data-v-a569ac75"]]),Kg={class:"form-field-wrapper field-checkbox"},zg=t.defineComponent({__name:"FieldCheckbox",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRefs(a),{getFieldID:s,value:l,clearValidationErrors:d}=gt.useAbstractFields({model:r.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:p=>{o("modelUpdated",p.value,p.model)}});return n({clearValidationErrors:d}),(p,u)=>{const A=t.resolveComponent("KCheckbox");return t.openBlock(),t.createElementBlock("div",Kg,[t.createVNode(A,t.mergeProps(p.$attrs,{id:t.unref(s)(e.schema),modelValue:t.unref(l),"onUpdate:modelValue":u[0]||(u[0]=g=>t.isRef(l)?l.value=g:null),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint?e.hint:void 0,name:e.schema.inputName,readonly:e.schema.readonly,required:e.schema.required,width:e.schema.width}),null,16,["id","modelValue","autocomplete","class","disabled","help","name","readonly","required","width"])])}}}),Jg=Ee(zg,[["__scopeId","data-v-6b4ee1cd"]]);var Qg=4;function bo(e){return en(e,Qg)}const Xg={class:"wrapper"},qg=["disabled"],Zg=["id","checked","disabled","onChange","name"],Wg=["disabled"],_g={class:"info"},$g={class:"dropList"},em=["id","checked","disabled","onChange","name"];function tm(e,n,i,a,o,r){const s=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",Xg,[e.schema.listBox?(t.openBlock(),t.createElementBlock("div",{key:0,class:"listbox form-control",disabled:e.disabled||null},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.items,l=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":r.isItemChecked(l)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:r.isItemChecked(l)||null,disabled:e.disabled||null,onChange:d=>r.onChanged(d,l),name:r.getInputName(l)},null,40,Zg),[[s,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(l)),1)])],2))),256))],8,qg)):t.createCommentVNode("",!0),e.schema.listBox?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:1,class:"combobox form-control",disabled:e.disabled||null},[t.createElementVNode("div",{class:t.normalizeClass(["mainRow",{expanded:o.comboExpanded}]),onClick:n[0]||(n[0]=(...l)=>r.onExpandCombo&&r.onExpandCombo(...l))},[t.createElementVNode("div",_g,t.toDisplayString(r.selectedCount)+" selected",1),n[1]||(n[1]=t.createElementVNode("div",{class:"arrow"},null,-1))],2),t.createElementVNode("div",$g,[o.comboExpanded?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(r.items,l=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":r.isItemChecked(l)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:r.isItemChecked(l)||null,disabled:e.disabled||null,onChange:d=>r.onChanged(d,l),name:r.getInputName(l)},null,40,em),[[s,"input"]]),t.createTextVNode(t.toDisplayString(r.getItemName(l)),1)])],2))),256)):t.createCommentVNode("",!0)])],8,Wg))])),[[s,"wrapper"]])}const nm={mixins:[at],data(){return{comboExpanded:!1}},computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e},selectedCount(){return this.value?this.value.length:0}},methods:{getInputName(e){return this.schema&&this.schema.inputName&&this.schema.inputName.length>0?Ua(this.schema.inputName+"_"+this.getItemValue(e)):Ua(this.getItemValue(e))},getItemValue(e){if(He(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.value<"u")return e[this.schema.checklistOptions.value];if(typeof e.value<"u")return e.value;throw new Error("`value` is not defined. If you want to use another key name, add a `value` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},getItemName(e){if(He(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.name<"u")return e[this.schema.checklistOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},isItemChecked(e){return this.value&&this.value.indexOf(this.getItemValue(e))!==-1},onChanged(e,n){if((Me(this.value)||!Array.isArray(this.value))&&(this.value=[]),e.target.checked){const i=bo(this.value);i.push(this.getItemValue(n)),this.value=i}else{const i=bo(this.value);i.splice(this.value.indexOf(this.getItemValue(n)),1),this.value=i}},onExpandCombo(){this.comboExpanded=!this.comboExpanded}}},im=Ee(nm,[["render",tm]]),am={name:"FieldKeyValuePairs",components:{TrashIcon:je.TrashIcon},mixins:[at],inject:{autofillSlot:{from:Xe,default:void 0}},data(){return{pairs:[]}},watch:{pairs:{handler(){this.updateValue()},deep:!0}},created(){var e,n;this.value||(this.value={});const i=((n=this.model)==null?void 0:n[(e=this.schema)==null?void 0:e.model])??{};Object.keys(i).forEach(a=>{this.pairs.push({key:a,value:i[a]})})},methods:{onInput(e,n,i){this.pairs[n][i]=e.target.value},updateValue(){this.value=this.pairs.reduce((e,{key:n,value:i})=>({...e,...n&&i?{[n]:i}:null}),{})},addPair(){this.pairs.push({key:"",value:""})},removePair(e){this.pairs.splice(e,1)}}},om={class:"key-value-pairs-editor"},rm={class:"pair-item-cell"},sm=["data-testid","placeholder","value","onInput"],lm={class:"pair-item-cell"},cm=["data-testid","placeholder","value","onInput"];function dm(e,n,i,a,o,r){const s=t.resolveComponent("TrashIcon"),l=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",om,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.pairs,(d,p)=>(t.openBlock(),t.createElementBlock("div",{key:p,class:"pair-item"},[t.createElementVNode("div",rm,[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-key-${p}`,placeholder:e.schema.keyInputPlaceholder??"Key",type:"text",value:d.key,onInput:u=>{r.onInput(u,p,"key")}},null,40,sm),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema,update:u=>r.onInput({target:{value:u}},p,"key"),value:d.key},null,8,["schema","update","value"]))]),t.createElementVNode("div",lm,[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-value-${p}`,placeholder:e.schema.valueInputPlaceholder??"Value",type:"text",value:d.value,onInput:u=>{r.onInput(u,p,"value")}},null,40,cm),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.autofillSlot),{schema:e.schema,update:u=>r.onInput({target:{value:u}},p,"value"),value:d.value},null,8,["schema","update","value"]))]),t.createVNode(l,{appearance:"tertiary","data-testid":`${e.getFieldID(e.schema)}-remove-pair-${p}`,onClick:()=>{r.removePair(p)}},{default:t.withCtx(()=>[t.createVNode(s)]),_:2},1032,["data-testid","onClick"])]))),128)),t.createVNode(l,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`${e.getFieldID(e.schema)}-add-pair`,type:"button",onClick:r.addPair},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel??"+ Add Pair"),1)]),_:1},8,["class","data-testid","onClick"])])}const um=Ee(am,[["render",dm],["__scopeId","data-v-70998d5b"]]),pm=t.defineComponent({__name:"FieldLabel",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0}},setup(e){const n=e,i=t.toRefs(n),{getFieldID:a,value:o}=gt.useAbstractFields({model:i.model,schema:n.schema,formOptions:n.formOptions});return(r,s)=>{const l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["field-label",e.schema.fieldClasses])},[t.createVNode(l,{id:t.unref(a)(e.schema)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)),1)]),_:1},8,["id"])],2)}}}),Am=Ee(pm,[["__scopeId","data-v-d046a15a"]]),gm=t.defineComponent({__name:"FieldMultiselect",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRef(a,"model"),{getLabelId:s,getFieldID:l,clearValidationErrors:d,value:p}=gt.useAbstractFields({model:r,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:A=>{o("modelUpdated",A.value,A.model)}});n({clearValidationErrors:d});const u=t.computed(()=>{var A,g;return a.schema.values?a.schema.values:(g=(A=a.schema.elements)==null?void 0:A.one_of)!=null&&g.length?a.schema.elements.one_of.map(E=>({label:String(E),value:String(E)})):[]});return(A,g)=>{const E=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(E,{id:t.unref(l)(e.schema),modelValue:t.unref(p),"onUpdate:modelValue":g[0]||(g[0]=S=>t.isRef(p)?p.value=S:null),"aria-labelledby":t.unref(s)(e.schema),class:t.normalizeClass(e.schema.fieldClasses),"data-testid":"field-multiselect",disabled:e.disabled||void 0,items:u.value,"kpop-attributes":{"data-testid":`${t.unref(l)(e.schema)}-items`},"label-attributes":{info:e.schema.help},name:e.schema.inputName,placeholder:e.schema.placeholder,required:e.schema.required||void 0,width:"100%"},null,8,["id","modelValue","aria-labelledby","class","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),mm={mixins:[at],emits:["model-updated"],setup(){const{t:e}=Ze.createI18n("en-us",Mt);return{t:e}},data(){return{checkedGroup:null,fieldModel:{...this.model},fieldSchema:[],scope:"scope"}},watch:{checkedGroup:{handler(e,n){if(n===null){this.fieldModel={...this.model};return}const i=this.schema.fields[e].fields,a=this.schema.fields[n].fields;a&&a.forEach(o=>this.updateModel("",o.model)),i&&i.forEach(o=>this.updateModel(this.fieldModel[o.model],o.model))}}},async created(){await this.$nextTick(),this.schema.fields.forEach((e,n)=>{e.fields&&e.fields.forEach(i=>{var a;this.model[i.model]&&(this.checkedGroup=n,this.fieldSchema.push(i.model),this.scope=(a=i.label)==null?void 0:a.toLowerCase())})}),this.checkedGroup===null&&(this.checkedGroup=0)},methods:{updateModel(e,n){this.$emit("model-updated",e,n)}}},fm={class:"selection-group"},hm={class:"form-group horizontal-radios"},ym={class:"radio-group"},bm=["disabled","value"],Em={class:"control-help"},wm={class:"option-field"},Cm={class:"option-field-container"};function Bm(e,n,i,a,o,r){const s=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",fm,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.$props.disabled?"k-tooltip":"div"),{"max-width":"300",text:a.t("general.disable_global_radio",{scope:o.scope})},{default:t.withCtx(()=>[t.createElementVNode("div",hm,[t.createElementVNode("div",ym,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(l,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:t.normalizeClass(["option-group",{"radio-disabled":e.$props.disabled}])},[t.createElementVNode("label",{class:t.normalizeClass(["k-label",`${l.label}-check`])},[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=p=>o.checkedGroup=p),class:"k-input",disabled:e.$props.disabled,type:"radio",value:d},null,8,bm),[[t.vModelRadio,o.checkedGroup]]),t.createTextVNode(" "+t.toDisplayString(l.label)+" ",1),t.createElementVNode("div",Em,t.toDisplayString(l.description),1)],2)],2))),128))])])]),_:1},8,["text"])),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(l,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:"option-group"},[t.withDirectives(t.createElementVNode("div",wm,[t.createElementVNode("div",Cm,[t.createVNode(s,{model:e.model,options:{helpAsHtml:!0},schema:{fields:l.fields},onModelUpdated:r.updateModel},null,8,["model","schema","onModelUpdated"])])],512),[[t.vShow,l.fields&&o.checkedGroup===d]])]))),128))])}const km=Ee(mm,[["render",Bm],["__scopeId","data-v-56d57edb"]]),Im={class:"form-field-wrapper"},vm=t.defineComponent({__name:"FieldSwitch",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,{t:r}=Ze.createI18n("en-us",Mt),s=g=>g!=null&&a.schema.valueOn?g===a.schema.valueOn:g,l=g=>g!=null&&a.schema.valueOn?g?a.schema.valueOn:a.schema.valueOff:g,d=t.toRefs(a),{getFieldID:p,value:u,clearValidationErrors:A}=gt.useAbstractFields({model:d.model,schema:a.schema,formOptions:a.formOptions,formatValueToField:s,formatValueToModel:l,emitModelUpdated:g=>{o("modelUpdated",g.value,g.model)}});return n({clearValidationErrors:A}),(g,E)=>{const S=t.resolveComponent("KInputSwitch");return t.openBlock(),t.createElementBlock("div",Im,[t.createVNode(S,{id:t.unref(p)(e.schema),modelValue:t.unref(u),"onUpdate:modelValue":E[0]||(E[0]=h=>t.isRef(u)?u.value=h:null),autocomplete:e.schema.autocomplete,class:t.normalizeClass(e.schema.fieldClasses),disabled:e.disabled||void 0,label:t.unref(u)?e.schema.textOn||t.unref(r)("vfg.labels.on"):e.schema.textOff||t.unref(r)("vfg.labels.off"),"label-attributes":{info:e.schema.help},name:e.schema.inputName,required:e.schema.required||void 0},null,8,["id","modelValue","autocomplete","class","disabled","label","label-attributes","name","required"])])}}}),Om={class:"field-textarea"},Mm=t.defineComponent({__name:"FieldTextArea",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:i}){const a=e,o=i,r=t.toRefs(a),s=t.inject(Xe,void 0),{updateModelValue:l,getFieldID:d,clearValidationErrors:p,value:u}=gt.useAbstractFields({model:r.model,schema:a.schema,formOptions:a.formOptions,emitModelUpdated:g=>{o("modelUpdated",g.value,g.model)}});n({clearValidationErrors:p});const A=g=>{u.value=g,l(g,g)};return(g,E)=>{const S=t.resolveComponent("KTextArea");return t.openBlock(),t.createElementBlock("div",Om,[t.createVNode(S,t.mergeProps(g.$attrs,{id:t.unref(d)(e.schema),modelValue:t.unref(u),"onUpdate:modelValue":E[0]||(E[0]=h=>t.isRef(u)?u.value=h:null),autosize:"","character-limit":e.schema.max,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint||void 0,minlength:e.schema.min,name:e.schema.inputName,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,resizable:"",rows:e.schema.rows||3}),null,16,["id","modelValue","character-limit","class","disabled","help","minlength","name","placeholder","readonly","required","rows"]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(s)),{schema:e.schema,update:A,value:t.unref(u)},null,8,["schema","value"]))])}}}),Rm=Ee(Mm,[["__scopeId","data-v-0e146fba"]]),Tm=Object.freeze(Object.defineProperty({__proto__:null,FieldAdvanced:YA,FieldArray:Fg,FieldArrayCardContainer:lo,FieldArrayItem:co,FieldArrayMultiItem:uo,FieldAutoSuggest:po,FieldCheckbox:Jg,FieldChecklist:im,FieldInput:Ao,FieldKeyValuePairs:um,FieldLabel:Am,FieldMetric:go,FieldMultiselect:gm,FieldObject:mo,FieldObjectAdvanced:fo,FieldRadio:ho,FieldSelect:yo,FieldSelectionGroup:km,FieldSwitch:vm,FieldTextArea:Rm},Symbol.toStringTag,{value:"Module"})),Sm={name:"FormGroup",components:Tm,mixins:[ja],inject:{"vfg-array-item-index":{default:void 0}},props:{vfg:{type:Object,required:!0},model:{type:Object,default:()=>{}},options:{type:Object,default:()=>{}},field:{type:Object,required:!0},errors:{type:Array,default(){return[]}}},emits:["validated","modelUpdated","refreshModel"],data(){return{child:t.ref()}},computed:{schema(){var e;if(!((e=this.field)!=null&&e.schema)||!Array.isArray(this.field.schema.fields))return this.field;const n=this["vfg-array-item-index"];return typeof n!="number"||Number.isNaN(n)?this.field:{...this.field,schema:{...this.field.schema,fields:this.field.schema.fields.map(i=>({...i,...i.id?{id:`${i.id}-${n}`}:void 0}))}}}},methods:{fieldTypeHasLabel(e){if(Me(e.label))return!1;let n="";switch(e.type==="input"?n=e.inputType:n=e.type,n){case"button":case"submit":case"reset":return!1;default:return!0}},getFieldID(e){const n=le(this.options,"fieldIdPrefix","");return _n(e,n)},getTooltipId(e){return`${this.getFieldID(e)}-tooltip`},getFieldType(e){return"field-"+e.type},getButtonType(e){return le(e,"type","button")},onFieldValidated(e,n,i){this.$emit("validated",e,n,i)},buttonVisibility(e){return e.buttons&&e.buttons.length>0},buttonClickHandler(e,n,i){return e.onclick.call(this,this.model,n,i,this)},fieldHint(e){return he(e.hint)?e.hint.call(this,this.model,e,this):e.hint},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e){return this.$refs.child.validate(e)},clearValidationErrors(){if(this.$refs.child)return this.$refs.child.clearValidationErrors()},formattedLabel(e){return e?e.replace(/^[cC]onfig\./,""):""}}},xm=["innerHTML"],Vm={class:"icon-wrapper"},Nm=["innerHTML"],Dm={key:0,class:"link-wrapper"},Pm={class:"field-wrap"},Lm={key:0,class:"buttons"},Gm=["type","onClick","textContent"],Um=["innerHTML"],jm={key:2,class:"errors help-block"},Ym=["innerHTML"];function Hm(e,n,i,a,o,r){const s=t.resolveComponent("KExternalLink"),l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["form-group",e.getFieldRowClasses(i.field)])},[r.fieldTypeHasLabel(i.field)?(t.openBlock(),t.createBlock(l,{key:0,"aria-describedby":i.field.help?r.getTooltipId(i.field):void 0,class:t.normalizeClass([i.field.labelClasses,"form-group-label"]),for:r.getFieldID(i.field),info:!i.options.helpAsHtml&&i.field.help?i.field.help:void 0,"tooltip-attributes":i.field.help?{maxWidth:"300",placement:"top",tooltipId:r.getTooltipId(i.field)}:void 0},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",Vm,[t.createElementVNode("span",{innerHTML:r.formattedLabel(i.field.label)},null,8,Nm)]),i.field.link?(t.openBlock(),t.createElementBlock("div",Dm,[t.createVNode(s,{href:i.field.link},{default:t.withCtx(()=>n[0]||(n[0]=[t.createElementVNode("span",{class:"section-header"},"More info",-1)])),_:1},8,["href"])])):t.createCommentVNode("",!0)]),_:2},[i.options.helpAsHtml&&i.field.help?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:i.field.help},null,8,xm)]),key:"0"}:void 0]),1032,["aria-describedby","class","for","info","tooltip-attributes"])):t.createCommentVNode("",!0),t.createElementVNode("div",Pm,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.getFieldType(i.field)),t.mergeProps(e.$attrs,{ref:"child",disabled:e.fieldDisabled(i.field)||null,"form-options":i.options,hint:i.field.hint&&r.getFieldType(i.field)==="field-input"?r.fieldHint(i.field):void 0,model:i.model,schema:r.schema,vfg:i.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated}),null,16,["disabled","form-options","hint","model","schema","vfg","onModelUpdated","onRefreshModel","onValidated"])),r.buttonVisibility(i.field)?(t.openBlock(),t.createElementBlock("div",Lm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.field.buttons,(d,p)=>(t.openBlock(),t.createElementBlock("button",{key:p,class:t.normalizeClass(d.classes),type:r.getButtonType(d),onClick:u=>r.buttonClickHandler(d,i.field,u),textContent:t.toDisplayString(d.label)},null,10,Gm))),128))])):t.createCommentVNode("",!0)]),i.field.hint&&r.getFieldType(i.field)!=="field-input"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"hint",innerHTML:r.fieldHint(i.field)},null,8,Um)):t.createCommentVNode("",!0),r.fieldErrors(i.field).length>0?(t.openBlock(),t.createElementBlock("div",jm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.fieldErrors(i.field),(d,p)=>(t.openBlock(),t.createElementBlock("span",{key:p,innerHTML:d},null,8,Ym))),128))])):t.createCommentVNode("",!0)],2)}const Fm=Ee(Sm,[["render",Hm],["__scopeId","data-v-0cb2e226"]]),Km={name:"FormGenerator",components:{formGroup:Fm},mixins:[ja],inject:{autofillSlot:{from:Xe,default:void 0}},provide(){var e;return{...!this.autofillSlot&&{[Xe]:(e=this.$slots)==null?void 0:e[ut]}}},props:{schema:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},options:{type:Object,default(){return{validateAfterLoad:!1,validateAfterChanged:!1,child:t.ref([]),fieldIdPrefix:"",validateAsync:!1,validationErrorClass:"error",validationSuccessClass:"",helpAsHtml:!1}}},multiple:{type:Boolean,default:!1},isNewModel:{type:Boolean,default:!1},tag:{type:String,default:"fieldset",validator:function(e){return e.length>0}}},emits:["validated","modelUpdated","refreshModel"],data(){return{vfg:this,errors:[],children:t.ref([]),collapseStates:{}}},computed:{fields(){const e=[];return this.schema&&this.schema.fields&&De(this.schema.fields,n=>{(!this.multiple||n.multi===!0)&&e.push(n)}),e},groups(){const e=[];return this.schema&&this.schema.groups&&De(this.schema.groups.slice(0),n=>{e.push(n)}),e}},watch:{model:{deep:!0,handler(e,n){n!==e&&e!=null&&this.$nextTick(()=>{this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors()})}}},mounted(){this.$nextTick(()=>{this.model&&(this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors())})},methods:{fieldVisible(e){return he(e.visible)?e.visible.call(this,this.model,e,this):Me(e.visible)?!0:e.visible},onFieldValidated(e,n,i){this.errors=this.errors.filter(o=>o.field.fieldName!==i.schema.fieldName),!e&&n&&n.length>0&&De(n,o=>{this.errors.push({field:i.schema,error:o})});const a=this.errors.length===0;this.$emit("validated",a,this.errors,this)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e=null){e===null&&(e=le(this.options,"validateAsync",!1)),this.clearValidationErrors();const n=[],i=[];De(this.$refs.children,o=>{he(o.validate)&&(n.push(o.$refs.child),i.push(o.$refs.child.validate(!0)))});const a=o=>{const r=[];De(o,(l,d)=>{Array.isArray(l)&&l.length>0&&De(l,p=>{r.push({field:n[d].schema,error:p})})}),this.errors=r;const s=r.length===0;return this.$emit("validated",s,r,this),e?r:s};return e?Promise.all(i).then(a):a(i)},clearValidationErrors(){this.errors.splice(0),De(this.$refs.children,e=>{e.clearValidationErrors()})}}},zm={key:0,class:"vue-form-generator"},Jm={key:0};function Qm(e,n,i,a,o,r){const s=t.resolveComponent("form-group"),l=t.resolveComponent("KCollapse");return i.schema!=null?(t.openBlock(),t.createElementBlock("div",zm,[i.schema.fields?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.fields,d=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:d.model},[r.fieldVisible(d)?(t.openBlock(),t.createBlock(s,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:d,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:1})):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.groups,(d,p)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`group-${p}`},[d.collapsible!==void 0&&d.collapsible!==!1?(t.openBlock(),t.createBlock(l,{key:0,class:"root-level-collapse","model-value":!1,title:d.collapsible.title},t.createSlots({default:t.withCtx(()=>{var u,A,g,E;return[(u=d.slots)!=null&&u.beforeContent?t.renderSlot(e.$slots,(A=d.slots)==null?void 0:A.beforeContent,{key:0}):t.createCommentVNode("",!0),d.fields.length===0&&(g=d.slots)!=null&&g.emptyState?t.renderSlot(e.$slots,(E=d.slots)==null?void 0:E.emptyState,{key:1}):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:2,class:t.normalizeClass(e.getFieldRowClasses(d))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.fields,S=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:S.model},[r.fieldVisible(S)?(t.openBlock(),t.createBlock(s,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:S,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"])),d.collapsible!==!0&&d.collapsible.nestedCollapsible&&d.collapsible.nestedCollapsible.fields.length>0?(t.openBlock(),t.createBlock(l,{key:3,class:"nested-collapse","model-value":o.collapseStates[`group-${p}-nested`]??!0,"trigger-alignment":"leading","trigger-label":o.collapseStates[`group-${p}-nested`]??!0?d.collapsible.nestedCollapsible.triggerLabel.expand:d.collapsible.nestedCollapsible.triggerLabel.collapse,"onUpdate:modelValue":S=>o.collapseStates[`group-${p}-nested`]=S},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{class:t.normalizeClass(e.getFieldRowClasses(d))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.collapsible.nestedCollapsible.fields,S=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:S.model},[r.fieldVisible(S)?(t.openBlock(),t.createBlock(s,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:S,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))]),_:2},1032,["model-value","trigger-label","onUpdate:modelValue"])):t.createCommentVNode("",!0)]}),_:2},[d.collapsible.description?{name:"visible-content",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(d.collapsible.description),1)]),key:"0"}:void 0]),1032,["title"])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.tag),{key:1,class:t.normalizeClass(e.getFieldRowClasses(d))},{default:t.withCtx(()=>[d.legend?(t.openBlock(),t.createElementBlock("legend",Jm,t.toDisplayString(d.legend),1)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.fields,u=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:u.model},[r.fieldVisible(u)?(t.openBlock(),t.createBlock(s,{key:0,ref_for:!0,ref:"children",errors:o.errors,field:u,model:i.model,options:i.options,vfg:o.vfg,onModelUpdated:r.onModelUpdated,onRefreshModel:r.onRefreshModel,onValidated:r.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))],64))),128))])):t.createCommentVNode("",!0)}const Le=Ee(Km,[["render",Qm]]),Eo=new Set(["config-client_id","config-client_secret","config-issuer"]),wo=new Set(["config-scopes_claim","config-scopes_required","config-audience_claim","config-audience_required","config-roles_claim","config-roles_required","config-groups_claim","config-groups_required","config-authenticated_groups_claim"]),Xm={name:"OIDCForm",components:{VueFormGenerator:Le},provide(){var e;return{[Xe]:(e=this.$slots)==null?void 0:e[ut]}},props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},data(){return{init:!1,authMethods:[],sessionManagement:!1,globalFields:null,commonFieldsSchema:null,authFieldsSchema:null,advancedFieldsSchema:{fields:[]},advancedFields:null,tabs:[{hash:"#common",title:"Common"},{hash:"#authorization",title:"Authorization"},{hash:"#advanced",title:"Advanced"}]}},computed:{displayForm(){return this.formModel.id&&this.isEditing||!this.isEditing}},watch:{formModel:{handler:function(){this.oidcSetup()}}},mounted(){this.oidcSetup()},methods:{oidcSetup(){var e;if(!this.init){this.init=!0,this.globalFields={fields:this.formSchema.fields.filter(i=>!i.model.startsWith("config")&&i.model!=="tags")};const n=this.formSchema.fields.reduce((i,a)=>(i[a.model]=a,i),{});this.commonFieldsSchema={fields:Array.from(Eo).reduce((i,a)=>(n[a]&&i.push(n[a]),i),[])},this.authFieldsSchema={fields:Array.from(wo).reduce((i,a)=>(n[a]&&i.push(n[a]),i),[])},this.advancedFieldsSchema={fields:this.formSchema.fields.filter(i=>i.model.startsWith("config")&&i.model!=="config-auth_methods"&&!Eo.has(i.model)&&!wo.has(i.model)||i.model==="tags").reduce((i,a)=>{var o,r,s,l;switch(a.model){case"config-client_jwk":{if(Array.isArray((r=(o=a.items)==null?void 0:o.schema)==null?void 0:r.fields))for(const d of a.items.schema.fields)d.label=d.model;i.push({...a,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#jwk-record",newElementButtonLabel:"+ Add Client JWK",...Array.isArray((l=(s=a.items)==null?void 0:s.schema)==null?void 0:l.fields)&&a.items.schema.fields.map(d=>({...d,label:d.model}))});break}case"config-session_redis_cluster_nodes":{i.push({...a,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#host-record",newElementButtonLabel:"+ Add Cluster Node"});break}default:i.push(a)}return i},[])},this.sessionManagement=this.isEditing?this.formModel["config-auth_methods"].includes("session"):!1,this.authMethods=[{label:"Authorization Code Flow",value:"authorization_code",hint:"authorization code flow",prop:this.isEditing?this.formModel["config-auth_methods"].includes("authorization_code"):!1},{label:"Bearer Access Token",value:"bearer",hint:"JWT access token verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("bearer"):!1},{label:"Client Credentials Grant",value:"client_credentials",hint:"OAuth client credentials grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("client_credentials"):!1},{label:"Passwords Grant",value:"password",hint:"OAuth legacy password grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("password"):!1},{label:"Introspection",value:"introspection",hint:"OAuth introspection",prop:this.isEditing?this.formModel["config-auth_methods"].includes("introspection"):!1},{label:"UserInfo",value:"userinfo",hint:"OpenID Connect user info endpoint authentication",prop:this.isEditing?this.formModel["config-auth_methods"].includes("userinfo"):!1},{label:"Kong OAuth",value:"kong_oauth2",hint:"Kong OAuth plugin issued tokens verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("kong_oauth2"):!1},{label:"Refresh Token",value:"refresh_token",hint:"OAuth refresh token grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("refresh_token"):!1}];for(const i of[this.commonFieldsSchema,this.authFieldsSchema,this.advancedFieldsSchema])for(const a of i.fields){const o=(e=n[a.model])==null?void 0:e.help;a.help===void 0&&typeof o=="string"&&(a.help=o)}}},getAuthMethodsValue(e,n){const i=[];for(let a=0;a<this.authMethods.length;a++)this.authMethods[a].prop&&this.authMethods[a].value!==e&&i.push(this.authMethods[a].value);return this.sessionManagement&&e&&i.push("session"),n&&(e?i.push(e):i.push("session")),i},handleUpdate(e,n){this.formModel["config-auth_methods"]=this.getAuthMethodsValue(n,e),this.onModelUpdated()}}},qm={class:"general-settings"},Zm={class:"link-wrapper"},Wm={class:"auth-method-container"},_m={class:"general-settings"},$m={class:"link-wrapper"},ef={class:"general-settings"},tf={class:"link-wrapper"};function nf(e,n,i,a,o,r){const s=t.resolveComponent("VueFormGenerator"),l=t.resolveComponent("KExternalLink"),d=t.resolveComponent("KLabel"),p=t.resolveComponent("KCheckbox"),u=t.resolveComponent("KInputSwitch"),A=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[i.formModel.id&&i.isEditing||!i.isEditing?(t.openBlock(),t.createBlock(s,{key:0,class:"global-fields",model:i.formModel,options:i.formOptions,schema:o.globalFields,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(A,{tabs:o.tabs},{common:t.withCtx(()=>[t.createElementVNode("div",qm,[t.createElementVNode("div",Zm,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#important-configuration-parameters"},{default:t.withCtx(()=>n[1]||(n[1]=[t.createElementVNode("span",{class:"section-header"},"Common Configuration Settings",-1)])),_:1})]),n[3]||(n[3]=t.createElementVNode("div",{class:"description"}," Parameters for enabling the OpenID Connect plugin. Set these parameters before adding authorization, authentication, or other advanced configuration details. ",-1)),r.displayForm?(t.openBlock(),t.createBlock(s,{key:0,model:i.formModel,options:i.formOptions,schema:o.commonFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(d,null,{default:t.withCtx(()=>n[2]||(n[2]=[t.createTextVNode("Auth Methods")])),_:1}),t.createElementVNode("div",Wm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.authMethods,g=>(t.openBlock(),t.createElementBlock("div",{key:g.value,class:"auth-method"},[t.createVNode(p,{modelValue:g.prop,"onUpdate:modelValue":E=>g.prop=E,onChange:E=>r.handleUpdate(E,g.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.label),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]))),128))]),t.createVNode(u,{modelValue:o.sessionManagement,"onUpdate:modelValue":n[0]||(n[0]=g=>o.sessionManagement=g),label:"Enable Session Management",onChange:r.handleUpdate},null,8,["modelValue","onChange"])])]),authorization:t.withCtx(()=>[t.createElementVNode("div",_m,[t.createElementVNode("div",$m,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#authorization"},{default:t.withCtx(()=>n[4]||(n[4]=[t.createElementVNode("span",{class:"section-header"},"Authorization Configuration Settings",-1)])),_:1})]),n[5]||(n[5]=t.createElementVNode("div",{class:"description"}," Parameters for setting up claims-based authorization. ",-1)),r.displayForm?(t.openBlock(),t.createBlock(s,{key:0,model:i.formModel,options:i.formOptions,schema:o.authFieldsSchema,onModelUpdated:i.onModelUpdated},{"autofill-provider":t.withCtx(g=>[t.renderSlot(e.$slots,"autofill-provider",t.normalizeProps(t.guardReactiveProps(g)),void 0,!0)]),_:3},8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),advanced:t.withCtx(()=>[t.createElementVNode("div",ef,[t.createElementVNode("div",tf,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/"},{default:t.withCtx(()=>n[6]||(n[6]=[t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings",-1)])),_:1})]),n[7]||(n[7]=t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the OpenID Connect plugin. ",-1)),r.displayForm?(t.openBlock(),t.createBlock(s,{key:0,model:i.formModel,options:i.formOptions,schema:o.advancedFieldsSchema,onModelUpdated:i.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:3},8,["tabs"])])}const af=Ee(Xm,[["render",nf],["__scopeId","data-v-bb72c68e"]]),of=t.defineComponent({__name:"PostFunction",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var n;t.provide(Xe,(n=t.useSlots())==null?void 0:n[ut]);const{t:i,te:a}=Ze.createI18n("en-us",Mt),o=e,r=t.computed(()=>o.formModel.id&&o.isEditing||!o.isEditing),s=t.computed(()=>{const l=o.formSchema;return l.fields.map(d=>{const p=`post-function.${d.model}`;return d.hint=a(`${p}.hint`)&&i(`${p}.hint`)||d.hint,d.help=a(`${p}.help`)&&i(`${p}.help`)||d.help,d.newElementButtonLabel=a(`${p}.newElementButtonLabel`)&&i(`${p}.newElementButtonLabel`)||d.newElementButtonLabel,d.model!=="tags"&&(d.valueType==="array"||d.type==="array")&&(d.type="array",d.valueArrayType="array",d.itemContainerComponent="FieldArrayItem",d.fieldClasses="post-function-array-item-container",d.fieldItemsClasses="post-function-array-item",d.inputAttributes={...d.inputAttributes,type:"textarea"}),d}),l});return(l,d)=>r.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),rf=Ee(of,[["__scopeId","data-v-f54f37ae"]]),sf=t.defineComponent({__name:"ExitTransformer",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var n;t.provide(Xe,(n=t.useSlots())==null?void 0:n[ut]);const{t:i,te:a}=Ze.createI18n("en-us",Mt),o=e,r=t.computed(()=>o.formModel.id&&o.isEditing||!o.isEditing),s=t.computed(()=>{const l=o.formSchema;return l.fields.map(d=>{const p=`exit-transformer.${d.model}`;return d.hint=a(`${p}.hint`)&&i(`${p}.hint`)||d.hint,d.help=a(`${p}.help`)&&i(`${p}.help`)||d.help,d.newElementButtonLabel=a(`${p}.newElementButtonLabel`)&&i(`${p}.newElementButtonLabel`)||d.newElementButtonLabel,d.model!=="tags"&&(d.valueType==="array"||d.type==="array")&&(d.type="array",d.valueArrayType="array",d.itemContainerComponent="FieldArrayItem",d.fieldClasses="exit-transformer-array-item-container",d.fieldItemsClasses="exit-transformer-array-item",d.inputAttributes={...d.inputAttributes,type:"textarea"}),d}),l});return(l,d)=>r.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),lf=Ee(sf,[["__scopeId","data-v-0d5c541f"]]),cf={fields:[{inputType:"text",label:"Config.Account Email",model:"config-account_email",required:!0,type:"input"},{inputType:"text",label:"Config.Account Key.Key Id",model:"config-account_key-key_id",required:!0,type:"input"},{type:"input",inputType:"text",valueType:"string",label:"Config.Account Key.Key Set",model:"config-account_key-key_set",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",label:"Config.Allow Any Domain",model:"config-allow_any_domain",order:0,disabled:!1}]},df={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",model:"config-tos_accepted",label:"Config.Tos Accepted",order:0,disabled:!1}]},uf={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_hmac_key",label:"Config.Eab Hmac Key",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_kid",label:"Config.Eab Kid",order:0,disabled:!1}]},pf={class:"general-settings"},Af={class:"sub-form"},gf={class:"general-settings"},mf={class:"sub-form"},ff={class:"general-settings"},hf=t.defineComponent({__name:"ACMEForm",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var n;t.provide(Xe,(n=t.useSlots())==null?void 0:n[ut]);const i=e,a=t.ref("zeroSsl"),o=t.ref("shm"),r=t.computed(()=>{var f;const k={};if((f=i.formSchema)!=null&&f.fields)for(const O of i.formSchema.fields)k[O.model]=O;return k}),s=t.computed(()=>{var f;const k=it(cf);for(const O of k.fields){const H=(f=r.value[O.model])==null?void 0:f.help;O.help===void 0&&typeof H=="string"&&(O.help=H)}return k}),l=t.computed(()=>{var f;const k=it(df);for(const O of k.fields){const H=(f=r.value[O.model])==null?void 0:f.help;O.help===void 0&&typeof H=="string"&&(O.help=H)}return k}),d=t.computed(()=>{var f;const k=it(uf);for(const O of k.fields){const H=(f=r.value[O.model])==null?void 0:f.help;O.help===void 0&&typeof H=="string"&&(O.help=H)}return k}),p=t.computed(()=>({fields:i.formSchema.fields.filter(f=>!f.model.startsWith("config")&&f.model!=="tags")})),u=t.computed(()=>({fields:s.value.fields.filter(f=>!l.value.fields.some(k=>k.model===f.model)&&!d.value.fields.some(k=>k.model===f.model))})),A=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage")&&!f.model.startsWith("config-storage_config-consul")&&!f.model.startsWith("config-storage_config-redis")&&!f.model.startsWith("config-storage_config-shm")&&!f.model.startsWith("config-storage_config-vault"))})),g=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage_config-consul"))})),E=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage_config-redis"))})),S=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage_config-shm"))})),h=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config-storage_config-vault"))})),I=t.computed(()=>({fields:i.formSchema.fields.filter(f=>f.model.startsWith("config")&&!u.value.fields.filter(k=>k.model===f.model).length&&!A.value.fields.filter(k=>k.model===f.model).length||f.model==="tags")})),w=t.computed(()=>i.formModel.id&&i.isEditing||!i.isEditing),j=[{hash:"#general",title:"General"},{hash:"#storage",title:"Storage"},{hash:"#advanced",title:"Advanced"}],y=[{label:"Lets Encrypt",value:"letsEncrypt"},{label:"Zero SSL",value:"zeroSsl",selected:!0},{label:"Other",value:"other"}];t.onMounted(()=>{a.value==="zeroSsl"&&(i.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90")});const m=f=>{a.value=f.value,(f.value==="zeroSsl"||f.value==="other")&&(f.value==="zeroSsl"?i.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90":i.formModel["config-api_uri"]="https://acme.example.com/",i.formModel["config-tos_accepted"]=!1),f.value==="letsEncrypt"&&(i.formModel["config-api_uri"]="https://acme-v02.api.letsencrypt.org/directory",i.formModel["config-eab_hmac_key"]="",i.formModel["config-eab_kid"]=""),i.onModelUpdated()},b=(f,k)=>{k==="config-storage"&&(o.value=f),i.onModelUpdated()};return(f,k)=>{const O=t.resolveComponent("KSelect"),H=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[e.formModel.id&&e.isEditing||!e.isEditing?(t.openBlock(),t.createBlock(Le,{key:0,class:"global-fields",model:e.formModel,options:e.formOptions,schema:p.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(H,{tabs:j},{general:t.withCtx(()=>[t.createElementVNode("div",pf,[k[0]||(k[0]=t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"General Configuration Settings")],-1)),k[1]||(k[1]=t.createElementVNode("div",{class:"description"}," Parameters for enabling the ACME plugin. ",-1)),w.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:u.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),k[2]||(k[2]=t.createElementVNode("hr",null,null,-1)),t.createVNode(O,{class:"issuer-select",items:y,label:"Issuer",onChange:m}),t.createElementVNode("div",Af,[a.value==="letsEncrypt"?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:l.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),a.value==="zeroSsl"||a.value==="other"?(t.openBlock(),t.createBlock(Le,{key:1,model:e.formModel,options:e.formOptions,schema:d.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),storage:t.withCtx(()=>[t.createElementVNode("div",gf,[k[3]||(k[3]=t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Storage Configuration Settings")],-1)),k[4]||(k[4]=t.createElementVNode("div",{class:"description"}," Parameters for setting up storage. ",-1)),w.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:A.value,onModelUpdated:b},null,8,["model","options","schema"])):t.createCommentVNode("",!0),t.createElementVNode("div",mf,[o.value==="consul"?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:g.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),o.value==="redis"?(t.openBlock(),t.createBlock(Le,{key:1,model:e.formModel,options:e.formOptions,schema:E.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),o.value==="shm"?(t.openBlock(),t.createBlock(Le,{key:2,model:e.formModel,options:e.formOptions,schema:S.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),o.value==="vault"?(t.openBlock(),t.createBlock(Le,{key:3,model:e.formModel,options:e.formOptions,schema:h.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),advanced:t.withCtx(()=>[t.createElementVNode("div",ff,[k[5]||(k[5]=t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings")],-1)),k[6]||(k[6]=t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the ACME plugin. ",-1)),w.value?(t.openBlock(),t.createBlock(Le,{key:0,model:e.formModel,options:e.formOptions,schema:I.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:1})])}}}),yf=Ee(hf,[["__scopeId","data-v-07cecf5b"]]),bf={class:"rla-form-basic-fields"},Ef={class:"rla-form-request-limits-subtitle"},wf={class:"rla-form-request-limits-content"},Cf={class:"rla-form-window-type"},Bf=["innerHTML"],kf={class:"rla-form-window-type-radios"},If={class:"rla-form-request-limits-items"},vf={class:"rla-form-request-limits-row"},Of=["id"],Mf={class:"rla-form-request-limits-actions"},Rf={key:0,class:"rla-form-request-limits-examples"},Tf={class:"rla-form-request-limits-examples-badges"},Sf=["innerHTML"],xf={id:"rla-form-error-legend",class:"rla-form-error-inputs"},Vf=t.defineComponent({__name:"RLAForm",props:{formSchema:{},formModel:{},formOptions:{},onModelUpdated:{type:Function},isEditing:{type:Boolean}},setup(e){var n;t.provide(Xe,(n=t.useSlots())==null?void 0:n[ut]);const i={fixed:[{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit.",config:{limit:500,window_size:3600}},{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits.",config:{limit:200,window_size:1800}},{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences.",config:{limit:500,window_size:86400}}],sliding:[{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset.",config:{limit:100,window_size:3600}},{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made.",config:{limit:300,window_size:1800}},{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
67
67
  If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
68
- will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`,config:{limit:500,window_size:3600}}]},a=new Set(["selectionGroup","enabled",...["identifier","limit","window_size","error_code","error_message"].map(x=>`config-${x}`)]),o=x=>x===void 0?!1:a.has(x),{t:r}=Ze.createI18n("en-us",Mt),s=e,l=t.computed(()=>{var x,D,F;const z=(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(Z=>Z.type==="selectionGroup"&&Z.model==="selectionGroup");return{fields:[(F=s.formSchema)==null?void 0:F.fields.find(Z=>Z.model==="enabled"),z].filter(Boolean)}}),d=t.computed(()=>{var x,D;const F=((D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.filter(T=>!o(T.model)))??[],z=[],Z=[],ee=[];let K=!1;for(const T of F){const V=T.model;if(V!==void 0){if(V.startsWith("config-redis-")){(T.model==="config-redis-cluster_addresses"||T.model==="config-redis-sentinel_addresses")&&(T.inputAttributes.help=r("rla.redis.address_example")),Z.push(T);continue}K?ee.push(T):z.push(T),T.model==="config-strategy"&&(K=!0)}}return{endsWithStrategy:{fields:z},redis:{fields:Z},afterStrategy:{fields:ee}}}),p=t.computed(()=>{const x=s.formModel["config-window_type"];return Object.prototype.hasOwnProperty.call(i,x)?i[x]:[]}),u=t.computed(()=>{var x,D;return(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(F=>F.model==="config-identifier")}),A=t.computed(()=>{var x,D,F;return(((F=(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(z=>z.model==="config-identifier"))==null?void 0:F.values)??[]).map(z=>({label:r(`rla.identifiers.options.${z}`),value:z}))}),g=t.ref(),E=t.ref(!0),S=t.computed(()=>{var x,D,F;return s.formModel["config-window_type"]??((F=(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(z=>z.model==="config-window_type"))==null?void 0:F.default)}),h=t.computed(()=>{var x,D,F,z,Z,ee;const K=(F=(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(T=>T.model==="config-window_type"))==null?void 0:F.default;return(((ee=(Z=(z=s.formSchema)==null?void 0:z.fields)==null?void 0:Z.find(T=>T.model==="config-window_type"))==null?void 0:ee.values)??[]).sort((T,V)=>T===K?-1:V===K?1:0)}),I=t.computed(()=>{var x;const D=(x=s.formModel["config-limit"])==null?void 0:x.map((F,z)=>{var Z,ee;return{limit:F,windowSize:(ee=(Z=s.formModel)==null?void 0:Z["config-window_size"])==null?void 0:ee[z]}});return!Array.isArray(D)||D.length===0?[{limit:void 0,windowSize:void 0}]:D}),w=t.computed(()=>{var x,D,F,z;return((x=s.formModel)==null?void 0:x["config-identifier"])??((z=(F=(D=s.formSchema)==null?void 0:D.fields)==null?void 0:F.find(Z=>Z.model==="config-identifier"))==null?void 0:z.default)}),j=t.computed(()=>{var x,D,F,z;return((x=s.formModel)==null?void 0:x["config-error_code"])??((z=(F=(D=s.formSchema)==null?void 0:D.fields)==null?void 0:F.find(Z=>Z.model==="config-error_code"))==null?void 0:z.default)}),y=t.computed(()=>{var x,D,F,z;return((x=s.formModel)==null?void 0:x["config-error_message"])??((z=(F=(D=s.formSchema)==null?void 0:D.fields)==null?void 0:F.find(Z=>Z.model==="config-error_message"))==null?void 0:z.default)}),m=(x,D)=>{if(D===g.value){s.onModelUpdated([],"config-limit"),s.onModelUpdated([],"config-window_size"),t.nextTick(()=>{g.value=void 0});return}s.onModelUpdated([x.config.limit],"config-limit"),s.onModelUpdated([x.config.window_size],"config-window_size"),t.nextTick(()=>{g.value=D})},b=x=>{g.value!==void 0&&(g.value=void 0),x!==null&&s.onModelUpdated(x.toString(),"config-window_type")},f=(x,D)=>{var F;g.value!==void 0&&(g.value=void 0);const z=it(((F=s.formModel)==null?void 0:F["config-limit"])??[]);z[x]=D,s.onModelUpdated(z,"config-limit")},k=(x,D)=>{var F;g.value!==void 0&&(g.value=void 0);const z=it(((F=s.formModel)==null?void 0:F["config-window_size"])??[]);z[x]=D,s.onModelUpdated(z,"config-window_size")},O=x=>{var D,F;g.value!==void 0&&(g.value=void 0);const z=it(((D=s.formModel)==null?void 0:D["config-limit"])??[]),Z=it(((F=s.formModel)==null?void 0:F["config-window_size"])??[]);z.length===0&&z.push(void 0),Z.length===0&&Z.push(void 0),z.splice(x+1,0,void 0),Z.splice(x+1,0,void 0),s.onModelUpdated(z,"config-limit"),s.onModelUpdated(Z,"config-window_size")},H=x=>{var D,F;if(I.value.length>1){g.value!==void 0&&(g.value=void 0);const z=it(((D=s.formModel)==null?void 0:D["config-limit"])??[]),Z=it(((F=s.formModel)==null?void 0:F["config-window_size"])??[]);z.length===0&&z.push(void 0),Z.length===0&&Z.push(void 0),z.splice(x,1),Z.splice(x,1),s.onModelUpdated(z,"config-limit"),s.onModelUpdated(Z,"config-window_size")}};return(x,D)=>{const F=t.resolveComponent("VueFormGenerator"),z=t.resolveComponent("KLabel"),Z=t.resolveComponent("KRadio"),ee=t.resolveComponent("KInput"),K=t.resolveComponent("KButton"),T=t.resolveComponent("KBadge"),V=t.resolveComponent("KTooltip"),Y=t.resolveComponent("KCard"),C=t.resolveComponent("KSelect"),B=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",bf,[t.createVNode(F,{model:x.formModel,options:x.formOptions,schema:l.value,onModelUpdated:D[0]||(D[0]=(M,_)=>x.onModelUpdated(M,_))},null,8,["model","options","schema"]),t.createVNode(Y,{class:"rla-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(z,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("rla.request_limits.title")),1)]),_:1}),t.createElementVNode("div",Ef,t.toDisplayString(t.unref(r)("rla.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",wf,[t.createElementVNode("div",Cf,[t.createVNode(z,{class:"rla-form-window-type-label","tooltip-attributes":{maxWidth:"300",placement:"top"}},{tooltip:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(r)("rla.window_type.help")},null,8,Bf)]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("rla.window_type.label"))+" ",1)]),_:1}),t.createElementVNode("div",kf,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,M=>(t.openBlock(),t.createBlock(Z,{key:`window-type-${M}`,"model-value":S.value,name:M,"selected-value":M,"onUpdate:modelValue":b},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`rla.window_type.options.${M}`)),1)]),_:2},1032,["model-value","name","selected-value"]))),128))])]),t.createElementVNode("div",If,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(I.value,(M,_)=>(t.openBlock(),t.createElementBlock("div",{key:_.toString()},[t.createVNode(z,{for:`rla-form-request-limits-item-${_}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("rla.request_limits.label_index",{index:_+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",vf,[t.createElementVNode("legend",{id:`rla-form-request-limits-item-${_}-legend`,class:"rla-form-request-limits-inputs"},[t.createVNode(ee,{"model-value":M.limit&&M.limit.toString(),placeholder:t.unref(r)("rla.request_limits.request_number"),type:"number","onUpdate:modelValue":ie=>f(_,Number.parseInt(ie))},null,8,["model-value","placeholder","onUpdate:modelValue"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.request_limits.interval_determiner")),1),t.createVNode(ee,{"model-value":M.windowSize&&M.windowSize.toString(),placeholder:t.unref(r)("rla.request_limits.time_interval"),type:"number","onUpdate:modelValue":ie=>k(_,Number.parseInt(ie))},null,8,["model-value","placeholder","onUpdate:modelValue"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.request_limits.seconds")),1)],8,Of),t.createElementVNode("div",Mf,[t.createVNode(K,{appearance:"tertiary",disabled:I.value.length<=1,onClick:()=>H(_)},{default:t.withCtx(()=>[t.createVNode(t.unref(je.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(K,{appearance:"tertiary",onClick:()=>O(_)},{default:t.withCtx(()=>[t.createVNode(t.unref(je.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),p.value.length>0?(t.openBlock(),t.createElementBlock("div",Rf,[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.start_with_a_use_case")),1),t.createElementVNode("div",Tf,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(M,_)=>(t.openBlock(),t.createBlock(V,{key:`use-case-${_}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(M.description),1),D[9]||(D[9]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.request_limits.label"))+": "+t.toDisplayString(M.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.request_limits.time_interval"))+": "+t.toDisplayString(M.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(T,{appearance:g.value===`${S.value}-${_}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>m(M,`${S.value}-${_}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(M.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1}),t.createVNode(C,{modelValue:w.value,"onUpdate:modelValue":D[1]||(D[1]=M=>w.value=M),class:"rla-form-identifiers",items:A.value,label:t.unref(r)("rla.identifiers.label"),"label-attributes":{tooltipAttributes:{maxWidth:"300",placement:"top"}},required:"",onSelected:D[2]||(D[2]=M=>s.onModelUpdated(M.value,"config-identifier"))},{"label-tooltip":t.withCtx(()=>[t.createElementVNode("div",{innerHTML:u.value&&u.value.help},null,8,Sf)]),_:1},8,["modelValue","items","label"]),t.createElementVNode("div",null,[t.createVNode(z,{for:"rla-form-error-legend",info:t.unref(r)("rla.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("rla.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",xf,[t.createVNode(ee,{class:"input-error-code","model-value":j.value&&j.value.toString(),placeholder:t.unref(r)("rla.error_message.code_placeholder"),type:"number","onUpdate:modelValue":D[3]||(D[3]=M=>x.onModelUpdated(Number.parseInt(M),"config-error_code"))},null,8,["model-value","placeholder"]),D[10]||(D[10]=t.createElementVNode("div",null,":",-1)),t.createVNode(ee,{"model-value":y.value,placeholder:t.unref(r)("rla.error_message.message_placeholder"),"onUpdate:modelValue":D[4]||(D[4]=M=>x.onModelUpdated(M,"config-error_message"))},null,8,["model-value","placeholder"])])])]),t.createVNode(B,{modelValue:E.value,"onUpdate:modelValue":D[8]||(D[8]=M=>E.value=M),"trigger-label":t.unref(r)("rla.view_advanced_fields")},{default:t.withCtx(()=>[t.createVNode(F,{model:x.formModel,options:x.formOptions,schema:d.value.endsWithStrategy,onModelUpdated:D[5]||(D[5]=(M,_)=>x.onModelUpdated(M,_))},null,8,["model","options","schema"]),x.formModel["config-strategy"]==="redis"?(t.openBlock(),t.createBlock(Y,{key:0,class:"rla-form-redis-card",title:t.unref(r)("rla.redis.title")},{default:t.withCtx(()=>[t.createVNode(F,{model:x.formModel,options:x.formOptions,schema:d.value.redis,onModelUpdated:D[6]||(D[6]=(M,_)=>x.onModelUpdated(M,_))},null,8,["model","options","schema"])]),_:1},8,["title"])):t.createCommentVNode("",!0),t.createVNode(F,{class:t.normalizeClass({"rla-last-vfg":x.formModel["config-strategy"]!=="redis"}),model:x.formModel,options:x.formOptions,schema:d.value.afterStrategy,onModelUpdated:D[7]||(D[7]=(M,_)=>x.onModelUpdated(M,_))},null,8,["class","model","options","schema"])]),_:1},8,["modelValue","trigger-label"])],64)}}}),Nf=Ee(Vf,[["__scopeId","data-v-e9e76a93"]]),Df=Object.freeze(Object.defineProperty({__proto__:null,ACMEForm:yf,ExitTransformer:lf,OIDCForm:af,PostFunction:rf,RLAForm:Nf},Symbol.toStringTag,{value:"Module"})),ai=["array","metric","advanced","selectionGroup","object-advanced"],Co=e=>({"openid-connect":"OIDCForm","post-function":"PostFunction","pre-function":"PostFunction","exit-transformer":"ExitTransformer","rate-limiting-advanced":"RLAForm"})[e],Yt={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Pf={"config-prompts-prepend":{...Yt,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...Yt,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},Lf={"config-templates":{...Yt,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},Gf={shamefullyTransformPayload:({originalModel:e,model:n,payload:i,schema:a})=>{const o=s=>{var l;return(l=a[s])!=null&&l.required&&n[s]?!0:e[s]===n[s]?!1:e[s]===null?n[s]!==""&&!Number.isNaN(n[s]):!0},r=s=>Object.keys(e).some(l=>l.startsWith(s)&&o(l));r("config-embeddings")||(i.config.embeddings=null),r("config-vectordb")||(i.config.vectordb=null)}},Uf={"config-llm_providers":{...Yt,newElementButtonLabel:"+ Add Provider",items:{type:"object",schema:{fields:[{label:"Window Size",model:"window_size",help:"Window size to apply a limit to (defined in seconds)",type:"input",required:!0,inputType:"number"},{label:"Name",model:"name",help:"The llm providers.",type:"select",required:!0,values:["anthropic","azure","bedrock","cohere","gemini","llama2","mistral","openai","requestPrompt"]},{label:"Limit",model:"limit",help:"Limit applied to the llm provider.",type:"input",required:!0,inputType:"number"}]}}}},jf={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:Dt.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},Oe={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},Mn={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Yf={"config-metrics":{...Mn,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"tags",label:"Tags",type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},inputType:"text"}]}}}},Hf={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Ff={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Kf={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},zf={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Jf={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Bo=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:Dt.fields.arrayItems({newElementButtonLabel:"Add"})}),Jf),Rn={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},Qf={"config-remove-headers":{},"config-remove.querystring":{},"config-remove-body":{},"config-replace-headers":{},"config-replace-querystring":{},"config-replace-body":{},"config-rename-headers":{},"config-rename-querystring":{},"config-rename-body":{},"config-add-headers":{},"config-add-querystring":{},"config-add-body":{},"config-append-headers":{},"config-append-querystring":{},"config-append-body":{},"config-allow-body":{}},Xf=["config-remove-headers","config-remove.querystring","config-remove-body","config-replace-headers","config-replace-querystring","config-replace-body","config-rename-headers","config-rename-querystring","config-rename-body","config-add-headers","config-add-querystring","config-add-body","config-append-headers","config-append-querystring","config-append-body","config-allow-body"].reduce((e,n)=>({...e,[n]:Dt.fields.arrayItems({newElementButtonLabel:"Add"})}),Qf),ko={"config-add-json":{...Oe,label:"Config.Add.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",rows:15,max:!1}},"config-append-json":{...Oe,label:"Config.Append.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",rows:15,max:!1}},"config-remove-json":{...Oe,label:"Config.Remove.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",rows:15,max:!1}},"config-replace-json":{...Oe,label:"Config.Replace.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",rows:15,max:!1}}},qf={...ko,"config-allow-json":{...Oe,label:"Config.Allow.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",rows:15,max:!1}},"config-replace-body":{...Oe,label:"Config.Replace.Body",inputAttributes:{...Oe.inputAttributes,type:"textarea",rows:15,max:!1}},"config-transform-functions":{...Oe,label:"Config.Transform.Functions",inputAttributes:{...Oe.inputAttributes,type:"textarea",rows:15,max:!1}},"config-transform-json":{...Oe,label:"Config.Transform.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",rows:15,max:!1}}},Zf={"config-rules":{...Yt,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},Wf={"config-session_redis_cluster_nodes":{...Yt,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},_f={"config-metrics":{...Mn,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},$f={"config-metrics":{...Mn,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage","cache_datastore_hits_total","cache_datastore_misses_total"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},eh={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},th={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}},nh={"config-static_tags":{...Mn,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"value",label:"value",type:"input",inputType:"string",id:"schema_value"}]}}}},ih=(e,n)=>{const i=e.model.startsWith("config-"),a=n.model.startsWith("config-");return i&&!a?1:!i&&a?-1:0},Io=(e,n)=>(e.order??0)-(n.order??0),vo=(e,n)=>ih(e,n)||Io(e,n)||e.model.localeCompare(n.model),ke={useI18n:mn,usePluginMetaData:Nl,usePluginHelpers:Pi,useSchemas:e=>{const{capitalize:n}=U.useStringHelpers(),{convertToDotNotation:i}=Pi(),{i18n:{t:a}}=mn(),o={"application-registration":{overwriteDefault:!0,formSchema:{...jf}},datadog:{...Yf},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{..._f},"statsd-advanced":{...$f},"route-by-header":{...Zf},"ai-prompt-decorator":{...Pf},"ai-prompt-template":{...Lf},"ai-proxy-advanced":{...Gf},"ai-rate-limiting-advanced":{...Uf},"vault-auth":{...th},"oas-validation":{...zf},mocking:{...Kf},"rate-limiting":{...Rn},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Rn["config-consumer_groups"]}:{...Rn},"graphql-rate-limiting-advanced":{...Hf},"injection-protection":{...Ff},"response-ratelimiting":{...Rn},"pre-function":{...Bo},"post-function":{...Bo},"request-transformer-advanced":{...Xf},"response-transformer":{...ko},"response-transformer-advanced":{...qf},zipkin:{...nh},"upstream-oauth":{...eh},saml:{...Wf}},r=()=>["created_at","updated_at","id"],s=(m,b,f)=>{let k={};(b||m)&&(k=b||(m.fields?m.fields:m));const O=r().concat(m.blacklist?m.blacklist:[]),H=Object.keys(k).filter(ee=>!O.includes(ee)),x=H.indexOf("comparator");x>-1&&H.splice(x,1);let D={fields:[]};const F={};H.forEach(ee=>{d(k[ee],ee,k,F,D,f)});const z=F.name,Z=We[z];if(Co(z)||Z!=null&&Z.useLegacyForm||e!=null&&e.credential)D.fields.sort((ee,K)=>(ee.order=ee.order||0,K.order=K.order||0,ee.order-K.order));else{const ee=[],K=[],T=[],V={};if(Z!=null&&Z.fieldRules){const B=[...Z.fieldRules.atLeastOneOf??[],...Z.fieldRules.onlyOneOf??[],...Z.fieldRules.mutuallyRequired??[]];if(Z.fieldRules.onlyOneOfMutuallyRequired)for(const M of Z.fieldRules.onlyOneOfMutuallyRequired)B.push(...M);for(const M of B)for(const _ of M)V[_.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const B of D.fields){if(B.pinned){ee.push(B);continue}if(B.required||V[B.model]!==void 0){V[B.model]===!1&&(V[B.model]=!0),K.push(B);continue}T.push(B)}const Y=Object.entries(V).filter(([,B])=>!B).map(([B])=>B.replace(/-/g,".").replace(/_/g,"-"));Y.length>0&&console.warn(`Unknown checked fields for plugin ${z}: ${Y.join(", ")}`);const C=[];ee.length>0&&C.push({fields:ee.sort(Io)}),(K.length>0||T.length>0)&&C.push({fields:K.sort(vo),collapsible:{title:a("plugins.form.grouping.plugin_configuration.title"),description:a("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:T.sort(vo),triggerLabel:{expand:a("plugins.form.grouping.advanced_parameters.view"),collapse:a("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),D={groups:C}}return{schema:D,model:F,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},l=m=>Array.isArray(m.default)||m.default!=null&&typeof m.default!="object"&&m.default!=="function",d=(m,b,f,k,O,H)=>{const x=l(m);return k[b]=x?m.default:null,m.id=b,m.model=b,m.fields&&m.type==="record"?u(m,b,f,k,O,H):(f[b]=m,y(m,k),H&&H[b]&&p(f[b],H[b]),O.fields.push(m)),f},p=(m,b)=>(b&&(Object.assign(m,b),b.label&&(m.label=b.label)),m),u=(m,b,f,k,O,H)=>{m.fields.forEach(x=>{Object.keys(x).forEach(D=>{const F=x[D];f=d(F,b+"-"+D,f,k,O,H)})})},A=(m,b)=>{m.type="input",m.inputType="hidden",m.styleClasses="kong-form-hidden-field-wrapper";const f=e==null?void 0:e.entityId;b[m.model]=f?{id:f}:null},g=m=>{m.type="input",m.inputType="number",m.between&&m.between.length===2&&(m.min=m.between[0],m.max=m.between[1])},E=m=>{Object.prototype.hasOwnProperty.call(m,"one_of")?(m.type="select",m.values=m.one_of,m.selectOptions={hideNoneSelectedText:!0}):(m.type="input",m.inputType="text")},S=m=>{m.type="checkbox",m.default=!0,m.required=!1},h=m=>{if(m.type="object-advanced",m.values.type==="array"){const{type:b}=m.values.elements||{};m.schema={fields:[{schema:{fields:[{...Oe,model:m.model,valueArrayType:b==="integer"?"number":b||"string",inputAttributes:{...Oe.inputAttributes,type:b==="integer"?"number":"text",inputMode:b==="integer"?"numeric":"text"}}]}}]}}else m.values.fields&&(m.schema={fields:[{type:"object",model:"object",schema:{fields:m.values.fields.map(b=>{const f=Object.keys(b)[0];return{model:f,type:"input",label:n(f),placeholder:f,inputType:b[f].type}})}}]})},I=m=>m.fields.reduce((b,f)=>(f.fields&&f.fields.forEach(k=>{b[k.model]=k}),f.model&&(b[f.model]=f),b),{}),w=(m,b)=>{if(!ai.includes(m.model))return;const f=I(m);ai.forEach(k=>{Object.keys(f).forEach(O=>{const H=l(f[O]);b[O]=H?f[O].default:null}),delete b[k]})},j=(m,b)=>m.inputType==="hidden"?"":i(n(m.label||b.replace(/_/g," "))),y=(m,b)=>{switch(w(m,b),m.type){case"foreign":A(m,b);break;case"number":g(m),m.attributes={step:"any"};break;case"integer":g(m);break;case"string":E(m);break;case"boolean":S(m);break;case"map":h(m);break}m.inputType==="foreign"&&A(m,b),m.label=j(m,m.model)};return{buildFormSchema:d,parseSchema:s,customSchemas:o,typedefs:Dt}}},Se="/v2/control-planes/{controlPlaneId}/core-entities",xe="/{workspace}",Ie={list:{konnect:{all:`${Se}/plugins`,forEntity:`${Se}/{entityType}/{entityId}/plugins`},kongManager:{all:`${xe}/plugins`,forEntity:`${xe}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${Se}/v1/available-plugins`,streamingCustomPlugins:`${Se}/custom-plugins`,schemaCustomPluginItem:`${Se}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${Se}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${xe}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${Se}/plugins`,forEntity:`${Se}/{entityType}/{entityId}/plugins`},edit:{all:`${Se}/plugins/{id}`,forEntity:`${Se}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${Se}/{resourceEndpoint}`,edit:`${Se}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${Se}/v1/schemas/json/plugin/validate`,entityGetOne:`${Se}/{entity}/{id}`,entityGetAll:`${Se}/{entity}?size=1000`},kongManager:{create:{all:`${xe}/plugins`,forEntity:`${xe}/{entityType}/{entityId}/plugins`},edit:{all:`${xe}/plugins/{id}`,forEntity:`${xe}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${xe}/schemas/plugins/{plugin}`,credential:{create:`${xe}/{resourceEndpoint}`,edit:`${xe}/{resourceEndpoint}/{id}`},credentialSchema:`${xe}/schemas/{plugin}`,validate:`${xe}/schemas/plugins/validate`,entityGetOne:`${xe}/{entity}/{id}`,entityGetAll:`${xe}/{entity}`}},item:{konnect:{all:`${Se}/plugins/{id}`,forEntity:`${Se}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${xe}/plugins/{id}`,forEntity:`${xe}/{entityType}/{entityId}/plugins/{id}`}}},ah={create:"New vault",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",view:"View Details",loading:"Loading..."},oh={general:"Vaults could not be retrieved",delete:"The vault could not be deleted at this time.",copy:"Failed to copy to clipboard"},rh={placeholder_for_vaults:{konnect:"Filter by exact prefix or ID"},placeholder_for_secrets:{konnect:"Filter by exact key"}},sh={title:"Vaults",list:{toolbar_actions:{new_vault:"New vault"},table_headers:{prefix:"Prefix",name:"Vault Type",description:"Description",tags:"Tags",id:"ID"},empty_state:{title:"Configure a New Vault",description:"Improve the security of your Kong Gateway deployment with centralized secrets."},empty_state_v2:{title:"Configure your first vault",description:"Vaults securely store sensitive information, such as credentials and certificates, enhancing the security of your API infrastructure.",create_cta:"New vault"}}},lh={title:"Secrets",list:{toolbar_actions:{new_secret:"Store New Secret"},table_headers:{key:"Secret Key",updated_at:"Updated At"},empty_state:{title:"No Secrets Stored",description:"Improve the security of your Kong Gateway deployment with centralized secrets."}},form:{info:{title:"Secret",description:"Enter the secret key and secret value to be stored in Konnect vault"},fields:{key:{label:"Key",placeholder:"Enter key"},value:{label:"Value",placeholder:"Enter value here, can be simple values or multi-line"}},hint:"Once saved, the secret value will not be visible"}},ch={success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"},dh={vault_type:"Vault Type"},uh={sections:{general:{title:"General Information",description:"General information helps identify and manage this Vault instance."},config:{title:"Vault Configuration",description:"Select a type of Vault and configure properties specific to each type of Vault."}},fields:{prefix:{label:"Prefix",placeholder:"Enter a unique prefix for this vault",help:"e.g. my-vault",tooltip:"The prefix is used to load the right Vault configuration and implementation when referencing secrets with the other entities."},description:{label:"Description",placeholder:"Enter some description for this vault"},tags:{label:"Tags",placeholder:"Enter a list of tags separated by comma",help:"e.g. tag1, tag2, tag3"}},config:{konnect:{label:"Konnect",description:"Access secrets stored directly in Konnect's unified platform to easily reference in Kong Gateway configuration."},env:{label:"Environment Variables",description:"Access secrets stored via variables to be made available in Kong Gateway at runtime.",fields:{prefix:{label:"Environment Variable Prefix",placeholder:"Enter your environment variable vault prefix",tooltip:"Data plane will access all the environment variables starting with this prefix."}}},aws:{label:"AWS Secrets Manager",description:"Access secrets stored in AWS Secrets Manager for Kong Gateway configuration.",fields:{region:{label:"Region",placeholder:"Select an AWS region",tooltip:"The AWS region your vault is located in",locations:{"us-east-1":{location:"N. Virginia"},"us-east-2":{location:"Ohio"},"us-west-1":{location:"N. California"},"us-west-2":{location:"Oregon"},"af-south-1":{location:"Cape Town"},"ap-east-1":{location:"Hong Kong"},"ap-southeast-3":{location:"Jakarta"},"ap-south-1":{location:"Mumbai"},"ap-northeast-1":{location:"Tokyo"},"ap-northeast-2":{location:"Seoul"},"ap-northeast-3":{location:"Osaka"},"ap-southeast-1":{location:"Singapore"},"ap-southeast-2":{location:"Sydney"},"ca-central-1":{location:"Canada"},"eu-central-1":{location:"Frankfurt"},"eu-west-1":{location:"Ireland"},"eu-west-2":{location:"London"},"eu-west-3":{location:"Paris"},"eu-south-1":{location:"Milan"},"eu-north-1":{location:"Stockholm"},"me-south-1":{location:"Bahrain"},"sa-east-1":{location:"São Paulo"},"us-gov-east-1":{location:"US East"},"us-gov-west-1":{location:"US West"}}},endpoint_url:{label:"Endpoint URL",tooltip:'The AWS SecretsManager service endpoint url. If not specified, the value used by vault will be the official AWS SecretsManager service url which is `https://secretsmanager.<region>.amazonaws.com`. You can specify a complete URL(including the "http/https" scheme) to override the endpoint that vault will connect to.'},assume_role_arn:{label:"Assume Role ARN",tooltip:"The target AWS IAM role ARN that will be assumed. Typically this is used for operating between multiple roles or cross-accounts. If you are not using assume role you should not specify this value."},role_session_name:{label:"Role Session Name",tooltip:"The role session name used for role assuming."},sts_endpoint_url:{label:"STS Endpoint URL",tooltip:"The custom STS endpoint URL used for role assuming in AWS Vault. Note that this value will override the default STS endpoint URL(which should be `https: //sts.amazonaws.com`, or `https: //sts.<region>.amazonaws.com` if you have `AWS_STS_REGIONAL_ENDPOINTS` set to `regional`). If you are not using private VPC endpoint for STS service, you should not specify this value."}}},gcp:{label:"Google Secret Manager",description:"Access secrets stored in Google Secret Manager for Kong Gateway configuration.",fields:{project_id:{label:"Project ID",placeholder:"Enter your Google Cloud Project ID",tooltip:{text:"Visit your Google API Console and select {italic-text} in the projects list to see your project ID",italicText:"Manage all projects"}}}},hcv:{label:"HashiCorp Vault",description:"Access secrets stored in HashiCorp Vault for Kong Gateway configuration.",fields:{protocol:{label:"Protocol"},host:{label:"Host"},port:{label:"Port"},mount:{label:"Mount"},kv:{label:"Kv"},namespace:{label:"Namespace"},auth_method:{label:"Authentication Method"},token:{label:"Token"},kube_role:{label:"Kubernetes Role"},kube_auth_path:{label:"Kubernetes Auth Path"},kube_api_token_file:{label:"Kubernetes API Token File"},approle_auth_path:{label:"App Role Auth Path"},approle_role_id:{label:"App Role Role ID"},approle_secret_id:{label:"App Role Secret ID"},approle_secret_id_file:{label:"App Role Secret ID File"},approle_response_wrapping:{label:"App Role Response Wrapping"}}},azure:{label:"Azure Vault",description:"Access secrets stored in Azure Key Vault for Kong Gateway configuration.",fields:{location:{label:"Location"},vault_uri:{label:"Vault URI"},credential_prefix:{label:"Credential Prefix"},type:{label:"Type",placeholder:"Select a type"},client_id:{label:"Client ID"},tenant_id:{label:"Tenant ID"}}},advancedFields:{title:"View Advanced Fields",ttl:"Time-to-Live",ttlTooltip:"Time-to-live (in seconds) of a secret from a vault when cached by this reference",negTtl:"Negative Time-to-Live",negTtlTooltip:"Time-to-live (in seconds) of a vault miss (no secret)",resurrectTtl:"Time-to-Live Resurrection",resurrectTtlTooltip:"Time (in seconds) for which stale secrets from the vault are resurrected for when they cannot be refreshed"}},unavailable:"This vault provider is available on Enterprise."},ph={title:"Look up Key in Vault",vault:{label:"Vault",placeholder:"Select a vault"},secret_id:{label:"Secret ID",input_placeholder:"Enter a secret ID",select_placeholder:"Select or enter a complete secret ID"},optional_secret_key:{label:"Secret Key",placeholder:"Enter the key or key path to access a nested secret value",help:"Optional. e.g. tokens, tokens/refresh_token"},fetch_error:{vaults:"Could not fetch available vaults",secrets:"Could not fetch available secrets",vaults_and_secrets:"Could not fetch available vaults and secrets"},no_results:"No results found",actions:{use_key:"Use Key"},provider:{complete_action:"Look up {cta}",cta:"Key in Vault"}},Ah={actions:ah,delete:{title:"Delete a Vault",title_for_secret:"Delete a Secret",description:"This action cannot be reversed."},errors:oh,search:rh,vaults:sh,secrets:lh,copy:ch,labels:dh,form:uh,vault_secret_picker:ph};function gh(){const e=Ze.createI18n("en-us",Ah);return{i18n:e,i18nT:Ze.i18nTComponent(e)}}const Oo={useI18n:gh},oi="/v2/control-planes/{controlPlaneId}/core-entities",Mo="/v2/control-planes/{controlPlaneId}/config-stores",ri="/{workspace}",Ro={list:{konnect:{getAll:`${oi}/vaults`,deleteConfigStore:`${Mo}/{id}?force=true`},kongManager:{getAll:`${ri}/vaults`}},form:{konnect:{create:`${oi}/vaults`,createConfigStore:Mo,edit:`${oi}/vaults/{id}`},kongManager:{create:`${ri}/vaults`,edit:`${ri}/vaults/{id}`}}},To=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},Tn="/v2/control-planes/{controlPlaneId}",So={getVault:{konnect:`${Tn}/core-entities/vaults/{id}`},list:{konnect:`${Tn}/config-stores/{id}/secrets`},form:{konnect:{create:`${Tn}/config-stores/{id}/secrets`,edit:`${Tn}/config-stores/{id}/secrets/{secretId}`}}},mh={class:"vault-secret-picker-provider"},fh=t.defineComponent({__name:"VaultSecretPickerProvider",props:{value:{},update:{type:Function}},emits:["open"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o},i18nT:r}=Oo.useI18n();return(s,l)=>(t.openBlock(),t.createElementBlock("div",mh,[t.createVNode(t.unref(r),{keypath:"vault_secret_picker.provider.complete_action",scope:"global"},{cta:t.withCtx(()=>[t.createElementVNode("span",{class:"vault-secret-picker-provider-action",onClick:l[0]||(l[0]=()=>a("open",i.value,i.update))},t.toDisplayString(t.unref(o)("vault_secret_picker.provider.cta")),1)]),_:1})]))}}),xo=To(fh,[["__scopeId","data-v-200e7f4d"]]),hh=e=>{let n=e.trim();if(!n.startsWith("{")||!n.endsWith("}"))throw new Error("Invalid secret reference: must be enclosed in curly braces");if(n=n.substring(1,n.length-1).trim(),!n.startsWith("vault://"))throw new Error("Invalid secret reference: must start with vault://");const i=new URL(`http://${n.substring(8)}`);if(!i)throw new Error("Invalid secret reference: must have a vault prefix");const a=i.host,[,o,...r]=i.pathname.split("/");if(!a)throw new Error("Invalid secret reference: must have a vault prefix");return{vaultPrefix:a,secretId:o||void 0,optionalSecretKey:r==null?void 0:r.join("/")}},yh=e=>{if(!e.vaultPrefix)throw new Error("Invalid secret reference: must have a vault prefix");let n=`vault://${e.vaultPrefix}`;return e.secretId&&(n=`${n}/${e.secretId}`),e.optionalSecretKey&&(n=`${n}/${e.optionalSecretKey}`),`{${n}}`},bh={key:1,class:"inputs-wrapper"},Eh={"data-testid":"no-search-results"},wh={class:"k-select-selected-item-label"},Ch={class:"vault-secret-picker-vault-dropdown-item"},Bh={class:"select-item-label"},kh={class:"select-item-description"},Ih={class:"select-item-description"},vh={"data-testid":"no-search-results"},Oh=t.defineComponent({__name:"VaultSecretPicker",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},setup:{type:null,required:!1,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){var i;const{i18n:{t:a}}=Oo.useI18n(),o=e,r=n,{axiosInstance:s}=U.useAxios({validateStatus:K=>K===404||K>=200&&K<300,...(i=o.config)==null?void 0:i.axiosRequestConfig}),l=t.ref(!1),d=t.ref(""),p=t.ref(""),u=t.ref(""),A=t.ref(),g=t.computed(()=>{var K,T;return o.config.app==="konnect"?So.list[o.config.app].replace(/{id}/gi,((T=(K=A.value)==null?void 0:K.config)==null?void 0:T.config_store_id)??""):"<not_applicable>"}),E=t.computed(()=>{if(I&&b)return a("vault_secret_picker.fetch_error.vaults_and_secrets");if(I)return a("vault_secret_picker.fetch_error.vaults");if(b)return a("vault_secret_picker.fetch_error.secrets")}),{debouncedQueryChange:S,loading:h,error:I,loadItems:w,results:j}=U.useDebouncedFilter(o.config,Ro.list[o.config.app].getAll,void 0,{fetchedItemsKey:"data",searchKeys:["prefix"]}),{debouncedQueryChange:y,loading:m,error:b,loadItems:f,results:k}=U.useDebouncedFilter(o.config,g,void 0,{fetchedItemsKey:"data",searchKeys:["key"],exactMatchKey:"key"}),O=t.computed(()=>{var K;let T=!1;const V=((K=j.value)==null?void 0:K.map(Y=>(Y.prefix===d.value&&(T=!0),{label:Y.prefix,value:Y.prefix,vault:Y})))??[];return!T&&A.value&&V.push({label:A.value.prefix,value:A.value.prefix,vault:A.value}),V}),H=t.computed(()=>{var K;let T=!1;const V=((K=k.value)==null?void 0:K.map(Y=>(Y.key===p.value&&(T=!0),{label:Y.key,value:Y.key})))??[];return!T&&p.value&&V.push({label:p.value,value:p.value}),V}),x=t.computed(()=>{var K;return((K=A==null?void 0:A.value)==null?void 0:K.name)==="konnect"}),D=t.computed(()=>!!A.value&&!!p.value),F=K=>K.label?`${K.label} - (${K.vault.name} - ${K.vault.id})`:K.value,z=K=>{var T,V;let Y=`${o.config.apiBaseUrl}${Ro.form[o.config.app].edit}`;return o.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,((T=o.config)==null?void 0:T.controlPlaneId)||""):o.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,(V=o.config)!=null&&V.workspace?`/${o.config.workspace}`:"")),Y.replace(/{id}/gi,K)},Z=(K,T)=>{var V;return o.config.app!=="konnect"?"<not_applicable>":`${o.config.apiBaseUrl}${So.form[o.config.app].edit}`.replace(/{controlPlaneId}/gi,((V=o.config)==null?void 0:V.controlPlaneId)||"").replace(/{id}/gi,T).replace(/{secretId}/gi,K)},ee=()=>{r("proceed",yh({vaultPrefix:d.value,secretId:p.value||void 0,optionalSecretKey:u.value||void 0}))};return t.watch(()=>o.setup,async K=>{if(K!==!1){if(l.value=!0,d.value="",A.value=void 0,p.value="",u.value="",typeof K=="string"&&K.trim().length>0)try{let T,V="",Y="",C="";const B=hh(K),{data:M}=await s.get(z(B.vaultPrefix));if(M!=null&&M.name)if(T=M,V=B.vaultPrefix,T.name==="konnect"){if(B.secretId){const{data:_}=await s.get(Z(B.secretId,M.config.config_store_id));_.key===B.secretId&&(Y=B.secretId,C=B.optionalSecretKey??"")}}else Y=B.secretId??"",C=B.optionalSecretKey??"";await t.nextTick(()=>{d.value=V,A.value=T,p.value=Y,u.value=C})}catch(T){console.debug(T)}l.value=!1,await w()}},{immediate:!0}),t.watch(d,async(K,T)=>{var V;l.value||K===T||(A.value=(V=O.value.find(Y=>Y.value===K))==null?void 0:V.vault,p.value="",u.value="")}),t.watch(g,async()=>{x.value&&await f()},{immediate:!0}),(K,T)=>{const V=t.resolveComponent("KEmptyState"),Y=t.resolveComponent("KSelect"),C=t.resolveComponent("KInput"),B=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(B,{"action-button-disabled":!D.value,"action-button-text":t.unref(a)("vault_secret_picker.actions.use_key"),class:"vault-secret-picker","data-testid":"vault-secret-picker-modal",title:t.unref(a)("vault_secret_picker.title"),visible:o.setup!==!1,onCancel:T[4]||(T[4]=()=>r("cancel")),onProceed:ee},{default:t.withCtx(()=>[t.unref(I)||t.unref(b)?(t.openBlock(),t.createBlock(V,{key:0,"data-testid":"vault-secret-picker-fetch-error","icon-variant":"error",message:E.value},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",bh,[t.createVNode(Y,{modelValue:d.value,"onUpdate:modelValue":T[0]||(T[0]=M=>d.value=M),clearable:"","data-testid":"vault-secret-picker-vault-select",disabled:l.value,"enable-filtering":"","filter-function":()=>!0,items:O.value,"kpop-attributes":{"data-testid":"vault-secret-picker-vault-popover"},label:t.unref(a)("vault_secret_picker.vault.label"),loading:t.unref(h),placeholder:t.unref(a)("vault_secret_picker.vault.placeholder"),required:"","reuse-item-template":"",width:"100%",onQueryChange:t.unref(S)},{loading:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("actions.loading")),1)]),empty:t.withCtx(()=>[t.createElementVNode("div",Eh,t.toDisplayString(t.unref(a)("vault_secret_picker.no_results")),1)]),"selected-item-template":t.withCtx(({item:M})=>[t.createElementVNode("span",wh,t.toDisplayString(F(M)),1)]),"item-template":t.withCtx(({item:M})=>[t.createElementVNode("div",Ch,[t.createElementVNode("span",Bh,t.toDisplayString(M.label),1),t.createElementVNode("span",kh,t.toDisplayString(M.vault.name),1),t.createElementVNode("span",Ih,t.toDisplayString(M.vault.id),1)])]),_:1},8,["modelValue","disabled","items","label","loading","placeholder","onQueryChange"]),x.value?(t.openBlock(),t.createBlock(Y,{key:0,modelValue:p.value,"onUpdate:modelValue":T[1]||(T[1]=M=>p.value=M),clearable:"","data-testid":"vault-secret-picker-secret-id-select",disabled:l.value||!A.value,"enable-filtering":"","filter-function":()=>!0,items:H.value,"kpop-attributes":{"data-testid":"vault-secret-picker-secret-id-popover"},label:t.unref(a)("vault_secret_picker.secret_id.label"),loading:t.unref(m),placeholder:t.unref(a)("vault_secret_picker.secret_id.select_placeholder"),required:"","reuse-item-template":"",width:"100%",onQueryChange:t.unref(y)},{loading:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("actions.loading")),1)]),empty:t.withCtx(()=>[t.createElementVNode("div",vh,t.toDisplayString(t.unref(a)("vault_secret_picker.no_results")),1)]),_:1},8,["modelValue","disabled","items","label","loading","placeholder","onQueryChange"])):(t.openBlock(),t.createBlock(C,{key:1,modelValue:p.value,"onUpdate:modelValue":T[2]||(T[2]=M=>p.value=M),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"vault-secret-picker-secret-id-input",disabled:l.value||!A.value,label:t.unref(a)("vault_secret_picker.secret_id.label"),placeholder:t.unref(a)("vault_secret_picker.secret_id.input_placeholder"),required:"",type:"text"},null,8,["modelValue","disabled","label","placeholder"])),t.createVNode(C,{modelValue:u.value,"onUpdate:modelValue":T[3]||(T[3]=M=>u.value=M),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"vault-secret-picker-secret-key-input",disabled:l.value||!A.value,help:t.unref(a)("vault_secret_picker.optional_secret_key.help"),label:t.unref(a)("vault_secret_picker.optional_secret_key.label"),placeholder:t.unref(a)("vault_secret_picker.optional_secret_key.placeholder"),type:"text"},null,8,["modelValue","disabled","help","label","placeholder"])]))]),_:1},8,["action-button-disabled","action-button-text","title","visible"])}}}),Mh=To(Oh,[["__scopeId","data-v-df8552cc"]]),Rh={key:0},Th=t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:i}=ke.usePluginHelpers(),{i18n:{t:a}}=ke.useI18n(),o=l=>l.map(d=>d.replace(/^[cC]onfig\./,"").split(".").map(p=>i(p)).join(".")).join(", "),r=(l,d)=>a(l,{parameters:o(d)}),s=t.computed(()=>{const l=[];if(n.rules.atLeastOneOf)for(const d of n.rules.atLeastOneOf)l.push(r("plugins.form.field_rules.at_least_one_of",d));if(n.rules.onlyOneOf)for(const d of n.rules.onlyOneOf)l.push(r("plugins.form.field_rules.only_one_of",d));if(n.rules.mutuallyRequired)for(const d of n.rules.mutuallyRequired)l.push(r("plugins.form.field_rules.mutually_required",d));return l});return(l,d)=>{const p=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(p,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,(u,A)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${A}`},t.toDisplayString(u),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",Rh,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(u,A)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${A}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u,(g,E)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${A}-combination-${E}`},t.toDisplayString(o(g)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),_e=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},Sh=_e(Th,[["__scopeId","data-v-d8eb79cf"]]),xh={class:"kong-ui-entities-plugin-form"},Vh={key:1,class:"entity-form"},Nh={class:"plugin-config-empty-state"},Dh=t.defineComponent({components:{...Df}}),Ph=t.defineComponent({...Dh,__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1}},emits:["loading","model-updated"],setup(e,{emit:n}){var ee,K;const i=n,a=e,{axiosInstance:o}=U.useAxios((ee=a.config)==null?void 0:ee.axiosRequestConfig),{parseSchema:r}=ke.useSchemas({entityId:((K=a.entityMap.focusedEntity)==null?void 0:K.id)||void 0,credential:a.credential}),{convertToDotNotation:s,unFlattenObject:l,isObjectEmpty:d,unsetNullForeignKey:p}=ke.usePluginHelpers(),{objectsAreEqual:u}=U.useHelpers(),{i18n:{t:A}}=mn(),g=(T,V)=>{let Y=`${a.config.apiBaseUrl}${Ie.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),Y=Y.replace(/{entity}/gi,T),Y=Y.replace(/{id}/gi,V),Y},E=T=>{let V=`${a.config.apiBaseUrl}${Ie.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?V=V.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(V=V.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),V=V.replace(/{entity}/gi,T),V},S=(T,V)=>{const Y=g(T,V);return o.get(Y)},h=(T,V)=>{const Y=E(T);return a.config.app==="konnect"?o.get(Y).then(C=>{const{data:{data:B}}=C;if(delete V.size,delete V.offset,B.length&&Object.keys(V).length===1){const M=Object.keys(V)[0],_=B.filter(ie=>ie[M]?!!ie[M].toLowerCase().includes(V[M].toLowerCase()):!1);C.data.data=_}return C}):o.get(Y,{params:V})};t.provide(dt,{getOne:S,getAll:h});const I=t.ref(""),w=t.ref(null),j=t.ref({}),y=t.reactive({}),m=t.reactive({}),b=t.computed(()=>{var T;return(T=w.value)==null?void 0:T.options}),f=t.ref(!1),k=t.ref(),O=(T,V)=>{f.value=T??"",k.value=V},H=T=>{var V;(V=k.value)==null||V.call(k,T),f.value=!1},x=()=>{var M,_;const T={...a.schema},V=m,Y=y,C=Object.keys(V),B={};if(!d(j.value))for(let ie=0;ie<((_=(M=j.value)==null?void 0:M.fields)==null?void 0:_.length);ie++)T[j.value.fields[ie].model]=j.value.fields[ie];return ai.forEach(ie=>{T[ie]&&(T[ie].fields.forEach(ne=>{ne.fields&&ne.fields.forEach(Q=>{T[Q.model]=Q}),ne.model&&(T[ne.model]=ne)}),delete T[ie])}),C.forEach(ie=>{var Nt;if(!T[ie])return;const ne=T[ie];let Q=V[ie];const Re=Y[ie],Ae=Array.isArray(Q)?"array":typeof Q,Ge=ne?ne.valueType:null,ft=ne?ne.valueArrayType:null,Vt=ne?ne.transform:null;if(Q==null&&Re==null&&!ne.submitWhenNull)return;if(ne){if(Ge&&Ae!==Ge)switch(Ge){case"array":Ae==="string"&&Q.length&&(Q=Q.split(",").map(ce=>{if(ce=ce.trim(),ft==="string")return String(ce);if(ft==="number")return Number(ce);if(ft==="boolean"){if(typeof ce=="string")return ce.toLowerCase()==="true"||ce==="1";if(typeof ce=="number")return ce===1}return ce})),(!Q||!Q.length)&&(Q=ne.submitWhenNull?null:[]);break;case"number":Q=Number(Q);break;case"boolean":Ae==="string"&&(Q=Q.toLowerCase()==="true"||Q==="1"),Ae==="number"&&(Q=Q===1);break;case"string":Q=Q==null?"":String(Q);break}else Ge==="array"&&(!Q||!Q.length?Q=ne.submitWhenNull?null:[]:((Nt=ne.inputAttributes)==null?void 0:Nt.type)==="number"&&(Q=Q.map(ce=>Number(ce))));if(ne.type==="array"&&ne.nestedFields){const ce=L=>{Object.keys(L).forEach(X=>{L[X]&&typeof L[X]=="object"&&L[X]!==null?ce(L[X]):(L[X]===void 0||L[X]===null||typeof L[X]=="number"&&isNaN(L[X])||typeof L[X]=="string"&&L[X].trim().length===0)&&delete L[X]})};Q&&typeof Q=="object"&&ce(Q)}ne.type==="object-advanced"&&ne.fields&&Q!==null&&(Object.entries(Q).length===0?Q=null:Object.keys(Q).forEach(ce=>{Array.isArray(Q[ce])||(Q[ce]=Q[ce].split(","))}))}let Ce=s(ie);if(ne.fieldNameHasDashes){const[ce,...L]=Ce.split(".").reverse();Ce=[ce.replace(/_/g,"-"),...L].reverse().join(".")}if(Ge==="object-expand"){let ce;[Ce,ce]=Ce.split(".");let L={};B[Ce]&&(L=B[Ce]),L[ce]=Q,Q=L}Re!==void 0&&Q===""&&Q!==Re?B[Ce]=Ge==="object"?{}:null:ne.type==="checklist"&&Q===""?B[Ce]=[]:Q!==""&&(B[Ce]=Q),B[Ce]=Vt?Vt(Q):B[Ce],p(Ce,B)}),l(B)},D=(T,V)=>{var B;const Y={[V]:T};typeof((B=a.schema[V])==null?void 0:B.modelTransformer)=="function"&&(Y[V]=a.schema[V].modelTransformer(T));const C=Object.assign({},m,Y);Object.assign(m,C),i("model-updated",{model:m,originalModel:y,data:x()})},F=(T,V)=>{Object.keys(T).forEach(Y=>{var ie,ne;let C=V?`${V}-${Y}`:Y,B=a.schema[C];if(!B){const Q=V?`${V}-${Y.replace(/-/g,"_")}`:Y.replace(/-/g,"_");(ie=a.schema[Q])!=null&&ie.fieldNameHasDashes&&(C=Q,B=a.schema[C]),V&&((ne=a.schema[V])==null?void 0:ne.keyFromObject)===Y&&(C=V,B=a.schema[C])}const M=T[Y],_=typeof M;if(B&&B.type==="object-advanced"&&!M){m[C]={},y[C]={};return}if(Array.isArray(M)){m[C]=JSON.parse(JSON.stringify(M)),y[C]=JSON.parse(JSON.stringify(M));return}if(_==="object"&&M&&!M.length)return F(M,C);if(_==="object"&&M&&M.length&&B.type==="input"){m[C]=M.join(", "),y[C]=M.join(", ");return}m[C]=M,y[C]=M}),i("model-updated",{model:m,originalModel:y,data:x()})},z=t.ref(!0),Z=()=>{var T;if(a.record&&a.schema&&(F({enabled:a.record.enabled??!0,...a.record.instance_name&&{instance_name:a.record.instance_name||""},...a.record.protocols&&{protocols:a.record.protocols},...a.record.tags&&{tags:a.record.tags}}),a.credential?((a.record.consumer_id||a.record.consumer)&&F({consumer_id:a.record.consumer_id||a.record.consumer}),F(a.record)):a.record.config&&((a.record.consumer_id||a.record.consumer||a.record.service_id||a.record.service||a.record.route_id||a.record.route||a.record.consumer_group_id||a.record.consumer_group)&&F({service_id:a.record.service_id||a.record.service,route_id:a.record.route_id||a.record.route,consumer_id:a.record.consumer_id||a.record.consumer,consumer_group_id:a.record.consumer_group_id||a.record.consumer_group}),F(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const V={};for(const Y in a.entityMap){const C=a.entityMap[Y].id,B=a.entityMap[Y].idField,M=B==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(B).replace("_","-"));Object.prototype.hasOwnProperty.call(m,M)&&(V[M]=C)}F(V)}if((T=a.entityMap.consumer)!=null&&T.id&&a.schema&&a.credential){const V={};Object.prototype.hasOwnProperty.call(m,"consumer")&&(V.consumer=a.entityMap.consumer.id),F(V)}z.value=!1};return t.watch(z,T=>{i("loading",T)}),t.watch(()=>a.schema,(T,V)=>{var C,B;if(u(T||{},V||{}))return;const Y=r(T);Object.assign(m,Y.model),j.value={fields:(B=(C=j.value)==null?void 0:C.fields)==null?void 0:B.map(M=>({...M,disabled:M.disabled||!1}))},Object.assign(y,JSON.parse(JSON.stringify(Y.model))),I.value=Co(Y.model.name),Z()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var T,V;w.value=r(a.schema),Object.assign(m,((T=w.value)==null?void 0:T.model)||{}),j.value=((V=w.value)==null?void 0:V.schema)||{},Z()}),(T,V)=>{var B;const Y=t.resolveComponent("KSkeleton"),C=t.resolveComponent("VueFormGenerator");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",xh,[z.value?(t.openBlock(),t.createBlock(Y,{key:0,type:"form"})):(t.openBlock(),t.createElementBlock("div",Vh,[I.value&&(m.id&&e.editing||!e.editing)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(I.value),{key:0,"form-model":m,"form-options":b.value,"form-schema":j.value,"is-editing":e.editing,"on-model-updated":D},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(ut),fn:t.withCtx(M=>[M.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(xo),t.mergeProps({key:0},M,{onOpen:V[0]||(V[0]=(_,ie)=>O(_,ie))}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing"])):t.createCommentVNode("",!0),!I.value&&(m.id&&e.editing||!e.editing)?(t.openBlock(),t.createBlock(C,{key:1,model:m,options:b.value,schema:j.value,onModelUpdated:D,onRefreshModel:x},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",Nh,t.toDisplayString(t.unref(A)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(B=t.unref(We)[m.name])!=null&&B.fieldRules&&(a.config.isNewOtelSchema||m.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(Sh,{rules:t.unref(We)[m.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(ut),fn:t.withCtx(M=>[M.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(xo),t.mergeProps({key:0},M,{onOpen:V[1]||(V[1]=(_,ie)=>O(_,ie))}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["model","options","schema"])):t.createCommentVNode("",!0)]))]),t.createVNode(t.unref(Mh),{config:a.config,setup:f.value,onCancel:V[2]||(V[2]=()=>f.value=!1),onProceed:H},null,8,["config","setup"])],64)}}}),Lh=_e(Ph,[["__scopeId","data-v-0f5311b2"]]),Gh={key:1},Uh=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,i)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",Gh,[t.renderSlot(n.$slots,"default")]))}}),jh={class:"kong-ui-entities-plugin-form-container"},Yh={key:0},Hh={class:"plugin-form-actions"},Fh=_e(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated"],setup(e,{emit:n}){var ce;const i=n,a=e,o=Ft.useRouter(),{i18n:{t:r}}=ke.useI18n(),{customSchemas:s,typedefs:l}=ke.useSchemas({app:a.config.app,credential:a.credential}),{formatPluginFieldLabel:d}=ke.usePluginHelpers(),{getMessageFromError:p}=U.useErrors(),{capitalize:u}=U.useStringHelpers(),{objectsAreEqual:A}=U.useHelpers(),{axiosInstance:g}=U.useAxios((ce=a.config)==null?void 0:ce.axiosRequestConfig),E=t.ref(!1),S=t.computed(()=>!!a.pluginId),h=t.computed(()=>a.pluginId?U.EntityBaseFormType.Edit:U.EntityBaseFormType.Create),I=t.ref(null),w=t.computed(()=>!!(a.credential&&a.config.entityId)),j=t.ref(null),y=t.ref({}),m=t.ref(!1),b=t.reactive({enabled:!0,protocols:[],tags:[]}),f=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,errorMessage:""}),k=t.ref([{title:r("view_configuration.json"),hash:"#json"},{title:r("view_configuration.yaml"),hash:"#yaml"}]);a.config.app==="konnect"&&k.value.splice(1,0,{title:r("view_configuration.terraform"),hash:"#terraform"});const O=t.ref(""),H=t.computed(()=>{if(w.value){let L=Ie.form[a.config.app].credential[h.value];return L=L.replace(/{resourceEndpoint}/gi,z.value),L}return a.config.entityType&&a.config.entityId?Ie.form[a.config.app].edit.forEntity.replace(/{entityType}/gi,a.config.entityType).replace(/{entityId}/gi,a.config.entityId):Ie.form[a.config.app].edit.all}),x=()=>{E.value=!E.value},D=t.computed(()=>{var J,W,te,de,re,G,P,q;const L=a.config.entityType==="consumers"&&a.config.entityId||((W=(J=j.value)==null?void 0:J.consumer)==null?void 0:W.id),X=a.config.entityType==="consumer_groups"&&a.config.entityId||((de=(te=j.value)==null?void 0:te.consumer_group)==null?void 0:de.id),v=a.config.entityType==="services"&&a.config.entityId||((G=(re=j.value)==null?void 0:re.service)==null?void 0:G.id),se=a.config.entityType==="routes"&&a.config.entityId||((q=(P=j.value)==null?void 0:P.route)==null?void 0:q.id);if(!(L||X||v||se))return{global:{entity:c.GLOBAL,entityEndpoint:"plugins"}};const N={};return v&&(N.service={entity:c.SERVICE,entityEndpoint:"services",id:v,idField:Et.SERVICE}),se&&(N.route={entity:c.ROUTE,entityEndpoint:"routes",id:se,idField:Et.ROUTE}),L&&(N.consumer={entity:c.CONSUMER,entityEndpoint:"consumers",id:L,idField:Et.CONSUMER}),X&&(N.consumer_group={entity:c.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:X,idField:Et.CONSUMER_GROUP}),a.config.entityType&&(N.focusedEntity={entity:c[a.config.entityType.substring(0,a.config.entityType.length-1).toUpperCase()],entityEndpoint:a.config.entityType,id:a.config.entityId,idField:Et[a.config.entityType.substring(0,a.config.entityType.length-1).toUpperCase()]}),N}),F=t.reactive({name:{default:a.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:r("plugins.form.fields.enabled.label"),textOn:r("plugins.form.fields.enabled.on_text"),textOff:r("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:a.hideScopeSelection&&(a.hideScopeSelection||h.value===U.EntityBaseFormType.Create&&a.config.entityId)?"foreign":"selectionGroup",disabled:a.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:r("plugins.form.scoping.global.label"),description:r("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:r("plugins.form.fields.protocols.help"),label:r("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:r("plugins.form.fields.instance_name.label"),inputType:"text",help:r("plugins.form.fields.instance_name.help")},tags:l.tags}),z=t.computed(()=>{var v;const L=a.developer?"developers":"consumers",X=((v=Pt[a.pluginType])==null?void 0:v.endpoint)||"/plugins";return`${L}/${a.config.entityId}${a.developer?"/credentials":""}${X}`}),Z=L=>{const X=Array.from(new Set(L.map(v=>typeof v)));return X.length>1?"string":X[0]},ee=(L,X,v,se)=>{var te,de;let N=X&&X.fields||[];const J=s[a.pluginType],W=(de=(te=Pt[a.pluginType])==null?void 0:te.schema)==null?void 0:de.fields;return Array.isArray(N)&&(N=N.reduce((re,G)=>{const P=Object.keys(G)[0];return P.match(/-/g)?re[P.replace(/-/g,"_")]={...G[P],fieldNameHasDashes:!0}:re[P]=G[P],re},{})),Object.keys(N).sort().forEach(re=>{var Be,Ve,Fe,Ht,ln,cn;const G=N[re];G.type==="set"&&(G.type="array");const P=L?`${L}-${re}`:`${re}`;if(Object.prototype.hasOwnProperty.call(G,"overwrite")||G.hidden)return;if(G.type==="table")return ee(P,G.schema,v);if(G.fields)return se&&G.type==="record"?(v[P]={type:"object",model:re,schema:{fields:Object.values(ee(P,G,{},!0))}},v):ee(P,G,v);if(v[P]={id:P,model:re},v[P].type=G.type==="boolean"?"checkbox":"input",v[P].required=G.required,v[P].referenceable=G.referenceable,P.startsWith("config-"))if(!se&&G.type==="array"&&(O.value=P),se&&O.value&&P.startsWith(O.value)){const ae=P.slice(O.value.length+1);v[P].label=ae.split("-").map(d).join(".")}else v[P].label=d(P);if((L==="config"||L.startsWith("config-"))&&(Be=N[re])!=null&&Be.description&&(v[P].help=oe.parse(N[re].description,{mangle:!1,headerIds:!1})),G.type==="map"){if(v[P].type="object-advanced",v[P].values=G.values,G.values.type==="array"){const{type:ae}=G.values.elements||{};v[P].schema={fields:[{schema:{fields:[{...Oe,model:P,valueArrayType:ae==="integer"?"number":ae||"string",inputAttributes:{...Oe.inputAttributes,type:ae==="integer"?"number":"text",inputMode:ae==="integer"?"numeric":"text"}}]}}]}}else G.values.fields&&(v[P].schema={fields:[{type:"object",model:"object",schema:{fields:G.values.fields.map(ae=>{const Ue=Object.keys(ae)[0];return{model:Ue,type:"input",label:u(Ue),placeholder:Ue,inputType:ae[Ue].type}})}}]});return v}if(G.enum&&G.type==="array"&&(v[P].type="checklist",v[P].values=G.enum,v[P].multi=!0,v[P].multiSelect=!0),G.one_of&&G.type!=="array"&&(v[P].type="select",v[P].values=G.one_of,v[P].selectOptions={noneSelectedText:r("plugins.form.no_selection")}),G.elements&&G.type==="array"){const ae=G.elements;if(v[P].referenceable=ae.referenceable,v[P].elements=ae,["string","integer","number"].includes(ae.type)&&!ae.one_of){const{id:Ue,help:be,label:pe,hint:Ne,values:ot,referenceable:Ke}=v[P],{inputAttributes:ht,...Ei}=JSON.parse(JSON.stringify(Oe));ht.type=ae.type==="string"?"text":"number",v[P]={id:Ue,help:be,label:pe,hint:Ne,values:ot,referenceable:Ke,inputAttributes:ht,...Ei}}}if(G.hint&&(v[P].hint=G.hint),J&&!J.overwriteDefault&&Object.keys(J).forEach(ae=>{if(ae===P){const{help:Ue,label:be,hint:pe,values:Ne,referenceable:ot,elements:Ke}=v[P],{help:ht,...Ei}=J[ae];v[P]={help:Ue,label:be,hint:pe,values:Ne,referenceable:ot,elements:Ke,...Ei},typeof ht=="string"&&(v[P].help=oe.parse(ht,{mangle:!1,headerIds:!1}))}}),G.type==="array"&&((Ve=G.elements)==null?void 0:Ve.type)==="record"&&Array.isArray(G.elements.fields)){let ae={};for(const be of G.elements.fields)ae={...ae,...be};const Ue=(ln=(Ht=(Fe=v[P])==null?void 0:Fe.items)==null?void 0:Ht.schema)==null?void 0:ln.fields;if(Array.isArray(Ue))for(const be of v[P].items.schema.fields){const pe=(cn=ae[be.model])==null?void 0:cn.description;be.help===void 0&&typeof pe=="string"&&(be.help=oe.parse(pe,{mangle:!1,headerIds:!1}))}if(Ue||(v[P].type="array",v[P].newElementButtonLabelClasses="kong-form-new-element-button-label",v[P].fieldClasses="array-card-container-wrapper",v[P].itemContainerComponent="FieldArrayCardContainer",v[P].items={type:"object",schema:{fields:Object.values(ee(P,G.elements,{},!0))}},v[P].items.schema.fields.forEach(be=>{var pe,Ne;for(const ot of G.elements.fields){const Ke=Object.keys(ot)[0],ht=((Ne=(pe=be.id)==null?void 0:pe.split)==null?void 0:Ne.call(pe,"-"))??[];if(ht[ht.length-1]===Ke){be.model=Ke,be.label=d(Ke);break}}}),G.elements.type==="record"&&(v[P].nestedFields=!0)),!v[P].nestedFields)v[P].items.default=()=>G.elements.fields.reduce((be,pe)=>{const Ne=Object.keys(pe)[0];return be[Ne]=pe[Ne].default,be},{});else{const be=(pe,Ne)=>{if(pe.type==="object"){pe.model&&(Ne[pe.model]={});for(const ot of pe.schema.fields)be(ot,pe.model?Ne[pe.model]:Ne)}else pe.model&&(Ne[pe.model]=pe.default)};v[P].items.default=()=>{const pe={};return be(v[P].items,pe),pe}}}if(w.value&&W){for(let ae=0;ae<W.length;ae++)if(W[ae][P]){v[P]={...v[P],...W[ae][P]};break}}if(G.required&&G.type!=="boolean"&&(v[P].required=!0,v[P].selectOptions={hideNoneSelectedText:!0}),G.required&&G.type==="boolean"&&(v[P].default=G.default??!1),G.default!=null&&typeof G.default!="object"&&G.default!=="function"&&(v[P].default=G.default),v[P].type==="input"){["string","number"].includes(typeof v[P].default)&&a.config.app==="konnect"&&(v[P].placeholder=`Default: ${v[P].default===""?"<empty string>":v[P].default}`);const{type:ae}=G.elements||{};ae&&(v[P].valueArrayType=ae==="integer"?"number":ae),v[P].inputType=G.type==="array"||G.type==="string"?G.encrypted?"password":"text":G.type}let q="string";G.enum?q=Z(G.enum):G.type==="boolean"?q="boolean":G.type==="number"||G.type==="integer"?(q="number",v[P].inputType="number"):G.type==="array"?(q="array",v[P].default=G.default,G.len_min>0&&(v[P].submitWhenNull=!0)):G.type==="foreign"?q="object":G.default&&Array.isArray(G.default)?(q="array",v[P].valueArrayType=Z(G.default)):G.default&&(q=typeof G.default),v[P].valueType=q,G.fieldNameHasDashes&&(v[P].fieldNameHasDashes=!0)}),v},K=()=>{var re,G,P,q,Be,Ve,Fe,Ht,ln,cn,ae,Ue;const L=((re=We[a.pluginType])==null?void 0:re.scope.includes(c.SERVICE))??!0,X=((G=We[a.pluginType])==null?void 0:G.scope.includes(c.ROUTE))??!0,v=((P=We[a.pluginType])==null?void 0:P.scope.includes(c.CONSUMER))??!0,se=a.config.disableConsumerGroupScope?!1:((q=We[a.pluginType])==null?void 0:q.scope.includes(c.CONSUMER_GROUP))??!0,N=a.config.entityType==="consumers"&&!!a.config.entityId||!!((Ve=(Be=j.value)==null?void 0:Be.consumer)!=null&&Ve.id),J=a.config.entityType==="consumer_groups"&&!!a.config.entityId||!!((Ht=(Fe=j.value)==null?void 0:Fe.consumer_group)!=null&&Ht.id),W=a.config.entityType==="services"&&!!a.config.entityId||!!((cn=(ln=j.value)==null?void 0:ln.service)!=null&&cn.id),te=a.config.entityType==="routes"&&!!a.config.entityId||!!((Ue=(ae=j.value)==null?void 0:ae.route)!=null&&Ue.id),de=[];if(L&&de.push({id:"service-id",model:"service-id",label:r("plugins.form.scoping.gateway_service.label"),placeholder:r("plugins.form.scoping.gateway_service.placeholder"),type:"AutoSuggest",entity:"services",inputValues:{fields:["name","id"]},help:r("plugins.form.scoping.gateway_service.help"),disabled:W&&a.disableScopeSelection}),X&&de.push({id:"route-id",model:"route-id",label:r("plugins.form.scoping.route.label"),placeholder:r("plugins.form.scoping.route.placeholder"),type:"AutoSuggest",entity:"routes",inputValues:{fields:["name","id"],primaryField:"id"},help:r("plugins.form.scoping.route.help"),disabled:te&&a.disableScopeSelection}),v&&de.push({model:"consumer-id",label:r("plugins.form.scoping.consumer.label"),placeholder:r("plugins.form.scoping.consumer.placeholder"),type:"AutoSuggest",entity:"consumers",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:r("plugins.form.scoping.consumer.help"),disabled:N&&a.disableScopeSelection}),se&&de.push({model:"consumer_group-id",label:r("plugins.form.scoping.consumer_group.label"),placeholder:r("plugins.form.scoping.consumer_group.placeholder"),type:"AutoSuggest",entity:"consumer_groups",entityDataKey:"consumer_group",inputValues:{fields:["name","id"],primaryField:"name"},help:r("plugins.form.scoping.consumer_group.help"),disabled:J&&a.disableScopeSelection}),de.length){const be=[...L?["service"]:[],...X?["route"]:[],...v?["consumer"]:[],...se?["consumer_group"]:[]],Ne=be.splice(be.length-2,2).map(Ke=>r(Ke==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Ke}.plural`)).join(`${be.length>0?",":""} and/or `),ot=["Specific",[...be.length>0?[be.map(Ke=>r(Ke==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Ke}.plural`)).join(", ")]:[],Ne].join(", ")].join(" ");F.selectionGroup.fields.push({label:r("plugins.form.scoping.label"),description:ot,fields:[]}),F.selectionGroup.fields[1].fields=de}s[a.pluginType]&&s[a.pluginType].overwriteDefault&&Object.hasOwnProperty.call(s[a.pluginType],"formSchema")&&Object.assign(F,s[a.pluginType].formSchema)},T=t.computed(()=>!A(f.fields,b,!0)),V=t.computed(()=>!Ce.value&&!m.value&&(h.value===U.EntityBaseFormType.Create||T.value)),Y=t.ref(!1),C=t.ref(),B=L=>{a.credential&&L.password&&(L.password=""),f.fields.id=(L==null?void 0:L.id)||void 0,C.value=L==null?void 0:L.ordering,Object.assign(b,f.fields),j.value=L,Y.value=!0},M=t.ref({}),_=L=>{var X;f.fields=L.model,f.fields.id=((X=j.value)==null?void 0:X.id)||void 0,Object.assign(b,L.originalModel),M.value=L.data,a.isWizardStep&&i("model-updated",{model:f.fields,data:L.data,resourceEndpoint:z.value})};t.watch([D,Y],(L,X)=>{const v=L[0]!==X[0],se=L[1],N=X[1];!w.value&&h.value===U.EntityBaseFormType.Edit&&(v||se&&se!==N)&&(Ce.value=!0,I.value=ee("config",y.value,F),Ce.value=!1)},{deep:!0});const ie=()=>{a.config.cancelRoute?o.push(a.config.cancelRoute):i("cancel")},ne=t.computed(()=>{let L=`${a.config.apiBaseUrl}${Ie.form[a.config.app].validate}`;return a.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),L=L.replace(/{id}/gi,a.pluginId),L}),Q=t.computed(()=>{const L=a.config.entityType&&a.config.entityId&&!a.developer,X=w.value?Ie.form[a.config.app].credential[h.value]:Ie.form[a.config.app][h.value][L?"forEntity":"all"];let v=`${a.config.apiBaseUrl}${X}`;return a.config.app==="konnect"?v=v.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(v=v.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),v=v.replace(/{resourceEndpoint}/gi,z.value),v=v.replace(/{id}/gi,a.pluginId),v=v.replace(/{entityType}/gi,a.config.entityType||""),v=v.replace(/{entityId}/gi,a.config.entityId||""),v}),Re=t.computed(()=>!Object.keys(We).includes(a.pluginType)),Ae=t.computed(()=>{const L=M.value;if(w.value){for(const X in c){const v=c[X];L[v]&&!L[v].id&&(L[v]={id:a.config.entityId})}delete L.created_at}return L}),Ge=async()=>{if(!a.isWizardStep)try{f.isReadonly=!0;let L;const X=JSON.parse(JSON.stringify(Ae.value)),v=s[a.pluginType];typeof(v==null?void 0:v.shamefullyTransformPayload)=="function"&&v.shamefullyTransformPayload({originalModel:b,model:f.fields,payload:X,schema:I.value}),!w.value&&!Re.value&&await g.post(ne.value,X),h.value==="create"?L=await g.post(Q.value,X):h.value==="edit"&&(L=a.config.app==="konnect"?await g.put(Q.value,Object.assign({ordering:C.value},X)):await g.patch(Q.value,X)),Object.assign(b,f.fields),i("update",L==null?void 0:L.data)}catch(L){f.errorMessage=p(L),i("error",L)}finally{f.isReadonly=!1}},ft=t.computed(()=>{var se;const L=w.value?(se=Pt[a.pluginType])==null?void 0:se.schemaEndpoint:a.pluginType,X=w.value?Ie.form[a.config.app].credentialSchema:Ie.form[a.config.app].pluginSchema;let v=`${a.config.apiBaseUrl}${X}`;return a.config.app==="konnect"?v=v.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(v=v.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),v=v.replace(/{plugin}/gi,L),v}),Vt=t.ref(""),Ce=t.ref(!1),Nt=t.ref("");return t.onBeforeMount(async()=>{var L,X,v;Ce.value=!0;try{if(w.value&&a.config.app==="konnect"){const se=(L=Pt[a.pluginType])==null?void 0:L.schemaEndpoint,N=Vl[se];Vt.value=se,I.value=ee("",N,{}),Ce.value=!1}else{const se=await g.get(ft.value),{data:N}=se;if(N)if(w.value)I.value=ee("",N,{}),Ce.value=!1;else{const J=N.fields.find(te=>te.config);y.value=J?J.config:se,K();const W=(X=N.fields.find(te=>te.protocols))==null?void 0:X.protocols;if(W){const{default:te=[],elements:de={}}=W;F.protocols.default=te,F.protocols.placeholder=a.config.app==="konnect"?r("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:te.join(", ")}):r("plugins.form.fields.protocols.placeholder"),(v=de.one_of)!=null&&v.length&&(F.protocols.values=de.one_of.map(re=>({label:re,value:re})))}(Y.value||h.value===U.EntityBaseFormType.Create)&&(I.value=ee("config",y.value,F))}}}catch(se){Nt.value=p(se),i("error:fetch-schema",se)}finally{Ce.value=!1}}),(L,X)=>{const v=t.resolveComponent("KSkeleton"),se=t.resolveComponent("KEmptyState"),N=t.resolveComponent("KButton"),J=t.resolveComponent("KTabs"),W=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",jh,[Ce.value?(t.openBlock(),t.createBlock(v,{key:0,type:"form"})):Nt.value?(t.openBlock(),t.createBlock(se,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(r)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(U.EntityBaseForm),{key:2,"can-submit":V.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(U.SupportedEntityType).Plugin,"error-message":f.errorMessage,"fetch-url":H.value,"form-fields":Ae.value,"is-readonly":f.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ie,"onFetch:error":X[2]||(X[2]=te=>L.$emit("error",te)),"onFetch:success":B,onLoading:X[3]||(X[3]=te=>L.$emit("loading",te))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",Yh)):(t.openBlock(),t.createBlock(Uh,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",Hh,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(N,{key:0,appearance:"tertiary","data-testid":`plugin-${S.value?"edit":"create"}-form-view-configuration`,onClick:X[1]||(X[1]=te=>x())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(N,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${S.value?"edit":"create"}-form-cancel`,disabled:f.isReadonly,onClick:ie},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(N,{appearance:"primary","data-testid":`plugin-${S.value?"edit":"create"}-form-submit`,disabled:!V.value||f.isReadonly,type:"submit",onClick:Ge},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:Ge},null,32),t.createVNode(Lh,{config:e.config,credential:w.value,editing:h.value===t.unref(U.EntityBaseFormType).Edit,"enable-vault-secret-picker":a.enableVaultSecretPicker,"entity-map":D.value,record:j.value||void 0,schema:I.value||{},onLoading:X[0]||(X[0]=te=>m.value=te),onModelUpdated:_},null,8,["config","credential","editing","enable-vault-secret-picker","entity-map","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),t.createVNode(W,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(r)("view_configuration.title"),visible:E.value,onClose:x},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("view_configuration.message")),1),t.createVNode(J,{"data-testid":"form-view-configuration-slideout-tabs",tabs:k.value},{json:t.withCtx(()=>[t.createVNode(t.unref(U.JsonCodeBlock),{config:e.config,"entity-record":Ae.value,"fetcher-url":Q.value,"request-method":a.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(U.YamlCodeBlock),{"entity-record":Ae.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(U.TerraformCodeBlock),{"credential-type":Vt.value,"entity-record":Ae.value,"entity-type":t.unref(U.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-b9589a4b"]]),Kh=["alt","height","src","width"],Sn=t.defineComponent({__name:"PluginIcon",props:{name:{type:String,required:!0},size:{type:Number,default:32,required:!1},alt:{type:String,default:"",required:!1}},setup(e){const n=e,i=t.ref(),a=t.computed(()=>zi(n.name)),o=()=>{const r=new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAMAAABKCk6nAAAAhFBMVEUAAADs+fnr8PTo7fLm7PDl6e7j6+7j6O3i6Ozh5+vp9PTm7PDj6e319fXn7PHj6O739/fn7PDi6e3////o7fLj6Ozt8fbj6u7r7vPi6ezo7fL////n7PHm6/Dl6+/q8PTs8vbu9Pjv9frw9vri6ezv9fnp7/Pt8vfk6u6cpar////e4ePLpSv+AAAAHnRSTlMAKIq93/T6/f7/W8z3GbL4Hr/9AZ39OPFo/Z4FzOeuk05oAAAFJklEQVR4Ae3ThZLjyhWA4SNdWJ9BMy/KA3n/twoXBafWWYb2QPi6Vd9XKGz4q5t4QPNZHDP2n8W/4uT0bJBUZHB2ehL/pPOLy6wQlxfn8bThaJxUajwaxuMm01lSsdl0Eo+YL5LKLebxoOUqqd5qGQ9YD7IHGKzjPptt9gTbzT19n2dv8Pyw8DZ7hG0U1tkrrOM7y0H2CoNlfGO+yp5hNY8vJovsHRaT+GyaPcQ03mkiYvjnNu4za94Ljtn+vd/Efc7+/sf4YJT32L286qjE1ctd3mMUH5yP89D1m46KvLnOQ+PzeO8iD+xuOipzs8sDF/HeZZZuX3dU5/Vtli7jnZMs7fSts/AuSycRcZqlm44q3WTpNCLOsnDdUanrLJxF29zF9zZ3QaXuNuWNJtosvOyo1ssstG0ThZ+Dah3Ea+LHIvmLjoq9KHL+2DYHyanYQc6jDYzACCxwZKGjallog177DwIjMAIjMAIjsMAIjMAIjMAIjMAILDACIzACIzACI7DACIzACIzACIzAAiMwAiMwAiMwAiOwwAiMwAiMwAiMwAIjMAIjMAIjMAILjMAIjMAIjMAIjMACIzACIzACIzACC4zACIzACIzACIzAAiMwAiMwAiMwAguMwAiMwAiMwAgsMAIjMAIjMAIjMAILjMAIjMAIjMAILDACIzACI/DP/6GjGENgBEZgBBYYgREYgREYgRGYJwMjMAIjMAI3TziCMQTmaAIjMAIjMAIjMAILjMAIjMAIjMAITBa6X9CveqD7hWWhDXpNYIERGIERGIERGIEFRmAERmAERuBKCdw2R68VGIERGIERWGAERmAERmAERmCBERiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIEFRmAERmAERuB+EPjt/ui9FRiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgWshcNscvVZgBEZgBEZggREYgREYgREYgQVGYARGYARGYARGYIERGIERGIERGIEFRmAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBBYYgREYgREYgftB4Lf7o/dWYARGYARGYIERGIERGIERGIEFRmAE5kj9GEfkb/EfwwkWGIERGIERGIERWGAERmAERmAERmAEFhiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIERWGAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBEZggREYgREYgREYgQVGYARGYARGYAQWGIERGIERGIERGIEFRmAERmAERmAEFhiBERiBERiBEZh2r3iflPn2B4HvgordPRl4H1RsL7DAfSJw/JCFq45qXWXhh3Yfhb8F1TqIt2/3ZeGf9kGl9j/F997XPcvCdUelrrNwFhGnWbrpqNJNlk4j4iRLu9cdFXq9y9JJvHOZpVuFa+x7m6XLeO8iD+xuOipzs8sDF/He+TgPXb/pqMib6zw0Po8PRnmP3curjkpcvdzlPUYR0UTE8M9t3GfWvBfHjP17v4n7nP39j/HRNOmhaXw2WSS9s5jEF/NV0jOreXxjOUh6ZbCM76yTXllHYZv0yDZKm+dJbzzfxGHhbdIT203cZz1IemCwjgcsV0n1Vst40HyRVG4xj0dMprOkYrPpJB43HI2TSo1Hw3ja+cVlUqHLi/P4J52cng2SigzOTk/iPk08oPksjhn7z+J+/wBSUhUZLUGZBgAAAABJRU5ErkJggg==",typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:$e&&$e.tagName.toUpperCase()==="SCRIPT"&&$e.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;i.value&&i.value.src!==r&&(i.value.src=r)};return(r,s)=>(t.openBlock(),t.createElementBlock("img",{ref_key:"img",ref:i,alt:e.alt,height:e.size,src:a.value,width:e.size,onError:o},null,40,Kh))}});var zh=Object.prototype;function Vo(e){var n=e&&e.constructor,i=typeof n=="function"&&n.prototype||zh;return e===i}function Jh(e,n){return function(i){return e(n(i))}}var Qh=Jh(Object.keys,Object),Xh=Object.prototype,qh=Xh.hasOwnProperty;function Zh(e){if(!Vo(e))return Qh(e);var n=[];for(var i in Object(e))qh.call(e,i)&&i!="constructor"&&n.push(i);return n}var No=typeof global=="object"&&global&&global.Object===Object&&global,Wh=typeof self=="object"&&self&&self.Object===Object&&self,mt=No||Wh||Function("return this")(),xn=mt.Symbol,Do=Object.prototype,_h=Do.hasOwnProperty,$h=Do.toString,an=xn?xn.toStringTag:void 0;function ey(e){var n=_h.call(e,an),i=e[an];try{e[an]=void 0;var a=!0}catch{}var o=$h.call(e);return a&&(n?e[an]=i:delete e[an]),o}var ty=Object.prototype,ny=ty.toString;function iy(e){return ny.call(e)}var ay="[object Null]",oy="[object Undefined]",Po=xn?xn.toStringTag:void 0;function on(e){return e==null?e===void 0?oy:ay:Po&&Po in Object(e)?ey(e):iy(e)}function Lo(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var ry="[object AsyncFunction]",sy="[object Function]",ly="[object GeneratorFunction]",cy="[object Proxy]";function Go(e){if(!Lo(e))return!1;var n=on(e);return n==sy||n==ly||n==ry||n==cy}var si=mt["__core-js_shared__"],Uo=function(){var e=/[^.]+$/.exec(si&&si.keys&&si.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function dy(e){return!!Uo&&Uo in e}var uy=Function.prototype,py=uy.toString;function St(e){if(e!=null){try{return py.call(e)}catch{}try{return e+""}catch{}}return""}var Ay=/[\\^$.*+?()[\]{}|]/g,gy=/^\[object .+?Constructor\]$/,my=Function.prototype,fy=Object.prototype,hy=my.toString,yy=fy.hasOwnProperty,by=RegExp("^"+hy.call(yy).replace(Ay,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ey(e){if(!Lo(e)||dy(e))return!1;var n=Go(e)?by:gy;return n.test(St(e))}function wy(e,n){return e==null?void 0:e[n]}function rn(e,n){var i=wy(e,n);return Ey(i)?i:void 0}var li=rn(mt,"DataView"),ci=rn(mt,"Map"),di=rn(mt,"Promise"),ui=rn(mt,"Set"),pi=rn(mt,"WeakMap"),jo="[object Map]",Cy="[object Object]",Yo="[object Promise]",Ho="[object Set]",Fo="[object WeakMap]",Ko="[object DataView]",By=St(li),ky=St(ci),Iy=St(di),vy=St(ui),Oy=St(pi),xt=on;(li&&xt(new li(new ArrayBuffer(1)))!=Ko||ci&&xt(new ci)!=jo||di&&xt(di.resolve())!=Yo||ui&&xt(new ui)!=Ho||pi&&xt(new pi)!=Fo)&&(xt=function(e){var n=on(e),i=n==Cy?e.constructor:void 0,a=i?St(i):"";if(a)switch(a){case By:return Ko;case ky:return jo;case Iy:return Yo;case vy:return Ho;case Oy:return Fo}return n});function Ai(e){return e!=null&&typeof e=="object"}var My="[object Arguments]";function zo(e){return Ai(e)&&on(e)==My}var Jo=Object.prototype,Ry=Jo.hasOwnProperty,Ty=Jo.propertyIsEnumerable,Sy=zo(function(){return arguments}())?zo:function(e){return Ai(e)&&Ry.call(e,"callee")&&!Ty.call(e,"callee")},xy=Array.isArray,Vy=9007199254740991;function Qo(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Vy}function Ny(e){return e!=null&&Qo(e.length)&&!Go(e)}function Dy(){return!1}var Xo=typeof $=="object"&&$&&!$.nodeType&&$,qo=Xo&&typeof module=="object"&&module&&!module.nodeType&&module,Py=qo&&qo.exports===Xo,Zo=Py?mt.Buffer:void 0,Ly=Zo?Zo.isBuffer:void 0,Gy=Ly||Dy,Uy="[object Arguments]",jy="[object Array]",Yy="[object Boolean]",Hy="[object Date]",Fy="[object Error]",Ky="[object Function]",zy="[object Map]",Jy="[object Number]",Qy="[object Object]",Xy="[object RegExp]",qy="[object Set]",Zy="[object String]",Wy="[object WeakMap]",_y="[object ArrayBuffer]",$y="[object DataView]",eb="[object Float32Array]",tb="[object Float64Array]",nb="[object Int8Array]",ib="[object Int16Array]",ab="[object Int32Array]",ob="[object Uint8Array]",rb="[object Uint8ClampedArray]",sb="[object Uint16Array]",lb="[object Uint32Array]",ye={};ye[eb]=ye[tb]=ye[nb]=ye[ib]=ye[ab]=ye[ob]=ye[rb]=ye[sb]=ye[lb]=!0,ye[Uy]=ye[jy]=ye[_y]=ye[Yy]=ye[$y]=ye[Hy]=ye[Fy]=ye[Ky]=ye[zy]=ye[Jy]=ye[Qy]=ye[Xy]=ye[qy]=ye[Zy]=ye[Wy]=!1;function cb(e){return Ai(e)&&Qo(e.length)&&!!ye[on(e)]}function db(e){return function(n){return e(n)}}var Wo=typeof $=="object"&&$&&!$.nodeType&&$,sn=Wo&&typeof module=="object"&&module&&!module.nodeType&&module,ub=sn&&sn.exports===Wo,gi=ub&&No.process,_o=function(){try{var e=sn&&sn.require&&sn.require("util").types;return e||gi&&gi.binding&&gi.binding("util")}catch{}}(),$o=_o&&_o.isTypedArray,pb=$o?db($o):cb,Ab="[object Map]",gb="[object Set]",mb=Object.prototype,fb=mb.hasOwnProperty;function er(e){if(e==null)return!0;if(Ny(e)&&(xy(e)||typeof e=="string"||typeof e.splice=="function"||Gy(e)||pb(e)||Sy(e)))return!e.length;var n=xt(e);if(n==Ab||n==gb)return!e.size;if(Vo(e))return!Zh(e).length;for(var i in e)if(fb.call(e,i))return!1;return!0}const hb="#00abd2",yb="16px",bb="24px",Eb={class:"kong-ui-entities-plugins-list"},wb={class:"button-row"},Cb={class:"empty-state-icon-gateway"},Bb={class:"name-cell-wrapper"},kb={class:"info-wrapper"},Ib={key:0,class:"info-name"},vb={key:1,class:"info-name"},Ob={key:2,class:"info-type"},Mb={key:1},Rb=_e(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.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},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1},enableV2EmptyStates:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var v,se;const i=ke.usePluginMetaData(),a=n,o=e,{i18n:{t:r}}=ke.useI18n(),s=Ft.useRouter(),{axiosInstance:l}=U.useAxios((v=o.config)==null?void 0:v.axiosRequestConfig),{hasRecords:d,handleStateChange:p}=U.useTableState(()=>m.value),u=t.computed(()=>d.value&&o.config.app==="konnect"),A=t.computed(()=>!o.enableV2EmptyStates&&o.config.app==="konnect"),g=t.computed(()=>!!o.config.entityId),E=t.computed(()=>{var N;return((N=o.config)==null?void 0:N.entityType)==="consumers"}),S=t.computed(()=>{var N;return((N=o.config)==null?void 0:N.entityType)==="consumer_groups"}),h=o.config.app==="konnect"||U.useGatewayFeatureSupported({gatewayInfo:o.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),I=t.computed(()=>o.config.app!=="kongManager"||!!o.config.disableSorting),w={name:{label:r("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(se=o.config)!=null&&se.entityId||(w.appliedTo={label:r("plugins.list.table_headers.applied_to"),sortable:!1}),w.enabled={label:r("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(w.ordering={label:r("plugins.list.table_headers.ordering"),sortable:!0}),w.tags={label:r("plugins.list.table_headers.tags"),sortable:!1};const j=w,y=t.computed(()=>{var J,W,te,de;let N=o.config.entityType?`${o.config.apiBaseUrl}${Ie.list[o.config.app].forEntity}`:`${o.config.apiBaseUrl}${Ie.list[o.config.app].all}`;return o.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((J=o.config)==null?void 0:J.controlPlaneId)||""):o.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(W=o.config)!=null&&W.workspace?`/${o.config.workspace}`:"")),N.replace(/{entityType}/gi,((te=o.config)==null?void 0:te.entityType)||"").replace(/{entityId}/gi,((de=o.config)==null?void 0:de.entityId)||"")}),m=t.ref(""),b=t.computed(()=>o.config.app==="konnect"||o.config.isExactMatch?{isExactMatch:!0,fields:{name:w.name,id:{label:r("plugins.list.table_headers.id"),sortable:!0}},placeholder:r(`search.placeholder.${o.config.isExactMatch?"exact":o.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...w.enabled,label:r("search.filter.field.enabled")},name:w.name,instance_name:{label:r("plugins.list.table_headers.instance_name"),searchable:!0}},schema:o.config.filterSchema}),{fetcher:f,fetcherState:k,fetcherCacheKey:O}=U.useFetcher({...o.config,cacheIdentifier:o.cacheIdentifier},y.value),H=()=>{m.value=""},x=()=>{O.value++},D=t.ref(null),F=N=>{var W,te,de,re;const J=[];return((W=N.route)!=null&&W.id||N.route_id)&&J.push({type:"route",badgeText:r("plugins.list.table_headers.applied_to_badges.route")}),((te=N.service)!=null&&te.id||N.service_id)&&J.push({type:"service",badgeText:r("plugins.list.table_headers.applied_to_badges.service")}),((de=N.consumer)!=null&&de.id||N.consumer_id)&&J.push({type:"consumer",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer")}),((re=N.consumer_group)!=null&&re.id||N.consumer_group_id)&&J.push({type:"consumer_group",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer_group")}),J.length?J:[{type:null,badgeText:r("plugins.list.table_headers.applied_to_badges.global")}]},z=async(N,J)=>{var W;return N===null?!1:await((W=o.canRetrieveScopedEntity)==null?void 0:W.call(o,N,J.id))},Z=(N,J)=>{var te,de,re,G,P;let W=null;switch(N){case"route":W=(te=J.route)==null?void 0:te.id;break;case"service":W=(de=J.service)==null?void 0:de.id;break;case"consumer":W=(re=J.consumer)==null?void 0:re.id;break;case"consumer_group":W=(G=J.consumer_group)==null?void 0:G.id;break}W&&((P=o.config)!=null&&P.getScopedEntityViewRoute)&&s.push(o.config.getScopedEntityViewRoute(N,W))},ee=t.ref(!1),K=t.ref(null),T=t.computed(()=>{const N={action:"disable",id:"",name:""};if(K.value){const{enabled:J,id:W,name:te}=K.value;N.action=J?"disable":"enable",N.id=W,N.name=i.getDisplayName(te)||W}return N}),V=N=>{ee.value=!0,K.value=N},Y=()=>{ee.value=!1,K.value=null},C=async()=>{var te,de,re,G,P,q,Be,Ve;if(!await((te=o.canEdit)==null?void 0:te.call(o,K.value))||!K.value)return;let J=`${o.config.apiBaseUrl}${(P=Ie.item[o.config.app])==null?void 0:P[(de=o.config)!=null&&de.entityType?"forEntity":"all"].replace(/{entityType}/gi,((re=o.config)==null?void 0:re.entityType)||"").replace(/{entityId}/gi,((G=o.config)==null?void 0:G.entityId)||"")}`.replace(/{id}/gi,K.value.id||"");o.config.app==="konnect"?J=J.replace(/{controlPlaneId}/gi,((q=o.config)==null?void 0:q.controlPlaneId)||""):o.config.app==="kongManager"&&(J=J.replace(/\/{workspace}/gi,(Be=o.config)!=null&&Be.workspace?`/${o.config.workspace}`:""));const W=!K.value.enabled;try{const{data:Fe}=((Ve=o.config)==null?void 0:Ve.app)==="konnect"?await l.put(J,{...K.value,enabled:W},{timeout:12e4}):await l.patch(J,{...K.value,enabled:W},{timeout:12e4});a("toggle-enabled",W,Fe),K.value.enabled=W}catch(Fe){a("error",Fe)}},B=(N,J)=>{const W=N.id;if(!J(W)){a("copy:error",{entity:N,field:"id",message:r("errors.copy")});return}a("copy:success",{entity:N,field:"id",message:r("copy.success",{val:W})})},M=(N,J)=>{const W=JSON.stringify(N);if(!J(W)){a("copy:error",{entity:N,message:r("errors.copy")});return}a("copy:success",{entity:N,message:r("copy.success_brief")})},_=async N=>{var W;await((W=o.canRetrieve)==null?void 0:W.call(o,N))&&s.push(o.config.getViewRoute(N))},ie=N=>({label:r("actions.view"),to:o.config.getViewRoute(N)}),ne=N=>({label:r("actions.edit"),to:o.config.getEditRoute(N)}),Q=N=>({label:r("actions.configure_dynamic_ordering"),to:o.config.getConfigureDynamicOrderingRoute(N)}),Re=t.ref(void 0),Ae=t.ref(!1),Ge=t.ref(!1),ft=t.ref(""),Vt=U.useDeleteUrlBuilder(o.config,y.value),Ce=N=>{Re.value=N,Ae.value=!0},Nt=()=>{Ae.value=!1},ce=async()=>{var N,J,W;if((N=Re.value)!=null&&N.id){Ge.value=!0;try{await l.delete(Vt(Re.value.id)),Ge.value=!1,Ae.value=!1,O.value++,a("delete:success",Re.value)}catch(te){ft.value=((W=(J=te.response)==null?void 0:J.data)==null?void 0:W.message)||te.message||r("errors.delete"),a("error",te)}finally{Ge.value=!1}}},L=()=>{s.push(o.config.createRoute)};t.watch(k,N=>{var J,W,te;if(N.status===U.FetcherStatus.Error){D.value={title:r("errors.general")},(te=(W=(J=N.error)==null?void 0:J.response)==null?void 0:W.data)!=null&&te.message&&(D.value.message=N.error.response.data.message),a("error",N.error);return}D.value=null});const X=t.ref({ctaPath:o.config.createRoute,ctaText:void 0,message:`${r("plugins.list.empty_state.description")}${o.config.additionMessageForEmptyState?` ${o.config.additionMessageForEmptyState}`:""}`,title:r("plugins.title")});return t.onBeforeMount(async()=>{await o.canCreate()&&(X.value.title=r("plugins.list.empty_state.title"),X.value.ctaText=r("actions.create"))}),(N,J)=>{const W=t.resolveComponent("KButton"),te=t.resolveComponent("KBadge"),de=t.resolveComponent("KTruncate"),re=t.resolveComponent("KInputSwitch"),G=t.resolveComponent("KDropdownItem"),P=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",Eb,[t.createVNode(t.unref(U.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":I.value,"empty-state-options":X.value,"enable-entity-actions":"","error-message":D.value,fetcher:t.unref(f),"fetcher-cache-key":t.unref(O),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:m.value,"table-headers":t.unref(j),title:e.title,"title-tag":e.titleTag,onClearSearchInput:H,"onClick:row":J[5]||(J[5]=q=>_(q)),onSort:x,onState:t.unref(p)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(U.EntityFilter),{modelValue:m.value,"onUpdate:modelValue":J[0]||(J[0]=q=>m.value=q),config:b.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",wb,[!g.value&&u.value?(t.openBlock(),t.createBlock(W,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:J[1]||(J[1]=q=>N.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(je.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(W,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(je.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(r)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:q})=>[t.createElementVNode("div",Bb,[t.createVNode(Sn,{class:"plugin-icon",name:q.name,size:24},null,8,["name"]),t.createElementVNode("div",kb,[q.instance_name?(t.openBlock(),t.createElementBlock("span",Ib,t.toDisplayString(q.instance_name),1)):(t.openBlock(),t.createElementBlock("span",vb,t.toDisplayString(t.unref(i).getDisplayName(q.name)),1)),q.instance_name?(t.openBlock(),t.createElementBlock("span",Ob,t.toDisplayString(t.unref(i).getDisplayName(q.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:q})=>[F(q).length>0?(t.openBlock(),t.createBlock(de,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(F(q),Be=>(t.openBlock(),t.createBlock(t.unref(U.PermissionsWrapper),{key:Be.badgeText,"auth-function":()=>z(Be.type,q),"force-show":""},{default:t.withCtx(({isAllowed:Ve})=>[t.createVNode(te,{class:t.normalizeClass(Ve||"disabled"),onClick:t.withModifiers(Fe=>Ve&&Be.type&&Z(Be.type,q),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(Be.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",Mb,"-"))]),enabled:t.withCtx(({row:q})=>[t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(q)&&await e.canToggle(q)),"force-show":""},{default:t.withCtx(({isAllowed:Be})=>{var Ve,Fe;return[t.createElementVNode("div",{onClick:J[4]||(J[4]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(re,{disabled:!Be,"disabled-tooltip-text":!Be&&((Fe=(Ve=e.config).getToggleDisabledTooltip)==null?void 0:Fe.call(Ve,q))||void 0,"model-value":q.enabled,onClick:t.withModifiers(Ht=>Be&&V(q),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:q})=>[t.createVNode(te,{appearance:t.unref(er)(q)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(er)(q)?t.unref(r)("plugins.list.table_headers.ordering_badge.static"):t.unref(r)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:q})=>[t.createVNode(t.unref(U.TableTags),{tags:q},null,8,["tags"])]),actions:t.withCtx(({row:q})=>[t.createVNode(P,null,{default:t.withCtx(({copyToClipboard:Be})=>[t.createVNode(G,{"data-testid":"action-entity-copy-id",onClick:Ve=>B(q,Be)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(P,null,{default:t.withCtx(({copyToClipboard:Be})=>[t.createVNode(G,{"data-testid":"action-entity-copy-json",onClick:Ve=>M(q,Be)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(q)},{default:t.withCtx(()=>[t.createVNode(G,{"data-testid":"action-entity-view","has-divider":"",item:ie(q)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":()=>e.canEdit(q)},{default:t.withCtx(()=>[t.createVNode(G,{"data-testid":"action-entity-edit",item:ne(q)},null,8,["item"])]),_:2},1032,["auth-function"]),!E.value&&!S.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(U.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(q)},{default:t.withCtx(()=>[Q(q)?(t.openBlock(),t.createBlock(G,{key:0,"data-testid":"action-entity-config-dyn-order",item:Q(q)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":()=>e.canDelete(q)},{default:t.withCtx(()=>[t.createVNode(G,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:Be=>Ce(q)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!t.unref(d)&&A.value?{name:"outside-actions",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createVNode(W,{appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:J[2]||(J[2]=q=>N.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(je.BookIcon),{decorative:""})]),_:1})],8,["disabled"]))]),key:"0"}:void 0,e.enableV2EmptyStates&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>[t.createVNode(t.unref(U.EntityEmptyState),{"action-button-text":t.unref(r)("plugins.list.empty_state_v2.create_cta"),appearance:"secondary","can-create":()=>e.canCreate(),description:t.unref(r)("plugins.list.empty_state_v2.description"),"learn-more":e.config.app==="konnect",title:t.unref(r)("plugins.list.empty_state_v2.title"),"onClick:create":L,"onClick:learnMore":J[3]||(J[3]=q=>N.$emit("click:learn-more"))},{image:t.withCtx(()=>[t.createElementVNode("div",Cb,[t.createVNode(t.unref(je.PlugIcon),{color:t.unref(hb),size:t.unref(bb)},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","title","title-tag","onState"]),t.createVNode(t.unref(U.EntityToggleModal),{action:T.value.action,"entity-id":T.value.id,"entity-name":T.value.name,"entity-type":t.unref(r)("glossary.plugin"),"on-confirm":C,visible:ee.value,onCancel:Y,onProceed:Y},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(U.EntityDeleteModal),{"action-pending":Ge.value,description:t.unref(r)("delete.description"),"entity-name":Re.value&&(Re.value.instance_name||Re.value.name||Re.value.id),"entity-type":t.unref(U.EntityTypes).Plugin,error:ft.value,title:t.unref(r)("delete.title"),visible:Ae.value,onCancel:Nt,onProceed:ce},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-fc1491f5"]]),Tb={class:"plugin-select-card-wrapper"},Sb=["data-testid"],xb={class:"plugin-card-header"},Vb={class:"plugin-card-title"},Nb={key:0,class:"plugin-card-actions"},Db=["data-testid","title"],Pb={key:0,class:"plugin-card-text"},Lb={key:0},Gb=["title"],mi=_e(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const i=n,a=e,o=Ft.useRouter(),{i18n:{t:r}}=ke.useI18n(),s=t.computed(()=>a.config.app==="konnect"?a.config.controlPlaneId:""),l=t.computed(()=>!!(!a.plugin.available||a.plugin.disabledMessage)),d=t.computed(()=>!!(E.value&&!g.value&&a.navigateOnClick&&s.value&&(a.canDeleteCustomPlugin||a.canEditCustomPlugin))),p=()=>{o.push(a.config.getCreateRoute(a.plugin.id))},u=()=>{a.navigateOnClick?p():A()},A=()=>{i("plugin-clicked",a.plugin)},g=t.computed(()=>a.plugin.id==="custom-plugin-create"),E=t.computed(()=>a.config.app==="konnect"&&a.plugin.group===R.CUSTOM_PLUGINS),S=()=>{a.config.app==="konnect"&&i("custom-plugin-delete")},h=(w,j)=>{const y=a.config;a.config.app==="konnect"&&typeof y.getCustomEditRoute=="function"&&y.getCustomEditRoute&&o.push(y.getCustomEditRoute(w,j))},I=()=>{if(!l.value&&a.config.app==="konnect"){const w=a.config;g.value&&w.createCustomRoute?o.push(w.createCustomRoute):E.value&&p()}};return(w,j)=>{const y=t.resolveComponent("KButton"),m=t.resolveComponent("KDropdownItem"),b=t.resolveComponent("KDropdownMenu"),f=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",Tb,[t.createVNode(f,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:l.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:j[1]||(j[1]=k=>l.value||E.value?void 0:u())},[t.createElementVNode("div",xb,[t.createElementVNode("div",Vb,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!E.value})},t.toDisplayString(e.plugin.name),3)]),d.value?(t.openBlock(),t.createElementBlock("div",Nb,[t.createVNode(b,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(y,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(je.MoreIcon),{size:t.unref(yb)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(m,{key:0,"data-testid":"edit-plugin-schema",onClick:j[0]||(j[0]=t.withModifiers(k=>h(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(m,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(S,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":E.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(r)("plugins.select.unavailable_tooltip"),onClick:I},[t.createVNode(Sn,{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.imageName||e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||E.value&&!g.value?(t.openBlock(),t.createElementBlock("div",Pb,[E.value&&!g.value?(t.openBlock(),t.createElementBlock("p",Lb,t.toDisplayString(t.unref(r)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,Gb)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,Db),t.createElementVNode("div",{class:"plugin-card-footer",onClick:I},t.toDisplayString(g.value?t.unref(r)("actions.create_custom"):e.plugin.exists?t.unref(r)("actions.enabled"):t.unref(r)("actions.enable")),1)],10,Sb)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-b6a2ebc6"]]),Ub=_e(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var S;const i=e,a=n,{i18nT:o,i18n:{t:r}}=ke.useI18n(),{getMessageFromError:s}=U.useErrors(),{axiosInstance:l}=U.useAxios((S=i.config)==null?void 0:S.axiosRequestConfig),d=t.computed(()=>{var h;return A.value?r("delete.plugin_schema_in_use_title"):r("delete.title",{name:((h=i.plugin)==null?void 0:h.name)||r("delete.custom_plugin")})}),p=t.ref(!1),u=t.ref(""),A=t.ref(!1),g=t.computed(()=>{if(i.config.app==="konnect"){const h=i.plugin.customPluginType==="streaming"?Ie.select[i.config.app].streamingCustomPluginItem:Ie.select[i.config.app].schemaCustomPluginItem;let I=`${i.config.apiBaseUrl}${h}`;return I=I.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""),I=I.replace(/{pluginId}/gi,i.plugin.id),I}return null}),E=async()=>{var h,I,w,j;if(p.value=!0,u.value="",!(!((h=i.plugin)!=null&&h.name)||((I=i.config)==null?void 0:I.app)!=="konnect"))try{g.value&&await l.delete(g.value),a("proceed")}catch(y){const{response:m}=y;(m==null?void 0:m.status)===400&&((j=(w=m.data)==null?void 0:w.message)!=null&&j.includes("plugin schema is currently in use"))?A.value=!0:u.value=s(y)}finally{p.value=!1}};return(h,I)=>{const w=t.resolveComponent("KButton"),j=t.resolveComponent("KModal");return!A.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(U.EntityDeleteModal),{key:0,"action-pending":p.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(r)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(U.EntityTypes).Plugin,error:u.value,"need-confirm":"",title:d.value,visible:"",onCancel:I[0]||(I[0]=y=>h.$emit("closed")),onProceed:E},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(j,{key:1,"action-button-disabled":p.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:d.value,visible:"",onCancel:I[2]||(I[2]=y=>h.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(o),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(w,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:I[1]||(I[1]=y=>h.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),jb={class:"custom-plugins-grid"},Yb={class:"empty-state-title"},Hb={class:"empty-state-description"},fi=310,Fb=_e(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=ke.useI18n(),{getTallestPluginCardHeight:r,getToggleVisibility:s}=ke.usePluginHelpers(),l=t.ref(!0),d=b=>{a("plugin-clicked",b)},p=t.computed(()=>{if(i.config.app==="kongManager")return[];const b=JSON.parse(JSON.stringify(i.pluginList))[R.CUSTOM_PLUGINS]||[];return i.canCreateCustomPlugin&&i.navigateOnClick&&i.config.createCustomRoute?[{id:"custom-plugin-create",name:o("plugins.select.tabs.custom.create.name"),available:!0,group:R.CUSTOM_PLUGINS,description:o("plugins.select.tabs.custom.create.description")}].concat(b):b}),u=t.ref(!1),A=t.ref(null),g=b=>{u.value=!0,A.value={id:b.id,name:b.name,customPluginType:b.customPluginType}},E=b=>{var f;b&&(a("revalidate"),a("delete:success",((f=A.value)==null?void 0:f.name)||"")),u.value=!1,A.value=null},S=t.ref(fi),h=t.ref(null),I=t.ref(null),w=t.computed(()=>l.value?{overflowY:"hidden",maxHeight:`${S.value}px`}:{}),j=t.ref(!1),y=()=>{S.value=Math.max(r(I.value),fi),m()},m=()=>{var b,f;(b=I.value)!=null&&b.length&&(j.value=s(h.value,(f=I.value)==null?void 0:f.length))};return t.onMounted(async()=>{await t.nextTick(),S.value=Math.max(r(I.value),fi),m(),window==null||window.addEventListener("resize",y)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",y)}),(b,f)=>{const k=t.resolveComponent("KEmptyState"),O=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",jb,[p.value.length?(t.openBlock(),t.createBlock(O,{key:1,modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=H=>l.value=H),class:"custom-plugins-collapse","data-testid":`${t.unref(R).CUSTOM_PLUGINS}-collapse`,title:t.unref(R).CUSTOM_PLUGINS,"trigger-label":l.value?t.unref(o)("plugins.select.view_more"):t.unref(o)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:h,class:"plugin-card-container",style:t.normalizeStyle(w.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(H,x)=>(t.openBlock(),t.createBlock(mi,{key:`plugin-card-${x}`,ref_for:!0,ref_key:"pluginCardRef",ref:I,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:H,onCustomPluginDelete:D=>g(H),onPluginClicked:d},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[j.value?void 0:{name:"trigger",fn:t.withCtx(()=>[f[2]||(f[2]=t.createTextVNode("   "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(k,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",Yb,t.toDisplayString(t.unref(o)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",Hb,t.toDisplayString(t.unref(o)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),u.value&&A.value?(t.openBlock(),t.createBlock(Ub,{key:2,config:e.config,plugin:A.value,onClosed:E,onProceed:f[1]||(f[1]=H=>E(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-9703ee67"]]),hi=310,tr=_e(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const i=t.useModel(e,"modelValue"),a=e,o=n,{i18n:{t:r}}=ke.useI18n(),{getTallestPluginCardHeight:s,getToggleVisibility:l}=ke.usePluginHelpers(),d=t.ref(hi),p=t.ref(null),u=t.ref(null),A=t.computed(()=>i.value?{overflowY:"hidden",maxHeight:`${d.value}px`}:{}),g=t.ref(!1),E=()=>{d.value=Math.max(s(u.value),hi),S()},S=()=>{var h,I;(h=u.value)!=null&&h.length&&(g.value=l(p.value,(I=u.value)==null?void 0:I.length))};return t.onMounted(async()=>{await t.nextTick(),d.value=Math.max(s(u.value),hi),S(),window==null||window.addEventListener("resize",E)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",E)}),(h,I)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(w,{modelValue:i.value,"onUpdate:modelValue":I[0]||(I[0]=j=>i.value=j),class:"plugins-collapse","data-testid":`${a.name}-collapse`,title:a.name,"trigger-label":i.value?t.unref(r)("plugins.select.view_more"):t.unref(r)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:p,class:"plugin-card-container",style:t.normalizeStyle(A.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.plugins,j=>(t.openBlock(),t.createBlock(mi,{key:`plugin-card-${j.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:u,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:j,onPluginClicked:y=>o("plugin-clicked",j)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[g.value?void 0:{name:"trigger",fn:t.withCtx(()=>[I[1]||(I[1]=t.createTextVNode("   "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),Kb={class:"plugin-select-grid"},zb={class:"empty-state-title"},Jb={class:"empty-state-description"},yi=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=ke.useI18n(),r=t.ref(!1),s=t.ref(Gi),l=p=>{a("plugin-clicked",p)},d=t.computed(()=>{const p=JSON.parse(JSON.stringify(i.pluginList));return i.config.app==="konnect"&&delete p[R.CUSTOM_PLUGINS],p});return(p,u)=>{const A=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",Kb,[Object.keys(d.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(A,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",zb,t.toDisplayString(t.unref(o)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",Jb,t.toDisplayString(t.unref(o)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!i.hideHighlightedPlugins&&i.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(tr,{key:1,modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=g=>r.value=g),config:e.config,name:i.highlightedPluginsTitle||t.unref(o)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:i.highlightedPlugins,onPluginClicked:u[1]||(u[1]=g=>l(g))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Li),g=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[d.value[g]?(t.openBlock(),t.createElementBlock("div",{key:g},[t.createVNode(tr,{modelValue:s.value[g],"onUpdate:modelValue":E=>s.value[g]=E,config:e.config,name:g,"navigate-on-click":e.navigateOnClick,plugins:d.value[g]||[],onPluginClicked:u[2]||(u[2]=E=>l(E))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):t.createCommentVNode("",!0)],64))),256))])}}}),Qb={class:"kong-ui-entities-plugin-select-form"},Xb={class:"plugins-filter-input-container"},qb={key:0},Zb={key:3,"aria-live":"polite",class:"plugins-results-container"},Wb={"data-testid":"kong-tab"},_b={class:"tab-description"},$b={"data-testid":"custom-tab"},eE={class:"tab-description"},tE=_e(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var Y;const i=e,a=n,o=Ft.useRoute(),r=Ft.useRouter(),{i18n:{t:s}}=ke.useI18n(),{pluginMetaData:l}=ke.usePluginMetaData(),{getMessageFromError:d}=U.useErrors(),{sortAlpha:p,objectsAreEqual:u}=U.useHelpers(),A=t.ref(""),g=t.ref(!0),E=t.ref(!1),S=t.ref(""),h=t.ref([]),I=t.ref([]),w=t.ref({}),j=t.ref([]),{axiosInstance:y}=U.useAxios((Y=i.config)==null?void 0:Y.axiosRequestConfig),m=t.computed(()=>w.value?Object.entries(w.value).filter(([C])=>C!==R.CUSTOM_PLUGINS).reduce((C,[,B])=>{for(const M of B)C[M.id]=M;return C},{}):{}),b=t.computed(()=>{var M;if(!w.value)return{};const C=A.value.toLowerCase(),B=JSON.parse(JSON.stringify(w.value));for(const _ in w.value){const ie=((M=w.value[_])==null?void 0:M.filter(ne=>ne.name.toLowerCase().includes(C)||ne.id.toLowerCase().includes(C)||ne.group.toLowerCase().includes(C)))||[];ie.length?B[_]=ie:delete B[_]}return B}),f=t.computed(()=>i.highlightedPluginIds.reduce((C,B)=>{const M=m.value[B];return M&&C.push(M),C},[])),k=t.computed(()=>Object.keys(b.value).length>0),O=t.computed(()=>Object.keys(w.value).length>0&&!k.value),H=t.computed(()=>i.config.app==="konnect"?[{hash:"#kong",title:s("plugins.select.tabs.kong.title")},{hash:"#custom",title:s("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(i.customPluginSupport)}]:[]),x=t.computed(()=>{var B;let C=H.value.length&&((o==null?void 0:o.hash)||((B=H.value[0])==null?void 0:B.hash))||"";return C==="#custom"&&["none","disabled"].includes(i.customPluginSupport)&&(C="#kong"),C}),D=()=>[...new Set([...Object.keys({...i.availableOnServer?{}:l}),...h.value])].filter(C=>!i.ignoredPlugins.includes(C)).filter(C=>i.config.entityType&&(i.config.entityType==="services"&&l[C]&&!l[C].scope.includes(c.SERVICE)||i.config.entityType==="routes"&&l[C]&&!l[C].scope.includes(c.ROUTE)||i.config.entityType==="consumer_groups"&&l[C]&&!l[C].scope.includes(c.CONSUMER_GROUP)||i.config.entityType==="consumers"&&l[C]&&!l[C].scope.includes(c.CONSUMER))?!1:C).reduce((C,B)=>{var Q;const M=l[B]&&l[B].name||B,_={...l[B],id:B,name:M,available:h.value.includes(B),disabledMessage:"",group:((Q=l[B])==null?void 0:Q.group)||R.CUSTOM_PLUGINS};_.group===R.CUSTOM_PLUGINS&&(_.customPluginType=I.value.find(Re=>Re.name===B)?"streaming":"schema"),i.disabledPlugins&&(_.disabledMessage=i.disabledPlugins[B]);const ie=_.group||s("plugins.select.misc_plugins");let ne=C[ie];return ne||(ne=[]),ne.push(_),ne.sort(p("name")),C[ie]=ne,C},{}),F=t.computed(()=>{var B;let C=`${i.config.apiBaseUrl}${Ie.select[i.config.app].availablePlugins}`;return i.config.app==="konnect"?C=C.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&(C=((B=i.config.gatewayInfo)==null?void 0:B.edition)==="community"?`${i.config.apiBaseUrl}${Ie.select[i.config.app].availablePluginsForOss}`:C.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),C}),z=t.computed(()=>{if(i.config.app==="konnect"&&i.customPluginSupport==="streaming"){let C=`${i.config.apiBaseUrl}${Ie.select[i.config.app].streamingCustomPlugins}`;return C=C.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""),C}return null}),Z=t.computed(()=>{if(i.config.entityType&&i.config.entityId){let C=`${i.config.apiBaseUrl}${Ie.list[i.config.app].forEntity}`;return i.config.app==="konnect"?C=C.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&(C=C.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),C.replace(/{entityType}/gi,i.config.entityType||"").replace(/{entityId}/gi,i.config.entityId||"")}return""}),ee=C=>{r.replace({hash:C,query:o.query})};t.watch(()=>i.disabledPlugins,(C,B)=>{!u(C,B)&&!g.value&&(w.value=D())}),t.watch(()=>i.ignoredPlugins,(C,B)=>{!u(C,B)&&!g.value&&(w.value=D())}),t.watch(g,C=>{a("loading",C)});const K=t.ref(!1),T=t.ref(!1),V=t.ref(!1);return t.onBeforeMount(async()=>{K.value=await i.canCreateCustomPlugin(),T.value=await i.canEditCustomPlugin(),V.value=await i.canDeleteCustomPlugin()}),t.onMounted(async()=>{try{const{data:C}=await y.get(F.value);if(i.config.app==="konnect"){const{names:B}=C;if(h.value=B||[],z.value){const{data:M}=await y.get(z.value);I.value=M.data||[]}}else if(i.config.app==="kongManager"){const{plugins:{available_on_server:B}}=C;h.value=B?Object.keys(B):[]}}catch(C){E.value=!0,S.value=d(C)}if(Z.value)try{const{data:{data:C}}=await y.get(Z.value);if(C!=null&&C.length){const B=C.reduce((M,_)=>(_.name&&M.push(_.name),M),[]);j.value=j.value.concat(B)}}catch{}E.value||(w.value=D()),g.value=!1}),(C,B)=>{const M=t.resolveComponent("KInput"),_=t.resolveComponent("KSkeletonBox"),ie=t.resolveComponent("KSkeleton"),ne=t.resolveComponent("KEmptyState"),Q=t.resolveComponent("KTooltip"),Re=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",Qb,[t.createElementVNode("div",Xb,[t.createVNode(M,{modelValue:A.value,"onUpdate:modelValue":B[0]||(B[0]=Ae=>A.value=Ae),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(s)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),g.value?(t.openBlock(),t.createElementBlock("section",qb,[t.createVNode(_,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(ie,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):E.value?(t.openBlock(),t.createBlock(ne,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(S.value),1)]),_:1})):O.value&&A.value?(t.openBlock(),t.createBlock(ne,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(s)("search.no_results",{filter:A.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",Zb,[H.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(Re,{key:0,modelValue:x.value,"onUpdate:modelValue":B[5]||(B[5]=Ae=>x.value=Ae),"data-testid":"plugins-tabs",tabs:H.value,onChange:ee},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",Wb,[t.createElementVNode("p",_b,t.toDisplayString(t.unref(s)("plugins.select.tabs.kong.description")),1),t.createVNode(yi,{config:e.config,"hide-highlighted-plugins":A.value.length>0,"highlighted-plugins":f.value,"highlighted-plugins-title":i.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":b.value,onPluginClicked:B[1]||(B[1]=Ae=>C.$emit("plugin-clicked",Ae))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",$b,[t.createElementVNode("p",eE,t.toDisplayString(t.unref(s)("plugins.select.tabs.custom.description")),1),t.createVNode(Fb,{"can-create-custom-plugin":K.value,"can-delete-custom-plugin":V.value,"can-edit-custom-plugin":T.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":b.value,"onDelete:success":B[2]||(B[2]=Ae=>C.$emit("delete-custom:success",Ae)),onPluginClicked:B[3]||(B[3]=Ae=>C.$emit("plugin-clicked",Ae)),onRevalidate:B[4]||(B[4]=()=>w.value=D())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(Q,{"max-width":"300",text:t.unref(s)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(yi,{key:1,config:e.config,"hide-highlighted-plugins":A.value.length>0,"highlighted-plugins":f.value,"highlighted-plugins-title":i.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":b.value,onPluginClicked:B[6]||(B[6]=Ae=>C.$emit("plugin-clicked",Ae))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-429bc3e0"]]),nE={class:"kong-ui-entity-plugin-config-card"},iE={class:"name-cell-wrapper"},aE={class:"info-name"},oE={key:0},rE={key:0},sE={key:0},lE={key:0},bi="config",cE=_e(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var j;const i=n,a=e,{i18n:{t:o}}=ke.useI18n(),r=ke.usePluginMetaData(),{setFieldType:s}=ke.usePluginHelpers(),{getPropValue:l}=U.useHelpers(),d=t.computed(()=>{var y;return(y=Ie.item[a.config.app])==null?void 0:y[a.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,a.scopedEntityType).replace(/{entityId}/gi,a.scopedEntityId)}),p=t.computed(()=>{var b,f;const y={},m=((b=h.value)==null?void 0:b.fields)||[];for(let k=0;k<m.length;k++){const O=h.value.fields[k],H=(f=Object.keys(O))==null?void 0:f[0];s(y,H,O[H])}return{...y,instance_name:{section:U.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:o("plugins.fields.consumer"),section:U.ConfigurationSchemaSection.Basic,order:6},route:{label:o("plugins.fields.route"),section:U.ConfigurationSchemaSection.Basic,order:6},service:{label:o("plugins.fields.service"),section:U.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:o("plugins.fields.consumer_group"),section:U.ConfigurationSchemaSection.Basic,order:6},protocols:{type:U.ConfigurationSchemaType.BadgeTag,section:U.ConfigurationSchemaSection.Basic,order:7}}}),u=t.computed(()=>{var m,b,f;if(!((m=h.value)!=null&&m.fields))return[];const y=(b=h.value.fields)==null?void 0:b.find(k=>{var H;return((H=Object.keys(k))==null?void 0:H[0])===bi});return((f=y==null?void 0:y[bi])==null?void 0:f.fields)||[]}),A=t.computed(()=>{var m,b;const y={};if(!u.value)return y;for(let f=0;f<((m=u.value)==null?void 0:m.length);f++){const k=u.value[f],O=(b=Object.keys(k))==null?void 0:b[0],H=k[O];H.required&&(y[O]={order:1}),s(y,O,H)}return y}),{getMessageFromError:g}=U.useErrors(),{axiosInstance:E}=U.useAxios((j=a.config)==null?void 0:j.axiosRequestConfig),S=t.computed(()=>{var m,b;let y=`${a.config.apiBaseUrl}${Ie.form[a.config.app].pluginSchema}`;return a.config.app==="konnect"?y=y.replace(/{controlPlaneId}/gi,((m=a.config)==null?void 0:m.controlPlaneId)||""):a.config.app==="kongManager"&&(y=y.replace(/\/{workspace}/gi,(b=a.config)!=null&&b.workspace?`/${a.config.workspace}`:"")),y=y.replace(/{plugin}/gi,a.config.pluginType),y}),h=t.ref({});U.useSchemaProvider(h);const I=t.ref(!1),w=t.ref("");return t.onBeforeMount(async()=>{I.value=!0;try{const{data:y}=await E.get(S.value);h.value=y}catch(y){w.value=g(y),i("error:fetch-schema",y)}finally{I.value=!1}}),(y,m)=>{const b=t.resolveComponent("KSkeleton"),f=t.resolveComponent("KEmptyState"),k=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",nE,[I.value?(t.openBlock(),t.createBlock(b,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):w.value?(t.openBlock(),t.createBlock(f,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(w.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(U.EntityBaseConfigCard),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":p.value,"entity-type":t.unref(U.SupportedEntityType).Plugin,"fetch-url":d.value,"hide-title":e.hideTitle,"plugin-config-key":bi,"plugin-config-schema":A.value,"onFetch:error":m[0]||(m[0]=O=>y.$emit("fetch:error",O)),"onFetch:success":m[1]||(m[1]=O=>y.$emit("fetch:success",O)),onLoading:m[2]||(m[2]=O=>y.$emit("loading",O))},{name:t.withCtx(O=>[t.createElementVNode("div",iE,[t.createVNode(Sn,{class:"plugin-icon",name:t.unref(l)("rowValue",O),size:24},null,8,["name"]),t.createElementVNode("span",aE,t.toDisplayString(t.unref(r).getDisplayName(t.unref(l)("rowValue",O))),1)])]),consumer:t.withCtx(O=>[t.unref(l)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(U.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",O).id,value:t.unref(l)("rowValue",O).id,type:t.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(l)("rowValue",O).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(k,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(l)("row",O).label}),"data-testid":"consumer-copy-uuid",text:t.unref(l)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",oE,"–"))]),route:t.withCtx(O=>[t.unref(l)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(U.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",O).id,value:t.unref(l)("rowValue",O).id,type:t.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(l)("rowValue",O).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(k,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(l)("row",O).label}),"data-testid":"route-copy-uuid",text:t.unref(l)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",rE,"–"))]),service:t.withCtx(O=>[t.unref(l)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(U.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",O).id,value:t.unref(l)("rowValue",O).id,type:t.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(l)("rowValue",O).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(k,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(l)("row",O).label}),"data-testid":"service-copy-uuid",text:t.unref(l)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",sE,"–"))]),consumer_group:t.withCtx(O=>[t.unref(l)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(U.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",O).id,value:t.unref(l)("rowValue",O).id,type:t.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(l)("rowValue",O).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(k,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(l)("row",O).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(l)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",lE,"–"))]),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-f27734d2"]]),{usePluginMetaData:dE}=ke;$.EntityTypeIdField=Et,$.PLUGIN_GROUPS_COLLAPSE_STATUS=Gi,$.PluginConfigCard=cE,$.PluginForm=Fh,$.PluginGroup=R,$.PluginGroupArray=Li,$.PluginIcon=Sn,$.PluginList=Rb,$.PluginScope=c,$.PluginSelect=tE,$.PluginSelectCard=mi,$.PluginSelectGrid=yi,$.VueFormGenerator=Le,$.getPluginIconURL=zi,$.pluginEndpoints=Ie,$.usePluginMetaData=dE,Object.defineProperty($,Symbol.toStringTag,{value:"Module"})});
68
+ will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`,config:{limit:500,window_size:3600}}]},a=new Set(["selectionGroup","enabled",...["identifier","limit","window_size","error_code","error_message"].map(x=>`config-${x}`)]),o=x=>x===void 0?!1:a.has(x),{t:r}=Ze.createI18n("en-us",Mt),s=e,l=t.computed(()=>{var x,D,F;const z=(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(Z=>Z.type==="selectionGroup"&&Z.model==="selectionGroup");return{fields:[(F=s.formSchema)==null?void 0:F.fields.find(Z=>Z.model==="enabled"),z].filter(Boolean)}}),d=t.computed(()=>{var x,D;const F=((D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.filter(T=>!o(T.model)))??[],z=[],Z=[],ee=[];let K=!1;for(const T of F){const V=T.model;if(V!==void 0){if(V.startsWith("config-redis-")){(T.model==="config-redis-cluster_addresses"||T.model==="config-redis-sentinel_addresses")&&(T.inputAttributes.help=r("rla.redis.address_example")),Z.push(T);continue}K?ee.push(T):z.push(T),T.model==="config-strategy"&&(K=!0)}}return{endsWithStrategy:{fields:z},redis:{fields:Z},afterStrategy:{fields:ee}}}),p=t.computed(()=>{const x=s.formModel["config-window_type"];return Object.prototype.hasOwnProperty.call(i,x)?i[x]:[]}),u=t.computed(()=>{var x,D;return(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(F=>F.model==="config-identifier")}),A=t.computed(()=>{var x,D,F;return(((F=(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(z=>z.model==="config-identifier"))==null?void 0:F.values)??[]).map(z=>({label:r(`rla.identifiers.options.${z}`),value:z}))}),g=t.ref(),E=t.ref(!0),S=t.computed(()=>{var x,D,F;return s.formModel["config-window_type"]??((F=(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(z=>z.model==="config-window_type"))==null?void 0:F.default)}),h=t.computed(()=>{var x,D,F,z,Z,ee;const K=(F=(D=(x=s.formSchema)==null?void 0:x.fields)==null?void 0:D.find(T=>T.model==="config-window_type"))==null?void 0:F.default;return(((ee=(Z=(z=s.formSchema)==null?void 0:z.fields)==null?void 0:Z.find(T=>T.model==="config-window_type"))==null?void 0:ee.values)??[]).sort((T,V)=>T===K?-1:V===K?1:0)}),I=t.computed(()=>{var x;const D=(x=s.formModel["config-limit"])==null?void 0:x.map((F,z)=>{var Z,ee;return{limit:F,windowSize:(ee=(Z=s.formModel)==null?void 0:Z["config-window_size"])==null?void 0:ee[z]}});return!Array.isArray(D)||D.length===0?[{limit:void 0,windowSize:void 0}]:D}),w=t.computed(()=>{var x,D,F,z;return((x=s.formModel)==null?void 0:x["config-identifier"])??((z=(F=(D=s.formSchema)==null?void 0:D.fields)==null?void 0:F.find(Z=>Z.model==="config-identifier"))==null?void 0:z.default)}),j=t.computed(()=>{var x,D,F,z;return((x=s.formModel)==null?void 0:x["config-error_code"])??((z=(F=(D=s.formSchema)==null?void 0:D.fields)==null?void 0:F.find(Z=>Z.model==="config-error_code"))==null?void 0:z.default)}),y=t.computed(()=>{var x,D,F,z;return((x=s.formModel)==null?void 0:x["config-error_message"])??((z=(F=(D=s.formSchema)==null?void 0:D.fields)==null?void 0:F.find(Z=>Z.model==="config-error_message"))==null?void 0:z.default)}),m=(x,D)=>{if(D===g.value){s.onModelUpdated([],"config-limit"),s.onModelUpdated([],"config-window_size"),t.nextTick(()=>{g.value=void 0});return}s.onModelUpdated([x.config.limit],"config-limit"),s.onModelUpdated([x.config.window_size],"config-window_size"),t.nextTick(()=>{g.value=D})},b=x=>{g.value!==void 0&&(g.value=void 0),x!==null&&s.onModelUpdated(x.toString(),"config-window_type")},f=(x,D)=>{var F;g.value!==void 0&&(g.value=void 0);const z=it(((F=s.formModel)==null?void 0:F["config-limit"])??[]);z[x]=D,s.onModelUpdated(z,"config-limit")},k=(x,D)=>{var F;g.value!==void 0&&(g.value=void 0);const z=it(((F=s.formModel)==null?void 0:F["config-window_size"])??[]);z[x]=D,s.onModelUpdated(z,"config-window_size")},O=x=>{var D,F;g.value!==void 0&&(g.value=void 0);const z=it(((D=s.formModel)==null?void 0:D["config-limit"])??[]),Z=it(((F=s.formModel)==null?void 0:F["config-window_size"])??[]);z.length===0&&z.push(void 0),Z.length===0&&Z.push(void 0),z.splice(x+1,0,void 0),Z.splice(x+1,0,void 0),s.onModelUpdated(z,"config-limit"),s.onModelUpdated(Z,"config-window_size")},H=x=>{var D,F;if(I.value.length>1){g.value!==void 0&&(g.value=void 0);const z=it(((D=s.formModel)==null?void 0:D["config-limit"])??[]),Z=it(((F=s.formModel)==null?void 0:F["config-window_size"])??[]);z.length===0&&z.push(void 0),Z.length===0&&Z.push(void 0),z.splice(x,1),Z.splice(x,1),s.onModelUpdated(z,"config-limit"),s.onModelUpdated(Z,"config-window_size")}};return(x,D)=>{const F=t.resolveComponent("VueFormGenerator"),z=t.resolveComponent("KLabel"),Z=t.resolveComponent("KRadio"),ee=t.resolveComponent("KInput"),K=t.resolveComponent("KButton"),T=t.resolveComponent("KBadge"),V=t.resolveComponent("KTooltip"),Y=t.resolveComponent("KCard"),C=t.resolveComponent("KSelect"),B=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",bf,[t.createVNode(F,{model:x.formModel,options:x.formOptions,schema:l.value,onModelUpdated:D[0]||(D[0]=(M,_)=>x.onModelUpdated(M,_))},null,8,["model","options","schema"]),t.createVNode(Y,{class:"rla-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(z,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("rla.request_limits.title")),1)]),_:1}),t.createElementVNode("div",Ef,t.toDisplayString(t.unref(r)("rla.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",wf,[t.createElementVNode("div",Cf,[t.createVNode(z,{class:"rla-form-window-type-label","tooltip-attributes":{maxWidth:"300",placement:"top"}},{tooltip:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(r)("rla.window_type.help")},null,8,Bf)]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("rla.window_type.label"))+" ",1)]),_:1}),t.createElementVNode("div",kf,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,M=>(t.openBlock(),t.createBlock(Z,{key:`window-type-${M}`,"model-value":S.value,name:M,"selected-value":M,"onUpdate:modelValue":b},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`rla.window_type.options.${M}`)),1)]),_:2},1032,["model-value","name","selected-value"]))),128))])]),t.createElementVNode("div",If,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(I.value,(M,_)=>(t.openBlock(),t.createElementBlock("div",{key:_.toString()},[t.createVNode(z,{for:`rla-form-request-limits-item-${_}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("rla.request_limits.label_index",{index:_+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",vf,[t.createElementVNode("legend",{id:`rla-form-request-limits-item-${_}-legend`,class:"rla-form-request-limits-inputs"},[t.createVNode(ee,{"model-value":M.limit&&M.limit.toString(),placeholder:t.unref(r)("rla.request_limits.request_number"),type:"number","onUpdate:modelValue":ie=>f(_,Number.parseInt(ie))},null,8,["model-value","placeholder","onUpdate:modelValue"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.request_limits.interval_determiner")),1),t.createVNode(ee,{"model-value":M.windowSize&&M.windowSize.toString(),placeholder:t.unref(r)("rla.request_limits.time_interval"),type:"number","onUpdate:modelValue":ie=>k(_,Number.parseInt(ie))},null,8,["model-value","placeholder","onUpdate:modelValue"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.request_limits.seconds")),1)],8,Of),t.createElementVNode("div",Mf,[t.createVNode(K,{appearance:"tertiary",disabled:I.value.length<=1,onClick:()=>H(_)},{default:t.withCtx(()=>[t.createVNode(t.unref(je.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(K,{appearance:"tertiary",onClick:()=>O(_)},{default:t.withCtx(()=>[t.createVNode(t.unref(je.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),p.value.length>0?(t.openBlock(),t.createElementBlock("div",Rf,[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.start_with_a_use_case")),1),t.createElementVNode("div",Tf,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(M,_)=>(t.openBlock(),t.createBlock(V,{key:`use-case-${_}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(M.description),1),D[9]||(D[9]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.request_limits.label"))+": "+t.toDisplayString(M.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("rla.request_limits.time_interval"))+": "+t.toDisplayString(M.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(T,{appearance:g.value===`${S.value}-${_}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>m(M,`${S.value}-${_}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(M.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1}),t.createVNode(C,{modelValue:w.value,"onUpdate:modelValue":D[1]||(D[1]=M=>w.value=M),class:"rla-form-identifiers",items:A.value,label:t.unref(r)("rla.identifiers.label"),"label-attributes":{tooltipAttributes:{maxWidth:"300",placement:"top"}},required:"",onSelected:D[2]||(D[2]=M=>s.onModelUpdated(M.value,"config-identifier"))},{"label-tooltip":t.withCtx(()=>[t.createElementVNode("div",{innerHTML:u.value&&u.value.help},null,8,Sf)]),_:1},8,["modelValue","items","label"]),t.createElementVNode("div",null,[t.createVNode(z,{for:"rla-form-error-legend",info:t.unref(r)("rla.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("rla.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",xf,[t.createVNode(ee,{class:"input-error-code","model-value":j.value&&j.value.toString(),placeholder:t.unref(r)("rla.error_message.code_placeholder"),type:"number","onUpdate:modelValue":D[3]||(D[3]=M=>x.onModelUpdated(Number.parseInt(M),"config-error_code"))},null,8,["model-value","placeholder"]),D[10]||(D[10]=t.createElementVNode("div",null,":",-1)),t.createVNode(ee,{"model-value":y.value,placeholder:t.unref(r)("rla.error_message.message_placeholder"),"onUpdate:modelValue":D[4]||(D[4]=M=>x.onModelUpdated(M,"config-error_message"))},null,8,["model-value","placeholder"])])])]),t.createVNode(B,{modelValue:E.value,"onUpdate:modelValue":D[8]||(D[8]=M=>E.value=M),"trigger-label":t.unref(r)("rla.view_advanced_fields")},{default:t.withCtx(()=>[t.createVNode(F,{model:x.formModel,options:x.formOptions,schema:d.value.endsWithStrategy,onModelUpdated:D[5]||(D[5]=(M,_)=>x.onModelUpdated(M,_))},null,8,["model","options","schema"]),x.formModel["config-strategy"]==="redis"?(t.openBlock(),t.createBlock(Y,{key:0,class:"rla-form-redis-card",title:t.unref(r)("rla.redis.title")},{default:t.withCtx(()=>[t.createVNode(F,{model:x.formModel,options:x.formOptions,schema:d.value.redis,onModelUpdated:D[6]||(D[6]=(M,_)=>x.onModelUpdated(M,_))},null,8,["model","options","schema"])]),_:1},8,["title"])):t.createCommentVNode("",!0),t.createVNode(F,{class:t.normalizeClass({"rla-last-vfg":x.formModel["config-strategy"]!=="redis"}),model:x.formModel,options:x.formOptions,schema:d.value.afterStrategy,onModelUpdated:D[7]||(D[7]=(M,_)=>x.onModelUpdated(M,_))},null,8,["class","model","options","schema"])]),_:1},8,["modelValue","trigger-label"])],64)}}}),Nf=Ee(Vf,[["__scopeId","data-v-e9e76a93"]]),Df=Object.freeze(Object.defineProperty({__proto__:null,ACMEForm:yf,ExitTransformer:lf,OIDCForm:af,PostFunction:rf,RLAForm:Nf},Symbol.toStringTag,{value:"Module"})),ai=["array","metric","advanced","selectionGroup","object-advanced"],Co=e=>({"openid-connect":"OIDCForm","post-function":"PostFunction","pre-function":"PostFunction","exit-transformer":"ExitTransformer","rate-limiting-advanced":"RLAForm"})[e],Yt={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Pf={"config-prompts-prepend":{...Yt,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...Yt,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},Lf={"config-templates":{...Yt,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},Gf={shamefullyTransformPayload:({originalModel:e,model:n,payload:i,schema:a})=>{const o=s=>{var l;return(l=a[s])!=null&&l.required&&n[s]?!0:e[s]===n[s]?!1:e[s]===null?n[s]!==""&&!Number.isNaN(n[s]):!0},r=s=>Object.keys(e).some(l=>l.startsWith(s)&&o(l));r("config-embeddings")||(i.config.embeddings=null),r("config-vectordb")||(i.config.vectordb=null)}},Uf={"config-llm_providers":{...Yt,newElementButtonLabel:"+ Add Provider",items:{type:"object",schema:{fields:[{label:"Window Size",model:"window_size",help:"Window size to apply a limit to (defined in seconds)",type:"input",required:!0,inputType:"number"},{label:"Name",model:"name",help:"The llm providers.",type:"select",required:!0,values:["anthropic","azure","bedrock","cohere","gemini","llama2","mistral","openai","requestPrompt"]},{label:"Limit",model:"limit",help:"Limit applied to the llm provider.",type:"input",required:!0,inputType:"number"}]}}}},jf={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:Dt.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},Oe={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},Mn={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Yf={"config-metrics":{...Mn,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"tags",label:"Tags",type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},inputType:"text"}]}}}},Hf={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Ff={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Kf={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},zf={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Jf={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Bo=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:Dt.fields.arrayItems({newElementButtonLabel:"Add"})}),Jf),Rn={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},Qf={"config-remove-headers":{},"config-remove.querystring":{},"config-remove-body":{},"config-replace-headers":{},"config-replace-querystring":{},"config-replace-body":{},"config-rename-headers":{},"config-rename-querystring":{},"config-rename-body":{},"config-add-headers":{},"config-add-querystring":{},"config-add-body":{},"config-append-headers":{},"config-append-querystring":{},"config-append-body":{},"config-allow-body":{}},Xf=["config-remove-headers","config-remove.querystring","config-remove-body","config-replace-headers","config-replace-querystring","config-replace-body","config-rename-headers","config-rename-querystring","config-rename-body","config-add-headers","config-add-querystring","config-add-body","config-append-headers","config-append-querystring","config-append-body","config-allow-body"].reduce((e,n)=>({...e,[n]:Dt.fields.arrayItems({newElementButtonLabel:"Add"})}),Qf),ko={"config-add-json":{...Oe,label:"Config.Add.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Oe,label:"Config.Append.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Oe,label:"Config.Remove.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Oe,label:"Config.Rename.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Oe,label:"Config.Replace.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}}},qf={...ko,"config-allow-json":{...Oe,label:"Config.Allow.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Oe,label:"Config.Transform.Functions",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Oe,label:"Config.Transform.Json",inputAttributes:{...Oe.inputAttributes,type:"textarea",max:!1}}},Zf={"config-rules":{...Yt,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},Wf={"config-session_redis_cluster_nodes":{...Yt,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},_f={"config-metrics":{...Mn,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},$f={"config-metrics":{...Mn,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage","cache_datastore_hits_total","cache_datastore_misses_total"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},eh={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},th={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}},nh={"config-static_tags":{...Mn,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"value",label:"value",type:"input",inputType:"string",id:"schema_value"}]}}}},ih=(e,n)=>{const i=e.model.startsWith("config-"),a=n.model.startsWith("config-");return i&&!a?1:!i&&a?-1:0},Io=(e,n)=>(e.order??0)-(n.order??0),vo=(e,n)=>ih(e,n)||Io(e,n)||e.model.localeCompare(n.model),ke={useI18n:mn,usePluginMetaData:Nl,usePluginHelpers:Pi,useSchemas:e=>{const{capitalize:n}=U.useStringHelpers(),{convertToDotNotation:i}=Pi(),{i18n:{t:a}}=mn(),o={"application-registration":{overwriteDefault:!0,formSchema:{...jf}},datadog:{...Yf},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{..._f},"statsd-advanced":{...$f},"route-by-header":{...Zf},"ai-prompt-decorator":{...Pf},"ai-prompt-template":{...Lf},"ai-proxy-advanced":{...Gf},"ai-rate-limiting-advanced":{...Uf},"vault-auth":{...th},"oas-validation":{...zf},mocking:{...Kf},"rate-limiting":{...Rn},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Rn["config-consumer_groups"]}:{...Rn},"graphql-rate-limiting-advanced":{...Hf},"injection-protection":{...Ff},"response-ratelimiting":{...Rn},"pre-function":{...Bo},"post-function":{...Bo},"request-transformer-advanced":{...Xf},"response-transformer":{...ko},"response-transformer-advanced":{...qf},zipkin:{...nh},"upstream-oauth":{...eh},saml:{...Wf}},r=()=>["created_at","updated_at","id"],s=(m,b,f)=>{let k={};(b||m)&&(k=b||(m.fields?m.fields:m));const O=r().concat(m.blacklist?m.blacklist:[]),H=Object.keys(k).filter(ee=>!O.includes(ee)),x=H.indexOf("comparator");x>-1&&H.splice(x,1);let D={fields:[]};const F={};H.forEach(ee=>{d(k[ee],ee,k,F,D,f)});const z=F.name,Z=We[z];if(Co(z)||Z!=null&&Z.useLegacyForm||e!=null&&e.credential)D.fields.sort((ee,K)=>(ee.order=ee.order||0,K.order=K.order||0,ee.order-K.order));else{const ee=[],K=[],T=[],V={};if(Z!=null&&Z.fieldRules){const B=[...Z.fieldRules.atLeastOneOf??[],...Z.fieldRules.onlyOneOf??[],...Z.fieldRules.mutuallyRequired??[]];if(Z.fieldRules.onlyOneOfMutuallyRequired)for(const M of Z.fieldRules.onlyOneOfMutuallyRequired)B.push(...M);for(const M of B)for(const _ of M)V[_.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const B of D.fields){if(B.pinned){ee.push(B);continue}if(B.required||V[B.model]!==void 0){V[B.model]===!1&&(V[B.model]=!0),K.push(B);continue}T.push(B)}const Y=Object.entries(V).filter(([,B])=>!B).map(([B])=>B.replace(/-/g,".").replace(/_/g,"-"));Y.length>0&&console.warn(`Unknown checked fields for plugin ${z}: ${Y.join(", ")}`);const C=[];ee.length>0&&C.push({fields:ee.sort(Io)}),(K.length>0||T.length>0)&&C.push({fields:K.sort(vo),collapsible:{title:a("plugins.form.grouping.plugin_configuration.title"),description:a("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:T.sort(vo),triggerLabel:{expand:a("plugins.form.grouping.advanced_parameters.view"),collapse:a("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),D={groups:C}}return{schema:D,model:F,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},l=m=>Array.isArray(m.default)||m.default!=null&&typeof m.default!="object"&&m.default!=="function",d=(m,b,f,k,O,H)=>{const x=l(m);return k[b]=x?m.default:null,m.id=b,m.model=b,m.fields&&m.type==="record"?u(m,b,f,k,O,H):(f[b]=m,y(m,k),H&&H[b]&&p(f[b],H[b]),O.fields.push(m)),f},p=(m,b)=>(b&&(Object.assign(m,b),b.label&&(m.label=b.label)),m),u=(m,b,f,k,O,H)=>{m.fields.forEach(x=>{Object.keys(x).forEach(D=>{const F=x[D];f=d(F,b+"-"+D,f,k,O,H)})})},A=(m,b)=>{m.type="input",m.inputType="hidden",m.styleClasses="kong-form-hidden-field-wrapper";const f=e==null?void 0:e.entityId;b[m.model]=f?{id:f}:null},g=m=>{m.type="input",m.inputType="number",m.between&&m.between.length===2&&(m.min=m.between[0],m.max=m.between[1])},E=m=>{Object.prototype.hasOwnProperty.call(m,"one_of")?(m.type="select",m.values=m.one_of,m.selectOptions={hideNoneSelectedText:!0}):(m.type="input",m.inputType="text")},S=m=>{m.type="checkbox",m.default=!0,m.required=!1},h=m=>{if(m.type="object-advanced",m.values.type==="array"){const{type:b}=m.values.elements||{};m.schema={fields:[{schema:{fields:[{...Oe,model:m.model,valueArrayType:b==="integer"?"number":b||"string",inputAttributes:{...Oe.inputAttributes,type:b==="integer"?"number":"text",inputMode:b==="integer"?"numeric":"text"}}]}}]}}else m.values.fields&&(m.schema={fields:[{type:"object",model:"object",schema:{fields:m.values.fields.map(b=>{const f=Object.keys(b)[0];return{model:f,type:"input",label:n(f),placeholder:f,inputType:b[f].type}})}}]})},I=m=>m.fields.reduce((b,f)=>(f.fields&&f.fields.forEach(k=>{b[k.model]=k}),f.model&&(b[f.model]=f),b),{}),w=(m,b)=>{if(!ai.includes(m.model))return;const f=I(m);ai.forEach(k=>{Object.keys(f).forEach(O=>{const H=l(f[O]);b[O]=H?f[O].default:null}),delete b[k]})},j=(m,b)=>m.inputType==="hidden"?"":i(n(m.label||b.replace(/_/g," "))),y=(m,b)=>{switch(w(m,b),m.type){case"foreign":A(m,b);break;case"number":g(m),m.attributes={step:"any"};break;case"integer":g(m);break;case"string":E(m);break;case"boolean":S(m);break;case"map":h(m);break}m.inputType==="foreign"&&A(m,b),m.label=j(m,m.model)};return{buildFormSchema:d,parseSchema:s,customSchemas:o,typedefs:Dt}}},Se="/v2/control-planes/{controlPlaneId}/core-entities",xe="/{workspace}",Ie={list:{konnect:{all:`${Se}/plugins`,forEntity:`${Se}/{entityType}/{entityId}/plugins`},kongManager:{all:`${xe}/plugins`,forEntity:`${xe}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${Se}/v1/available-plugins`,streamingCustomPlugins:`${Se}/custom-plugins`,schemaCustomPluginItem:`${Se}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${Se}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${xe}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${Se}/plugins`,forEntity:`${Se}/{entityType}/{entityId}/plugins`},edit:{all:`${Se}/plugins/{id}`,forEntity:`${Se}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${Se}/{resourceEndpoint}`,edit:`${Se}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${Se}/v1/schemas/json/plugin/validate`,entityGetOne:`${Se}/{entity}/{id}`,entityGetAll:`${Se}/{entity}?size=1000`},kongManager:{create:{all:`${xe}/plugins`,forEntity:`${xe}/{entityType}/{entityId}/plugins`},edit:{all:`${xe}/plugins/{id}`,forEntity:`${xe}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${xe}/schemas/plugins/{plugin}`,credential:{create:`${xe}/{resourceEndpoint}`,edit:`${xe}/{resourceEndpoint}/{id}`},credentialSchema:`${xe}/schemas/{plugin}`,validate:`${xe}/schemas/plugins/validate`,entityGetOne:`${xe}/{entity}/{id}`,entityGetAll:`${xe}/{entity}`}},item:{konnect:{all:`${Se}/plugins/{id}`,forEntity:`${Se}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${xe}/plugins/{id}`,forEntity:`${xe}/{entityType}/{entityId}/plugins/{id}`}}},ah={create:"New vault",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",delete:"Delete",view:"View Details",loading:"Loading..."},oh={general:"Vaults could not be retrieved",delete:"The vault could not be deleted at this time.",copy:"Failed to copy to clipboard"},rh={placeholder_for_vaults:{konnect:"Filter by exact prefix or ID"},placeholder_for_secrets:{konnect:"Filter by exact key"}},sh={title:"Vaults",list:{toolbar_actions:{new_vault:"New vault"},table_headers:{prefix:"Prefix",name:"Vault Type",description:"Description",tags:"Tags",id:"ID"},empty_state:{title:"Configure a New Vault",description:"Improve the security of your Kong Gateway deployment with centralized secrets."},empty_state_v2:{title:"Configure your first vault",description:"Vaults securely store sensitive information, such as credentials and certificates, enhancing the security of your API infrastructure.",create_cta:"New vault"}}},lh={title:"Secrets",list:{toolbar_actions:{new_secret:"Store New Secret"},table_headers:{key:"Secret Key",updated_at:"Updated At"},empty_state:{title:"No Secrets Stored",description:"Improve the security of your Kong Gateway deployment with centralized secrets."}},form:{info:{title:"Secret",description:"Enter the secret key and secret value to be stored in Konnect vault"},fields:{key:{label:"Key",placeholder:"Enter key"},value:{label:"Value",placeholder:"Enter value here, can be simple values or multi-line"}},hint:"Once saved, the secret value will not be visible"}},ch={success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard"},dh={vault_type:"Vault Type"},uh={sections:{general:{title:"General Information",description:"General information helps identify and manage this Vault instance."},config:{title:"Vault Configuration",description:"Select a type of Vault and configure properties specific to each type of Vault."}},fields:{prefix:{label:"Prefix",placeholder:"Enter a unique prefix for this vault",help:"e.g. my-vault",tooltip:"The prefix is used to load the right Vault configuration and implementation when referencing secrets with the other entities."},description:{label:"Description",placeholder:"Enter some description for this vault"},tags:{label:"Tags",placeholder:"Enter a list of tags separated by comma",help:"e.g. tag1, tag2, tag3"}},config:{konnect:{label:"Konnect",description:"Access secrets stored directly in Konnect's unified platform to easily reference in Kong Gateway configuration."},env:{label:"Environment Variables",description:"Access secrets stored via variables to be made available in Kong Gateway at runtime.",fields:{prefix:{label:"Environment Variable Prefix",placeholder:"Enter your environment variable vault prefix",tooltip:"Data plane will access all the environment variables starting with this prefix."}}},aws:{label:"AWS Secrets Manager",description:"Access secrets stored in AWS Secrets Manager for Kong Gateway configuration.",fields:{region:{label:"Region",placeholder:"Select an AWS region",tooltip:"The AWS region your vault is located in",locations:{"us-east-1":{location:"N. Virginia"},"us-east-2":{location:"Ohio"},"us-west-1":{location:"N. California"},"us-west-2":{location:"Oregon"},"af-south-1":{location:"Cape Town"},"ap-east-1":{location:"Hong Kong"},"ap-southeast-3":{location:"Jakarta"},"ap-south-1":{location:"Mumbai"},"ap-northeast-1":{location:"Tokyo"},"ap-northeast-2":{location:"Seoul"},"ap-northeast-3":{location:"Osaka"},"ap-southeast-1":{location:"Singapore"},"ap-southeast-2":{location:"Sydney"},"ca-central-1":{location:"Canada"},"eu-central-1":{location:"Frankfurt"},"eu-west-1":{location:"Ireland"},"eu-west-2":{location:"London"},"eu-west-3":{location:"Paris"},"eu-south-1":{location:"Milan"},"eu-north-1":{location:"Stockholm"},"me-south-1":{location:"Bahrain"},"sa-east-1":{location:"São Paulo"},"us-gov-east-1":{location:"US East"},"us-gov-west-1":{location:"US West"}}},endpoint_url:{label:"Endpoint URL",tooltip:'The AWS SecretsManager service endpoint url. If not specified, the value used by vault will be the official AWS SecretsManager service url which is `https://secretsmanager.<region>.amazonaws.com`. You can specify a complete URL(including the "http/https" scheme) to override the endpoint that vault will connect to.'},assume_role_arn:{label:"Assume Role ARN",tooltip:"The target AWS IAM role ARN that will be assumed. Typically this is used for operating between multiple roles or cross-accounts. If you are not using assume role you should not specify this value."},role_session_name:{label:"Role Session Name",tooltip:"The role session name used for role assuming."},sts_endpoint_url:{label:"STS Endpoint URL",tooltip:"The custom STS endpoint URL used for role assuming in AWS Vault. Note that this value will override the default STS endpoint URL(which should be `https: //sts.amazonaws.com`, or `https: //sts.<region>.amazonaws.com` if you have `AWS_STS_REGIONAL_ENDPOINTS` set to `regional`). If you are not using private VPC endpoint for STS service, you should not specify this value."}}},gcp:{label:"Google Secret Manager",description:"Access secrets stored in Google Secret Manager for Kong Gateway configuration.",fields:{project_id:{label:"Project ID",placeholder:"Enter your Google Cloud Project ID",tooltip:{text:"Visit your Google API Console and select {italic-text} in the projects list to see your project ID",italicText:"Manage all projects"}}}},hcv:{label:"HashiCorp Vault",description:"Access secrets stored in HashiCorp Vault for Kong Gateway configuration.",fields:{protocol:{label:"Protocol"},host:{label:"Host"},port:{label:"Port"},mount:{label:"Mount"},kv:{label:"Kv"},namespace:{label:"Namespace"},auth_method:{label:"Authentication Method"},token:{label:"Token"},kube_role:{label:"Kubernetes Role"},kube_auth_path:{label:"Kubernetes Auth Path"},kube_api_token_file:{label:"Kubernetes API Token File"},approle_auth_path:{label:"App Role Auth Path"},approle_role_id:{label:"App Role Role ID"},approle_secret_id:{label:"App Role Secret ID"},approle_secret_id_file:{label:"App Role Secret ID File"},approle_response_wrapping:{label:"App Role Response Wrapping"}}},azure:{label:"Azure Vault",description:"Access secrets stored in Azure Key Vault for Kong Gateway configuration.",fields:{location:{label:"Location"},vault_uri:{label:"Vault URI"},credential_prefix:{label:"Credential Prefix"},type:{label:"Type",placeholder:"Select a type"},client_id:{label:"Client ID"},tenant_id:{label:"Tenant ID"}}},advancedFields:{title:"View Advanced Fields",ttl:"Time-to-Live",ttlTooltip:"Time-to-live (in seconds) of a secret from a vault when cached by this reference",negTtl:"Negative Time-to-Live",negTtlTooltip:"Time-to-live (in seconds) of a vault miss (no secret)",resurrectTtl:"Time-to-Live Resurrection",resurrectTtlTooltip:"Time (in seconds) for which stale secrets from the vault are resurrected for when they cannot be refreshed"}},unavailable:"This vault provider is available on Enterprise."},ph={title:"Look up Key in Vault",vault:{label:"Vault",placeholder:"Select a vault"},secret_id:{label:"Secret ID",input_placeholder:"Enter a secret ID",select_placeholder:"Select or enter a complete secret ID"},optional_secret_key:{label:"Secret Key",placeholder:"Enter the key or key path to access a nested secret value",help:"Optional. e.g. tokens, tokens/refresh_token"},fetch_error:{vaults:"Could not fetch available vaults",secrets:"Could not fetch available secrets",vaults_and_secrets:"Could not fetch available vaults and secrets"},no_results:"No results found",actions:{use_key:"Use Key"},provider:{complete_action:"Look up {cta}",cta:"Key in Vault"}},Ah={actions:ah,delete:{title:"Delete a Vault",title_for_secret:"Delete a Secret",description:"This action cannot be reversed."},errors:oh,search:rh,vaults:sh,secrets:lh,copy:ch,labels:dh,form:uh,vault_secret_picker:ph};function gh(){const e=Ze.createI18n("en-us",Ah);return{i18n:e,i18nT:Ze.i18nTComponent(e)}}const Oo={useI18n:gh},oi="/v2/control-planes/{controlPlaneId}/core-entities",Mo="/v2/control-planes/{controlPlaneId}/config-stores",ri="/{workspace}",Ro={list:{konnect:{getAll:`${oi}/vaults`,deleteConfigStore:`${Mo}/{id}?force=true`},kongManager:{getAll:`${ri}/vaults`}},form:{konnect:{create:`${oi}/vaults`,createConfigStore:Mo,edit:`${oi}/vaults/{id}`},kongManager:{create:`${ri}/vaults`,edit:`${ri}/vaults/{id}`}}},To=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},Tn="/v2/control-planes/{controlPlaneId}",So={getVault:{konnect:`${Tn}/core-entities/vaults/{id}`},list:{konnect:`${Tn}/config-stores/{id}/secrets`},form:{konnect:{create:`${Tn}/config-stores/{id}/secrets`,edit:`${Tn}/config-stores/{id}/secrets/{secretId}`}}},mh={class:"vault-secret-picker-provider"},fh=t.defineComponent({__name:"VaultSecretPickerProvider",props:{value:{},update:{type:Function}},emits:["open"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o},i18nT:r}=Oo.useI18n();return(s,l)=>(t.openBlock(),t.createElementBlock("div",mh,[t.createVNode(t.unref(r),{keypath:"vault_secret_picker.provider.complete_action",scope:"global"},{cta:t.withCtx(()=>[t.createElementVNode("span",{class:"vault-secret-picker-provider-action",onClick:l[0]||(l[0]=()=>a("open",i.value,i.update))},t.toDisplayString(t.unref(o)("vault_secret_picker.provider.cta")),1)]),_:1})]))}}),xo=To(fh,[["__scopeId","data-v-200e7f4d"]]),hh=e=>{let n=e.trim();if(!n.startsWith("{")||!n.endsWith("}"))throw new Error("Invalid secret reference: must be enclosed in curly braces");if(n=n.substring(1,n.length-1).trim(),!n.startsWith("vault://"))throw new Error("Invalid secret reference: must start with vault://");const i=new URL(`http://${n.substring(8)}`);if(!i)throw new Error("Invalid secret reference: must have a vault prefix");const a=i.host,[,o,...r]=i.pathname.split("/");if(!a)throw new Error("Invalid secret reference: must have a vault prefix");return{vaultPrefix:a,secretId:o||void 0,optionalSecretKey:r==null?void 0:r.join("/")}},yh=e=>{if(!e.vaultPrefix)throw new Error("Invalid secret reference: must have a vault prefix");let n=`vault://${e.vaultPrefix}`;return e.secretId&&(n=`${n}/${e.secretId}`),e.optionalSecretKey&&(n=`${n}/${e.optionalSecretKey}`),`{${n}}`},bh={key:1,class:"inputs-wrapper"},Eh={"data-testid":"no-search-results"},wh={class:"k-select-selected-item-label"},Ch={class:"vault-secret-picker-vault-dropdown-item"},Bh={class:"select-item-label"},kh={class:"select-item-description"},Ih={class:"select-item-description"},vh={"data-testid":"no-search-results"},Oh=t.defineComponent({__name:"VaultSecretPicker",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},setup:{type:null,required:!1,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){var i;const{i18n:{t:a}}=Oo.useI18n(),o=e,r=n,{axiosInstance:s}=U.useAxios({validateStatus:K=>K===404||K>=200&&K<300,...(i=o.config)==null?void 0:i.axiosRequestConfig}),l=t.ref(!1),d=t.ref(""),p=t.ref(""),u=t.ref(""),A=t.ref(),g=t.computed(()=>{var K,T;return o.config.app==="konnect"?So.list[o.config.app].replace(/{id}/gi,((T=(K=A.value)==null?void 0:K.config)==null?void 0:T.config_store_id)??""):"<not_applicable>"}),E=t.computed(()=>{if(I&&b)return a("vault_secret_picker.fetch_error.vaults_and_secrets");if(I)return a("vault_secret_picker.fetch_error.vaults");if(b)return a("vault_secret_picker.fetch_error.secrets")}),{debouncedQueryChange:S,loading:h,error:I,loadItems:w,results:j}=U.useDebouncedFilter(o.config,Ro.list[o.config.app].getAll,void 0,{fetchedItemsKey:"data",searchKeys:["prefix"]}),{debouncedQueryChange:y,loading:m,error:b,loadItems:f,results:k}=U.useDebouncedFilter(o.config,g,void 0,{fetchedItemsKey:"data",searchKeys:["key"],exactMatchKey:"key"}),O=t.computed(()=>{var K;let T=!1;const V=((K=j.value)==null?void 0:K.map(Y=>(Y.prefix===d.value&&(T=!0),{label:Y.prefix,value:Y.prefix,vault:Y})))??[];return!T&&A.value&&V.push({label:A.value.prefix,value:A.value.prefix,vault:A.value}),V}),H=t.computed(()=>{var K;let T=!1;const V=((K=k.value)==null?void 0:K.map(Y=>(Y.key===p.value&&(T=!0),{label:Y.key,value:Y.key})))??[];return!T&&p.value&&V.push({label:p.value,value:p.value}),V}),x=t.computed(()=>{var K;return((K=A==null?void 0:A.value)==null?void 0:K.name)==="konnect"}),D=t.computed(()=>!!A.value&&!!p.value),F=K=>K.label?`${K.label} - (${K.vault.name} - ${K.vault.id})`:K.value,z=K=>{var T,V;let Y=`${o.config.apiBaseUrl}${Ro.form[o.config.app].edit}`;return o.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,((T=o.config)==null?void 0:T.controlPlaneId)||""):o.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,(V=o.config)!=null&&V.workspace?`/${o.config.workspace}`:"")),Y.replace(/{id}/gi,K)},Z=(K,T)=>{var V;return o.config.app!=="konnect"?"<not_applicable>":`${o.config.apiBaseUrl}${So.form[o.config.app].edit}`.replace(/{controlPlaneId}/gi,((V=o.config)==null?void 0:V.controlPlaneId)||"").replace(/{id}/gi,T).replace(/{secretId}/gi,K)},ee=()=>{r("proceed",yh({vaultPrefix:d.value,secretId:p.value||void 0,optionalSecretKey:u.value||void 0}))};return t.watch(()=>o.setup,async K=>{if(K!==!1){if(l.value=!0,d.value="",A.value=void 0,p.value="",u.value="",typeof K=="string"&&K.trim().length>0)try{let T,V="",Y="",C="";const B=hh(K),{data:M}=await s.get(z(B.vaultPrefix));if(M!=null&&M.name)if(T=M,V=B.vaultPrefix,T.name==="konnect"){if(B.secretId){const{data:_}=await s.get(Z(B.secretId,M.config.config_store_id));_.key===B.secretId&&(Y=B.secretId,C=B.optionalSecretKey??"")}}else Y=B.secretId??"",C=B.optionalSecretKey??"";await t.nextTick(()=>{d.value=V,A.value=T,p.value=Y,u.value=C})}catch(T){console.debug(T)}l.value=!1,await w()}},{immediate:!0}),t.watch(d,async(K,T)=>{var V;l.value||K===T||(A.value=(V=O.value.find(Y=>Y.value===K))==null?void 0:V.vault,p.value="",u.value="")}),t.watch(g,async()=>{x.value&&await f()},{immediate:!0}),(K,T)=>{const V=t.resolveComponent("KEmptyState"),Y=t.resolveComponent("KSelect"),C=t.resolveComponent("KInput"),B=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(B,{"action-button-disabled":!D.value,"action-button-text":t.unref(a)("vault_secret_picker.actions.use_key"),class:"vault-secret-picker","data-testid":"vault-secret-picker-modal",title:t.unref(a)("vault_secret_picker.title"),visible:o.setup!==!1,onCancel:T[4]||(T[4]=()=>r("cancel")),onProceed:ee},{default:t.withCtx(()=>[t.unref(I)||t.unref(b)?(t.openBlock(),t.createBlock(V,{key:0,"data-testid":"vault-secret-picker-fetch-error","icon-variant":"error",message:E.value},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",bh,[t.createVNode(Y,{modelValue:d.value,"onUpdate:modelValue":T[0]||(T[0]=M=>d.value=M),clearable:"","data-testid":"vault-secret-picker-vault-select",disabled:l.value,"enable-filtering":"","filter-function":()=>!0,items:O.value,"kpop-attributes":{"data-testid":"vault-secret-picker-vault-popover"},label:t.unref(a)("vault_secret_picker.vault.label"),loading:t.unref(h),placeholder:t.unref(a)("vault_secret_picker.vault.placeholder"),required:"","reuse-item-template":"",width:"100%",onQueryChange:t.unref(S)},{loading:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("actions.loading")),1)]),empty:t.withCtx(()=>[t.createElementVNode("div",Eh,t.toDisplayString(t.unref(a)("vault_secret_picker.no_results")),1)]),"selected-item-template":t.withCtx(({item:M})=>[t.createElementVNode("span",wh,t.toDisplayString(F(M)),1)]),"item-template":t.withCtx(({item:M})=>[t.createElementVNode("div",Ch,[t.createElementVNode("span",Bh,t.toDisplayString(M.label),1),t.createElementVNode("span",kh,t.toDisplayString(M.vault.name),1),t.createElementVNode("span",Ih,t.toDisplayString(M.vault.id),1)])]),_:1},8,["modelValue","disabled","items","label","loading","placeholder","onQueryChange"]),x.value?(t.openBlock(),t.createBlock(Y,{key:0,modelValue:p.value,"onUpdate:modelValue":T[1]||(T[1]=M=>p.value=M),clearable:"","data-testid":"vault-secret-picker-secret-id-select",disabled:l.value||!A.value,"enable-filtering":"","filter-function":()=>!0,items:H.value,"kpop-attributes":{"data-testid":"vault-secret-picker-secret-id-popover"},label:t.unref(a)("vault_secret_picker.secret_id.label"),loading:t.unref(m),placeholder:t.unref(a)("vault_secret_picker.secret_id.select_placeholder"),required:"","reuse-item-template":"",width:"100%",onQueryChange:t.unref(y)},{loading:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("actions.loading")),1)]),empty:t.withCtx(()=>[t.createElementVNode("div",vh,t.toDisplayString(t.unref(a)("vault_secret_picker.no_results")),1)]),_:1},8,["modelValue","disabled","items","label","loading","placeholder","onQueryChange"])):(t.openBlock(),t.createBlock(C,{key:1,modelValue:p.value,"onUpdate:modelValue":T[2]||(T[2]=M=>p.value=M),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"vault-secret-picker-secret-id-input",disabled:l.value||!A.value,label:t.unref(a)("vault_secret_picker.secret_id.label"),placeholder:t.unref(a)("vault_secret_picker.secret_id.input_placeholder"),required:"",type:"text"},null,8,["modelValue","disabled","label","placeholder"])),t.createVNode(C,{modelValue:u.value,"onUpdate:modelValue":T[3]||(T[3]=M=>u.value=M),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"vault-secret-picker-secret-key-input",disabled:l.value||!A.value,help:t.unref(a)("vault_secret_picker.optional_secret_key.help"),label:t.unref(a)("vault_secret_picker.optional_secret_key.label"),placeholder:t.unref(a)("vault_secret_picker.optional_secret_key.placeholder"),type:"text"},null,8,["modelValue","disabled","help","label","placeholder"])]))]),_:1},8,["action-button-disabled","action-button-text","title","visible"])}}}),Mh=To(Oh,[["__scopeId","data-v-df8552cc"]]),Rh={key:0},Th=t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:i}=ke.usePluginHelpers(),{i18n:{t:a}}=ke.useI18n(),o=l=>l.map(d=>d.replace(/^[cC]onfig\./,"").split(".").map(p=>i(p)).join(".")).join(", "),r=(l,d)=>a(l,{parameters:o(d)}),s=t.computed(()=>{const l=[];if(n.rules.atLeastOneOf)for(const d of n.rules.atLeastOneOf)l.push(r("plugins.form.field_rules.at_least_one_of",d));if(n.rules.onlyOneOf)for(const d of n.rules.onlyOneOf)l.push(r("plugins.form.field_rules.only_one_of",d));if(n.rules.mutuallyRequired)for(const d of n.rules.mutuallyRequired)l.push(r("plugins.form.field_rules.mutually_required",d));return l});return(l,d)=>{const p=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(p,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,(u,A)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${A}`},t.toDisplayString(u),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",Rh,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(u,A)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${A}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u,(g,E)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${A}-combination-${E}`},t.toDisplayString(o(g)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),_e=(e,n)=>{const i=e.__vccOpts||e;for(const[a,o]of n)i[a]=o;return i},Sh=_e(Th,[["__scopeId","data-v-d8eb79cf"]]),xh={class:"kong-ui-entities-plugin-form"},Vh={key:1,class:"entity-form"},Nh={class:"plugin-config-empty-state"},Dh=t.defineComponent({components:{...Df}}),Ph=t.defineComponent({...Dh,__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1}},emits:["loading","model-updated"],setup(e,{emit:n}){var ee,K;const i=n,a=e,{axiosInstance:o}=U.useAxios((ee=a.config)==null?void 0:ee.axiosRequestConfig),{parseSchema:r}=ke.useSchemas({entityId:((K=a.entityMap.focusedEntity)==null?void 0:K.id)||void 0,credential:a.credential}),{convertToDotNotation:s,unFlattenObject:l,isObjectEmpty:d,unsetNullForeignKey:p}=ke.usePluginHelpers(),{objectsAreEqual:u}=U.useHelpers(),{i18n:{t:A}}=mn(),g=(T,V)=>{let Y=`${a.config.apiBaseUrl}${Ie.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),Y=Y.replace(/{entity}/gi,T),Y=Y.replace(/{id}/gi,V),Y},E=T=>{let V=`${a.config.apiBaseUrl}${Ie.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?V=V.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(V=V.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),V=V.replace(/{entity}/gi,T),V},S=(T,V)=>{const Y=g(T,V);return o.get(Y)},h=(T,V)=>{const Y=E(T);return a.config.app==="konnect"?o.get(Y).then(C=>{const{data:{data:B}}=C;if(delete V.size,delete V.offset,B.length&&Object.keys(V).length===1){const M=Object.keys(V)[0],_=B.filter(ie=>ie[M]?!!ie[M].toLowerCase().includes(V[M].toLowerCase()):!1);C.data.data=_}return C}):o.get(Y,{params:V})};t.provide(dt,{getOne:S,getAll:h});const I=t.ref(""),w=t.ref(null),j=t.ref({}),y=t.reactive({}),m=t.reactive({}),b=t.computed(()=>{var T;return(T=w.value)==null?void 0:T.options}),f=t.ref(!1),k=t.ref(),O=(T,V)=>{f.value=T??"",k.value=V},H=T=>{var V;(V=k.value)==null||V.call(k,T),f.value=!1},x=()=>{var M,_;const T={...a.schema},V=m,Y=y,C=Object.keys(V),B={};if(!d(j.value))for(let ie=0;ie<((_=(M=j.value)==null?void 0:M.fields)==null?void 0:_.length);ie++)T[j.value.fields[ie].model]=j.value.fields[ie];return ai.forEach(ie=>{T[ie]&&(T[ie].fields.forEach(ne=>{ne.fields&&ne.fields.forEach(Q=>{T[Q.model]=Q}),ne.model&&(T[ne.model]=ne)}),delete T[ie])}),C.forEach(ie=>{var Nt;if(!T[ie])return;const ne=T[ie];let Q=V[ie];const Re=Y[ie],Ae=Array.isArray(Q)?"array":typeof Q,Ge=ne?ne.valueType:null,ft=ne?ne.valueArrayType:null,Vt=ne?ne.transform:null;if(Q==null&&Re==null&&!ne.submitWhenNull)return;if(ne){if(Ge&&Ae!==Ge)switch(Ge){case"array":Ae==="string"&&Q.length&&(Q=Q.split(",").map(ce=>{if(ce=ce.trim(),ft==="string")return String(ce);if(ft==="number")return Number(ce);if(ft==="boolean"){if(typeof ce=="string")return ce.toLowerCase()==="true"||ce==="1";if(typeof ce=="number")return ce===1}return ce})),(!Q||!Q.length)&&(Q=ne.submitWhenNull?null:[]);break;case"number":Q=Number(Q);break;case"boolean":Ae==="string"&&(Q=Q.toLowerCase()==="true"||Q==="1"),Ae==="number"&&(Q=Q===1);break;case"string":Q=Q==null?"":String(Q);break}else Ge==="array"&&(!Q||!Q.length?Q=ne.submitWhenNull?null:[]:((Nt=ne.inputAttributes)==null?void 0:Nt.type)==="number"&&(Q=Q.map(ce=>Number(ce))));if(ne.type==="array"&&ne.nestedFields){const ce=L=>{Object.keys(L).forEach(X=>{L[X]&&typeof L[X]=="object"&&L[X]!==null?ce(L[X]):(L[X]===void 0||L[X]===null||typeof L[X]=="number"&&isNaN(L[X])||typeof L[X]=="string"&&L[X].trim().length===0)&&delete L[X]})};Q&&typeof Q=="object"&&ce(Q)}ne.type==="object-advanced"&&ne.fields&&Q!==null&&(Object.entries(Q).length===0?Q=null:Object.keys(Q).forEach(ce=>{Array.isArray(Q[ce])||(Q[ce]=Q[ce].split(","))}))}let Ce=s(ie);if(ne.fieldNameHasDashes){const[ce,...L]=Ce.split(".").reverse();Ce=[ce.replace(/_/g,"-"),...L].reverse().join(".")}if(Ge==="object-expand"){let ce;[Ce,ce]=Ce.split(".");let L={};B[Ce]&&(L=B[Ce]),L[ce]=Q,Q=L}Re!==void 0&&Q===""&&Q!==Re?B[Ce]=Ge==="object"?{}:null:ne.type==="checklist"&&Q===""?B[Ce]=[]:Q!==""&&(B[Ce]=Q),B[Ce]=Vt?Vt(Q):B[Ce],p(Ce,B)}),l(B)},D=(T,V)=>{var B;const Y={[V]:T};typeof((B=a.schema[V])==null?void 0:B.modelTransformer)=="function"&&(Y[V]=a.schema[V].modelTransformer(T));const C=Object.assign({},m,Y);Object.assign(m,C),i("model-updated",{model:m,originalModel:y,data:x()})},F=(T,V)=>{Object.keys(T).forEach(Y=>{var ie,ne;let C=V?`${V}-${Y}`:Y,B=a.schema[C];if(!B){const Q=V?`${V}-${Y.replace(/-/g,"_")}`:Y.replace(/-/g,"_");(ie=a.schema[Q])!=null&&ie.fieldNameHasDashes&&(C=Q,B=a.schema[C]),V&&((ne=a.schema[V])==null?void 0:ne.keyFromObject)===Y&&(C=V,B=a.schema[C])}const M=T[Y],_=typeof M;if(B&&B.type==="object-advanced"&&!M){m[C]={},y[C]={};return}if(Array.isArray(M)){m[C]=JSON.parse(JSON.stringify(M)),y[C]=JSON.parse(JSON.stringify(M));return}if(_==="object"&&M&&!M.length)return F(M,C);if(_==="object"&&M&&M.length&&B.type==="input"){m[C]=M.join(", "),y[C]=M.join(", ");return}m[C]=M,y[C]=M}),i("model-updated",{model:m,originalModel:y,data:x()})},z=t.ref(!0),Z=()=>{var T;if(a.record&&a.schema&&(F({enabled:a.record.enabled??!0,...a.record.instance_name&&{instance_name:a.record.instance_name||""},...a.record.protocols&&{protocols:a.record.protocols},...a.record.tags&&{tags:a.record.tags}}),a.credential?((a.record.consumer_id||a.record.consumer)&&F({consumer_id:a.record.consumer_id||a.record.consumer}),F(a.record)):a.record.config&&((a.record.consumer_id||a.record.consumer||a.record.service_id||a.record.service||a.record.route_id||a.record.route||a.record.consumer_group_id||a.record.consumer_group)&&F({service_id:a.record.service_id||a.record.service,route_id:a.record.route_id||a.record.route,consumer_id:a.record.consumer_id||a.record.consumer,consumer_group_id:a.record.consumer_group_id||a.record.consumer_group}),F(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const V={};for(const Y in a.entityMap){const C=a.entityMap[Y].id,B=a.entityMap[Y].idField,M=B==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(B).replace("_","-"));Object.prototype.hasOwnProperty.call(m,M)&&(V[M]=C)}F(V)}if((T=a.entityMap.consumer)!=null&&T.id&&a.schema&&a.credential){const V={};Object.prototype.hasOwnProperty.call(m,"consumer")&&(V.consumer=a.entityMap.consumer.id),F(V)}z.value=!1};return t.watch(z,T=>{i("loading",T)}),t.watch(()=>a.schema,(T,V)=>{var C,B;if(u(T||{},V||{}))return;const Y=r(T);Object.assign(m,Y.model),j.value={fields:(B=(C=j.value)==null?void 0:C.fields)==null?void 0:B.map(M=>({...M,disabled:M.disabled||!1}))},Object.assign(y,JSON.parse(JSON.stringify(Y.model))),I.value=Co(Y.model.name),Z()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var T,V;w.value=r(a.schema),Object.assign(m,((T=w.value)==null?void 0:T.model)||{}),j.value=((V=w.value)==null?void 0:V.schema)||{},Z()}),(T,V)=>{var B;const Y=t.resolveComponent("KSkeleton"),C=t.resolveComponent("VueFormGenerator");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",xh,[z.value?(t.openBlock(),t.createBlock(Y,{key:0,type:"form"})):(t.openBlock(),t.createElementBlock("div",Vh,[I.value&&(m.id&&e.editing||!e.editing)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(I.value),{key:0,"form-model":m,"form-options":b.value,"form-schema":j.value,"is-editing":e.editing,"on-model-updated":D},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(ut),fn:t.withCtx(M=>[M.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(xo),t.mergeProps({key:0},M,{onOpen:V[0]||(V[0]=(_,ie)=>O(_,ie))}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing"])):t.createCommentVNode("",!0),!I.value&&(m.id&&e.editing||!e.editing)?(t.openBlock(),t.createBlock(C,{key:1,model:m,options:b.value,schema:j.value,onModelUpdated:D,onRefreshModel:x},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",Nh,t.toDisplayString(t.unref(A)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(B=t.unref(We)[m.name])!=null&&B.fieldRules&&(a.config.isNewOtelSchema||m.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(Sh,{rules:t.unref(We)[m.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(ut),fn:t.withCtx(M=>[M.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(xo),t.mergeProps({key:0},M,{onOpen:V[1]||(V[1]=(_,ie)=>O(_,ie))}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["model","options","schema"])):t.createCommentVNode("",!0)]))]),t.createVNode(t.unref(Mh),{config:a.config,setup:f.value,onCancel:V[2]||(V[2]=()=>f.value=!1),onProceed:H},null,8,["config","setup"])],64)}}}),Lh=_e(Ph,[["__scopeId","data-v-0f5311b2"]]),Gh={key:1},Uh=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,i)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",Gh,[t.renderSlot(n.$slots,"default")]))}}),jh={class:"kong-ui-entities-plugin-form-container"},Yh={key:0},Hh={class:"plugin-form-actions"},Fh=_e(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated"],setup(e,{emit:n}){var ce;const i=n,a=e,o=Ft.useRouter(),{i18n:{t:r}}=ke.useI18n(),{customSchemas:s,typedefs:l}=ke.useSchemas({app:a.config.app,credential:a.credential}),{formatPluginFieldLabel:d}=ke.usePluginHelpers(),{getMessageFromError:p}=U.useErrors(),{capitalize:u}=U.useStringHelpers(),{objectsAreEqual:A}=U.useHelpers(),{axiosInstance:g}=U.useAxios((ce=a.config)==null?void 0:ce.axiosRequestConfig),E=t.ref(!1),S=t.computed(()=>!!a.pluginId),h=t.computed(()=>a.pluginId?U.EntityBaseFormType.Edit:U.EntityBaseFormType.Create),I=t.ref(null),w=t.computed(()=>!!(a.credential&&a.config.entityId)),j=t.ref(null),y=t.ref({}),m=t.ref(!1),b=t.reactive({enabled:!0,protocols:[],tags:[]}),f=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,errorMessage:""}),k=t.ref([{title:r("view_configuration.json"),hash:"#json"},{title:r("view_configuration.yaml"),hash:"#yaml"}]);a.config.app==="konnect"&&k.value.splice(1,0,{title:r("view_configuration.terraform"),hash:"#terraform"});const O=t.ref(""),H=t.computed(()=>{if(w.value){let L=Ie.form[a.config.app].credential[h.value];return L=L.replace(/{resourceEndpoint}/gi,z.value),L}return a.config.entityType&&a.config.entityId?Ie.form[a.config.app].edit.forEntity.replace(/{entityType}/gi,a.config.entityType).replace(/{entityId}/gi,a.config.entityId):Ie.form[a.config.app].edit.all}),x=()=>{E.value=!E.value},D=t.computed(()=>{var J,W,te,de,re,G,P,q;const L=a.config.entityType==="consumers"&&a.config.entityId||((W=(J=j.value)==null?void 0:J.consumer)==null?void 0:W.id),X=a.config.entityType==="consumer_groups"&&a.config.entityId||((de=(te=j.value)==null?void 0:te.consumer_group)==null?void 0:de.id),v=a.config.entityType==="services"&&a.config.entityId||((G=(re=j.value)==null?void 0:re.service)==null?void 0:G.id),se=a.config.entityType==="routes"&&a.config.entityId||((q=(P=j.value)==null?void 0:P.route)==null?void 0:q.id);if(!(L||X||v||se))return{global:{entity:c.GLOBAL,entityEndpoint:"plugins"}};const N={};return v&&(N.service={entity:c.SERVICE,entityEndpoint:"services",id:v,idField:Et.SERVICE}),se&&(N.route={entity:c.ROUTE,entityEndpoint:"routes",id:se,idField:Et.ROUTE}),L&&(N.consumer={entity:c.CONSUMER,entityEndpoint:"consumers",id:L,idField:Et.CONSUMER}),X&&(N.consumer_group={entity:c.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:X,idField:Et.CONSUMER_GROUP}),a.config.entityType&&(N.focusedEntity={entity:c[a.config.entityType.substring(0,a.config.entityType.length-1).toUpperCase()],entityEndpoint:a.config.entityType,id:a.config.entityId,idField:Et[a.config.entityType.substring(0,a.config.entityType.length-1).toUpperCase()]}),N}),F=t.reactive({name:{default:a.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:r("plugins.form.fields.enabled.label"),textOn:r("plugins.form.fields.enabled.on_text"),textOff:r("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:a.hideScopeSelection&&(a.hideScopeSelection||h.value===U.EntityBaseFormType.Create&&a.config.entityId)?"foreign":"selectionGroup",disabled:a.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:r("plugins.form.scoping.global.label"),description:r("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:r("plugins.form.fields.protocols.help"),label:r("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:r("plugins.form.fields.instance_name.label"),inputType:"text",help:r("plugins.form.fields.instance_name.help")},tags:l.tags}),z=t.computed(()=>{var v;const L=a.developer?"developers":"consumers",X=((v=Pt[a.pluginType])==null?void 0:v.endpoint)||"/plugins";return`${L}/${a.config.entityId}${a.developer?"/credentials":""}${X}`}),Z=L=>{const X=Array.from(new Set(L.map(v=>typeof v)));return X.length>1?"string":X[0]},ee=(L,X,v,se)=>{var te,de;let N=X&&X.fields||[];const J=s[a.pluginType],W=(de=(te=Pt[a.pluginType])==null?void 0:te.schema)==null?void 0:de.fields;return Array.isArray(N)&&(N=N.reduce((re,G)=>{const P=Object.keys(G)[0];return P.match(/-/g)?re[P.replace(/-/g,"_")]={...G[P],fieldNameHasDashes:!0}:re[P]=G[P],re},{})),Object.keys(N).sort().forEach(re=>{var Be,Ve,Fe,Ht,ln,cn;const G=N[re];G.type==="set"&&(G.type="array");const P=L?`${L}-${re}`:`${re}`;if(Object.prototype.hasOwnProperty.call(G,"overwrite")||G.hidden)return;if(G.type==="table")return ee(P,G.schema,v);if(G.fields)return se&&G.type==="record"?(v[P]={type:"object",model:re,schema:{fields:Object.values(ee(P,G,{},!0))}},v):ee(P,G,v);if(v[P]={id:P,model:re},v[P].type=G.type==="boolean"?"checkbox":"input",v[P].required=G.required,v[P].referenceable=G.referenceable,P.startsWith("config-"))if(!se&&G.type==="array"&&(O.value=P),se&&O.value&&P.startsWith(O.value)){const ae=P.slice(O.value.length+1);v[P].label=ae.split("-").map(d).join(".")}else v[P].label=d(P);if((L==="config"||L.startsWith("config-"))&&(Be=N[re])!=null&&Be.description&&(v[P].help=oe.parse(N[re].description,{mangle:!1,headerIds:!1})),G.type==="map"){if(v[P].type="object-advanced",v[P].values=G.values,G.values.type==="array"){const{type:ae}=G.values.elements||{};v[P].schema={fields:[{schema:{fields:[{...Oe,model:P,valueArrayType:ae==="integer"?"number":ae||"string",inputAttributes:{...Oe.inputAttributes,type:ae==="integer"?"number":"text",inputMode:ae==="integer"?"numeric":"text"}}]}}]}}else G.values.fields&&(v[P].schema={fields:[{type:"object",model:"object",schema:{fields:G.values.fields.map(ae=>{const Ue=Object.keys(ae)[0];return{model:Ue,type:"input",label:u(Ue),placeholder:Ue,inputType:ae[Ue].type}})}}]});return v}if(G.enum&&G.type==="array"&&(v[P].type="checklist",v[P].values=G.enum,v[P].multi=!0,v[P].multiSelect=!0),G.one_of&&G.type!=="array"&&(v[P].type="select",v[P].values=G.one_of,v[P].selectOptions={noneSelectedText:r("plugins.form.no_selection")}),G.elements&&G.type==="array"){const ae=G.elements;if(v[P].referenceable=ae.referenceable,v[P].elements=ae,["string","integer","number"].includes(ae.type)&&!ae.one_of){const{id:Ue,help:be,label:pe,hint:Ne,values:ot,referenceable:Ke}=v[P],{inputAttributes:ht,...Ei}=JSON.parse(JSON.stringify(Oe));ht.type=ae.type==="string"?"text":"number",v[P]={id:Ue,help:be,label:pe,hint:Ne,values:ot,referenceable:Ke,inputAttributes:ht,...Ei}}}if(G.hint&&(v[P].hint=G.hint),J&&!J.overwriteDefault&&Object.keys(J).forEach(ae=>{if(ae===P){const{help:Ue,label:be,hint:pe,values:Ne,referenceable:ot,elements:Ke}=v[P],{help:ht,...Ei}=J[ae];v[P]={help:Ue,label:be,hint:pe,values:Ne,referenceable:ot,elements:Ke,...Ei},typeof ht=="string"&&(v[P].help=oe.parse(ht,{mangle:!1,headerIds:!1}))}}),G.type==="array"&&((Ve=G.elements)==null?void 0:Ve.type)==="record"&&Array.isArray(G.elements.fields)){let ae={};for(const be of G.elements.fields)ae={...ae,...be};const Ue=(ln=(Ht=(Fe=v[P])==null?void 0:Fe.items)==null?void 0:Ht.schema)==null?void 0:ln.fields;if(Array.isArray(Ue))for(const be of v[P].items.schema.fields){const pe=(cn=ae[be.model])==null?void 0:cn.description;be.help===void 0&&typeof pe=="string"&&(be.help=oe.parse(pe,{mangle:!1,headerIds:!1}))}if(Ue||(v[P].type="array",v[P].newElementButtonLabelClasses="kong-form-new-element-button-label",v[P].fieldClasses="array-card-container-wrapper",v[P].itemContainerComponent="FieldArrayCardContainer",v[P].items={type:"object",schema:{fields:Object.values(ee(P,G.elements,{},!0))}},v[P].items.schema.fields.forEach(be=>{var pe,Ne;for(const ot of G.elements.fields){const Ke=Object.keys(ot)[0],ht=((Ne=(pe=be.id)==null?void 0:pe.split)==null?void 0:Ne.call(pe,"-"))??[];if(ht[ht.length-1]===Ke){be.model=Ke,be.label=d(Ke);break}}}),G.elements.type==="record"&&(v[P].nestedFields=!0)),!v[P].nestedFields)v[P].items.default=()=>G.elements.fields.reduce((be,pe)=>{const Ne=Object.keys(pe)[0];return be[Ne]=pe[Ne].default,be},{});else{const be=(pe,Ne)=>{if(pe.type==="object"){pe.model&&(Ne[pe.model]={});for(const ot of pe.schema.fields)be(ot,pe.model?Ne[pe.model]:Ne)}else pe.model&&(Ne[pe.model]=pe.default)};v[P].items.default=()=>{const pe={};return be(v[P].items,pe),pe}}}if(w.value&&W){for(let ae=0;ae<W.length;ae++)if(W[ae][P]){v[P]={...v[P],...W[ae][P]};break}}if(G.required&&G.type!=="boolean"&&(v[P].required=!0,v[P].selectOptions={hideNoneSelectedText:!0}),G.required&&G.type==="boolean"&&(v[P].default=G.default??!1),G.default!=null&&typeof G.default!="object"&&G.default!=="function"&&(v[P].default=G.default),v[P].type==="input"){["string","number"].includes(typeof v[P].default)&&a.config.app==="konnect"&&(v[P].placeholder=`Default: ${v[P].default===""?"<empty string>":v[P].default}`);const{type:ae}=G.elements||{};ae&&(v[P].valueArrayType=ae==="integer"?"number":ae),v[P].inputType=G.type==="array"||G.type==="string"?G.encrypted?"password":"text":G.type}let q="string";G.enum?q=Z(G.enum):G.type==="boolean"?q="boolean":G.type==="number"||G.type==="integer"?(q="number",v[P].inputType="number"):G.type==="array"?(q="array",v[P].default=G.default,G.len_min>0&&(v[P].submitWhenNull=!0)):G.type==="foreign"?q="object":G.default&&Array.isArray(G.default)?(q="array",v[P].valueArrayType=Z(G.default)):G.default&&(q=typeof G.default),v[P].valueType=q,G.fieldNameHasDashes&&(v[P].fieldNameHasDashes=!0)}),v},K=()=>{var re,G,P,q,Be,Ve,Fe,Ht,ln,cn,ae,Ue;const L=((re=We[a.pluginType])==null?void 0:re.scope.includes(c.SERVICE))??!0,X=((G=We[a.pluginType])==null?void 0:G.scope.includes(c.ROUTE))??!0,v=((P=We[a.pluginType])==null?void 0:P.scope.includes(c.CONSUMER))??!0,se=a.config.disableConsumerGroupScope?!1:((q=We[a.pluginType])==null?void 0:q.scope.includes(c.CONSUMER_GROUP))??!0,N=a.config.entityType==="consumers"&&!!a.config.entityId||!!((Ve=(Be=j.value)==null?void 0:Be.consumer)!=null&&Ve.id),J=a.config.entityType==="consumer_groups"&&!!a.config.entityId||!!((Ht=(Fe=j.value)==null?void 0:Fe.consumer_group)!=null&&Ht.id),W=a.config.entityType==="services"&&!!a.config.entityId||!!((cn=(ln=j.value)==null?void 0:ln.service)!=null&&cn.id),te=a.config.entityType==="routes"&&!!a.config.entityId||!!((Ue=(ae=j.value)==null?void 0:ae.route)!=null&&Ue.id),de=[];if(L&&de.push({id:"service-id",model:"service-id",label:r("plugins.form.scoping.gateway_service.label"),placeholder:r("plugins.form.scoping.gateway_service.placeholder"),type:"AutoSuggest",entity:"services",inputValues:{fields:["name","id"]},help:r("plugins.form.scoping.gateway_service.help"),disabled:W&&a.disableScopeSelection}),X&&de.push({id:"route-id",model:"route-id",label:r("plugins.form.scoping.route.label"),placeholder:r("plugins.form.scoping.route.placeholder"),type:"AutoSuggest",entity:"routes",inputValues:{fields:["name","id"],primaryField:"id"},help:r("plugins.form.scoping.route.help"),disabled:te&&a.disableScopeSelection}),v&&de.push({model:"consumer-id",label:r("plugins.form.scoping.consumer.label"),placeholder:r("plugins.form.scoping.consumer.placeholder"),type:"AutoSuggest",entity:"consumers",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:r("plugins.form.scoping.consumer.help"),disabled:N&&a.disableScopeSelection}),se&&de.push({model:"consumer_group-id",label:r("plugins.form.scoping.consumer_group.label"),placeholder:r("plugins.form.scoping.consumer_group.placeholder"),type:"AutoSuggest",entity:"consumer_groups",entityDataKey:"consumer_group",inputValues:{fields:["name","id"],primaryField:"name"},help:r("plugins.form.scoping.consumer_group.help"),disabled:J&&a.disableScopeSelection}),de.length){const be=[...L?["service"]:[],...X?["route"]:[],...v?["consumer"]:[],...se?["consumer_group"]:[]],Ne=be.splice(be.length-2,2).map(Ke=>r(Ke==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Ke}.plural`)).join(`${be.length>0?",":""} and/or `),ot=["Specific",[...be.length>0?[be.map(Ke=>r(Ke==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Ke}.plural`)).join(", ")]:[],Ne].join(", ")].join(" ");F.selectionGroup.fields.push({label:r("plugins.form.scoping.label"),description:ot,fields:[]}),F.selectionGroup.fields[1].fields=de}s[a.pluginType]&&s[a.pluginType].overwriteDefault&&Object.hasOwnProperty.call(s[a.pluginType],"formSchema")&&Object.assign(F,s[a.pluginType].formSchema)},T=t.computed(()=>!A(f.fields,b,!0)),V=t.computed(()=>!Ce.value&&!m.value&&(h.value===U.EntityBaseFormType.Create||T.value)),Y=t.ref(!1),C=t.ref(),B=L=>{a.credential&&L.password&&(L.password=""),f.fields.id=(L==null?void 0:L.id)||void 0,C.value=L==null?void 0:L.ordering,Object.assign(b,f.fields),j.value=L,Y.value=!0},M=t.ref({}),_=L=>{var X;f.fields=L.model,f.fields.id=((X=j.value)==null?void 0:X.id)||void 0,Object.assign(b,L.originalModel),M.value=L.data,a.isWizardStep&&i("model-updated",{model:f.fields,data:L.data,resourceEndpoint:z.value})};t.watch([D,Y],(L,X)=>{const v=L[0]!==X[0],se=L[1],N=X[1];!w.value&&h.value===U.EntityBaseFormType.Edit&&(v||se&&se!==N)&&(Ce.value=!0,I.value=ee("config",y.value,F),Ce.value=!1)},{deep:!0});const ie=()=>{a.config.cancelRoute?o.push(a.config.cancelRoute):i("cancel")},ne=t.computed(()=>{let L=`${a.config.apiBaseUrl}${Ie.form[a.config.app].validate}`;return a.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),L=L.replace(/{id}/gi,a.pluginId),L}),Q=t.computed(()=>{const L=a.config.entityType&&a.config.entityId&&!a.developer,X=w.value?Ie.form[a.config.app].credential[h.value]:Ie.form[a.config.app][h.value][L?"forEntity":"all"];let v=`${a.config.apiBaseUrl}${X}`;return a.config.app==="konnect"?v=v.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(v=v.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),v=v.replace(/{resourceEndpoint}/gi,z.value),v=v.replace(/{id}/gi,a.pluginId),v=v.replace(/{entityType}/gi,a.config.entityType||""),v=v.replace(/{entityId}/gi,a.config.entityId||""),v}),Re=t.computed(()=>!Object.keys(We).includes(a.pluginType)),Ae=t.computed(()=>{const L=M.value;if(w.value){for(const X in c){const v=c[X];L[v]&&!L[v].id&&(L[v]={id:a.config.entityId})}delete L.created_at}return L}),Ge=async()=>{if(!a.isWizardStep)try{f.isReadonly=!0;let L;const X=JSON.parse(JSON.stringify(Ae.value)),v=s[a.pluginType];typeof(v==null?void 0:v.shamefullyTransformPayload)=="function"&&v.shamefullyTransformPayload({originalModel:b,model:f.fields,payload:X,schema:I.value}),!w.value&&!Re.value&&await g.post(ne.value,X),h.value==="create"?L=await g.post(Q.value,X):h.value==="edit"&&(L=a.config.app==="konnect"?await g.put(Q.value,Object.assign({ordering:C.value},X)):await g.patch(Q.value,X)),Object.assign(b,f.fields),i("update",L==null?void 0:L.data)}catch(L){f.errorMessage=p(L),i("error",L)}finally{f.isReadonly=!1}},ft=t.computed(()=>{var se;const L=w.value?(se=Pt[a.pluginType])==null?void 0:se.schemaEndpoint:a.pluginType,X=w.value?Ie.form[a.config.app].credentialSchema:Ie.form[a.config.app].pluginSchema;let v=`${a.config.apiBaseUrl}${X}`;return a.config.app==="konnect"?v=v.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(v=v.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),v=v.replace(/{plugin}/gi,L),v}),Vt=t.ref(""),Ce=t.ref(!1),Nt=t.ref("");return t.onBeforeMount(async()=>{var L,X,v;Ce.value=!0;try{if(w.value&&a.config.app==="konnect"){const se=(L=Pt[a.pluginType])==null?void 0:L.schemaEndpoint,N=Vl[se];Vt.value=se,I.value=ee("",N,{}),Ce.value=!1}else{const se=await g.get(ft.value),{data:N}=se;if(N)if(w.value)I.value=ee("",N,{}),Ce.value=!1;else{const J=N.fields.find(te=>te.config);y.value=J?J.config:se,K();const W=(X=N.fields.find(te=>te.protocols))==null?void 0:X.protocols;if(W){const{default:te=[],elements:de={}}=W;F.protocols.default=te,F.protocols.placeholder=a.config.app==="konnect"?r("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:te.join(", ")}):r("plugins.form.fields.protocols.placeholder"),(v=de.one_of)!=null&&v.length&&(F.protocols.values=de.one_of.map(re=>({label:re,value:re})))}(Y.value||h.value===U.EntityBaseFormType.Create)&&(I.value=ee("config",y.value,F))}}}catch(se){Nt.value=p(se),i("error:fetch-schema",se)}finally{Ce.value=!1}}),(L,X)=>{const v=t.resolveComponent("KSkeleton"),se=t.resolveComponent("KEmptyState"),N=t.resolveComponent("KButton"),J=t.resolveComponent("KTabs"),W=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",jh,[Ce.value?(t.openBlock(),t.createBlock(v,{key:0,type:"form"})):Nt.value?(t.openBlock(),t.createBlock(se,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(r)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(U.EntityBaseForm),{key:2,"can-submit":V.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(U.SupportedEntityType).Plugin,"error-message":f.errorMessage,"fetch-url":H.value,"form-fields":Ae.value,"is-readonly":f.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ie,"onFetch:error":X[2]||(X[2]=te=>L.$emit("error",te)),"onFetch:success":B,onLoading:X[3]||(X[3]=te=>L.$emit("loading",te))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",Yh)):(t.openBlock(),t.createBlock(Uh,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",Hh,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(N,{key:0,appearance:"tertiary","data-testid":`plugin-${S.value?"edit":"create"}-form-view-configuration`,onClick:X[1]||(X[1]=te=>x())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(N,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${S.value?"edit":"create"}-form-cancel`,disabled:f.isReadonly,onClick:ie},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(N,{appearance:"primary","data-testid":`plugin-${S.value?"edit":"create"}-form-submit`,disabled:!V.value||f.isReadonly,type:"submit",onClick:Ge},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:Ge},null,32),t.createVNode(Lh,{config:e.config,credential:w.value,editing:h.value===t.unref(U.EntityBaseFormType).Edit,"enable-vault-secret-picker":a.enableVaultSecretPicker,"entity-map":D.value,record:j.value||void 0,schema:I.value||{},onLoading:X[0]||(X[0]=te=>m.value=te),onModelUpdated:_},null,8,["config","credential","editing","enable-vault-secret-picker","entity-map","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),t.createVNode(W,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(r)("view_configuration.title"),visible:E.value,onClose:x},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("view_configuration.message")),1),t.createVNode(J,{"data-testid":"form-view-configuration-slideout-tabs",tabs:k.value},{json:t.withCtx(()=>[t.createVNode(t.unref(U.JsonCodeBlock),{config:e.config,"entity-record":Ae.value,"fetcher-url":Q.value,"request-method":a.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(U.YamlCodeBlock),{"entity-record":Ae.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(U.TerraformCodeBlock),{"credential-type":Vt.value,"entity-record":Ae.value,"entity-type":t.unref(U.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-b9589a4b"]]),Kh=["alt","height","src","width"],Sn=t.defineComponent({__name:"PluginIcon",props:{name:{type:String,required:!0},size:{type:Number,default:32,required:!1},alt:{type:String,default:"",required:!1}},setup(e){const n=e,i=t.ref(),a=t.computed(()=>zi(n.name)),o=()=>{const r=new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAHgCAMAAABKCk6nAAAAhFBMVEUAAADs+fnr8PTo7fLm7PDl6e7j6+7j6O3i6Ozh5+vp9PTm7PDj6e319fXn7PHj6O739/fn7PDi6e3////o7fLj6Ozt8fbj6u7r7vPi6ezo7fL////n7PHm6/Dl6+/q8PTs8vbu9Pjv9frw9vri6ezv9fnp7/Pt8vfk6u6cpar////e4ePLpSv+AAAAHnRSTlMAKIq93/T6/f7/W8z3GbL4Hr/9AZ39OPFo/Z4FzOeuk05oAAAFJklEQVR4Ae3ThZLjyhWA4SNdWJ9BMy/KA3n/twoXBafWWYb2QPi6Vd9XKGz4q5t4QPNZHDP2n8W/4uT0bJBUZHB2ehL/pPOLy6wQlxfn8bThaJxUajwaxuMm01lSsdl0Eo+YL5LKLebxoOUqqd5qGQ9YD7IHGKzjPptt9gTbzT19n2dv8Pyw8DZ7hG0U1tkrrOM7y0H2CoNlfGO+yp5hNY8vJovsHRaT+GyaPcQ03mkiYvjnNu4za94Ljtn+vd/Efc7+/sf4YJT32L286qjE1ctd3mMUH5yP89D1m46KvLnOQ+PzeO8iD+xuOipzs8sDF/HeZZZuX3dU5/Vtli7jnZMs7fSts/AuSycRcZqlm44q3WTpNCLOsnDdUanrLJxF29zF9zZ3QaXuNuWNJtosvOyo1ssstG0ThZ+Dah3Ea+LHIvmLjoq9KHL+2DYHyanYQc6jDYzACCxwZKGjallog177DwIjMAIjMAIjsMAIjMAIjMAIjMAILDACIzACIzACI7DACIzACIzACIzAAiMwAiMwAiMwAiOwwAiMwAiMwAiMwAIjMAIjMAIjMAILjMAIjMAIjMAIjMACIzACIzACIzACC4zACIzACIzACIzAAiMwAiMwAiMwAguMwAiMwAiMwAgsMAIjMAIjMAIjMAILjMAIjMAIjMAILDACIzACI/DP/6GjGENgBEZgBBYYgREYgREYgRGYJwMjMAIjMAI3TziCMQTmaAIjMAIjMAIjMAILjMAIjMAIjMAITBa6X9CveqD7hWWhDXpNYIERGIERGIERGIEFRmAERmAERuBKCdw2R68VGIERGIERWGAERmAERmAERmCBERiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIEFRmAERmAERuB+EPjt/ui9FRiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgWshcNscvVZgBEZgBEZggREYgREYgREYgQVGYARGYARGYARGYIERGIERGIERGIEFRmAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBBYYgREYgREYgftB4Lf7o/dWYARGYARGYIERGIERGIERGIEFRmAE5kj9GEfkb/EfwwkWGIERGIERGIERWGAERmAERmAERmAEFhiBERiBERiBEVhgBEZgBEZgBEZggREYgREYgREYgRFYYARGYARGYARGYIERGIERGIERGIERWGAERmAERmAERmCBERiBERiBERiBBUZgBEZgBEZgBEZggREYgREYgREYgQVGYARGYARGYAQWGIERGIERGIERGIEFRmAERmAERmAEFhiBERiBERiBEZh2r3iflPn2B4HvgordPRl4H1RsL7DAfSJw/JCFq45qXWXhh3Yfhb8F1TqIt2/3ZeGf9kGl9j/F997XPcvCdUelrrNwFhGnWbrpqNJNlk4j4iRLu9cdFXq9y9JJvHOZpVuFa+x7m6XLeO8iD+xuOipzs8sDF/He+TgPXb/pqMib6zw0Po8PRnmP3curjkpcvdzlPUYR0UTE8M9t3GfWvBfHjP17v4n7nP39j/HRNOmhaXw2WSS9s5jEF/NV0jOreXxjOUh6ZbCM76yTXllHYZv0yDZKm+dJbzzfxGHhbdIT203cZz1IemCwjgcsV0n1Vst40HyRVG4xj0dMprOkYrPpJB43HI2TSo1Hw3ja+cVlUqHLi/P4J52cng2SigzOTk/iPk08oPksjhn7z+J+/wBSUhUZLUGZBgAAAABJRU5ErkJggg==",typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:$e&&$e.tagName.toUpperCase()==="SCRIPT"&&$e.src||new URL("entities-plugins.umd.js",document.baseURI).href).href;i.value&&i.value.src!==r&&(i.value.src=r)};return(r,s)=>(t.openBlock(),t.createElementBlock("img",{ref_key:"img",ref:i,alt:e.alt,height:e.size,src:a.value,width:e.size,onError:o},null,40,Kh))}});var zh=Object.prototype;function Vo(e){var n=e&&e.constructor,i=typeof n=="function"&&n.prototype||zh;return e===i}function Jh(e,n){return function(i){return e(n(i))}}var Qh=Jh(Object.keys,Object),Xh=Object.prototype,qh=Xh.hasOwnProperty;function Zh(e){if(!Vo(e))return Qh(e);var n=[];for(var i in Object(e))qh.call(e,i)&&i!="constructor"&&n.push(i);return n}var No=typeof global=="object"&&global&&global.Object===Object&&global,Wh=typeof self=="object"&&self&&self.Object===Object&&self,mt=No||Wh||Function("return this")(),xn=mt.Symbol,Do=Object.prototype,_h=Do.hasOwnProperty,$h=Do.toString,an=xn?xn.toStringTag:void 0;function ey(e){var n=_h.call(e,an),i=e[an];try{e[an]=void 0;var a=!0}catch{}var o=$h.call(e);return a&&(n?e[an]=i:delete e[an]),o}var ty=Object.prototype,ny=ty.toString;function iy(e){return ny.call(e)}var ay="[object Null]",oy="[object Undefined]",Po=xn?xn.toStringTag:void 0;function on(e){return e==null?e===void 0?oy:ay:Po&&Po in Object(e)?ey(e):iy(e)}function Lo(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var ry="[object AsyncFunction]",sy="[object Function]",ly="[object GeneratorFunction]",cy="[object Proxy]";function Go(e){if(!Lo(e))return!1;var n=on(e);return n==sy||n==ly||n==ry||n==cy}var si=mt["__core-js_shared__"],Uo=function(){var e=/[^.]+$/.exec(si&&si.keys&&si.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function dy(e){return!!Uo&&Uo in e}var uy=Function.prototype,py=uy.toString;function St(e){if(e!=null){try{return py.call(e)}catch{}try{return e+""}catch{}}return""}var Ay=/[\\^$.*+?()[\]{}|]/g,gy=/^\[object .+?Constructor\]$/,my=Function.prototype,fy=Object.prototype,hy=my.toString,yy=fy.hasOwnProperty,by=RegExp("^"+hy.call(yy).replace(Ay,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ey(e){if(!Lo(e)||dy(e))return!1;var n=Go(e)?by:gy;return n.test(St(e))}function wy(e,n){return e==null?void 0:e[n]}function rn(e,n){var i=wy(e,n);return Ey(i)?i:void 0}var li=rn(mt,"DataView"),ci=rn(mt,"Map"),di=rn(mt,"Promise"),ui=rn(mt,"Set"),pi=rn(mt,"WeakMap"),jo="[object Map]",Cy="[object Object]",Yo="[object Promise]",Ho="[object Set]",Fo="[object WeakMap]",Ko="[object DataView]",By=St(li),ky=St(ci),Iy=St(di),vy=St(ui),Oy=St(pi),xt=on;(li&&xt(new li(new ArrayBuffer(1)))!=Ko||ci&&xt(new ci)!=jo||di&&xt(di.resolve())!=Yo||ui&&xt(new ui)!=Ho||pi&&xt(new pi)!=Fo)&&(xt=function(e){var n=on(e),i=n==Cy?e.constructor:void 0,a=i?St(i):"";if(a)switch(a){case By:return Ko;case ky:return jo;case Iy:return Yo;case vy:return Ho;case Oy:return Fo}return n});function Ai(e){return e!=null&&typeof e=="object"}var My="[object Arguments]";function zo(e){return Ai(e)&&on(e)==My}var Jo=Object.prototype,Ry=Jo.hasOwnProperty,Ty=Jo.propertyIsEnumerable,Sy=zo(function(){return arguments}())?zo:function(e){return Ai(e)&&Ry.call(e,"callee")&&!Ty.call(e,"callee")},xy=Array.isArray,Vy=9007199254740991;function Qo(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Vy}function Ny(e){return e!=null&&Qo(e.length)&&!Go(e)}function Dy(){return!1}var Xo=typeof $=="object"&&$&&!$.nodeType&&$,qo=Xo&&typeof module=="object"&&module&&!module.nodeType&&module,Py=qo&&qo.exports===Xo,Zo=Py?mt.Buffer:void 0,Ly=Zo?Zo.isBuffer:void 0,Gy=Ly||Dy,Uy="[object Arguments]",jy="[object Array]",Yy="[object Boolean]",Hy="[object Date]",Fy="[object Error]",Ky="[object Function]",zy="[object Map]",Jy="[object Number]",Qy="[object Object]",Xy="[object RegExp]",qy="[object Set]",Zy="[object String]",Wy="[object WeakMap]",_y="[object ArrayBuffer]",$y="[object DataView]",eb="[object Float32Array]",tb="[object Float64Array]",nb="[object Int8Array]",ib="[object Int16Array]",ab="[object Int32Array]",ob="[object Uint8Array]",rb="[object Uint8ClampedArray]",sb="[object Uint16Array]",lb="[object Uint32Array]",ye={};ye[eb]=ye[tb]=ye[nb]=ye[ib]=ye[ab]=ye[ob]=ye[rb]=ye[sb]=ye[lb]=!0,ye[Uy]=ye[jy]=ye[_y]=ye[Yy]=ye[$y]=ye[Hy]=ye[Fy]=ye[Ky]=ye[zy]=ye[Jy]=ye[Qy]=ye[Xy]=ye[qy]=ye[Zy]=ye[Wy]=!1;function cb(e){return Ai(e)&&Qo(e.length)&&!!ye[on(e)]}function db(e){return function(n){return e(n)}}var Wo=typeof $=="object"&&$&&!$.nodeType&&$,sn=Wo&&typeof module=="object"&&module&&!module.nodeType&&module,ub=sn&&sn.exports===Wo,gi=ub&&No.process,_o=function(){try{var e=sn&&sn.require&&sn.require("util").types;return e||gi&&gi.binding&&gi.binding("util")}catch{}}(),$o=_o&&_o.isTypedArray,pb=$o?db($o):cb,Ab="[object Map]",gb="[object Set]",mb=Object.prototype,fb=mb.hasOwnProperty;function er(e){if(e==null)return!0;if(Ny(e)&&(xy(e)||typeof e=="string"||typeof e.splice=="function"||Gy(e)||pb(e)||Sy(e)))return!e.length;var n=xt(e);if(n==Ab||n==gb)return!e.size;if(Vo(e))return!Zh(e).length;for(var i in e)if(fb.call(e,i))return!1;return!0}const hb="#00abd2",yb="16px",bb="24px",Eb={class:"kong-ui-entities-plugins-list"},wb={class:"button-row"},Cb={class:"empty-state-icon-gateway"},Bb={class:"name-cell-wrapper"},kb={class:"info-wrapper"},Ib={key:0,class:"info-name"},vb={key:1,class:"info-name"},Ob={key:2,class:"info-type"},Mb={key:1},Rb=_e(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.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},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1},enableV2EmptyStates:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var v,se;const i=ke.usePluginMetaData(),a=n,o=e,{i18n:{t:r}}=ke.useI18n(),s=Ft.useRouter(),{axiosInstance:l}=U.useAxios((v=o.config)==null?void 0:v.axiosRequestConfig),{hasRecords:d,handleStateChange:p}=U.useTableState(()=>m.value),u=t.computed(()=>d.value&&o.config.app==="konnect"),A=t.computed(()=>!o.enableV2EmptyStates&&o.config.app==="konnect"),g=t.computed(()=>!!o.config.entityId),E=t.computed(()=>{var N;return((N=o.config)==null?void 0:N.entityType)==="consumers"}),S=t.computed(()=>{var N;return((N=o.config)==null?void 0:N.entityType)==="consumer_groups"}),h=o.config.app==="konnect"||U.useGatewayFeatureSupported({gatewayInfo:o.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),I=t.computed(()=>o.config.app!=="kongManager"||!!o.config.disableSorting),w={name:{label:r("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(se=o.config)!=null&&se.entityId||(w.appliedTo={label:r("plugins.list.table_headers.applied_to"),sortable:!1}),w.enabled={label:r("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(w.ordering={label:r("plugins.list.table_headers.ordering"),sortable:!0}),w.tags={label:r("plugins.list.table_headers.tags"),sortable:!1};const j=w,y=t.computed(()=>{var J,W,te,de;let N=o.config.entityType?`${o.config.apiBaseUrl}${Ie.list[o.config.app].forEntity}`:`${o.config.apiBaseUrl}${Ie.list[o.config.app].all}`;return o.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((J=o.config)==null?void 0:J.controlPlaneId)||""):o.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(W=o.config)!=null&&W.workspace?`/${o.config.workspace}`:"")),N.replace(/{entityType}/gi,((te=o.config)==null?void 0:te.entityType)||"").replace(/{entityId}/gi,((de=o.config)==null?void 0:de.entityId)||"")}),m=t.ref(""),b=t.computed(()=>o.config.app==="konnect"||o.config.isExactMatch?{isExactMatch:!0,fields:{name:w.name,id:{label:r("plugins.list.table_headers.id"),sortable:!0}},placeholder:r(`search.placeholder.${o.config.isExactMatch?"exact":o.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...w.enabled,label:r("search.filter.field.enabled")},name:w.name,instance_name:{label:r("plugins.list.table_headers.instance_name"),searchable:!0}},schema:o.config.filterSchema}),{fetcher:f,fetcherState:k,fetcherCacheKey:O}=U.useFetcher({...o.config,cacheIdentifier:o.cacheIdentifier},y.value),H=()=>{m.value=""},x=()=>{O.value++},D=t.ref(null),F=N=>{var W,te,de,re;const J=[];return((W=N.route)!=null&&W.id||N.route_id)&&J.push({type:"route",badgeText:r("plugins.list.table_headers.applied_to_badges.route")}),((te=N.service)!=null&&te.id||N.service_id)&&J.push({type:"service",badgeText:r("plugins.list.table_headers.applied_to_badges.service")}),((de=N.consumer)!=null&&de.id||N.consumer_id)&&J.push({type:"consumer",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer")}),((re=N.consumer_group)!=null&&re.id||N.consumer_group_id)&&J.push({type:"consumer_group",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer_group")}),J.length?J:[{type:null,badgeText:r("plugins.list.table_headers.applied_to_badges.global")}]},z=async(N,J)=>{var W;return N===null?!1:await((W=o.canRetrieveScopedEntity)==null?void 0:W.call(o,N,J.id))},Z=(N,J)=>{var te,de,re,G,P;let W=null;switch(N){case"route":W=(te=J.route)==null?void 0:te.id;break;case"service":W=(de=J.service)==null?void 0:de.id;break;case"consumer":W=(re=J.consumer)==null?void 0:re.id;break;case"consumer_group":W=(G=J.consumer_group)==null?void 0:G.id;break}W&&((P=o.config)!=null&&P.getScopedEntityViewRoute)&&s.push(o.config.getScopedEntityViewRoute(N,W))},ee=t.ref(!1),K=t.ref(null),T=t.computed(()=>{const N={action:"disable",id:"",name:""};if(K.value){const{enabled:J,id:W,name:te}=K.value;N.action=J?"disable":"enable",N.id=W,N.name=i.getDisplayName(te)||W}return N}),V=N=>{ee.value=!0,K.value=N},Y=()=>{ee.value=!1,K.value=null},C=async()=>{var te,de,re,G,P,q,Be,Ve;if(!await((te=o.canEdit)==null?void 0:te.call(o,K.value))||!K.value)return;let J=`${o.config.apiBaseUrl}${(P=Ie.item[o.config.app])==null?void 0:P[(de=o.config)!=null&&de.entityType?"forEntity":"all"].replace(/{entityType}/gi,((re=o.config)==null?void 0:re.entityType)||"").replace(/{entityId}/gi,((G=o.config)==null?void 0:G.entityId)||"")}`.replace(/{id}/gi,K.value.id||"");o.config.app==="konnect"?J=J.replace(/{controlPlaneId}/gi,((q=o.config)==null?void 0:q.controlPlaneId)||""):o.config.app==="kongManager"&&(J=J.replace(/\/{workspace}/gi,(Be=o.config)!=null&&Be.workspace?`/${o.config.workspace}`:""));const W=!K.value.enabled;try{const{data:Fe}=((Ve=o.config)==null?void 0:Ve.app)==="konnect"?await l.put(J,{...K.value,enabled:W},{timeout:12e4}):await l.patch(J,{...K.value,enabled:W},{timeout:12e4});a("toggle-enabled",W,Fe),K.value.enabled=W}catch(Fe){a("error",Fe)}},B=(N,J)=>{const W=N.id;if(!J(W)){a("copy:error",{entity:N,field:"id",message:r("errors.copy")});return}a("copy:success",{entity:N,field:"id",message:r("copy.success",{val:W})})},M=(N,J)=>{const W=JSON.stringify(N);if(!J(W)){a("copy:error",{entity:N,message:r("errors.copy")});return}a("copy:success",{entity:N,message:r("copy.success_brief")})},_=async N=>{var W;await((W=o.canRetrieve)==null?void 0:W.call(o,N))&&s.push(o.config.getViewRoute(N))},ie=N=>({label:r("actions.view"),to:o.config.getViewRoute(N)}),ne=N=>({label:r("actions.edit"),to:o.config.getEditRoute(N)}),Q=N=>({label:r("actions.configure_dynamic_ordering"),to:o.config.getConfigureDynamicOrderingRoute(N)}),Re=t.ref(void 0),Ae=t.ref(!1),Ge=t.ref(!1),ft=t.ref(""),Vt=U.useDeleteUrlBuilder(o.config,y.value),Ce=N=>{Re.value=N,Ae.value=!0},Nt=()=>{Ae.value=!1},ce=async()=>{var N,J,W;if((N=Re.value)!=null&&N.id){Ge.value=!0;try{await l.delete(Vt(Re.value.id)),Ge.value=!1,Ae.value=!1,O.value++,a("delete:success",Re.value)}catch(te){ft.value=((W=(J=te.response)==null?void 0:J.data)==null?void 0:W.message)||te.message||r("errors.delete"),a("error",te)}finally{Ge.value=!1}}},L=()=>{s.push(o.config.createRoute)};t.watch(k,N=>{var J,W,te;if(N.status===U.FetcherStatus.Error){D.value={title:r("errors.general")},(te=(W=(J=N.error)==null?void 0:J.response)==null?void 0:W.data)!=null&&te.message&&(D.value.message=N.error.response.data.message),a("error",N.error);return}D.value=null});const X=t.ref({ctaPath:o.config.createRoute,ctaText:void 0,message:`${r("plugins.list.empty_state.description")}${o.config.additionMessageForEmptyState?` ${o.config.additionMessageForEmptyState}`:""}`,title:r("plugins.title")});return t.onBeforeMount(async()=>{await o.canCreate()&&(X.value.title=r("plugins.list.empty_state.title"),X.value.ctaText=r("actions.create"))}),(N,J)=>{const W=t.resolveComponent("KButton"),te=t.resolveComponent("KBadge"),de=t.resolveComponent("KTruncate"),re=t.resolveComponent("KInputSwitch"),G=t.resolveComponent("KDropdownItem"),P=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",Eb,[t.createVNode(t.unref(U.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":I.value,"empty-state-options":X.value,"enable-entity-actions":"","error-message":D.value,fetcher:t.unref(f),"fetcher-cache-key":t.unref(O),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:m.value,"table-headers":t.unref(j),title:e.title,"title-tag":e.titleTag,onClearSearchInput:H,"onClick:row":J[5]||(J[5]=q=>_(q)),onSort:x,onState:t.unref(p)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(U.EntityFilter),{modelValue:m.value,"onUpdate:modelValue":J[0]||(J[0]=q=>m.value=q),config:b.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",wb,[!g.value&&u.value?(t.openBlock(),t.createBlock(W,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:J[1]||(J[1]=q=>N.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(je.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(W,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(je.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(r)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:q})=>[t.createElementVNode("div",Bb,[t.createVNode(Sn,{class:"plugin-icon",name:q.name,size:24},null,8,["name"]),t.createElementVNode("div",kb,[q.instance_name?(t.openBlock(),t.createElementBlock("span",Ib,t.toDisplayString(q.instance_name),1)):(t.openBlock(),t.createElementBlock("span",vb,t.toDisplayString(t.unref(i).getDisplayName(q.name)),1)),q.instance_name?(t.openBlock(),t.createElementBlock("span",Ob,t.toDisplayString(t.unref(i).getDisplayName(q.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:q})=>[F(q).length>0?(t.openBlock(),t.createBlock(de,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(F(q),Be=>(t.openBlock(),t.createBlock(t.unref(U.PermissionsWrapper),{key:Be.badgeText,"auth-function":()=>z(Be.type,q),"force-show":""},{default:t.withCtx(({isAllowed:Ve})=>[t.createVNode(te,{class:t.normalizeClass(Ve||"disabled"),onClick:t.withModifiers(Fe=>Ve&&Be.type&&Z(Be.type,q),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(Be.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",Mb,"-"))]),enabled:t.withCtx(({row:q})=>[t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(q)&&await e.canToggle(q)),"force-show":""},{default:t.withCtx(({isAllowed:Be})=>{var Ve,Fe;return[t.createElementVNode("div",{onClick:J[4]||(J[4]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(re,{disabled:!Be,"disabled-tooltip-text":!Be&&((Fe=(Ve=e.config).getToggleDisabledTooltip)==null?void 0:Fe.call(Ve,q))||void 0,"model-value":q.enabled,onClick:t.withModifiers(Ht=>Be&&V(q),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:q})=>[t.createVNode(te,{appearance:t.unref(er)(q)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(er)(q)?t.unref(r)("plugins.list.table_headers.ordering_badge.static"):t.unref(r)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:q})=>[t.createVNode(t.unref(U.TableTags),{tags:q},null,8,["tags"])]),actions:t.withCtx(({row:q})=>[t.createVNode(P,null,{default:t.withCtx(({copyToClipboard:Be})=>[t.createVNode(G,{"data-testid":"action-entity-copy-id",onClick:Ve=>B(q,Be)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(P,null,{default:t.withCtx(({copyToClipboard:Be})=>[t.createVNode(G,{"data-testid":"action-entity-copy-json",onClick:Ve=>M(q,Be)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(q)},{default:t.withCtx(()=>[t.createVNode(G,{"data-testid":"action-entity-view","has-divider":"",item:ie(q)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":()=>e.canEdit(q)},{default:t.withCtx(()=>[t.createVNode(G,{"data-testid":"action-entity-edit",item:ne(q)},null,8,["item"])]),_:2},1032,["auth-function"]),!E.value&&!S.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(U.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(q)},{default:t.withCtx(()=>[Q(q)?(t.openBlock(),t.createBlock(G,{key:0,"data-testid":"action-entity-config-dyn-order",item:Q(q)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(U.PermissionsWrapper),{"auth-function":()=>e.canDelete(q)},{default:t.withCtx(()=>[t.createVNode(G,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:Be=>Ce(q)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!t.unref(d)&&A.value?{name:"outside-actions",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createVNode(W,{appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:J[2]||(J[2]=q=>N.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(je.BookIcon),{decorative:""})]),_:1})],8,["disabled"]))]),key:"0"}:void 0,e.enableV2EmptyStates&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>[t.createVNode(t.unref(U.EntityEmptyState),{"action-button-text":t.unref(r)("plugins.list.empty_state_v2.create_cta"),appearance:"secondary","can-create":()=>e.canCreate(),description:t.unref(r)("plugins.list.empty_state_v2.description"),"learn-more":e.config.app==="konnect",title:t.unref(r)("plugins.list.empty_state_v2.title"),"onClick:create":L,"onClick:learnMore":J[3]||(J[3]=q=>N.$emit("click:learn-more"))},{image:t.withCtx(()=>[t.createElementVNode("div",Cb,[t.createVNode(t.unref(je.PlugIcon),{color:t.unref(hb),size:t.unref(bb)},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","title","title-tag","onState"]),t.createVNode(t.unref(U.EntityToggleModal),{action:T.value.action,"entity-id":T.value.id,"entity-name":T.value.name,"entity-type":t.unref(r)("glossary.plugin"),"on-confirm":C,visible:ee.value,onCancel:Y,onProceed:Y},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(U.EntityDeleteModal),{"action-pending":Ge.value,description:t.unref(r)("delete.description"),"entity-name":Re.value&&(Re.value.instance_name||Re.value.name||Re.value.id),"entity-type":t.unref(U.EntityTypes).Plugin,error:ft.value,title:t.unref(r)("delete.title"),visible:Ae.value,onCancel:Nt,onProceed:ce},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-fc1491f5"]]),Tb={class:"plugin-select-card-wrapper"},Sb=["data-testid"],xb={class:"plugin-card-header"},Vb={class:"plugin-card-title"},Nb={key:0,class:"plugin-card-actions"},Db=["data-testid","title"],Pb={key:0,class:"plugin-card-text"},Lb={key:0},Gb=["title"],mi=_e(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const i=n,a=e,o=Ft.useRouter(),{i18n:{t:r}}=ke.useI18n(),s=t.computed(()=>a.config.app==="konnect"?a.config.controlPlaneId:""),l=t.computed(()=>!!(!a.plugin.available||a.plugin.disabledMessage)),d=t.computed(()=>!!(E.value&&!g.value&&a.navigateOnClick&&s.value&&(a.canDeleteCustomPlugin||a.canEditCustomPlugin))),p=()=>{o.push(a.config.getCreateRoute(a.plugin.id))},u=()=>{a.navigateOnClick?p():A()},A=()=>{i("plugin-clicked",a.plugin)},g=t.computed(()=>a.plugin.id==="custom-plugin-create"),E=t.computed(()=>a.config.app==="konnect"&&a.plugin.group===R.CUSTOM_PLUGINS),S=()=>{a.config.app==="konnect"&&i("custom-plugin-delete")},h=(w,j)=>{const y=a.config;a.config.app==="konnect"&&typeof y.getCustomEditRoute=="function"&&y.getCustomEditRoute&&o.push(y.getCustomEditRoute(w,j))},I=()=>{if(!l.value&&a.config.app==="konnect"){const w=a.config;g.value&&w.createCustomRoute?o.push(w.createCustomRoute):E.value&&p()}};return(w,j)=>{const y=t.resolveComponent("KButton"),m=t.resolveComponent("KDropdownItem"),b=t.resolveComponent("KDropdownMenu"),f=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",Tb,[t.createVNode(f,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:l.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:j[1]||(j[1]=k=>l.value||E.value?void 0:u())},[t.createElementVNode("div",xb,[t.createElementVNode("div",Vb,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!E.value})},t.toDisplayString(e.plugin.name),3)]),d.value?(t.openBlock(),t.createElementBlock("div",Nb,[t.createVNode(b,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(y,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(je.MoreIcon),{size:t.unref(yb)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(m,{key:0,"data-testid":"edit-plugin-schema",onClick:j[0]||(j[0]=t.withModifiers(k=>h(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(m,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(S,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":E.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(r)("plugins.select.unavailable_tooltip"),onClick:I},[t.createVNode(Sn,{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.imageName||e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||E.value&&!g.value?(t.openBlock(),t.createElementBlock("div",Pb,[E.value&&!g.value?(t.openBlock(),t.createElementBlock("p",Lb,t.toDisplayString(t.unref(r)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,Gb)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,Db),t.createElementVNode("div",{class:"plugin-card-footer",onClick:I},t.toDisplayString(g.value?t.unref(r)("actions.create_custom"):e.plugin.exists?t.unref(r)("actions.enabled"):t.unref(r)("actions.enable")),1)],10,Sb)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-b6a2ebc6"]]),Ub=_e(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var S;const i=e,a=n,{i18nT:o,i18n:{t:r}}=ke.useI18n(),{getMessageFromError:s}=U.useErrors(),{axiosInstance:l}=U.useAxios((S=i.config)==null?void 0:S.axiosRequestConfig),d=t.computed(()=>{var h;return A.value?r("delete.plugin_schema_in_use_title"):r("delete.title",{name:((h=i.plugin)==null?void 0:h.name)||r("delete.custom_plugin")})}),p=t.ref(!1),u=t.ref(""),A=t.ref(!1),g=t.computed(()=>{if(i.config.app==="konnect"){const h=i.plugin.customPluginType==="streaming"?Ie.select[i.config.app].streamingCustomPluginItem:Ie.select[i.config.app].schemaCustomPluginItem;let I=`${i.config.apiBaseUrl}${h}`;return I=I.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""),I=I.replace(/{pluginId}/gi,i.plugin.id),I}return null}),E=async()=>{var h,I,w,j;if(p.value=!0,u.value="",!(!((h=i.plugin)!=null&&h.name)||((I=i.config)==null?void 0:I.app)!=="konnect"))try{g.value&&await l.delete(g.value),a("proceed")}catch(y){const{response:m}=y;(m==null?void 0:m.status)===400&&((j=(w=m.data)==null?void 0:w.message)!=null&&j.includes("plugin schema is currently in use"))?A.value=!0:u.value=s(y)}finally{p.value=!1}};return(h,I)=>{const w=t.resolveComponent("KButton"),j=t.resolveComponent("KModal");return!A.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(U.EntityDeleteModal),{key:0,"action-pending":p.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(r)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(U.EntityTypes).Plugin,error:u.value,"need-confirm":"",title:d.value,visible:"",onCancel:I[0]||(I[0]=y=>h.$emit("closed")),onProceed:E},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(j,{key:1,"action-button-disabled":p.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:d.value,visible:"",onCancel:I[2]||(I[2]=y=>h.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(o),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(w,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:I[1]||(I[1]=y=>h.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),jb={class:"custom-plugins-grid"},Yb={class:"empty-state-title"},Hb={class:"empty-state-description"},fi=310,Fb=_e(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=ke.useI18n(),{getTallestPluginCardHeight:r,getToggleVisibility:s}=ke.usePluginHelpers(),l=t.ref(!0),d=b=>{a("plugin-clicked",b)},p=t.computed(()=>{if(i.config.app==="kongManager")return[];const b=JSON.parse(JSON.stringify(i.pluginList))[R.CUSTOM_PLUGINS]||[];return i.canCreateCustomPlugin&&i.navigateOnClick&&i.config.createCustomRoute?[{id:"custom-plugin-create",name:o("plugins.select.tabs.custom.create.name"),available:!0,group:R.CUSTOM_PLUGINS,description:o("plugins.select.tabs.custom.create.description")}].concat(b):b}),u=t.ref(!1),A=t.ref(null),g=b=>{u.value=!0,A.value={id:b.id,name:b.name,customPluginType:b.customPluginType}},E=b=>{var f;b&&(a("revalidate"),a("delete:success",((f=A.value)==null?void 0:f.name)||"")),u.value=!1,A.value=null},S=t.ref(fi),h=t.ref(null),I=t.ref(null),w=t.computed(()=>l.value?{overflowY:"hidden",maxHeight:`${S.value}px`}:{}),j=t.ref(!1),y=()=>{S.value=Math.max(r(I.value),fi),m()},m=()=>{var b,f;(b=I.value)!=null&&b.length&&(j.value=s(h.value,(f=I.value)==null?void 0:f.length))};return t.onMounted(async()=>{await t.nextTick(),S.value=Math.max(r(I.value),fi),m(),window==null||window.addEventListener("resize",y)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",y)}),(b,f)=>{const k=t.resolveComponent("KEmptyState"),O=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",jb,[p.value.length?(t.openBlock(),t.createBlock(O,{key:1,modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=H=>l.value=H),class:"custom-plugins-collapse","data-testid":`${t.unref(R).CUSTOM_PLUGINS}-collapse`,title:t.unref(R).CUSTOM_PLUGINS,"trigger-label":l.value?t.unref(o)("plugins.select.view_more"):t.unref(o)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:h,class:"plugin-card-container",style:t.normalizeStyle(w.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(H,x)=>(t.openBlock(),t.createBlock(mi,{key:`plugin-card-${x}`,ref_for:!0,ref_key:"pluginCardRef",ref:I,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:H,onCustomPluginDelete:D=>g(H),onPluginClicked:d},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[j.value?void 0:{name:"trigger",fn:t.withCtx(()=>[f[2]||(f[2]=t.createTextVNode("   "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(k,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",Yb,t.toDisplayString(t.unref(o)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",Hb,t.toDisplayString(t.unref(o)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),u.value&&A.value?(t.openBlock(),t.createBlock(Ub,{key:2,config:e.config,plugin:A.value,onClosed:E,onProceed:f[1]||(f[1]=H=>E(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-9703ee67"]]),hi=310,tr=_e(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const i=t.useModel(e,"modelValue"),a=e,o=n,{i18n:{t:r}}=ke.useI18n(),{getTallestPluginCardHeight:s,getToggleVisibility:l}=ke.usePluginHelpers(),d=t.ref(hi),p=t.ref(null),u=t.ref(null),A=t.computed(()=>i.value?{overflowY:"hidden",maxHeight:`${d.value}px`}:{}),g=t.ref(!1),E=()=>{d.value=Math.max(s(u.value),hi),S()},S=()=>{var h,I;(h=u.value)!=null&&h.length&&(g.value=l(p.value,(I=u.value)==null?void 0:I.length))};return t.onMounted(async()=>{await t.nextTick(),d.value=Math.max(s(u.value),hi),S(),window==null||window.addEventListener("resize",E)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",E)}),(h,I)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(w,{modelValue:i.value,"onUpdate:modelValue":I[0]||(I[0]=j=>i.value=j),class:"plugins-collapse","data-testid":`${a.name}-collapse`,title:a.name,"trigger-label":i.value?t.unref(r)("plugins.select.view_more"):t.unref(r)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:p,class:"plugin-card-container",style:t.normalizeStyle(A.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.plugins,j=>(t.openBlock(),t.createBlock(mi,{key:`plugin-card-${j.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:u,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:j,onPluginClicked:y=>o("plugin-clicked",j)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[g.value?void 0:{name:"trigger",fn:t.withCtx(()=>[I[1]||(I[1]=t.createTextVNode("   "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),Kb={class:"plugin-select-grid"},zb={class:"empty-state-title"},Jb={class:"empty-state-description"},yi=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const i=e,a=n,{i18n:{t:o}}=ke.useI18n(),r=t.ref(!1),s=t.ref(Gi),l=p=>{a("plugin-clicked",p)},d=t.computed(()=>{const p=JSON.parse(JSON.stringify(i.pluginList));return i.config.app==="konnect"&&delete p[R.CUSTOM_PLUGINS],p});return(p,u)=>{const A=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",Kb,[Object.keys(d.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(A,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",zb,t.toDisplayString(t.unref(o)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",Jb,t.toDisplayString(t.unref(o)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!i.hideHighlightedPlugins&&i.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(tr,{key:1,modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=g=>r.value=g),config:e.config,name:i.highlightedPluginsTitle||t.unref(o)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:i.highlightedPlugins,onPluginClicked:u[1]||(u[1]=g=>l(g))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Li),g=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[d.value[g]?(t.openBlock(),t.createElementBlock("div",{key:g},[t.createVNode(tr,{modelValue:s.value[g],"onUpdate:modelValue":E=>s.value[g]=E,config:e.config,name:g,"navigate-on-click":e.navigateOnClick,plugins:d.value[g]||[],onPluginClicked:u[2]||(u[2]=E=>l(E))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):t.createCommentVNode("",!0)],64))),256))])}}}),Qb={class:"kong-ui-entities-plugin-select-form"},Xb={class:"plugins-filter-input-container"},qb={key:0},Zb={key:3,"aria-live":"polite",class:"plugins-results-container"},Wb={"data-testid":"kong-tab"},_b={class:"tab-description"},$b={"data-testid":"custom-tab"},eE={class:"tab-description"},tE=_e(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var Y;const i=e,a=n,o=Ft.useRoute(),r=Ft.useRouter(),{i18n:{t:s}}=ke.useI18n(),{pluginMetaData:l}=ke.usePluginMetaData(),{getMessageFromError:d}=U.useErrors(),{sortAlpha:p,objectsAreEqual:u}=U.useHelpers(),A=t.ref(""),g=t.ref(!0),E=t.ref(!1),S=t.ref(""),h=t.ref([]),I=t.ref([]),w=t.ref({}),j=t.ref([]),{axiosInstance:y}=U.useAxios((Y=i.config)==null?void 0:Y.axiosRequestConfig),m=t.computed(()=>w.value?Object.entries(w.value).filter(([C])=>C!==R.CUSTOM_PLUGINS).reduce((C,[,B])=>{for(const M of B)C[M.id]=M;return C},{}):{}),b=t.computed(()=>{var M;if(!w.value)return{};const C=A.value.toLowerCase(),B=JSON.parse(JSON.stringify(w.value));for(const _ in w.value){const ie=((M=w.value[_])==null?void 0:M.filter(ne=>ne.name.toLowerCase().includes(C)||ne.id.toLowerCase().includes(C)||ne.group.toLowerCase().includes(C)))||[];ie.length?B[_]=ie:delete B[_]}return B}),f=t.computed(()=>i.highlightedPluginIds.reduce((C,B)=>{const M=m.value[B];return M&&C.push(M),C},[])),k=t.computed(()=>Object.keys(b.value).length>0),O=t.computed(()=>Object.keys(w.value).length>0&&!k.value),H=t.computed(()=>i.config.app==="konnect"?[{hash:"#kong",title:s("plugins.select.tabs.kong.title")},{hash:"#custom",title:s("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(i.customPluginSupport)}]:[]),x=t.computed(()=>{var B;let C=H.value.length&&((o==null?void 0:o.hash)||((B=H.value[0])==null?void 0:B.hash))||"";return C==="#custom"&&["none","disabled"].includes(i.customPluginSupport)&&(C="#kong"),C}),D=()=>[...new Set([...Object.keys({...i.availableOnServer?{}:l}),...h.value])].filter(C=>!i.ignoredPlugins.includes(C)).filter(C=>i.config.entityType&&(i.config.entityType==="services"&&l[C]&&!l[C].scope.includes(c.SERVICE)||i.config.entityType==="routes"&&l[C]&&!l[C].scope.includes(c.ROUTE)||i.config.entityType==="consumer_groups"&&l[C]&&!l[C].scope.includes(c.CONSUMER_GROUP)||i.config.entityType==="consumers"&&l[C]&&!l[C].scope.includes(c.CONSUMER))?!1:C).reduce((C,B)=>{var Q;const M=l[B]&&l[B].name||B,_={...l[B],id:B,name:M,available:h.value.includes(B),disabledMessage:"",group:((Q=l[B])==null?void 0:Q.group)||R.CUSTOM_PLUGINS};_.group===R.CUSTOM_PLUGINS&&(_.customPluginType=I.value.find(Re=>Re.name===B)?"streaming":"schema"),i.disabledPlugins&&(_.disabledMessage=i.disabledPlugins[B]);const ie=_.group||s("plugins.select.misc_plugins");let ne=C[ie];return ne||(ne=[]),ne.push(_),ne.sort(p("name")),C[ie]=ne,C},{}),F=t.computed(()=>{var B;let C=`${i.config.apiBaseUrl}${Ie.select[i.config.app].availablePlugins}`;return i.config.app==="konnect"?C=C.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&(C=((B=i.config.gatewayInfo)==null?void 0:B.edition)==="community"?`${i.config.apiBaseUrl}${Ie.select[i.config.app].availablePluginsForOss}`:C.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),C}),z=t.computed(()=>{if(i.config.app==="konnect"&&i.customPluginSupport==="streaming"){let C=`${i.config.apiBaseUrl}${Ie.select[i.config.app].streamingCustomPlugins}`;return C=C.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""),C}return null}),Z=t.computed(()=>{if(i.config.entityType&&i.config.entityId){let C=`${i.config.apiBaseUrl}${Ie.list[i.config.app].forEntity}`;return i.config.app==="konnect"?C=C.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&(C=C.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),C.replace(/{entityType}/gi,i.config.entityType||"").replace(/{entityId}/gi,i.config.entityId||"")}return""}),ee=C=>{r.replace({hash:C,query:o.query})};t.watch(()=>i.disabledPlugins,(C,B)=>{!u(C,B)&&!g.value&&(w.value=D())}),t.watch(()=>i.ignoredPlugins,(C,B)=>{!u(C,B)&&!g.value&&(w.value=D())}),t.watch(g,C=>{a("loading",C)});const K=t.ref(!1),T=t.ref(!1),V=t.ref(!1);return t.onBeforeMount(async()=>{K.value=await i.canCreateCustomPlugin(),T.value=await i.canEditCustomPlugin(),V.value=await i.canDeleteCustomPlugin()}),t.onMounted(async()=>{try{const{data:C}=await y.get(F.value);if(i.config.app==="konnect"){const{names:B}=C;if(h.value=B||[],z.value){const{data:M}=await y.get(z.value);I.value=M.data||[]}}else if(i.config.app==="kongManager"){const{plugins:{available_on_server:B}}=C;h.value=B?Object.keys(B):[]}}catch(C){E.value=!0,S.value=d(C)}if(Z.value)try{const{data:{data:C}}=await y.get(Z.value);if(C!=null&&C.length){const B=C.reduce((M,_)=>(_.name&&M.push(_.name),M),[]);j.value=j.value.concat(B)}}catch{}E.value||(w.value=D()),g.value=!1}),(C,B)=>{const M=t.resolveComponent("KInput"),_=t.resolveComponent("KSkeletonBox"),ie=t.resolveComponent("KSkeleton"),ne=t.resolveComponent("KEmptyState"),Q=t.resolveComponent("KTooltip"),Re=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",Qb,[t.createElementVNode("div",Xb,[t.createVNode(M,{modelValue:A.value,"onUpdate:modelValue":B[0]||(B[0]=Ae=>A.value=Ae),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(s)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),g.value?(t.openBlock(),t.createElementBlock("section",qb,[t.createVNode(_,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(ie,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):E.value?(t.openBlock(),t.createBlock(ne,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(S.value),1)]),_:1})):O.value&&A.value?(t.openBlock(),t.createBlock(ne,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(s)("search.no_results",{filter:A.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",Zb,[H.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(Re,{key:0,modelValue:x.value,"onUpdate:modelValue":B[5]||(B[5]=Ae=>x.value=Ae),"data-testid":"plugins-tabs",tabs:H.value,onChange:ee},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",Wb,[t.createElementVNode("p",_b,t.toDisplayString(t.unref(s)("plugins.select.tabs.kong.description")),1),t.createVNode(yi,{config:e.config,"hide-highlighted-plugins":A.value.length>0,"highlighted-plugins":f.value,"highlighted-plugins-title":i.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":b.value,onPluginClicked:B[1]||(B[1]=Ae=>C.$emit("plugin-clicked",Ae))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",$b,[t.createElementVNode("p",eE,t.toDisplayString(t.unref(s)("plugins.select.tabs.custom.description")),1),t.createVNode(Fb,{"can-create-custom-plugin":K.value,"can-delete-custom-plugin":V.value,"can-edit-custom-plugin":T.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":b.value,"onDelete:success":B[2]||(B[2]=Ae=>C.$emit("delete-custom:success",Ae)),onPluginClicked:B[3]||(B[3]=Ae=>C.$emit("plugin-clicked",Ae)),onRevalidate:B[4]||(B[4]=()=>w.value=D())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(Q,{"max-width":"300",text:t.unref(s)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(yi,{key:1,config:e.config,"hide-highlighted-plugins":A.value.length>0,"highlighted-plugins":f.value,"highlighted-plugins-title":i.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":b.value,onPluginClicked:B[6]||(B[6]=Ae=>C.$emit("plugin-clicked",Ae))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-429bc3e0"]]),nE={class:"kong-ui-entity-plugin-config-card"},iE={class:"name-cell-wrapper"},aE={class:"info-name"},oE={key:0},rE={key:0},sE={key:0},lE={key:0},bi="config",cE=_e(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var j;const i=n,a=e,{i18n:{t:o}}=ke.useI18n(),r=ke.usePluginMetaData(),{setFieldType:s}=ke.usePluginHelpers(),{getPropValue:l}=U.useHelpers(),d=t.computed(()=>{var y;return(y=Ie.item[a.config.app])==null?void 0:y[a.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,a.scopedEntityType).replace(/{entityId}/gi,a.scopedEntityId)}),p=t.computed(()=>{var b,f;const y={},m=((b=h.value)==null?void 0:b.fields)||[];for(let k=0;k<m.length;k++){const O=h.value.fields[k],H=(f=Object.keys(O))==null?void 0:f[0];s(y,H,O[H])}return{...y,instance_name:{section:U.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:o("plugins.fields.consumer"),section:U.ConfigurationSchemaSection.Basic,order:6},route:{label:o("plugins.fields.route"),section:U.ConfigurationSchemaSection.Basic,order:6},service:{label:o("plugins.fields.service"),section:U.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:o("plugins.fields.consumer_group"),section:U.ConfigurationSchemaSection.Basic,order:6},protocols:{type:U.ConfigurationSchemaType.BadgeTag,section:U.ConfigurationSchemaSection.Basic,order:7}}}),u=t.computed(()=>{var m,b,f;if(!((m=h.value)!=null&&m.fields))return[];const y=(b=h.value.fields)==null?void 0:b.find(k=>{var H;return((H=Object.keys(k))==null?void 0:H[0])===bi});return((f=y==null?void 0:y[bi])==null?void 0:f.fields)||[]}),A=t.computed(()=>{var m,b;const y={};if(!u.value)return y;for(let f=0;f<((m=u.value)==null?void 0:m.length);f++){const k=u.value[f],O=(b=Object.keys(k))==null?void 0:b[0],H=k[O];H.required&&(y[O]={order:1}),s(y,O,H)}return y}),{getMessageFromError:g}=U.useErrors(),{axiosInstance:E}=U.useAxios((j=a.config)==null?void 0:j.axiosRequestConfig),S=t.computed(()=>{var m,b;let y=`${a.config.apiBaseUrl}${Ie.form[a.config.app].pluginSchema}`;return a.config.app==="konnect"?y=y.replace(/{controlPlaneId}/gi,((m=a.config)==null?void 0:m.controlPlaneId)||""):a.config.app==="kongManager"&&(y=y.replace(/\/{workspace}/gi,(b=a.config)!=null&&b.workspace?`/${a.config.workspace}`:"")),y=y.replace(/{plugin}/gi,a.config.pluginType),y}),h=t.ref({});U.useSchemaProvider(h);const I=t.ref(!1),w=t.ref("");return t.onBeforeMount(async()=>{I.value=!0;try{const{data:y}=await E.get(S.value);h.value=y}catch(y){w.value=g(y),i("error:fetch-schema",y)}finally{I.value=!1}}),(y,m)=>{const b=t.resolveComponent("KSkeleton"),f=t.resolveComponent("KEmptyState"),k=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",nE,[I.value?(t.openBlock(),t.createBlock(b,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):w.value?(t.openBlock(),t.createBlock(f,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(w.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(U.EntityBaseConfigCard),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":p.value,"entity-type":t.unref(U.SupportedEntityType).Plugin,"fetch-url":d.value,"hide-title":e.hideTitle,"plugin-config-key":bi,"plugin-config-schema":A.value,"onFetch:error":m[0]||(m[0]=O=>y.$emit("fetch:error",O)),"onFetch:success":m[1]||(m[1]=O=>y.$emit("fetch:success",O)),onLoading:m[2]||(m[2]=O=>y.$emit("loading",O))},{name:t.withCtx(O=>[t.createElementVNode("div",iE,[t.createVNode(Sn,{class:"plugin-icon",name:t.unref(l)("rowValue",O),size:24},null,8,["name"]),t.createElementVNode("span",aE,t.toDisplayString(t.unref(r).getDisplayName(t.unref(l)("rowValue",O))),1)])]),consumer:t.withCtx(O=>[t.unref(l)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(U.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",O).id,value:t.unref(l)("rowValue",O).id,type:t.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(l)("rowValue",O).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(k,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(l)("row",O).label}),"data-testid":"consumer-copy-uuid",text:t.unref(l)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",oE,"–"))]),route:t.withCtx(O=>[t.unref(l)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(U.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",O).id,value:t.unref(l)("rowValue",O).id,type:t.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(l)("rowValue",O).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(k,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(l)("row",O).label}),"data-testid":"route-copy-uuid",text:t.unref(l)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",rE,"–"))]),service:t.withCtx(O=>[t.unref(l)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(U.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",O).id,value:t.unref(l)("rowValue",O).id,type:t.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(l)("rowValue",O).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(k,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(l)("row",O).label}),"data-testid":"service-copy-uuid",text:t.unref(l)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",sE,"–"))]),consumer_group:t.withCtx(O=>[t.unref(l)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(U.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",O).id,value:t.unref(l)("rowValue",O).id,type:t.unref(U.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(l)("rowValue",O).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(k,{key:2,"copy-tooltip":t.unref(o)("copy.tooltip",{label:t.unref(l)("row",O).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(l)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",lE,"–"))]),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-f27734d2"]]),{usePluginMetaData:dE}=ke;$.EntityTypeIdField=Et,$.PLUGIN_GROUPS_COLLAPSE_STATUS=Gi,$.PluginConfigCard=cE,$.PluginForm=Fh,$.PluginGroup=R,$.PluginGroupArray=Li,$.PluginIcon=Sn,$.PluginList=Rb,$.PluginScope=c,$.PluginSelect=tE,$.PluginSelectCard=mi,$.PluginSelectGrid=yi,$.VueFormGenerator=Le,$.getPluginIconURL=zi,$.pluginEndpoints=Ie,$.usePluginMetaData=dE,Object.defineProperty($,Symbol.toStringTag,{value:"Module"})});