@kong-ui-public/entities-plugins 9.60.0 → 9.60.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/entities-plugins.es.js +7163 -7016
- package/dist/entities-plugins.umd.js +39 -39
- package/dist/style.css +1 -1
- package/dist/types/components/free-form/Datakit/DatakitForm.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/composables/useNodeForm.d.ts +2 -1
- package/dist/types/components/free-form/Datakit/flow-editor/composables/useNodeForm.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node/schemas.d.ts +0 -5
- package/dist/types/components/free-form/Datakit/flow-editor/node/schemas.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormCall.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormExit.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormJq.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormProperty.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormResponse.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormServiceRequest.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormStatic.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/Form.vue.d.ts +2 -2
- package/dist/types/components/free-form/shared/Form.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/shared/composables.d.ts +1 -1
- package/dist/types/components/free-form/shared/composables.d.ts.map +1 -1
- package/dist/types/types/plugins/form-schema.d.ts +8 -1
- package/dist/types/types/plugins/form-schema.d.ts.map +1 -1
- package/package.json +6 -6
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
(function(he,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("@vueuse/core"),require("monaco-editor"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","@vueuse/core","monaco-editor","@kong-ui-public/entities-plugins-icon"],n):(he=typeof globalThis<"u"?globalThis:he||self,n(he["kong-ui-public-entities-plugins"]={},he.Vue,he["kong-ui-public-entities-shared"],he.marked,he.VueRouter,he["kong-ui-public-i18n"],he.entitiesPluginsMetadata,he.forms,he.entitiesVaults,null,he.KongIcons,he.Kongponents,he.entitiesRedisConfigurations,null,he.core$1,he.monaco,he.entitiesPluginsIcon))})(this,function(he,n,ae,zo,Zn,Ue,H,Ce,Ho,TV,Ee,Pe,Xn,PV,Je,em,Jn){"use strict";var xV=Object.defineProperty;var AV=(he,n,ae)=>n in he?xV(he,n,{enumerable:!0,configurable:!0,writable:!0,value:ae}):he[n]=ae;var Le=(he,n,ae)=>AV(he,typeof n!="symbol"?n+"":n,ae);function tm(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const Yo=tm(em),Ge={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here."}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service. "},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",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."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Gateway Service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Consumer Group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View Advanced Parameters",hide:"Hide Advanced Parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"All of these parameters are required: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Configure parameters for this plugin by using a form or a YAML file."}}},"free-form":{"request-callout":{entity_name:"Request Callout",by_lua_placeholder:"Enter Lua script here..."},redis_partial:{redis_partial_modal_title:"New shared configuration",partial_created_success_message:"Successfully created a new Redis configuration."},datakit:{description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Configure this plugin by using the flow editor.",description_example:"Start with a use case:",examples:{authenticate:"Authenticate Kong to a third-party service",combine:"Combine multiple API responses",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow Editor",name:"Datakit Flow Editor",cta:"Go to flow editor",save:"Save",view_docs:"View Docs",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to Plugin configuration",node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The jq node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return a response directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway configuration data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Define static values to use for call nodes",description:"Emits static values to be used as inputs for other nodes. The static node can help you with hardcoding some known value for an input."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."}},node_properties:{name:"Name",Configuration:"Configuration",input:{placeholder:"Select output(s)",add_button:"Add an input"},input_name:{label:"Input Name",placeholder:"Input Name"},timeout:{label:"Timeout(s)"},jq:{label:"jq script"},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},errors:{name_empty:"Name cannot be empty",name_format:"Name must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",name_duplicate:'Node with name "{name}" already exists'}}},code_editor:{mode:"Code Editor"}},vault_picker:{component_error:"The vault secret picker is not available"}}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",open_source:"open source",enterprise:"enterprise",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."},type_label:{host_port:"Host/Port",sentinel:"Sentinel",cluster:"Cluster"}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}},sp:{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'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"},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."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{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."},half_hourly_200:{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."},daily_500:{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."}},sliding:{hourly_100:{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."},half_hourly_300:{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."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
1
|
+
(function(he,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("@vueuse/core"),require("monaco-editor"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","@vueuse/core","monaco-editor","@kong-ui-public/entities-plugins-icon"],n):(he=typeof globalThis<"u"?globalThis:he||self,n(he["kong-ui-public-entities-plugins"]={},he.Vue,he["kong-ui-public-entities-shared"],he.marked,he.VueRouter,he["kong-ui-public-i18n"],he.entitiesPluginsMetadata,he.forms,he.entitiesVaults,null,he.KongIcons,he.Kongponents,he.entitiesRedisConfigurations,null,he.core$1,he.monaco,he.entitiesPluginsIcon))})(this,function(he,n,ae,Ho,Zn,Ue,H,Ce,Yo,SR,Ee,Pe,Jn,xR,Je,tm,Qn){"use strict";var vR=Object.defineProperty;var NR=(he,n,ae)=>n in he?vR(he,n,{enumerable:!0,configurable:!0,writable:!0,value:ae}):he[n]=ae;var Le=(he,n,ae)=>NR(he,typeof n!="symbol"?n+"":n,ae);function nm(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const Wo=nm(tm),je={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here."}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service. "},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",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."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Gateway Service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Consumer Group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View Advanced Parameters",hide:"Hide Advanced Parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"All of these parameters are required: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Configure parameters for this plugin by using a form or a YAML file."}}},"free-form":{"request-callout":{entity_name:"Request Callout",by_lua_placeholder:"Enter Lua script here..."},redis_partial:{redis_partial_modal_title:"New shared configuration",partial_created_success_message:"Successfully created a new Redis configuration."},datakit:{description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Configure this plugin by using the flow editor.",description_example:"Start with a use case:",examples:{authenticate:"Authenticate Kong to a third-party service",combine:"Combine multiple API responses",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow Editor",name:"Datakit Flow Editor",cta:"Go to flow editor",save:"Save",view_docs:"View Docs",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to Plugin configuration",node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The jq node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return a response directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway configuration data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Define static values to use for call nodes",description:"Emits static values to be used as inputs for other nodes. The static node can help you with hardcoding some known value for an input."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."}},node_properties:{name:"Name",Configuration:"Configuration",input:{placeholder:"Select output(s)",add_button:"Add an input"},input_name:{label:"Input Name",placeholder:"Input Name"},timeout:{label:"Timeout(s)"},jq:{label:"jq script"},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},errors:{name_empty:"Name cannot be empty",name_format:"Name must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",name_duplicate:'Node with name "{name}" already exists'}}},code_editor:{mode:"Code Editor"}},vault_picker:{component_error:"The vault secret picker is not available"}}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",open_source:"open source",enterprise:"enterprise",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."},type_label:{host_port:"Host/Port",sentinel:"Sentinel",cluster:"Cluster"}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}},sp:{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'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"},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."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{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."},half_hourly_200:{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."},daily_500:{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."}},sliding:{hourly_100:{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."},half_hourly_300:{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."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
2
2
|
If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
|
|
3
|
-
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function
|
|
4
|
-
client. If missing, it will be generated for you.`}},{tags:
|
|
3
|
+
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function qe(){const e=Ue.createI18n("en-us",je);return{i18n:e,i18nT:Ue.i18nTComponent(e)}}function Dl(){const{capitalize:e}=ae.useStringHelpers(),t=["methods","logout_methods"];return{setFieldType:(f,p,m)=>{var h,w,g;if(!(!f||!p||!m))switch(m.type){case"boolean":f[p]={type:ae.ConfigurationSchemaType.BadgeStatus,...f[p]};break;case"string":m.encrypted?f[p]={type:ae.ConfigurationSchemaType.Redacted,...f[p]}:f[p]={type:ae.ConfigurationSchemaType.Text,...f[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(f[p]={type:ae.ConfigurationSchemaType.BadgeTag,...f[p]});break;case"array":t.includes(p)?f[p]={type:ae.ConfigurationSchemaType.BadgeMethod,...f[p]}:((w=m.elements)==null?void 0:w.type)==="string"?m.encrypted?f[p]={type:ae.ConfigurationSchemaType.RedactedArray,...f[p]}:f[p]={type:ae.ConfigurationSchemaType.BadgeTag,...f[p]}:((g=m.elements)==null?void 0:g.type)==="record"&&(f[p]={type:ae.ConfigurationSchemaType.Json,...f[p]});break;case"record":f[p]={type:ae.ConfigurationSchemaType.Json,...f[p]};break;default:f[p]={type:ae.ConfigurationSchemaType.Text,...f[p]};break}},convertToDotNotation:f=>f.replace(/-/g,"."),unFlattenObject:f=>{const p={};for(const m in f){const h=m.split(".");h.reduce((w,g,_)=>w[g]||(w[g]=isNaN(h[_+1])?h.length-1===_?f[m]:{}:[]),p)}return p},dismissField:(f,p,m="redis",h=!1)=>{const w=new RegExp("(?<=-redis-).*");if(typeof f!="object"||f===null)return f;m==="redis"?Object.keys(f).forEach(g=>{g.match(w)&&delete f[g]}):h?f[m]=null:delete f[m],Object.assign(f,p)},isObjectEmpty:f=>Object.keys(f).length===0,unsetNullForeignKey:(f,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(f)>-1&&p[f]===null&&(delete p[f],p[f.replace(".id","")]=null)},formatPluginFieldLabel:f=>e(f.replace(/_/g," ")),getTallestPluginCardHeight:f=>{let p=0;if(f.length)for(let m=0;m<f.length;m++){const h=f[m].$el;p=h.offsetHeight>p?h.offsetHeight:p}return p},getToggleVisibility:(f,p)=>{var m,h;if(f&&p){const w=(h=(m=window==null?void 0:window.getComputedStyle(f))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:h.split(" ").length;return p>w}return!0}}}var Xo=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Xo||{});const Ml=[H.PluginGroup.AUTHENTICATION,H.PluginGroup.AI,H.PluginGroup.SECURITY,H.PluginGroup.TRAFFIC_CONTROL,H.PluginGroup.SERVERLESS,H.PluginGroup.ANALYTICS_AND_MONITORING,H.PluginGroup.TRANSFORMATIONS,H.PluginGroup.LOGGING,H.PluginGroup.DEPLOYMENT,H.PluginGroup.WEBSOCKET,H.PluginGroup.CUSTOM_PLUGINS],Fl={[H.PluginGroup.AUTHENTICATION]:!1,[H.PluginGroup.AI]:!1,[H.PluginGroup.SECURITY]:!1,[H.PluginGroup.TRAFFIC_CONTROL]:!1,[H.PluginGroup.SERVERLESS]:!1,[H.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[H.PluginGroup.TRANSFORMATIONS]:!1,[H.PluginGroup.LOGGING]:!1,[H.PluginGroup.DEPLOYMENT]:!1,[H.PluginGroup.CUSTOM_PLUGINS]:!1};var Wt=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(Wt||{});const Xt=e=>{const t=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in t||(t.id={}),t},Zt={label:"Tags",name:"tags",type:"input",inputType:"text",valueType:"array",valueArrayType:"string",placeholder:"Enter list of tags",help:"An optional set of strings for grouping and filtering, separated by commas.",hint:"e.g. tag1, tag2, tag3"},vn={getColumnFields:Xt,tags:Zt,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(e){const t=e.inputAttributes||{};return delete e.inputAttributes,{type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",newElementButtonLabelClasses:"kong-form-new-element-button-label",inputAttributes:{class:"form-control",style:{minWidth:"200px"},...t},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...e}}}},Ll={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Zt}]},om={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{group:{required:!0,type:"string",hint:"The arbitrary group name to associate to the consumer."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ul={fields:[{username:{}},{password:{inputType:"password"}},{tags:Zt}]},rm={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0}},{password:{type:"string",required:!0,encrypted:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},im={class:"field-wrapper"},am=n.defineComponent({__name:"KeyAuthIdentityRealms",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(e,{expose:t,emit:o}){const r=e,i=o,{clearValidationErrors:a,value:l}=Ce.composables.useAbstractFields({model:n.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:b=>{i("modelUpdated",b.value,b.model)}}),{i18n:s}=Ie.useI18n(),{t:c}=s,d={value:"current-cp",label:c("custom_field.key_auth_identity_realms.cp_label"),group:c("custom_field.key_auth_identity_realms.cp_group_label")},u=n.inject(Ce.FORMS_CONFIG),{axiosInstance:f}=ae.useAxios(u==null?void 0:u.axiosRequestConfig),p=()=>{if((u==null?void 0:u.app)==="konnect"){const b=/\b(us|eu|au|me|in)\b/.exec((u==null?void 0:u.apiBaseUrl)||"");if(b)return{region:b[1]}}return{}},m=n.ref(!0),h=n.ref([d]),w=async()=>{if((u==null?void 0:u.app)==="konnect")try{m.value=!0;let b=`${u==null?void 0:u.apiBaseUrl}/v1/realms`;const y=[];do{const C=await f.get(b);C&&C.data&&C.data.data&&y.push(...C.data.data.map(T=>({value:T.id,label:T.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),b=C.data.meta.next?`${u==null?void 0:u.apiBaseUrl}${C.data.meta.next}`:null}while(b);h.value=[d,...y]}catch(b){console.error("Failed to fetch Konnect realms",b)}finally{m.value=!1}},g=n.computed(()=>l.value.map(b=>b.id||"current-cp")),_=b=>{const y=b.includes("current-cp")?[{scope:"cp",id:null}]:[],C=l.value.filter(({scope:B})=>B!=="cp").map(({id:B})=>B),T=b.filter(B=>B!=="current-cp"),I=(C.length!==T.length||C.some(B=>!T.includes(B))?T.filter(B=>!C.includes(B)):T).map(B=>({...p(),scope:"realm",id:B}));l.value=[...y,...I]};return n.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),n.onMounted(()=>{w()}),t({clearValidationErrors:a}),(b,y)=>{const C=n.resolveComponent("KMultiselect");return n.openBlock(),n.createElementBlock("div",im,[n.createVNode(C,{items:h.value,loading:m.value,"model-value":g.value,"onUpdate:modelValue":_},null,8,["items","loading","model-value"])])}}}),_e=(e,t)=>{const o=e.__vccOpts||e;for(const[r,i]of t)o[r]=i;return o},lm=_e(am,[["__scopeId","data-v-29b128ff"]]),Kl={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
4
|
+
client. If missing, it will be generated for you.`}},{tags:Zt}]},sm=e=>{var t;return(e==null?void 0:e.app)==="kongManager"?{fieldsToDelete:["config-identity_realms"]}:{"config-identity_realms":{component:((t=e==null?void 0:e.experimentalRenders)==null?void 0:t.keyAuthIdentityRealms)??!1?n.markRaw(lm):null}}},cm={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Gl={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
|
|
5
5
|
if this parameter isn’t provided, Kong will generate a value for you and
|
|
6
|
-
send it as part of the response body.`}},{tags:
|
|
6
|
+
send it as part of the response body.`}},{tags:Zt}]},dm={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},um={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
|
|
7
7
|
be auto-generated.`}},{algorithm:{order:1,hint:"The algorithm used to verify the token’s signature."}},{rsa_public_key:{order:2,type:"textArea",label:"RSA public-key",hint:`If algorithm is RSA or ECDSA, the public key (in PEM format) to
|
|
8
8
|
use to verify the token’s signature.`,rows:10,visible:e=>e&&e.algorithm&&/^((RS|PS|ES)(256|384|512)|EdDSA)$/.test(e.algorithm)}},{secret:{inputType:"text",hint:`If algorithm is HMAC, the secret used to sign JWTs for
|
|
9
|
-
this credential. If left out, will be auto-generated.`}},{tags:
|
|
9
|
+
this credential. If left out, will be auto-generated.`}},{tags:Zt}]},fm={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string"}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},jl={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
|
|
10
10
|
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,
|
|
11
|
-
it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:
|
|
12
|
-
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:
|
|
13
|
-
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Xt}]},pm={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."}}]},At={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",isEnterprise:!1,nameKey:"plugins.meta.jwt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",isEnterprise:!1,nameKey:"plugins.meta.cors.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",isEnterprise:!0,nameKey:"plugins.meta.opa.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",isEnterprise:!1,nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",isEnterprise:!0,nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",isEnterprise:!0,nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",isEnterprise:!0,nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",isEnterprise:!0,nameKey:"plugins.meta.post-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",isEnterprise:!1,nameKey:"plugins.meta.datadog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",isEnterprise:!0,nameKey:"plugins.meta.collector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",isEnterprise:!0,nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",isEnterprise:!1,nameKey:"plugins.meta.file-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",isEnterprise:!1,nameKey:"plugins.meta.http-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",isEnterprise:!1,nameKey:"plugins.meta.loggly.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",isEnterprise:!1,nameKey:"plugins.meta.statsd.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",isEnterprise:!1,nameKey:"plugins.meta.syslog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",isEnterprise:!1,nameKey:"plugins.meta.session.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",isEnterprise:!1,nameKey:"plugins.meta.acme.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",isEnterprise:!0,nameKey:"plugins.meta.saml.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.json-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",isEnterprise:!0,nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",isEnterprise:!0,nameKey:"plugins.meta.confluent.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",isEnterprise:!1,nameKey:"plugins.meta.redirect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",isEnterprise:!1,nameKey:"plugins.meta.kafka-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",isEnterprise:!1,nameKey:"plugins.meta.confluent-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",isEnterprise:!1,nameKey:"plugins.meta.request-callout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",isEnterprise:!1,nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",isEnterprise:!1,nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",isEnterprise:!1,nameKey:"plugins.meta.datakit.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",isEnterprise:!1,nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",isEnterprise:!1,nameKey:"plugins.meta.solace-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",isEnterprise:!1,nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]}},Cn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Fl,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Zt(Fl),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Ll,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Zt(Ll)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Ul,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Zt(Ul)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Gl,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Zt(Gl)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:ql,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Zt(ql)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Kl,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Zt(Kl)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:dm,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},mm={acls:nm,basicauth_credentials:om,keyauth_credentials:sm,keyauth_enc_credentials:pm,oauth2_credentials:fm,hmacauth_credentials:cm,jwt_secrets:um},gm=()=>{const{i18n:{t:e}}=je(),t={},o={};for(const[i,a]of Object.entries(At))t[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(Cn))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:t,credentialMetaData:o,credentialSchemas:Cn,getDisplayName:i=>{var a;return((a=t[i])==null?void 0:a.name)||i}}},Qn={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},hm={"config-prompts-prepend":{...Qn,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":{...Qn,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"}]}}}},ym={"config-templates":{...Qn,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"}]}}}},_m={shamefullyTransformPayload:({originalModel:e,model:t,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&t[l]?!0:e[l]===t[l]?!1:e[l]===null?t[l]!==""&&!Number.isNaN(t[l]):!0},a=l=>Object.keys(e).some(s=>s.startsWith(l)&&i(s));a("config-embeddings")||(o.config.embeddings=null),a("config-vectordb")||(o.config.vectordb=null)}},bm={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:kn.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"}},Ae={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"},Zo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},wm={"config-metrics":{...Zo,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"}]}}}},Em={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},km={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Cm={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},vm={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Nm={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},jl=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,t)=>({...e,[t]:kn.fields.arrayItems({newElementButtonLabel:"Add"})}),Nm),Xo={"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"}},Sm={"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":{}},xm=["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,t)=>({...e,[t]:kn.fields.arrayItems({newElementButtonLabel:"Add"})}),Sm),zl={"config-add-json":{...Ae,label:"Config.Add.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Ae,label:"Config.Append.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Ae,label:"Config.Remove.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Ae,label:"Config.Rename.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Ae,label:"Config.Replace.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},Am={...zl,"config-allow-json":{...Ae,label:"Config.Allow.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Ae,label:"Config.Transform.Functions",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Ae,label:"Config.Transform.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},Tm={"config-rules":{...Qn,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"}]}}}},Pm={"config-session_redis_cluster_nodes":{...Qn,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"}]}}}},Im={"config-metrics":{...Zo,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"]}]}}}},Om={"config-metrics":{...Zo,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"]}]}}}},$m={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Bm={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}},Jt=e=>{var o,r;const t=(r=(o=e==null?void 0:e.confluent)==null?void 0:o.authentication)==null?void 0:r.basic;t&&!t.password&&!t.username&&delete e.confluent.authentication.basic},Dm={"config-message_by_lua_functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var t;Jt((t=e.config)==null?void 0:t.schema_registry)}},Vm={"config-message_by_lua_functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var t;Jt((t=e.config)==null?void 0:t.schema_registry)}},Rm={shamefullyTransformPayload:({payload:e})=>{var t,o,r;Jt((t=e.config)==null?void 0:t.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Jt(i==null?void 0:i.schema_registry)})}},Mm={shamefullyTransformPayload:({payload:e})=>{var t,o,r;Jt((t=e.config)==null?void 0:t.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Jt(i==null?void 0:i.schema_registry)})}},Fm={shamefullyTransformPayload:({payload:e})=>{var t;Jt((t=e.config)==null?void 0:t.schema_registry)}},Lm={"config-static_tags":{...Zo,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"}]}}}},Um={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm"};function Hl(e,t){const o=Um[e];if(typeof o=="string")return o;if(t.includes(e))return o.component}const Ei=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),Yl={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR")};function Wl(){return n.inject(Ei,[])}function Km(e){n.provide(Ei,e)}const qm=(e,t)=>{const o=e.model.startsWith("config-"),r=t.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},Zl=(e,t)=>(e.order??0)-(t.order??0),Xl=(e,t)=>qm(e,t)||Zl(e,t)||e.model.localeCompare(t.model),Ie={useI18n:je,usePluginMetaData:gm,usePluginHelpers:Vl,useSchemas:e=>{const{capitalize:t}=ae.useStringHelpers(),{convertToDotNotation:o}=Vl(),{i18n:{t:r}}=je(),i=Wl(),a={"application-registration":{overwriteDefault:!0,formSchema:{...bm}},datadog:{...wm},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Im},"statsd-advanced":{...Om},"route-by-header":{...Tm},"ai-prompt-decorator":{...hm},"ai-prompt-template":{...ym},"ai-proxy-advanced":{..._m},"vault-auth":{...Bm},"oas-validation":{...vm},mocking:{...Cm},"rate-limiting":{...Xo},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Xo["config-consumer_groups"]}:{...Xo},"graphql-rate-limiting-advanced":{...Em},"injection-protection":{...km},"response-ratelimiting":{...Xo},"pre-function":{...jl},"post-function":{...jl},"request-transformer-advanced":{...xm},"response-transformer":{...zl},"response-transformer-advanced":{...Am},zipkin:{...Lm},"upstream-oauth":{...$m},saml:{...Pm},"kafka-upstream":{...Dm},"key-auth":lm(e),confluent:{...Vm},"confluent-consume":{...Rm},"kafka-consume":{...Mm},"kafka-log":{...Fm}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(k,P,I)=>{let B={};(P||k)&&(B=P||(k.fields?k.fields:k));const W=l().concat(k.blacklist?k.blacklist:[]),M=Object.keys(B).filter(F=>!W.includes(F)),v=M.indexOf("comparator");v>-1&&M.splice(v,1);let N={fields:[]};const E={};M.forEach(F=>{d(B[F],F,B,E,N,I)});const R=E.name,O=At[R],j=[],G=F=>{const V=["cluster-cache"];for(const U of V)if(F.model.includes(U))return!1;return new RegExp("(?<=-redis-).*").test(F.model)};if(N._supported_redis_partial_type=k._supported_redis_partial_type,N._redis_partial_path=k._redis_partial_path,Ce.getSharedFormName(R)||Hl(R,i)||O!=null&&O.useLegacyForm||e!=null&&e.credential){if(O!=null&&O.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&k._supported_redis_partial_type){for(const F of N.fields)if(G(F)){j.push(F);continue}N.fields=N.fields.filter(F=>!G(F)),j.length&&N.fields.push({id:"_redis",fields:j,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path})}N.fields.sort((F,V)=>(F.order=F.order||0,V.order=V.order||0,F.order-V.order))}else{const F=[],V=[],U=[],re=[],de={};if(O!=null&&O.fieldRules){const Y=[...O.fieldRules.atLeastOneOf??[],...O.fieldRules.onlyOneOf??[],...O.fieldRules.mutuallyRequired??[]];if(O.fieldRules.onlyOneOfMutuallyRequired)for(const $ of O.fieldRules.onlyOneOfMutuallyRequired)Y.push(...$);for(const $ of Y)for(const z of $)de[z.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const Y of N.fields){if(e!=null&&e.enableRedisPartial&&k._supported_redis_partial_type&&G(Y)){re.push(Y);continue}if(Y.pinned){F.push(Y);continue}if(Y.required||de[Y.model]!==void 0){de[Y.model]===!1&&(de[Y.model]=!0),V.push(Y);continue}U.push(Y)}re.length&&U.push({id:"_redis",fields:re,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path,order:-1});const ee=Object.entries(de).filter(([,Y])=>!Y).map(([Y])=>Y.replace(/-/g,".").replace(/_/g,"-"));ee.length>0&&console.warn(`Unknown checked fields for plugin ${R}: ${ee.join(", ")}`);const oe=[];F.length>0&&oe.push({fields:F.sort(Zl)}),(V.length>0||U.length>0)&&oe.push({fields:V.sort(Xl),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:U.sort(Xl),triggerLabel:{expand:r("plugins.form.grouping.advanced_parameters.view"),collapse:r("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),N={groups:oe}}return{schema:N,model:E,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=k=>Array.isArray(k.default)||k.default!=null&&typeof k.default!="object"&&k.default!=="function",d=(k,P,I,B,W,M)=>{const v=c(k);return B[P]=v?k.default:null,k.id=P,k.model=P,k.fields&&k.type==="record"?u(k,P,I,B,W,M):(I[P]=k,C(k,B),M&&M[P]&&f(I[P],M[P]),W.fields.push(k)),I},f=(k,P)=>(P&&(Object.assign(k,P),P.label&&(k.label=P.label)),k),u=(k,P,I,B,W,M)=>{k.fields.forEach(v=>{Object.keys(v).forEach(N=>{const E=v[N];I=d(E,P+"-"+N,I,B,W,M)})})},p=(k,P)=>{k.type="input",k.inputType="hidden",k.styleClasses="kong-form-hidden-field-wrapper";const I=e==null?void 0:e.entityId;P[k.model]=I?{id:I}:null},m=k=>{k.type="input",k.inputType="number",k.between&&k.between.length===2&&(k.min=k.between[0],k.max=k.between[1])},h=k=>{Object.prototype.hasOwnProperty.call(k,"one_of")?(k.type="select",k.values=k.one_of,k.selectOptions={hideNoneSelectedText:!0}):(k.type="input",k.inputType="text")},w=k=>{k.type="checkbox",k.default=!0,k.required=!1},g=k=>{if(k.type="object-advanced",k.values.type==="array"){const{type:P}=k.values.elements||{};k.schema={fields:[{schema:{fields:[{...Ae,model:k.model,valueArrayType:P==="integer"?"number":P||"string",inputAttributes:{...Ae.inputAttributes,type:P==="integer"?"number":"text",inputMode:P==="integer"?"numeric":"text"}}]}}]}}else k.values.fields&&(k.schema={fields:[{type:"object",model:"object",schema:{fields:k.values.fields.map(P=>{const I=Object.keys(P)[0];return{model:I,type:"input",label:t(I),placeholder:I,inputType:P[I].type}})}}]})},_=k=>k.fields.reduce((P,I)=>(I.fields&&I.fields.forEach(B=>{P[B.model]=B}),I.model&&(P[I.model]=I),P),{}),b=(k,P)=>{if(!Ce.customFields.includes(k.model))return;const I=_(k);Ce.customFields.forEach(B=>{Object.keys(I).forEach(W=>{const M=c(I[W]);P[W]=M?I[W].default:null}),delete P[B]})},y=(k,P)=>k.inputType==="hidden"?"":o(t(k.label||P.replace(/_/g," "))),C=(k,P)=>{switch(b(k,P),k.type){case"foreign":p(k,P);break;case"number":m(k),k.attributes={step:"any"};break;case"integer":m(k);break;case"string":h(k);break;case"boolean":w(k);break;case"map":g(k);break}k.inputType==="foreign"&&p(k,P),k.label=y(k,k.model)};function x(k,P){if(P==null||P.type&&P.type!=="record"||typeof k!="object"||k==null)return k;const I={};for(const B of P.fields){const W=Object.keys(B)[0],M=B[W];M.type==="record"?I[W]=x(k[W],M):M.type==="array"&&Array.isArray(k[W])&&M.elements.type==="record"?I[W]=k[W].map(v=>x(v,M.elements)):I[W]=k[W]}return I}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:kn,pruneRecord:x}},useExperimentalFreeForms:Wl,useProvideExperimentalFreeForms:Km},ze="/v2/control-planes/{controlPlaneId}/core-entities",We="/{workspace}",Oe={list:{konnect:{all:`${ze}/plugins`,forEntity:`${ze}/{entityType}/{entityId}/plugins`},kongManager:{all:`${We}/plugins`,forEntity:`${We}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ze}/v1/available-plugins`,streamingCustomPlugins:`${ze}/custom-plugins`,schemaCustomPluginItem:`${ze}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ze}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${We}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ze}/plugins`,forEntity:`${ze}/{entityType}/{entityId}/plugins`},edit:{all:`${ze}/plugins/{id}`,forEntity:`${ze}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ze}/{resourceEndpoint}`,edit:`${ze}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${ze}/v1/schemas/json/plugin/validate`,entityGetOne:`${ze}/{entity}/{id}`,entityGetAll:`${ze}/{entity}?size=1000`},kongManager:{create:{all:`${We}/plugins`,forEntity:`${We}/{entityType}/{entityId}/plugins`},edit:{all:`${We}/plugins/{id}`,forEntity:`${We}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${We}/schemas/plugins/{plugin}`,credential:{create:`${We}/{resourceEndpoint}`,edit:`${We}/{resourceEndpoint}/{id}`},credentialSchema:`${We}/schemas/{plugin}`,validate:`${We}/schemas/plugins/validate`,entityGetOne:`${We}/{entity}/{id}`,entityGetAll:`${We}/{entity}`}},item:{konnect:{all:`${ze}/plugins/{id}`,forEntity:`${ze}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${We}/plugins/{id}`,forEntity:`${We}/{entityType}/{entityId}/plugins/{id}`}}},Gm={key:0},jm=_e(n.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const t=e,{formatPluginFieldLabel:o}=Ie.usePluginHelpers(),{i18n:{t:r}}=Ie.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>o(d)).join(".")).join(", "),a=(s,c)=>r(s,{parameters:i(c)}),l=n.computed(()=>{const s=[];if(t.rules.atLeastOneOf)for(const c of t.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(t.rules.onlyOneOf)for(const c of t.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(t.rules.mutuallyRequired)for(const c of t.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=n.resolveComponent("KAlert");return n.openBlock(),n.createBlock(d,{class:"plugin-field-rule-alerts"},{default:n.withCtx(()=>[n.createElementVNode("ul",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(l.value,(f,u)=>(n.openBlock(),n.createElementBlock("li",{key:`simple-alert-${u}`},n.toDisplayString(f),1))),128)),t.rules.onlyOneOfMutuallyRequired&&t.rules.onlyOneOfMutuallyRequired.length>0?(n.openBlock(),n.createElementBlock("li",Gm,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(t.rules.onlyOneOfMutuallyRequired,(f,u)=>(n.openBlock(),n.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[n.createElementVNode("div",null,n.toDisplayString(n.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),n.createElementVNode("ul",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(f,(p,m)=>(n.openBlock(),n.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},n.toDisplayString(i(p)),1))),128))])]))),128))])):n.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);var Jl=typeof global=="object"&&global&&global.Object===Object&&global,zm=typeof self=="object"&&self&&self.Object===Object&&self,yt=Jl||zm||Function("return this")(),at=yt.Symbol,Ql=Object.prototype,Hm=Ql.hasOwnProperty,Ym=Ql.toString,eo=at?at.toStringTag:void 0;function Wm(e){var t=Hm.call(e,eo),o=e[eo];try{e[eo]=void 0;var r=!0}catch{}var i=Ym.call(e);return r&&(t?e[eo]=o:delete e[eo]),i}var Zm=Object.prototype,Xm=Zm.toString;function Jm(e){return Xm.call(e)}var Qm="[object Null]",eg="[object Undefined]",es=at?at.toStringTag:void 0;function Qt(e){return e==null?e===void 0?eg:Qm:es&&es in Object(e)?Wm(e):Jm(e)}function Tt(e){return e!=null&&typeof e=="object"}var tg="[object Symbol]";function ki(e){return typeof e=="symbol"||Tt(e)&&Qt(e)==tg}function ts(e,t){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=t(e[o],o,e);return i}var ct=Array.isArray,ns=at?at.prototype:void 0,os=ns?ns.toString:void 0;function rs(e){if(typeof e=="string")return e;if(ct(e))return ts(e,rs)+"";if(ki(e))return os?os.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function en(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function ng(e){return e}var og="[object AsyncFunction]",rg="[object Function]",ig="[object GeneratorFunction]",ag="[object Proxy]";function Jo(e){if(!en(e))return!1;var t=Qt(e);return t==rg||t==ig||t==og||t==ag}var Ci=yt["__core-js_shared__"],is=function(){var e=/[^.]+$/.exec(Ci&&Ci.keys&&Ci.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function lg(e){return!!is&&is in e}var sg=Function.prototype,cg=sg.toString;function tn(e){if(e!=null){try{return cg.call(e)}catch{}try{return e+""}catch{}}return""}var dg=/[\\^$.*+?()[\]{}|]/g,ug=/^\[object .+?Constructor\]$/,fg=Function.prototype,pg=Object.prototype,mg=fg.toString,gg=pg.hasOwnProperty,hg=RegExp("^"+mg.call(gg).replace(dg,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function yg(e){if(!en(e)||lg(e))return!1;var t=Jo(e)?hg:ug;return t.test(tn(e))}function _g(e,t){return e==null?void 0:e[t]}function nn(e,t){var o=_g(e,t);return yg(o)?o:void 0}var vi=nn(yt,"WeakMap"),as=Object.create,bg=function(){function e(){}return function(t){if(!en(t))return{};if(as)return as(t);e.prototype=t;var o=new e;return e.prototype=void 0,o}}();function wg(e,t,o){switch(o.length){case 0:return e.call(t);case 1:return e.call(t,o[0]);case 2:return e.call(t,o[0],o[1]);case 3:return e.call(t,o[0],o[1],o[2])}return e.apply(t,o)}function Eg(e,t){var o=-1,r=e.length;for(t||(t=Array(r));++o<r;)t[o]=e[o];return t}var kg=800,Cg=16,vg=Date.now;function Ng(e){var t=0,o=0;return function(){var r=vg(),i=Cg-(r-o);if(o=r,i>0){if(++t>=kg)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function Sg(e){return function(){return e}}var Qo=function(){try{var e=nn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),xg=Qo?function(e,t){return Qo(e,"toString",{configurable:!0,enumerable:!1,value:Sg(t),writable:!0})}:ng,Ag=Ng(xg);function Tg(e,t){for(var o=-1,r=e==null?0:e.length;++o<r&&t(e[o],o,e)!==!1;);return e}var Pg=9007199254740991,Ig=/^(?:0|[1-9]\d*)$/;function Ni(e,t){var o=typeof e;return t=t??Pg,!!t&&(o=="number"||o!="symbol"&&Ig.test(e))&&e>-1&&e%1==0&&e<t}function ls(e,t,o){t=="__proto__"&&Qo?Qo(e,t,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[t]=o}function Si(e,t){return e===t||e!==e&&t!==t}var Og=Object.prototype,$g=Og.hasOwnProperty;function xi(e,t,o){var r=e[t];(!($g.call(e,t)&&Si(r,o))||o===void 0&&!(t in e))&&ls(e,t,o)}function to(e,t,o,r){var i=!o;o||(o={});for(var a=-1,l=t.length;++a<l;){var s=t[a],c=void 0;c===void 0&&(c=e[s]),i?ls(o,s,c):xi(o,s,c)}return o}var ss=Math.max;function Bg(e,t,o){return t=ss(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,a=ss(r.length-t,0),l=Array(a);++i<a;)l[i]=r[t+i];i=-1;for(var s=Array(t+1);++i<t;)s[i]=r[i];return s[t]=o(l),wg(e,this,s)}}var Dg=9007199254740991;function Ai(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Dg}function Ti(e){return e!=null&&Ai(e.length)&&!Jo(e)}var Vg=Object.prototype;function er(e){var t=e&&e.constructor,o=typeof t=="function"&&t.prototype||Vg;return e===o}function Rg(e,t){for(var o=-1,r=Array(e);++o<e;)r[o]=t(o);return r}var Mg="[object Arguments]";function cs(e){return Tt(e)&&Qt(e)==Mg}var ds=Object.prototype,Fg=ds.hasOwnProperty,Lg=ds.propertyIsEnumerable,tr=cs(function(){return arguments}())?cs:function(e){return Tt(e)&&Fg.call(e,"callee")&&!Lg.call(e,"callee")};function Ug(){return!1}var us=typeof he=="object"&&he&&!he.nodeType&&he,fs=us&&typeof module=="object"&&module&&!module.nodeType&&module,Kg=fs&&fs.exports===us,ps=Kg?yt.Buffer:void 0,qg=ps?ps.isBuffer:void 0,no=qg||Ug,Gg="[object Arguments]",jg="[object Array]",zg="[object Boolean]",Hg="[object Date]",Yg="[object Error]",Wg="[object Function]",Zg="[object Map]",Xg="[object Number]",Jg="[object Object]",Qg="[object RegExp]",eh="[object Set]",th="[object String]",nh="[object WeakMap]",oh="[object ArrayBuffer]",rh="[object DataView]",ih="[object Float32Array]",ah="[object Float64Array]",lh="[object Int8Array]",sh="[object Int16Array]",ch="[object Int32Array]",dh="[object Uint8Array]",uh="[object Uint8ClampedArray]",fh="[object Uint16Array]",ph="[object Uint32Array]",Te={};Te[ih]=Te[ah]=Te[lh]=Te[sh]=Te[ch]=Te[dh]=Te[uh]=Te[fh]=Te[ph]=!0,Te[Gg]=Te[jg]=Te[oh]=Te[zg]=Te[rh]=Te[Hg]=Te[Yg]=Te[Wg]=Te[Zg]=Te[Xg]=Te[Jg]=Te[Qg]=Te[eh]=Te[th]=Te[nh]=!1;function mh(e){return Tt(e)&&Ai(e.length)&&!!Te[Qt(e)]}function Pi(e){return function(t){return e(t)}}var ms=typeof he=="object"&&he&&!he.nodeType&&he,oo=ms&&typeof module=="object"&&module&&!module.nodeType&&module,gh=oo&&oo.exports===ms,Ii=gh&&Jl.process,vn=function(){try{var e=oo&&oo.require&&oo.require("util").types;return e||Ii&&Ii.binding&&Ii.binding("util")}catch{}}(),gs=vn&&vn.isTypedArray,Oi=gs?Pi(gs):mh,hh=Object.prototype,yh=hh.hasOwnProperty;function hs(e,t){var o=ct(e),r=!o&&tr(e),i=!o&&!r&&no(e),a=!o&&!r&&!i&&Oi(e),l=o||r||i||a,s=l?Rg(e.length,String):[],c=s.length;for(var d in e)(t||yh.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Ni(d,c)))&&s.push(d);return s}function ys(e,t){return function(o){return e(t(o))}}var _h=ys(Object.keys,Object),bh=Object.prototype,wh=bh.hasOwnProperty;function _s(e){if(!er(e))return _h(e);var t=[];for(var o in Object(e))wh.call(e,o)&&o!="constructor"&&t.push(o);return t}function $i(e){return Ti(e)?hs(e):_s(e)}function Eh(e){var t=[];if(e!=null)for(var o in Object(e))t.push(o);return t}var kh=Object.prototype,Ch=kh.hasOwnProperty;function vh(e){if(!en(e))return Eh(e);var t=er(e),o=[];for(var r in e)r=="constructor"&&(t||!Ch.call(e,r))||o.push(r);return o}function Bi(e){return Ti(e)?hs(e,!0):vh(e)}var Nh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Sh=/^\w*$/;function xh(e,t){if(ct(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||ki(e)?!0:Sh.test(e)||!Nh.test(e)||t!=null&&e in Object(t)}var ro=nn(Object,"create");function Ah(){this.__data__=ro?ro(null):{},this.size=0}function Th(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Ph="__lodash_hash_undefined__",Ih=Object.prototype,Oh=Ih.hasOwnProperty;function $h(e){var t=this.__data__;if(ro){var o=t[e];return o===Ph?void 0:o}return Oh.call(t,e)?t[e]:void 0}var Bh=Object.prototype,Dh=Bh.hasOwnProperty;function Vh(e){var t=this.__data__;return ro?t[e]!==void 0:Dh.call(t,e)}var Rh="__lodash_hash_undefined__";function Mh(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=ro&&t===void 0?Rh:t,this}function on(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}on.prototype.clear=Ah,on.prototype.delete=Th,on.prototype.get=$h,on.prototype.has=Vh,on.prototype.set=Mh;function Fh(){this.__data__=[],this.size=0}function nr(e,t){for(var o=e.length;o--;)if(Si(e[o][0],t))return o;return-1}var Lh=Array.prototype,Uh=Lh.splice;function Kh(e){var t=this.__data__,o=nr(t,e);if(o<0)return!1;var r=t.length-1;return o==r?t.pop():Uh.call(t,o,1),--this.size,!0}function qh(e){var t=this.__data__,o=nr(t,e);return o<0?void 0:t[o][1]}function Gh(e){return nr(this.__data__,e)>-1}function jh(e,t){var o=this.__data__,r=nr(o,e);return r<0?(++this.size,o.push([e,t])):o[r][1]=t,this}function Pt(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}Pt.prototype.clear=Fh,Pt.prototype.delete=Kh,Pt.prototype.get=qh,Pt.prototype.has=Gh,Pt.prototype.set=jh;var io=nn(yt,"Map");function zh(){this.size=0,this.__data__={hash:new on,map:new(io||Pt),string:new on}}function Hh(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function or(e,t){var o=e.__data__;return Hh(t)?o[typeof t=="string"?"string":"hash"]:o.map}function Yh(e){var t=or(this,e).delete(e);return this.size-=t?1:0,t}function Wh(e){return or(this,e).get(e)}function Zh(e){return or(this,e).has(e)}function Xh(e,t){var o=or(this,e),r=o.size;return o.set(e,t),this.size+=o.size==r?0:1,this}function It(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}It.prototype.clear=zh,It.prototype.delete=Yh,It.prototype.get=Wh,It.prototype.has=Zh,It.prototype.set=Xh;var Jh="Expected a function";function Di(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(Jh);var o=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=o.cache;if(a.has(i))return a.get(i);var l=e.apply(this,r);return o.cache=a.set(i,l)||a,l};return o.cache=new(Di.Cache||It),o}Di.Cache=It;var Qh=500;function ey(e){var t=Di(e,function(r){return o.size===Qh&&o.clear(),r}),o=t.cache;return t}var ty=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ny=/\\(\\)?/g,oy=ey(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(ty,function(o,r,i,a){t.push(i?a.replace(ny,"$1"):r||o)}),t});function rr(e){return e==null?"":rs(e)}function Nn(e,t){return ct(e)?e:xh(e,t)?[e]:oy(rr(e))}function ir(e){if(typeof e=="string"||ki(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function Vi(e,t){t=Nn(t,e);for(var o=0,r=t.length;e!=null&&o<r;)e=e[ir(t[o++])];return o&&o==r?e:void 0}function bs(e,t,o){var r=e==null?void 0:Vi(e,t);return r===void 0?o:r}function Ri(e,t){for(var o=-1,r=t.length,i=e.length;++o<r;)e[i+o]=t[o];return e}var ws=at?at.isConcatSpreadable:void 0;function ry(e){return ct(e)||tr(e)||!!(ws&&e&&e[ws])}function iy(e,t,o,r,i){var a=-1,l=e.length;for(o||(o=ry),i||(i=[]);++a<l;){var s=e[a];o(s)?Ri(i,s):i[i.length]=s}return i}function ay(e){var t=e==null?0:e.length;return t?iy(e):[]}function Es(e){return Ag(Bg(e,void 0,ay),e+"")}var Mi=ys(Object.getPrototypeOf,Object),ly="[object Object]",sy=Function.prototype,cy=Object.prototype,ks=sy.toString,dy=cy.hasOwnProperty,uy=ks.call(Object);function fy(e){if(!Tt(e)||Qt(e)!=ly)return!1;var t=Mi(e);if(t===null)return!0;var o=dy.call(t,"constructor")&&t.constructor;return typeof o=="function"&&o instanceof o&&ks.call(o)==uy}function Cs(e,t,o){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),o=o>i?i:o,o<0&&(o+=i),i=t>o?0:o-t>>>0,t>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+t];return a}function py(e,t,o){var r=e.length;return o=o===void 0?r:o,!t&&o>=r?e:Cs(e,t,o)}var my="\\ud800-\\udfff",gy="\\u0300-\\u036f",hy="\\ufe20-\\ufe2f",yy="\\u20d0-\\u20ff",_y=gy+hy+yy,by="\\ufe0e\\ufe0f",wy="\\u200d",Ey=RegExp("["+wy+my+_y+by+"]");function vs(e){return Ey.test(e)}function ky(e){return e.split("")}var Ns="\\ud800-\\udfff",Cy="\\u0300-\\u036f",vy="\\ufe20-\\ufe2f",Ny="\\u20d0-\\u20ff",Sy=Cy+vy+Ny,xy="\\ufe0e\\ufe0f",Ay="["+Ns+"]",Fi="["+Sy+"]",Li="\\ud83c[\\udffb-\\udfff]",Ty="(?:"+Fi+"|"+Li+")",Ss="[^"+Ns+"]",xs="(?:\\ud83c[\\udde6-\\uddff]){2}",As="[\\ud800-\\udbff][\\udc00-\\udfff]",Py="\\u200d",Ts=Ty+"?",Ps="["+xy+"]?",Iy="(?:"+Py+"(?:"+[Ss,xs,As].join("|")+")"+Ps+Ts+")*",Oy=Ps+Ts+Iy,$y="(?:"+[Ss+Fi+"?",Fi,xs,As,Ay].join("|")+")",By=RegExp(Li+"(?="+Li+")|"+$y+Oy,"g");function Dy(e){return e.match(By)||[]}function Vy(e){return vs(e)?Dy(e):ky(e)}function Ry(e){return function(t){t=rr(t);var o=vs(t)?Vy(t):void 0,r=o?o[0]:t.charAt(0),i=o?py(o,1).join(""):t.slice(1);return r[e]()+i}}var My=Ry("toUpperCase");function Fy(e){return My(rr(e).toLowerCase())}function Ly(){this.__data__=new Pt,this.size=0}function Uy(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o}function Ky(e){return this.__data__.get(e)}function qy(e){return this.__data__.has(e)}var Gy=200;function jy(e,t){var o=this.__data__;if(o instanceof Pt){var r=o.__data__;if(!io||r.length<Gy-1)return r.push([e,t]),this.size=++o.size,this;o=this.__data__=new It(r)}return o.set(e,t),this.size=o.size,this}function Ot(e){var t=this.__data__=new Pt(e);this.size=t.size}Ot.prototype.clear=Ly,Ot.prototype.delete=Uy,Ot.prototype.get=Ky,Ot.prototype.has=qy,Ot.prototype.set=jy;function zy(e,t){return e&&to(t,$i(t),e)}function Hy(e,t){return e&&to(t,Bi(t),e)}var Is=typeof he=="object"&&he&&!he.nodeType&&he,Os=Is&&typeof module=="object"&&module&&!module.nodeType&&module,Yy=Os&&Os.exports===Is,$s=Yy?yt.Buffer:void 0,Bs=$s?$s.allocUnsafe:void 0;function Wy(e,t){if(t)return e.slice();var o=e.length,r=Bs?Bs(o):new e.constructor(o);return e.copy(r),r}function Zy(e,t){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];t(l,o,e)&&(a[i++]=l)}return a}function Ds(){return[]}var Xy=Object.prototype,Jy=Xy.propertyIsEnumerable,Vs=Object.getOwnPropertySymbols,Ui=Vs?function(e){return e==null?[]:(e=Object(e),Zy(Vs(e),function(t){return Jy.call(e,t)}))}:Ds;function Qy(e,t){return to(e,Ui(e),t)}var e_=Object.getOwnPropertySymbols,Rs=e_?function(e){for(var t=[];e;)Ri(t,Ui(e)),e=Mi(e);return t}:Ds;function t_(e,t){return to(e,Rs(e),t)}function Ms(e,t,o){var r=t(e);return ct(e)?r:Ri(r,o(e))}function Ki(e){return Ms(e,$i,Ui)}function Fs(e){return Ms(e,Bi,Rs)}var qi=nn(yt,"DataView"),Gi=nn(yt,"Promise"),ji=nn(yt,"Set"),Ls="[object Map]",n_="[object Object]",Us="[object Promise]",Ks="[object Set]",qs="[object WeakMap]",Gs="[object DataView]",o_=tn(qi),r_=tn(io),i_=tn(Gi),a_=tn(ji),l_=tn(vi),lt=Qt;(qi&<(new qi(new ArrayBuffer(1)))!=Gs||io&<(new io)!=Ls||Gi&<(Gi.resolve())!=Us||ji&<(new ji)!=Ks||vi&<(new vi)!=qs)&&(lt=function(e){var t=Qt(e),o=t==n_?e.constructor:void 0,r=o?tn(o):"";if(r)switch(r){case o_:return Gs;case r_:return Ls;case i_:return Us;case a_:return Ks;case l_:return qs}return t});var s_=Object.prototype,c_=s_.hasOwnProperty;function d_(e){var t=e.length,o=new e.constructor(t);return t&&typeof e[0]=="string"&&c_.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var ar=yt.Uint8Array;function zi(e){var t=new e.constructor(e.byteLength);return new ar(t).set(new ar(e)),t}function u_(e,t){var o=t?zi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var f_=/\w*$/;function p_(e){var t=new e.constructor(e.source,f_.exec(e));return t.lastIndex=e.lastIndex,t}var js=at?at.prototype:void 0,zs=js?js.valueOf:void 0;function m_(e){return zs?Object(zs.call(e)):{}}function g_(e,t){var o=t?zi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var h_="[object Boolean]",y_="[object Date]",__="[object Map]",b_="[object Number]",w_="[object RegExp]",E_="[object Set]",k_="[object String]",C_="[object Symbol]",v_="[object ArrayBuffer]",N_="[object DataView]",S_="[object Float32Array]",x_="[object Float64Array]",A_="[object Int8Array]",T_="[object Int16Array]",P_="[object Int32Array]",I_="[object Uint8Array]",O_="[object Uint8ClampedArray]",$_="[object Uint16Array]",B_="[object Uint32Array]";function D_(e,t,o){var r=e.constructor;switch(t){case v_:return zi(e);case h_:case y_:return new r(+e);case N_:return u_(e,o);case S_:case x_:case A_:case T_:case P_:case I_:case O_:case $_:case B_:return g_(e,o);case __:return new r;case b_:case k_:return new r(e);case w_:return p_(e);case E_:return new r;case C_:return m_(e)}}function V_(e){return typeof e.constructor=="function"&&!er(e)?bg(Mi(e)):{}}var R_="[object Map]";function M_(e){return Tt(e)&<(e)==R_}var Hs=vn&&vn.isMap,F_=Hs?Pi(Hs):M_,L_="[object Set]";function U_(e){return Tt(e)&<(e)==L_}var Ys=vn&&vn.isSet,K_=Ys?Pi(Ys):U_,q_=1,G_=2,j_=4,Ws="[object Arguments]",z_="[object Array]",H_="[object Boolean]",Y_="[object Date]",W_="[object Error]",Zs="[object Function]",Z_="[object GeneratorFunction]",X_="[object Map]",J_="[object Number]",Xs="[object Object]",Q_="[object RegExp]",eb="[object Set]",tb="[object String]",nb="[object Symbol]",ob="[object WeakMap]",rb="[object ArrayBuffer]",ib="[object DataView]",ab="[object Float32Array]",lb="[object Float64Array]",sb="[object Int8Array]",cb="[object Int16Array]",db="[object Int32Array]",ub="[object Uint8Array]",fb="[object Uint8ClampedArray]",pb="[object Uint16Array]",mb="[object Uint32Array]",Se={};Se[Ws]=Se[z_]=Se[rb]=Se[ib]=Se[H_]=Se[Y_]=Se[ab]=Se[lb]=Se[sb]=Se[cb]=Se[db]=Se[X_]=Se[J_]=Se[Xs]=Se[Q_]=Se[eb]=Se[tb]=Se[nb]=Se[ub]=Se[fb]=Se[pb]=Se[mb]=!0,Se[W_]=Se[Zs]=Se[ob]=!1;function ao(e,t,o,r,i,a){var l,s=t&q_,c=t&G_,d=t&j_;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!en(e))return e;var f=ct(e);if(f){if(l=d_(e),!s)return Eg(e,l)}else{var u=lt(e),p=u==Zs||u==Z_;if(no(e))return Wy(e,s);if(u==Xs||u==Ws||p&&!i){if(l=c||p?{}:V_(e),!s)return c?t_(e,Hy(l,e)):Qy(e,zy(l,e))}else{if(!Se[u])return i?e:{};l=D_(e,u,s)}}a||(a=new Ot);var m=a.get(e);if(m)return m;a.set(e,l),K_(e)?e.forEach(function(g){l.add(ao(g,t,o,g,e,a))}):F_(e)&&e.forEach(function(g,_){l.set(_,ao(g,t,o,_,e,a))});var h=d?c?Fs:Ki:c?Bi:$i,w=f?void 0:h(e);return Tg(w||e,function(g,_){w&&(_=g,g=e[_]),xi(l,_,ao(g,t,o,_,e,a))}),l}var gb=1,hb=4;function lr(e){return ao(e,gb|hb)}var yb="__lodash_hash_undefined__";function _b(e){return this.__data__.set(e,yb),this}function bb(e){return this.__data__.has(e)}function sr(e){var t=-1,o=e==null?0:e.length;for(this.__data__=new It;++t<o;)this.add(e[t])}sr.prototype.add=sr.prototype.push=_b,sr.prototype.has=bb;function wb(e,t){for(var o=-1,r=e==null?0:e.length;++o<r;)if(t(e[o],o,e))return!0;return!1}function Eb(e,t){return e.has(t)}var kb=1,Cb=2;function Js(e,t,o,r,i,a){var l=o&kb,s=e.length,c=t.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(t);if(d&&f)return d==t&&f==e;var u=-1,p=!0,m=o&Cb?new sr:void 0;for(a.set(e,t),a.set(t,e);++u<s;){var h=e[u],w=t[u];if(r)var g=l?r(w,h,u,t,e,a):r(h,w,u,e,t,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!wb(t,function(_,b){if(!Eb(m,b)&&(h===_||i(h,_,o,r,a)))return m.push(b)})){p=!1;break}}else if(!(h===w||i(h,w,o,r,a))){p=!1;break}}return a.delete(e),a.delete(t),p}function vb(e){var t=-1,o=Array(e.size);return e.forEach(function(r,i){o[++t]=[i,r]}),o}function Nb(e){var t=-1,o=Array(e.size);return e.forEach(function(r){o[++t]=r}),o}var Sb=1,xb=2,Ab="[object Boolean]",Tb="[object Date]",Pb="[object Error]",Ib="[object Map]",Ob="[object Number]",$b="[object RegExp]",Bb="[object Set]",Db="[object String]",Vb="[object Symbol]",Rb="[object ArrayBuffer]",Mb="[object DataView]",Qs=at?at.prototype:void 0,Hi=Qs?Qs.valueOf:void 0;function Fb(e,t,o,r,i,a,l){switch(o){case Mb:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Rb:return!(e.byteLength!=t.byteLength||!a(new ar(e),new ar(t)));case Ab:case Tb:case Ob:return Si(+e,+t);case Pb:return e.name==t.name&&e.message==t.message;case $b:case Db:return e==t+"";case Ib:var s=vb;case Bb:var c=r&Sb;if(s||(s=Nb),e.size!=t.size&&!c)return!1;var d=l.get(e);if(d)return d==t;r|=xb,l.set(e,t);var f=Js(s(e),s(t),r,i,a,l);return l.delete(e),f;case Vb:if(Hi)return Hi.call(e)==Hi.call(t)}return!1}var Lb=1,Ub=Object.prototype,Kb=Ub.hasOwnProperty;function qb(e,t,o,r,i,a){var l=o&Lb,s=Ki(e),c=s.length,d=Ki(t),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in t:Kb.call(t,p)))return!1}var m=a.get(e),h=a.get(t);if(m&&h)return m==t&&h==e;var w=!0;a.set(e,t),a.set(t,e);for(var g=l;++u<c;){p=s[u];var _=e[p],b=t[p];if(r)var y=l?r(b,_,p,t,e,a):r(_,b,p,e,t,a);if(!(y===void 0?_===b||i(_,b,o,r,a):y)){w=!1;break}g||(g=p=="constructor")}if(w&&!g){var C=e.constructor,x=t.constructor;C!=x&&"constructor"in e&&"constructor"in t&&!(typeof C=="function"&&C instanceof C&&typeof x=="function"&&x instanceof x)&&(w=!1)}return a.delete(e),a.delete(t),w}var Gb=1,ec="[object Arguments]",tc="[object Array]",cr="[object Object]",jb=Object.prototype,nc=jb.hasOwnProperty;function zb(e,t,o,r,i,a){var l=ct(e),s=ct(t),c=l?tc:lt(e),d=s?tc:lt(t);c=c==ec?cr:c,d=d==ec?cr:d;var f=c==cr,u=d==cr,p=c==d;if(p&&no(e)){if(!no(t))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Ot),l||Oi(e)?Js(e,t,o,r,i,a):Fb(e,t,c,o,r,i,a);if(!(o&Gb)){var m=f&&nc.call(e,"__wrapped__"),h=u&&nc.call(t,"__wrapped__");if(m||h){var w=m?e.value():e,g=h?t.value():t;return a||(a=new Ot),i(w,g,o,r,a)}}return p?(a||(a=new Ot),qb(e,t,o,r,i,a)):!1}function oc(e,t,o,r,i){return e===t?!0:e==null||t==null||!Tt(e)&&!Tt(t)?e!==e&&t!==t:zb(e,t,o,r,oc,i)}function Hb(e,t){return e!=null&&t in Object(e)}function Yb(e,t,o){t=Nn(t,e);for(var r=-1,i=t.length,a=!1;++r<i;){var l=ir(t[r]);if(!(a=e!=null&&o(e,l)))break;e=e[l]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&Ai(i)&&Ni(l,i)&&(ct(e)||tr(e)))}function Wb(e,t){return e!=null&&Yb(e,t,Hb)}function Zb(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function Xb(e,t){return t.length<2?e:Vi(e,Cs(t,0,-1))}var Jb="[object Map]",Qb="[object Set]",e0=Object.prototype,t0=e0.hasOwnProperty;function rc(e){if(e==null)return!0;if(Ti(e)&&(ct(e)||typeof e=="string"||typeof e.splice=="function"||no(e)||Oi(e)||tr(e)))return!e.length;var t=lt(e);if(t==Jb||t==Qb)return!e.size;if(er(e))return!_s(e).length;for(var o in e)if(t0.call(e,o))return!1;return!0}function n0(e,t){return oc(e,t)}function ic(e,t){return t=Nn(t,e),e=Xb(e,t),e==null||delete e[ir(Zb(t))]}function o0(e){return fy(e)?void 0:e}var r0=1,i0=2,a0=4,l0=Es(function(e,t){var o={};if(e==null)return o;var r=!1;t=ts(t,function(a){return a=Nn(a,e),r||(r=a.length>1),a}),to(e,Fs(e),o),r&&(o=ao(o,r0|i0|a0,o0));for(var i=t.length;i--;)ic(o,t[i]);return o});function ac(e,t,o,r){if(!en(e))return e;t=Nn(t,e);for(var i=-1,a=t.length,l=a-1,s=e;s!=null&&++i<a;){var c=ir(t[i]),d=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];d=void 0,d===void 0&&(d=en(f)?f:Ni(t[i+1])?[]:{})}xi(s,c,d),s=s[c]}return e}function s0(e,t,o){for(var r=-1,i=t.length,a={};++r<i;){var l=t[r],s=Vi(e,l);o(s,l)&&ac(a,Nn(l,e),s)}return a}function c0(e,t){return s0(e,t,function(o,r){return Wb(e,r)})}var Yi=Es(function(e,t){return e==null?{}:c0(e,t)});function d0(e,t,o){return e==null?e:ac(e,t,o)}var u0=0;function Wi(e){var t=++u0;return rr(e)+t}function lc(e,t){return e==null?!0:ic(e,t)}const{t:Sn}=Ue.createI18n("en-us",Ge);function Zi(e){return e.map(t=>({value:t,label:t}))}const Xi="*",sc="$",cc=".";function dt(...e){return e.join(cc)}function Ji(...e){return dt(sc,...e)}function dc(e){return e.startsWith(dt(sc,""))}function xn(e){return e.split(cc).filter(t=>t!=="")}function Qi(e){const t=xn(e);return t[t.length-1]}const f0=e=>{var t,o;return e.type==="redis-ce"?Sn("redis.shared_configuration.type_label.host_port"):(t=e.config.sentinel_nodes)!=null&&t.length?Sn("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?Sn("redis.shared_configuration.type_label.cluster"):Sn("redis.shared_configuration.type_label.host_port")},p0={"redis-ce":Sn("redis.shared_configuration.open_source"),"redis-ee":Sn("redis.shared_configuration.enterprise")},m0=e=>p0[e]??"";function g0(e,t){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return t.filter(a=>{const l=a.model.match(o);return l&&!Object.keys(e).includes(l[0])}).map(a=>{const l=a.label.match(r);return{label:l?l[0]:a.label,key:a.model,value:"N/A",type:"text"}})}function h0(e){const t=n.toValue(e);return t?t.type==="set"&&t.elements.type==="string"&&!t.elements.one_of:!1}const uc=Symbol("free-form-data"),fc=Symbol("free-form-schema"),pc=Symbol("free-form-field-path"),ea=Symbol("free-form-field-renderer-slots"),dr=Symbol("free-form-field-renderer-matchers-map"),mc=Symbol("free-form-config"),gc=Symbol("free-form-field-reset-label-path-setting"),An="free-form-field-renderers-slot",y0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function ta(e,t=""){const o={},r=e;if(Array.isArray(r.fields))for(const i of r.fields){const a=Object.keys(i)[0],l=i[a],s=t?dt(t,a):a;if(o[s]=l,l.type==="record"&&Array.isArray(l.fields)){const c=ta(l,s);Object.assign(o,c)}else if(l.type==="array"&&l.elements){const c=l.elements,d=dt(s,Xi);if(o[d]=c,c.type==="record"&&Array.isArray(c.fields)){const f=ta(c,d);Object.assign(o,f)}}}return o}function na(e){const t=xn(e).map(o=>/^\d+$/.test(o)?Xi:o);return dt(...t)}function _0(e){const t=n.toValue(e),o=n.computed(()=>t?ta(t):{});function r(f){var u;return f==null?t:(u=o.value)==null?void 0:u[na(f)]}function i(f,u=!1){const p=r(f);return p?p.default!==void 0?p.default:u||p.required?p.type==="record"?a(p,f):p.type==="array"?[]:null:null:null}function a(f,u){const p={};if(Array.isArray(f.fields))for(const m of f.fields){const h=Object.keys(m)[0],w=u?`${u}.${h}`:h,g=i(w,!1);g!==void 0&&(p[h]=g)}return p}function l(f){return f?i(f,!0):a(r(),"")}function s(f){const u=r(f),p=u!=null&&u.description?zo.marked.parse(u.description,{async:!1}):void 0;return{...y0,"data-testid":`ff-label-${f}`,info:p}}function c(f){var p;const u=r(f);return Zi((u==null?void 0:u.one_of)||((p=u.elements)==null?void 0:p.one_of)||[])}function d(f){var m;const u=(m=r(f))==null?void 0:m.default;let p=null;if(u==null||typeof u=="object"||u==="")return null;if(Array.isArray(u)){if(u.length===0)return null;p=u.join(", ")}else p=u.toString();return`Default: ${p}`}return{getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function Be(){const e=n.inject(uc),t=n.inject(fc),o=n.inject(mc,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!t)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...t}}const hc=e=>{const t=n.inject(pc,n.computed(()=>"")),o=n.computed(()=>{const r=n.toValue(e);let i=r;return!dc(r)&&t.value&&(i=dt(t.value,r)),dc(r)&&(i=i.slice(Ji("").length)),i});return n.provide(pc,o),o},b0=e=>{const{getSchema:t}=Be(),{default:o,...r}=n.useSlots(),i=n.inject(ea),a=n.inject(dr),l=n.computed(()=>{const c=n.toValue(i),d=Object.keys(r).filter(f=>f!==An&&f!=="item").reduce((f,u)=>{const p=na(dt(n.toValue(e),u));return{...f,[p]:r[u]}},{});return c?{...c,...d}:d});n.provide(ea,l);const s=n.toValue(e);return n.computed(()=>{if(o)return;const c=l.value[na(n.toValue(e))];if(c)return c;for(const[d,f]of a)if(d({path:s,schema:t(s)}))return f})},w0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function E0(e){return w0[e.toLocaleLowerCase()]??e}function k0(e,t){const o=n.inject(gc,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=n.toValue(o),a=n.ref(r?dt(r,e):e),l=n.ref({parentPath:a.value,isolate:i});return n.watch([n.toRef(t),n.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?dt(d,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=u,l.value.isolate=!1,l.value.parentPath=u}};(p=m[s])==null||p.call(m)}else f&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),n.provide(gc,l),a}function C0(e){return xn(e).map(o=>o.split("_").map(Fy).map(E0).join(" ")).join(" › ")}function v0(e,t){const o=n.toValue(e),r=Qi(o),{formConfig:i}=Be(),a=k0(r,t),{getSchema:l}=Be(),s=yc(e);return n.computed(()=>{var p;const c=a.value??r,d=(p=s.value.parent)!=null&&p.path?l(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":C0(c);return i.transformLabel?i.transformLabel(u,o):u})}function $t(e,t){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Be(),a=n.toValue(e),l=n.toValue(t),s=v0(e,n.toRef(()=>n.toValue(t).resetLabelPath));return n.computed(()=>{var c;return{...l,placeholder:l.placeholder??r(a)??void 0,labelAttributes:l.labelAttributes??o(a),label:l.label??s.value,required:l.required??((c=i(a))==null?void 0:c.required)}})}function N0(e){var r;const t=xn(e);let o={parent:null};for(t.pop();t.length;){const i=t.shift();o.path=(r=o.parent)!=null&&r.path?dt(o.parent.path,i):i,o={parent:o}}return o}function yc(e){return n.computed(()=>N0(n.toValue(e)))}function _c(e){const{formData:t}=Be(),o=hc(e);return{value:n.computed({get:()=>bs(t,xn(o.value)),set:i=>d0(t,xn(o.value),i)})}}function ut(e){const{getSchema:t}=Be(),o=hc(e),r=b0(o),{value:i}=_c(e),a=n.computed(()=>t(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:yc(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function oa(e){const{getSchema:t}=Be(),o=n.useAttrs();return n.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=n.toValue(e).parent;return r!=null&&r.path?((i=t(r.path))==null?void 0:i.type)==="array":!1})}function bc(e,t){const o=n.reactive(new Map);function r(){return Wi(`${e}-`)}function i(a,l){return a!=null&&typeof a=="object"?o.get(a):`${e}-${l}`}return n.watch(t,a=>{const l=n.toValue(a);l.forEach(c=>{o.has(c)||o.set(c,r())});const s=new Set(l);[...o.keys()].forEach(c=>{s.has(c)||o.delete(c)})},{immediate:!0,deep:!0}),{getKey:i}}const S0="__request_callout_";function wc(){return Wi(S0)}const lo=n.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const o=e,r=t,i=n.computed(()=>o.multiline?Pe.KTextArea:Pe.KInput),a=n.ref(o.modelValue);n.watch(()=>o.modelValue,d=>{a.value=d});const{formConfig:l}=Be(),s=d=>{a.value=d,l.updateOnChange||r("update:modelValue",d)},c=()=>{l.updateOnChange&&r("update:modelValue",a.value)};return(d,f)=>(n.openBlock(),n.createBlock(n.unref(i),n.mergeProps(d.$attrs,{"model-value":d.modelValue,onChange:c,"onUpdate:modelValue":s}),n.createSlots({_:2},[n.renderList(n.useSlots(),(u,p)=>({name:p,fn:n.withCtx(m=>[n.renderSlot(d.$slots,p,n.normalizeProps(n.guardReactiveProps(m)))])}))]),1040,["model-value"]))}}),x0=["innerHTML"],Tn=_e(n.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.useAttrs(),{i18n:r}=je(),i=n.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=t,{value:l,...s}=ut(n.toRef(()=>e.name)),c=$t(s.path,n.toRef({...i,...o})),d=l==null?void 0:l.value;function f(_){d!==void 0&&_===""&&_!==d?(l.value=null,a("update:modelValue",null)):(l.value=_.trim(),a("update:modelValue",_.trim()))}const u=n.computed(()=>{var _;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((_=s.schema)==null?void 0:_.value).encrypted}),p=n.inject(Ce.AUTOFILL_SLOT,void 0),m=n.computed(()=>{var _;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((_=s.schema.value)!=null&&_.referenceable)}),h=n.computed(()=>({referenceable:m.value})),w=oa(s.ancestors),g=n.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Qi(e.name)==="name");return(_,b)=>{var C;const y=n.resolveComponent("KAlert");return s.error?(n.openBlock(),n.createBlock(y,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",n.normalizeProps(n.mergeProps({key:1},_.$attrs)),[n.createVNode(lo,n.mergeProps({...n.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":g.value,"data-autofocus":n.unref(w),"data-testid":`ff-${s.path.value}`,"model-value":n.unref(l)??"",multiline:_.multiline,"onUpdate:modelValue":f}),n.createSlots({_:2},[(C=n.unref(c).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(_.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(c).labelAttributes.info},null,8,x0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value","multiline"]),n.unref(p)&&m.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(p)),{key:0,schema:h.value,update:f,value:n.unref(l)??""},null,8,["schema","value"])):n.createCommentVNode("",!0),m.value&&!n.unref(p)?(n.openBlock(),n.createBlock(y,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:n.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):n.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-3e9674bf"]]),A0=["innerHTML"],Ec=_e(n.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.createPropsRestProxy(e,["name"]),{value:r,...i}=ut(n.toRef(()=>e.name)),a=t,l=c=>{r.value=c,a("update:modelValue",c)},s=$t(i.path,o);return(c,d)=>{var u;const f=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock(n.unref(Pe.KCheckbox),n.mergeProps({key:1},n.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":n.unref(r)??!1,"onUpdate:modelValue":l}),n.createSlots({_:2},[(u=n.unref(s).labelAttributes)!=null&&u.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(c.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(s).labelAttributes.info},null,8,A0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),kc=_e(n.defineComponent({__name:"SlideTransition",setup(e){const t=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(t.map(p=>[p,""])),r=Object.fromEntries(t.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(t.map(h=>[h,m.getPropertyValue(h)]))}function a(p){["overflow","transition",...t].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const h=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...h,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(n.openBlock(),n.createBlock(n.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:f},{default:n.withCtx(()=>[n.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),T0=["data-testid"],P0=["data-testid"],I0=["data-testid"],O0=["innerHTML"],$0={class:"ff-object-field-actions"},B0=["data-testid"],ft=_e(n.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:n.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(e){n.useSlots();const t=n.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=ut(n.toRef(t,"name")),{getSchema:i,getDefault:a}=Be(),l=n.useModel(e,"added"),s=n.useModel(e,"expanded"),c=n.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),d=n.computed(()=>{var g,_;if((g=r.ancestors)!=null&&g.value){const b=r.ancestors.value.parent;if(b!=null&&b.path)return((_=i(b.path))==null?void 0:_.type)==="array"}return!1}),f=n.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=$t(r.path,n.toRef(()=>({required:e.required,...t,resetLabelPath:f.value}))),p=n.computed(()=>u.value.required?!0:l.value??e.defaultAdded),m=n.computed(()=>e.asChild!==void 0?e.asChild:d.value),h=n.computed(()=>{let g=r.schema.value.fields;return e.omit&&(g=g.filter(_=>!e.omit.includes(Object.keys(_)[0]))),e.fieldsOrder?g.sort((_,b)=>{const y=Object.keys(_)[0],C=Object.keys(b)[0],x=e.fieldsOrder.indexOf(y),k=e.fieldsOrder.indexOf(C);return x===-1&&k===-1?0:x===-1?1:k===-1?-1:x-k}):g});function w(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return n.watch(p,g=>{e.collapsible&&(s.value=g)}),n.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(g,_)=>{var y;const b=n.resolveComponent("KAlert");return n.openBlock(),n.createElementBlock(n.Fragment,null,[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(g.$slots[n.unref(An)]))),r.error?(n.openBlock(),n.createBlock(b,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(n.openBlock(),n.createElementBlock("div",n.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},g.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[n.renderSlot(g.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(h.value,C=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(C)[0],name:Object.keys(C)[0]},null,8,["name"]))),128))],!0)],16,T0)):(n.openBlock(),n.createElementBlock("div",n.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},g.$attrs),[n.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[n.createVNode(n.unref(Pe.KLabel),n.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...n.unref(u),required:!1},{"tooltip-attributes":n.unref(u).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(u).label)+" ",1)]),_:2},[(y=n.unref(u).labelAttributes)!=null&&y.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(u).labelAttributes.info},null,8,O0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createElementVNode("div",$0,[g.collapsible&&p.value?(n.openBlock(),n.createBlock(n.unref(Pe.KButton),{key:0,appearance:"tertiary",class:n.normalizeClass(`ff-object-field-button-${c.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${r.path.value}`,icon:"",onClick:_[0]||(_[0]=C=>s.value=!c.value)},{default:n.withCtx(()=>[p.value?(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):n.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):n.createCommentVNode("",!0),n.unref(u).required?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Pe.KButton),{key:1,appearance:"tertiary",class:n.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:w},{default:n.withCtx(()=>[p.value?(n.openBlock(),n.createBlock(n.unref(Ee.TrashIcon),{key:0})):(n.openBlock(),n.createBlock(n.unref(Ee.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,I0),n.createVNode(kc,null,{default:n.withCtx(()=>[c.value?(n.openBlock(),n.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[n.renderSlot(g.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(h.value,C=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(C)[0],name:Object.keys(C)[0]},null,8,["name"]))),128))],!0)],8,B0)):n.createCommentVNode("",!0)]),_:3})],16,P0))],64)}}}),[["__scopeId","data-v-21f3af99"]]),D0=["innerHTML"],Pn=_e(n.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.createPropsRestProxy(e,["name"]),{value:r,...i}=ut(n.toRef(()=>e.name)),a=$t(i.path,o),l=n.computed(()=>{var w;const p=(w=i.schema)==null?void 0:w.value;if(p.gt)return{min:p.gt};const[m,h]=p.between??[];return{min:o.min??m,max:o.max??h}}),s=t,c=r.value,d=n.computed(()=>(r==null?void 0:r.value)!=null&&Number.isFinite(r.value)?`${r.value}`:"");function f(p){c!==void 0&&p===""&&Number(p)!==c?(r.value=null,s("update:modelValue",null)):(r.value=p===""?null:Number(p),s("update:modelValue",p===""?null:Number(p)))}const u=oa(i.ancestors);return(p,m)=>{var w;const h=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock(lo,n.mergeProps({key:1,class:"ff-number-field"},{...n.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":n.unref(u),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":f}),n.createSlots({_:2},[(w=n.unref(a).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(p.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(a).labelAttributes.info},null,8,D0)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-296fb1b7"]]),V0=["innerHTML"],_t=_e(n.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},multiple:{type:Boolean,default:()=>{}},items:{},placeholder:{}},setup(e){const t=n.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:o}=Be(),{value:r,...i}=ut(n.toRef(()=>e.name)),a=$t(i.path,t),l=n.computed(()=>e.items?e.items:i.path?o(i.path.value):[]),s=n.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=i.schema.value)==null?void 0:d.type)==="set"}),c=n.computed(()=>s.value?Pe.KMultiselect:Pe.KSelect);return(d,f)=>{var p;const u=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(u,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock(n.unref(c),n.mergeProps({key:1},n.unref(a),{modelValue:n.unref(r),"onUpdate:modelValue":f[0]||(f[0]=m=>n.isRef(r)?r.value=m:null),class:"ff-enum-field","data-testid":`ff-${i.path.value}`,items:l.value,"kpop-attributes":{"data-testid":`${i.path.value}-items`}}),n.createSlots({_:2},[(p=n.unref(a).labelAttributes)!=null&&p.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(d.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(a).labelAttributes.info},null,8,V0)],!0)]),key:"0"}:void 0]),1040,["modelValue","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-181f0d06"]]);function ra(e,t,o=!0){const{value:r,...i}=ut(n.toRef(e,"name")),a=$t(i.path,n.toRef({...e,...n.useAttrs()})),l=n.ref(d(e.initialValue??n.toValue(r)??{},e.keyOrder));function s(){return Wi("ff-kv-field-")}function c(g,_,b){const y=b.indexOf(g),C=b.indexOf(_);return y===-1&&C===-1?0:y===-1?1:C===-1?-1:y-C}function d(g,_){const b=Object.entries(g).map(([y,C])=>({id:s(),key:y,value:C}));return _&&b.sort((y,C)=>c(y.key,C.key,_)),b}function f(){const g={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(g),g}function u(g){const _=l.value.findIndex(b=>b.id===g);_!==-1&&l.value.splice(_,1)}function p(){l.value=d(e.initialValue||{},e.keyOrder)}function m(g){l.value=d(g,e.keyOrder)}let h=null;n.watch(l,g=>{if(!o)return;const _=Object.fromEntries(g.map(({key:b,value:y})=>[b,y]).filter(([b])=>b));r.value=_,h=_,t("change",_)},{deep:!0,immediate:!0}),n.watch(()=>r==null?void 0:r.value,g=>{n0(g,h)||w(g)},{deep:!0});function w(g){if(!g){l.value=[];return}const _=new Map;l.value.forEach(x=>{x.key&&_.set(x.key,x)});const b=[],y=Object.keys(g);(e.keyOrder?[...y].sort((x,k)=>c(x,k,e.keyOrder)):y).forEach(x=>{const k=g[x];if(_.has(x)){const P=_.get(x);P.value=k,b.push(P)}else b.push({id:s(),key:x,value:k})}),l.value=b}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const R0=["data-testid"],M0=["data-testid"],F0=["innerHTML"],L0=["data-testid"],U0=_e(n.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:t,emit:o}){const r=n.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=je(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=ra(r,a),m=n.useTemplateRef("root");async function h(x,k="key"){var P;m.value&&(await n.nextTick(),(P=m.value.querySelector(`[data-${k}-input="${x}"]`))==null||P.focus())}function w(){s();const x=l.value.findIndex(({key:k})=>!k);h(x===-1?l.value.length-1:x)}function g(x){x===l.value.length-1&&s(),h(x+1)}const _=n.inject(Ce.AUTOFILL_SLOT,void 0),b=n.computed(()=>{var x,k;return e.showVaultSecretPicker??!!((k=(x=p.schema.value)==null?void 0:x.values)!=null&&k.referenceable)}),y=n.computed(()=>({referenceable:b.value}));function C(x,k){l.value[x].value=k}return t({reset:d,setValue:f}),(x,k)=>{var W;const P=n.resolveComponent("KAlert"),I=n.resolveComponent("KLabel"),B=n.resolveComponent("KButton");return n.unref(p).error?(n.openBlock(),n.createBlock(P,{key:0,appearance:"danger",message:n.unref(p).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${n.unref(p).path.value}`},[n.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${n.unref(p).path.value}`},[n.createVNode(I,n.mergeProps({class:"ff-kv-field-label"},n.unref(u),{"data-testid":`ff-label-${n.unref(p).path.value}`,"tooltip-attributes":n.unref(u).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(u).label)+" ",1)]),_:2},[(W=n.unref(u).labelAttributes)!=null&&W.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(x.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(u).labelAttributes.info},null,8,F0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createVNode(B,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(p).path.value}`,icon:"",onClick:w},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:1},8,["data-testid"])],8,M0),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(l),(M,v)=>(n.openBlock(),n.createElementBlock("div",{key:M.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${n.unref(p).path.value}.${v}`},[n.createVNode(lo,{modelValue:M.key,"onUpdate:modelValue":N=>M.key=N,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":v,"data-testid":`ff-key-${n.unref(p).path.value}.${v}`,placeholder:x.keyPlaceholder||"Key",onKeydown:n.withKeys(n.withModifiers(N=>h(v,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),n.createVNode(lo,{modelValue:M.value,"onUpdate:modelValue":N=>M.value=N,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${n.unref(p).path.value}.${v}`,"data-value-input":v,placeholder:x.valuePlaceholder||"Value",onKeydown:n.withKeys(n.withModifiers(N=>g(v),["prevent"]),["enter"])},{after:n.withCtx(()=>[n.unref(_)&&b.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(_)),{key:0,schema:y.value,update:N=>C(v,N),value:M.value},null,8,["schema","update","value"])):n.createCommentVNode("",!0),b.value&&!n.unref(_)?(n.openBlock(),n.createBlock(P,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${n.unref(p).path.value}`,message:n.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):n.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),n.createVNode(B,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${n.unref(p).path.value}.${v}`,icon:"",onClick:N=>n.unref(c)(M.id)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,L0))),128))],8,R0))}}}),[["__scopeId","data-v-92e0893d"]]),K0=["data-testid"],q0=["innerHTML"],Cc=_e(n.defineComponent({inheritAttrs:!1,__name:"TagField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},type:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.useAttrs(),r=n.createPropsRestProxy(e,["name"]),i=t,{value:a,...l}=ut(n.toRef(()=>e.name)),s=$t(l.path,n.toRef({...r,...o})),c=n.computed(()=>{var w,g;return((g=(w=l.schema)==null?void 0:w.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),d=n.ref("");function f(w){return w.map(g=>g.trim()).filter(Boolean).join(", ")}function u(w){return w.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(w){d.value=w;const g=u(w),_=!g.length&&c.value?null:g;a.value=_,i("update:modelValue",_)}const m=oa(l.ancestors),h=n.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Qi(e.name)==="name");return n.watch(a,w=>{const g=w?f(w):"";f(u(d.value))!==g&&(d.value=g)},{immediate:!0}),(w,g)=>{var b;const _=n.resolveComponent("KAlert");return l.error?(n.openBlock(),n.createBlock(_,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[n.createVNode(lo,n.mergeProps(n.unref(s),{class:"ff-tag-field","data-1p-ignore":h.value,"data-autofocus":n.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),n.createSlots({_:2},[(b=n.unref(s).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(w.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(s).labelAttributes.info},null,8,q0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,K0))}}}),[["__scopeId","data-v-43602ab3"]]),Qe=n.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const t=e,o=ut(n.toRef(t,"name")),r=n.computed(()=>{var i,a;switch((a=(i=o.schema)==null?void 0:i.value)==null?void 0:a.type){case"string":return"one_of"in o.schema.value?_t:Tn;case"boolean":return"one_of"in o.schema.value?_t:Ec;case"number":case"integer":return"one_of"in o.schema.value?_t:Pn;case"array":return ia;case"set":return h0(o.schema)?Cc:_t;case"record":return ft;case"map":return U0;default:return}});return(i,a)=>{const l=n.resolveComponent("KAlert");return n.openBlock(),n.createElementBlock(n.Fragment,null,[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(i.$slots[n.unref(An)]))),n.unref(o).error?(n.openBlock(),n.createBlock(l,{key:0,appearance:"danger",message:n.unref(o).error.message},null,8,["message"])):n.unref(o).renderer.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(o).renderer.value),{key:1,name:Ji(n.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(n.openBlock(),n.createElementBlock(n.Fragment,{key:2},[r.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(r.value),{key:0,name:Ji(n.unref(o).path.value)},null,8,["name"])):(n.openBlock(),n.createBlock(l,{key:1,appearance:"warning",message:`${n.unref(o).path.value} ${n.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),n.renderSlot(i.$slots,"default")],64))],64)}}}),G0=["data-testid"],j0=["data-testid"],z0=["innerHTML"],H0=["data-testid"],Y0={class:"ff-array-field-item-content"},W0=["data-index","data-testid"],ia=_e(n.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:t}){var C;n.useCssVars(x=>({"6954cf1c":y.value}));const o=e,r=t,{i18n:{t:i}}=je(),{getDefault:a}=Be(),{value:l,...s}=ut(n.toRef(o,"name")),c=$t(s.path,n.toRef({...o,...n.useAttrs()})),d=n.computed(()=>o.items??n.toValue(l)??[]),{getKey:f}=bc("ff-array-field",d),u=n.computed(()=>o.appearance==="card"?Pe.KCard:"div");function p(x,k){return typeof o.itemLabel=="function"?o.itemLabel(x,k):o.itemLabel||c.value.label||`Item #${k}`}const m=n.computed(()=>d.value.map((x,k)=>({hash:`#${f(x,k)}`,title:""}))),h=n.ref((C=m.value[0])==null?void 0:C.hash),w=async()=>{var k;const x=a(dt(s.path.value,Xi));Array.isArray(l.value)||(l.value=[]),l.value.push(x),r("add"),o.appearance==="tabs"&&(await n.nextTick(),h.value=(k=m.value[m.value.length-1])==null?void 0:k.hash),await n.nextTick(),b(d.value.length+1)},g=async x=>{var k;Array.isArray(l.value)&&l.value.splice(x,1),r("remove",x),o.appearance==="tabs"&&(h.value=(k=m.value[Math.max(0,x-1)])==null?void 0:k.hash)},_=n.useTemplateRef("root");function b(x){var P;if(!_.value)return;const k=Math.max(0,Math.min(x,d.value.length-1));(P=_.value.querySelector(`[data-index="${k}"] [data-autofocus]`))==null||P.focus()}const y=n.computed(()=>{const{appearance:x,stickyTabs:k}=o;return x!=="tabs"||k==null||k===!1?null:typeof k=="number"?`${o.stickyTabs}px`:typeof k=="string"?k:"0"});return(x,k)=>{var M;const P=n.resolveComponent("KAlert"),I=n.resolveComponent("KLabel"),B=n.resolveComponent("KButton"),W=n.resolveComponent("KTabs");return s.error?(n.openBlock(),n.createBlock(P,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:_,class:n.normalizeClass(["ff-array-field",{[`ff-array-field-${x.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":x.stickyTabs}]),"data-testid":`ff-array-${s.path.value}`},[n.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${s.path.value}`},[n.createVNode(I,n.mergeProps({class:"ff-array-field-label"},n.unref(c),{"data-testid":`ff-label-${s.path.value}`,"tooltip-attributes":n.unref(c).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(c).label)+" ",1)]),_:2},[(M=n.unref(c).labelAttributes)!=null&&M.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(x.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(c).labelAttributes.info},null,8,z0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createVNode(B,{appearance:"tertiary","aria-label":n.unref(i)("actions.add_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${s.path.value}`,icon:"",onClick:w},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,j0),d.value.length?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[x.appearance!=="tabs"?(n.openBlock(),n.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${s.path.value}`},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(d.value,(v,N)=>(n.openBlock(),n.createBlock(n.unref(u),{key:n.unref(f)(v,N),class:"ff-array-field-item","data-index":N,"data-testid":`ff-array-item-${s.path.value}.${N}`},{default:n.withCtx(()=>[n.createElementVNode("div",Y0,[x.$slots.item?n.renderSlot(x.$slots,"item",{key:0,fieldName:String(N),index:N},void 0,!0):(n.openBlock(),n.createBlock(Qe,{key:1,name:String(N)},null,8,["name"]))]),n.createVNode(B,{appearance:"tertiary","aria-label":n.unref(i)("actions.remove_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${s.path.value}.${N}`,icon:"",onClick:E=>g(N)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,H0)):(n.openBlock(),n.createBlock(n.unref(Pe.KCard),{key:1,"data-testid":`ff-array-tab-container-${s.path.value}`},{default:n.withCtx(()=>[n.createVNode(W,{modelValue:h.value,"onUpdate:modelValue":k[0]||(k[0]=v=>h.value=v),"data-testid":`ff-array-tabs-${s.path.value}`,tabs:m.value},n.createSlots({_:2},[n.renderList(d.value,(v,N)=>({name:n.unref(f)(v,N),fn:n.withCtx(()=>[n.createElementVNode("div",{class:"ff-array-field-item","data-index":N,"data-testid":`ff-array-item-${s.path.value}.${N}`},[x.$slots.item?n.renderSlot(x.$slots,"item",{key:0,fieldName:String(N),index:N},void 0,!0):(n.openBlock(),n.createBlock(Qe,{key:1,name:String(N)},null,8,["name"]))],8,W0)])})),n.renderList(d.value,(v,N)=>({name:`${n.unref(f)(v,N)}-anchor`,fn:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(p(v,N))+" ",1),n.createVNode(B,{appearance:"tertiary","aria-label":n.unref(i)("actions.remove_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${s.path.value}.${N}`,icon:"",onClick:n.withModifiers(E=>g(N),["stop"])},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):n.createCommentVNode("",!0)],10,G0))}}}),[["__scopeId","data-v-463d07bb"]]),so=Symbol(),Z0=n.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const t=e,{formData:o}=Be(),r=n.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[t.index])==null?void 0:c.name)})}),i=n.computed(()=>r.value.map(({[so]:l,name:s})=>({value:l,label:s}))),a=n.computed(()=>o.config.callouts[t.index]);return n.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(n.openBlock(),n.createBlock(ft,{name:l.fieldName},{depends_on:n.withCtx(c=>[n.createVNode(_t,n.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:n.withCtx(c=>[n.createVNode(ft,n.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:n.withCtx(d=>[n.createVNode(_t,n.mergeProps(d,{items:n.unref(Zi)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),X0=n.defineComponent({__name:"CalloutsForm",setup(e){const{formData:t,getDefault:o}=Be();function r(){const i=o("config.callouts.*");i.request.body.custom=i.request.body.custom??{};const a=t.config.callouts[t.config.callouts.length-1];a&&(a[so]=wc())}return(i,a)=>(n.openBlock(),n.createBlock(ia,{appearance:"tabs","item-label":l=>l.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:r},{item:n.withCtx(({index:l,fieldName:s})=>[n.createVNode(Z0,{"field-name":s,index:l},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),vc=n.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const t=e,{default:o}=n.useSlots(),r=n.inject(dr);if(!r)throw new Error(dr.toString()+"not provided");return o&&r.set(t.match,o),(i,a)=>null}}),bt=n.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:t,emit:o}){const r=o,i=n.useSlots(),a=_0(e.schema);n.provide(fc,a);const l=m=>{var h;return Jo((h=e.config)==null?void 0:h.hasValue)?e.config.hasValue(m):!!m},s=n.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((h,w)=>{const g=Object.keys(h)[0],_=Object.keys(w)[0],b=e.fieldsOrder.indexOf(g),y=e.fieldsOrder.indexOf(_);return b===-1&&y===-1?0:b===-1?1:y===-1?-1:b-y}):m});let c=!1;const d=n.reactive({});n.provide(uc,d),n.provide(ea,l0(i,"default",An));const f=new Map;n.provide(dr,f),n.provide(mc,e.config??{}),n.watch(d,m=>{c&&r("change",n.toValue(m))},{deep:!0,immediate:!0});function u(m){Object.keys(d).forEach(h=>{delete d[h]}),Object.assign(d,m)}function p(m){var w;let h;!m||!l(n.toValue(m))?h=a.getDefault():h=lr(n.toValue(m)),Jo((w=e.config)==null?void 0:w.prepareFormData)?u(e.config.prepareFormData(h)):u(h),c=!0}return n.onBeforeMount(()=>{p(e.data)}),n.watch(()=>e.data,m=>{p(m)},{deep:!0}),t({getInnerData:()=>n.toRaw(d)}),(m,h)=>(n.openBlock(),n.createBlock(n.resolveDynamicComponent(m.tag),null,{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(i)[n.unref(An)]))),n.renderSlot(m.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(s.value,w=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(w)[0],name:Object.keys(w)[0],onGlobalAction:h[0]||(h[0]=(g,_)=>r("globalAction",g,_))},null,8,["name"]))),128))])]),_:3}))}}),J0={class:"ff-advanced-fields"},Nc=_e(n.defineComponent({__name:"AdvancedFields",setup(e){const{t}=Ue.createI18n("en-us",Ge),{getSchema:o}=Be(),r=n.ref(!0);return(i,a)=>(n.openBlock(),n.createBlock(n.unref(Pe.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"trigger-label":r.value?n.unref(t)("plugins.form.grouping.advanced_parameters.view"):n.unref(t)("plugins.form.grouping.advanced_parameters.hide")},{default:n.withCtx(()=>[n.createElementVNode("div",J0,[n.unref(o)("instance_name")?(n.openBlock(),n.createBlock(Qe,{key:0,name:"instance_name"})):n.createCommentVNode("",!0),n.unref(o)("protocols")?(n.openBlock(),n.createBlock(Qe,{key:1,name:"protocols"})):n.createCommentVNode("",!0),n.unref(o)("tags")?(n.openBlock(),n.createBlock(Cc,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:n.unref(t)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):n.createCommentVNode("",!0),n.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-190b1d21"]]),Q0=n.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:t}){const o=t,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=je();function a(d,f=!1){return d.reduce((u,{[so]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=lr(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(h=>{h.request.body.custom=h.request.body.custom??{},h[so]=wc()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(w=>p[w])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=lr(d);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const u=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[so]:h,depends_on:w,...g}=m;return{depends_on:w.map(_=>u[_]).filter(_=>_!=null),...g}}),o("change",f)}return(d,f)=>(n.openBlock(),n.createBlock(bt,{class:"rc-config-form",config:r,data:d.data,schema:d.schema,tag:"div",onChange:c},{[n.unref(An)]:n.withCtx(()=>[n.createVNode(vc,{match:({path:u})=>u.endsWith("by_lua")},{default:n.withCtx(u=>[n.createVNode(Tn,n.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:n.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),n.createVNode(vc,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:n.withCtx(u=>[n.createVNode(ia,n.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:n.withCtx(()=>[n.createVNode(ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:n.withCtx(()=>[n.createVNode(X0),n.createVNode(ft,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),n.createVNode(ft,{appearance:"card",name:"cache"},{redis:n.withCtx(u=>[n.createVNode(ft,n.mergeProps(u,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),n.createVNode(Nc)]),_:2},1032,["data","schema"]))}}),ew={class:"sc-form-pinned-fields"},tw={class:"sc-form-config-form"},Sc=_e(n.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t}=Ue.createI18n("en-us",Ge),o=e;n.useSlots();function r(f){return n.computed(()=>({fields:n.toValue(f).map(u=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===u)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=n.computed(()=>{const f=o.schema;f.fields=f.fields.filter(p=>l.includes(Object.keys(p)[0])),f.fields.unshift({instance_name:{type:"string",description:t("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:t("plugins.form.fields.tags.help"),elements:{type:"string"}}});const u=f.fields.find(p=>Object.keys(p)[0]==="protocols");return u&&(u.protocols.help=u.protocols.default?t("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):t("plugins.form.fields.protocols.placeholder"),u.protocols.description=t("plugins.form.fields.protocols.help")),f}),c=n.ref(!1);function d(f){return Yi(f,["config","instance_name","partials","protocols","tags"])}return(f,u)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",ew,[n.createVNode(n.unref(Ce.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:n.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),n.createVNode(n.unref(Pe.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"sc-form-config-fields"},{title:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.form.grouping.plugin_configuration.description")),1)]),default:n.withCtx(()=>[n.createElementVNode("div",tw,[n.renderSlot(f.$slots,"default",{data:d(f.model),schema:s.value,onChange:u[0]||(u[0]=(...p)=>f.onFormChange&&f.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-175fd883"]]),nw=n.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const t=e,o=n.useSlots();return n.provide(Ce.AUTOFILL_SLOT,o==null?void 0:o[Ce.AUTOFILL_SLOT_NAME]),(r,i)=>(n.openBlock(),n.createBlock(Sc,n.normalizeProps(n.guardReactiveProps(t)),{default:n.withCtx(a=>[n.createVNode(Q0,n.normalizeProps(n.guardReactiveProps(a)),null,16)]),_:1},16))}}),ow={key:1},rw=["innerHTML"],iw={class:"horizontal-container"},aw=_e(n.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=t,r=n.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Be(),a=ut(n.toRef(()=>e.name)),l=$t(a.path,r),s=n.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,f)=>{var m;const u=n.resolveComponent("KAlert"),p=n.resolveComponent("KLabel");return n.unref(a).error?(n.openBlock(),n.createBlock(u,{key:0,appearance:"danger",message:n.unref(a).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",ow,[n.createVNode(p,n.normalizeProps(n.guardReactiveProps(n.unref(l).labelAttributes)),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(l).label)+" ",1)]),_:2},[(m=n.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:n.withCtx(()=>[n.createElementVNode("div",{innerHTML:n.unref(l).labelAttributes.info},null,8,rw)]),key:"0"}:void 0]),1040),n.createElementVNode("div",iw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(s.value,h=>(n.openBlock(),n.createBlock(n.unref(Pe.KRadio),{key:h.value,"model-value":n.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=w=>n.unref(a).value.value=w),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),lw={class:"sp-form-request-limits-subtitle"},sw={class:"sp-form-request-limits-content"},cw={class:"sp-form-window-type"},dw={class:"sp-form-request-limits-items"},uw={class:"sp-form-request-limits-row"},fw=["id"],pw={class:"sp-form-request-limits-actions"},mw={key:0,class:"sp-form-request-limits-examples"},gw={class:"sp-form-request-limits-examples-badges"},aa="config.window_type",hw=_e(n.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t}=Ue.createI18n("en-us",Ge),{formData:o,getSelectItems:r,getSchema:i}=Be(),a=n.computed(()=>{var b,y;const _=(y=(b=o.config)==null?void 0:b.limit)==null?void 0:y.map((C,x)=>{var k,P;return{limit:C,windowSize:(P=(k=o.config)==null?void 0:k.window_size)==null?void 0:P[x]}});return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=bc("request-limits",a),s=_=>{var b,y;p.value=void 0,o.config&&((b=o.config.limit)!=null&&b.length||(o.config.limit=[null]),(y=o.config.window_size)!=null&&y.length||(o.config.window_size=[null]),o.config.limit.splice(_+1,0,null),o.config.window_size.splice(_+1,0,null))},c=_=>{o.config&&(o.config.limit.splice(_,1),o.config.window_size.splice(_,1))},d=(g=i(aa))==null?void 0:g.default,f=n.computed(()=>bs(o,aa)),u=n.computed(()=>r(aa).sort((_,b)=>_.value===d?-1:b.value===d?1:0)),p=n.ref(),m={fixed:[{label:t("sp.use_cases.fixed.hourly_500.label"),description:t("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:t("sp.use_cases.fixed.half_hourly_200.label"),description:t("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:t("sp.use_cases.fixed.daily_500.label"),description:t("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:t("sp.use_cases.sliding.hourly_100.label"),description:t("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:t("sp.use_cases.sliding.half_hourly_300.label"),description:t("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:t("sp.use_cases.sliding.hourly_500.label"),description:t("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},h=n.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),w=(_,b)=>{if(b===p.value){n.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}n.nextTick(()=>{p.value=b}),o.config.limit=[_.config.limit],o.config.window_size=[_.config.window_size]};return(_,b)=>{const y=n.resolveComponent("KLabel"),C=n.resolveComponent("KButton"),x=n.resolveComponent("KBadge"),k=n.resolveComponent("KTooltip"),P=n.resolveComponent("KCard");return n.openBlock(),n.createBlock(P,{class:"sp-form-request-limits"},{title:n.withCtx(()=>[n.createVNode(y,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.request_limits.title")),1)]),_:1}),n.createElementVNode("div",lw,n.toDisplayString(n.unref(t)("sp.request_limits.subtitle")),1)]),default:n.withCtx(()=>[n.createElementVNode("div",sw,[n.createElementVNode("div",cw,[n.createVNode(aw,{items:u.value,label:n.unref(t)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":b[0]||(b[0]=I=>p.value=void 0)},null,8,["items","label"])]),n.createElementVNode("div",dw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(a.value,(I,B)=>(n.openBlock(),n.createElementBlock("div",{key:n.unref(l)(I,B)},[n.createVNode(y,{for:`sp-form-request-limits-item-${B}-legend`},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.request_limits.label_index",{index:B+1})),1)]),_:2},1032,["for"]),n.createElementVNode("div",uw,[n.createElementVNode("legend",{id:`sp-form-request-limits-item-${B}-legend`,class:"sp-form-request-limits-inputs"},[n.createVNode(Pn,{name:`$.config.limit.${B}`,placeholder:n.unref(t)("sp.request_limits.request_number")},null,8,["name","placeholder"]),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.interval_determiner")),1),n.createVNode(Pn,{name:`$.config.window_size.${B}`,placeholder:n.unref(t)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.seconds")),1)],8,fw),n.createElementVNode("div",pw,[n.createVNode(C,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(B)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.RemoveIcon))]),_:2},1032,["disabled","onClick"]),n.createVNode(C,{appearance:"tertiary",onClick:()=>s(B)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),h.value.length>0?(n.openBlock(),n.createElementBlock("div",mw,[n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.start_with_a_use_case")),1),n.createElementVNode("div",gw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(h.value,(I,B)=>(n.openBlock(),n.createBlock(k,{key:`use-case-${B}`,"max-width":"300"},{content:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(I.description),1),b[1]||(b[1]=n.createElementVNode("br",null,null,-1)),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.label"))+": "+n.toDisplayString(I.config.limit),1),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.time_interval"))+": "+n.toDisplayString(I.config.window_size),1)]),default:n.withCtx(()=>[n.createVNode(x,{appearance:p.value===`${f.value}-${B}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>w(I,`${f.value}-${B}`)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(I.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):n.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-f3727aa3"]]),yw={id:"sp-form-error-legend",class:"sp-form-error-inputs"},_w=_e(n.defineComponent({__name:"ErrorMessageForm",setup(e){const{t}=Ue.createI18n("en-us",Ge);return(o,r)=>{const i=n.resolveComponent("KLabel");return n.openBlock(),n.createElementBlock("div",null,[n.createVNode(i,{for:"sp-form-error-legend",info:n.unref(t)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.error_message.label")),1)]),_:1},8,["info"]),n.createElementVNode("legend",yw,[n.createVNode(Pn,{class:"input-error-code",label:"",name:"error_code",placeholder:n.unref(t)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=n.createElementVNode("div",null,":",-1)),n.createVNode(Tn,{class:"input-error-message",label:"",name:"error_message",placeholder:n.unref(t)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),bw={class:"partial-config-card"},ww={class:"config-card-row-label"},Ew={class:"label-text"},kw=["data-testid"],Cw=["data-testid"],vw={key:1},Nw=["data-testid"],Sw=["data-testid"],xw=_e(n.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t,formatUnixTimeStamp:o}=Ue.createI18n("en-us",Ge),r={id:{order:1},name:{order:1},type:{label:t("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:t("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:t("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=u=>u!=null,l=(u,p)=>a(p)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:s}=ae.useStringHelpers(),c=n.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,w,g;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(h=r[u])!=null&&h.formatter?r[u].formatter(p):p,type:((w=r[u])==null?void 0:w.type)??l(u,p),order:((g=r[u])==null?void 0:g.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=g0(i.configFields,i.pluginRedisFields||[]),f=n.computed(()=>c.value.concat(d));return(u,p)=>{const m=n.resolveComponent("KCopy");return n.openBlock(),n.createElementBlock("div",bw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(f.value,({key:h,label:w,value:g,type:_})=>(n.openBlock(),n.createElementBlock("div",{key:h,class:"partial-config-card-row"},[n.createElementVNode("div",ww,[n.createElementVNode("div",Ew,n.toDisplayString(w),1)]),n.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(g)?(n.openBlock(),n.createElementBlock("div",vw,[_==="password"?(n.openBlock(),n.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[n.createVNode(m,{format:"redacted",text:String(g)},null,8,["text"])],8,Nw)):(n.openBlock(),n.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},n.toDisplayString(g),9,Sw))])):(n.openBlock(),n.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,Cw))],8,kw)]))),128))])}}}),[["__scopeId","data-v-836def53"]]),Aw=_e(n.defineComponent({__name:"NewRedisPartialModal",props:{visible:{type:Boolean,default:!1},partialType:{type:String,default:""}},emits:["partialUpdated","partialUpdateFailed","modalClose"],setup(e,{emit:t}){const o=e,{t:r}=Ue.createI18n("en-us",Ge),i=n.inject(Ce.FORMS_CONFIG),a=t,{getMessageFromError:l}=ae.useErrors(),s=n.computed(()=>{switch(o.partialType){case Xn.PartialType.REDIS_CE:return Xn.PartialType.REDIS_EE;case Xn.PartialType.REDIS_EE:return Xn.PartialType.REDIS_CE;default:return}}),c=n.ref(!1),d=n.ref(),f=m=>{a("partialUpdateFailed",{message:l(m),appearance:"danger"})},u=()=>{a("partialUpdated",{message:r("plugins.free-form.redis_partial.partial_created_success_message"),appearance:"success"}),p()},p=()=>{d.value=void 0,a("modalClose"),n.nextTick(()=>{c.value=!1})};return n.watch(()=>o.visible,m=>{m&&(c.value=!0,n.nextTick(()=>{d.value="#km-modal-footer"}))}),(m,h)=>{const w=n.resolveComponent("KModal");return n.openBlock(),n.createBlock(w,{class:"plugin-redis-partial-form","data-testid":"redis-partial-form-modal","full-screen":"",title:n.unref(r)("plugins.free-form.redis_partial.redis_partial_modal_title"),visible:c.value,onCancel:p},{footer:n.withCtx(()=>h[0]||(h[0]=[n.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:n.withCtx(()=>[n.createVNode(n.unref(Xn.RedisConfigurationForm),{"action-teleport-target":d.value,config:n.unref(i),"disabled-partial-type":s.value,"slidout-top-offset":0,onCancel:p,onError:f,onUpdate:u},null,8,["action-teleport-target","config","disabled-partial-type"])]),_:1},8,["title","visible"])}}}),[["__scopeId","data-v-ac12474e"]]),Tw="#52596e",Pw="#e0e4ea",Iw="#00abd2",xc="#afb7c5",co="12px",Ow="16px",la="20px",$w="24px",Bw="8px",Ac=Symbol("redis-partial-info"),Tc={konnect:{getOne:"/v2/control-planes/{controlPlaneId}/core-entities/partials/{id}",getAll:"/v2/control-planes/{controlPlaneId}/core-entities/partials"},kongManager:{getOne:"/{workspace}/partials/{id}",getAll:"/{workspace}/partials"}},Pc=["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"],Dw={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},Vw={key:0,class:"shared-redis-config"},Rw={class:"shared-redis-config-title"},Mw={class:"redis-config-select","data-testid":"redis-config-select"},Fw={class:"selected-redis-config"},Lw=["data-testid"],Uw={class:"select-item-name","data-testid":"selected-redis-config"},Kw={class:"empty-redis-config","data-testid":"empty-redis-config"},qw={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Gw="1000",jw=_e(n.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:t}){var j;const o=t,{t:r}=Ue.createI18n("en-us",Ge),i=e,a=n.inject(Ac),l=(a==null?void 0:a.isEditing)||!1,s=n.computed(()=>{var G;return i.redisPath?i.redisPath:(G=a==null?void 0:a.redisPath)!=null&&G.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((j=a==null?void 0:a.redisType)==null?void 0:j.value)||"all",d=n.computed(()=>{var G;return!!((G=a==null?void 0:a.redisType)!=null&&G.value)}),f=n.ref(!1),u=n.ref(null),p=n.ref(!l),{getMessageFromError:m}=ae.useErrors(),h=n.ref(i.defaultRedisConfigItem),w=n.ref({}),g=n.ref(),{value:_}=_c("$.partials"),{value:b}=ut(s),y=n.inject(Ce.FORMS_CONFIG),{debouncedQueryChange:C,loading:x,error:k,loadItems:P,results:I}=ae.useDebouncedFilter(y,Tc[y.app].getAll,Gw,{fetchedItemsKey:"data",searchKeys:["id","name"]}),B=n.computed(()=>k.value?m(k.value):""),W=G=>{let F=`${y.apiBaseUrl}${Tc[y.app].getOne}`;return y.app==="konnect"?F=F.replace(/{controlPlaneId}/gi,(y==null?void 0:y.controlPlaneId)||""):y.app==="kongManager"&&(F=F.replace(/\/{workspace}/gi,y!=null&&y.workspace?`/${y.workspace}`:"")),F=F.replace(/{id}/gi,String(G)),F},M=n.computed(()=>{const G=(I.value||[]).map(F=>({label:F.id,name:F.name,value:F.id,type:F.type,tag:f0(F)})).filter(F=>F.type==="redis-ce"||F.type==="redis-ee");return c!=="all"?G.filter(F=>F.type===c):G}),{axiosInstance:v}=ae.useAxios(y==null?void 0:y.axiosRequestConfig),N=()=>{p.value?(g.value&&(_.value=g.value,h.value=g.value[0].id,b.value=void 0),b!=null&&b.value&&(w.value=b.value)):(Object.keys(w.value).length&&(b.value=w.value),_!=null&&_.value&&(g.value=_.value),_.value=l?null:void 0)},E=G=>{P(),o("globalAction","notify",G)},R=G=>{o("globalAction","notify",G)},O=async G=>{if(G){h.value=G,_.value=[{id:G}],g.value=[{id:G}],b.value=void 0;try{const F=await v.get(W(G));if(F.data.config){const V=Object.assign(F.data,F.data.config);delete V.config,u.value=V}}catch(F){console.error(F)}}};return n.watch(()=>p.value,()=>{N()}),n.onBeforeMount(()=>{var G;if(P(),i.defaultRedisConfigItem||_!=null&&_.value){const F=i.defaultRedisConfigItem||((G=_==null?void 0:_.value)==null?void 0:G[0].id);O(F),p.value=!0}else b!=null&&b.value&&(w.value=b.value)}),(G,F)=>{const V=n.resolveComponent("KBadge"),U=n.resolveComponent("KRadio"),re=n.resolveComponent("KSelect"),de=n.resolveComponent("KCard");return d.value?(n.openBlock(),n.createBlock(de,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:n.unref(r)("redis.title")},{default:n.withCtx(()=>[n.createElementVNode("div",Dw,[n.createVNode(U,{modelValue:p.value,"onUpdate:modelValue":F[0]||(F[0]=ee=>p.value=ee),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:n.unref(r)("redis.shared_configuration.description"),label:n.unref(r)("redis.shared_configuration.label"),"selected-value":!0},{default:n.withCtx(()=>[n.createVNode(V,{appearance:"success"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(r)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),n.createVNode(U,{modelValue:p.value,"onUpdate:modelValue":F[1]||(F[1]=ee=>p.value=ee),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:n.unref(r)("redis.dedicated_configuration.description"),label:n.unref(r)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),p.value?(n.openBlock(),n.createElementBlock("div",Vw,[n.createElementVNode("div",Rw,n.toDisplayString(n.unref(r)("redis.shared_configuration.title")),1),n.createElementVNode("div",Mw,[n.createVNode(re,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:M.value,loading:n.unref(x),"model-value":h.value,placeholder:n.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:F[3]||(F[3]=ee=>O(ee==null?void 0:ee.value)),onQueryChange:n.unref(C)},{"selected-item-template":n.withCtx(({item:ee})=>[n.createElementVNode("div",Fw,n.toDisplayString(ee.name),1)]),"item-template":n.withCtx(({item:ee})=>[n.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${ee.name}`},[n.createElementVNode("span",Uw,n.toDisplayString(ee.name),1),n.createVNode(V,{appearance:"info",class:"select-item-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(ee.tag),1)]),_:2},1024)],8,Lw)]),empty:n.withCtx(()=>[n.createElementVNode("div",Kw,n.toDisplayString(n.unref(r)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":n.withCtx(()=>[n.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:F[2]||(F[2]=()=>f.value=!0)},[n.createVNode(n.unref(Ee.AddIcon),{size:n.unref(co)},null,8,["size"]),n.createElementVNode("span",null,n.toDisplayString(n.unref(r)("redis.shared_configuration.create_new_configuration",{type:n.unref(m0)(n.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),u.value?(n.openBlock(),n.createBlock(xw,{key:0,"config-fields":u.value},null,8,["config-fields"])):n.createCommentVNode("",!0),B.value?(n.openBlock(),n.createElementBlock("p",qw,n.toDisplayString(B.value||n.unref(r)("redis.shared_configuration.error")),1)):n.createCommentVNode("",!0)])):(n.openBlock(),n.createBlock(ft,n.mergeProps({key:1},i,{"as-child":"","fields-order":n.unref(Pc),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),n.createVNode(Aw,{"partial-type":n.unref(c),visible:f.value,onModalClose:F[4]||(F[4]=ee=>f.value=!1),onPartialUpdateFailed:R,onPartialUpdated:E},null,8,["partial-type","visible"])]),_:1},8,["title"])):(n.openBlock(),n.createBlock(ft,n.mergeProps({key:1},i,{"fields-order":n.unref(Pc),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-f58fb92a"]]),zw=n.defineComponent({__name:"RedisField",setup(e){const{formData:t}=Be();return n.watchEffect(()=>{t.config&&t.config.strategy!=="redis"&&(t.partials=void 0)}),(o,r)=>(n.openBlock(),n.createBlock(kc,null,{default:n.withCtx(()=>{var i;return[((i=n.unref(t).config)==null?void 0:i.strategy)==="redis"?(n.openBlock(),n.createBlock(jw,{key:0})):n.createCommentVNode("",!0)]}),_:1}))}}),Hw=n.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},setup(e){const t={hasValue:o=>!!(o!=null&&o.config)};return(o,r)=>(n.openBlock(),n.createBlock(bt,{class:"rc-config-form",config:t,data:o.data,schema:o.schema,tag:"div",onChange:r[0]||(r[0]=i=>o.$emit("change",i))},{default:n.withCtx(()=>[n.createVNode(ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:n.withCtx(()=>[n.createVNode(hw),n.createVNode(_w)]),_:1}),n.createVNode(Nc,null,{default:n.withCtx(()=>[n.createVNode(Qe,{name:"config.dictionary_name"}),n.createVNode(Qe,{name:"config.lock_dictionary_name"}),n.createVNode(Qe,{name:"config.strategy"}),n.createVNode(zw),n.createVNode(Qe,{name:"config.namespace"}),n.createVNode(Qe,{name:"config.hide_client_headers"}),n.createVNode(Qe,{name:"config.disable_penalty"}),n.createVNode(Qe,{name:"config.retry_after_jitter_max"}),n.createVNode(Qe,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),Yw=n.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const t=e,o=n.useSlots();return n.provide(Ce.AUTOFILL_SLOT,o==null?void 0:o[Ce.AUTOFILL_SLOT_NAME]),(r,i)=>(n.openBlock(),n.createBlock(Sc,n.normalizeProps(n.guardReactiveProps(t)),{default:n.withCtx(a=>[n.createVNode(Hw,n.normalizeProps(n.guardReactiveProps(a)),null,16)]),_:1},16))}}),Ww={class:"ff-standard-layout"},Zw={class:"enabled"},Xw={class:"scope"},Jw={key:0,class:"scope-detail"},Qw=_e(n.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t}=Ue.createI18n("en-us",Ge),o=e,r=n.useSlots();n.provide(Ce.AUTOFILL_SLOT,r==null?void 0:r[Ce.AUTOFILL_SLOT_NAME]);const i=n.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(_=>_.model==="enabled")}}),a=n.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(_=>_.model==="selectionGroup")}),l=n.computed(()=>(a.value.fields||[]).map(({label:g,description:_})=>({label:g,description:_}))),s=n.computed(()=>a.value.fields[1]),c=n.computed(()=>{var _;const g=["instance_name","protocols","tags"];return{fields:(_=o.formSchema)==null?void 0:_.fields.filter(b=>g.includes(b.model))}}),d=["config"],f=n.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(_=>d.includes(Object.keys(_)[0])),g});function u(g){return Yi(g,["config","partials"])}const p=n.ref(!1),m=n.ref(!0),h=Yi(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]);function w(g,_){h[_]=g,o.onModelUpdated(g,_)}return n.watch(p,g=>{g?Object.keys(h).forEach(_=>{o.onModelUpdated(h[_],_)}):Object.keys(h).forEach(_=>{o.onModelUpdated("",_)})}),(g,_)=>{const b=n.resolveComponent("KCollapse");return n.openBlock(),n.createElementBlock("div",Ww,[n.createVNode(n.unref(ae.EntityFormBlock),{description:n.unref(t)("plugins.form.sections.general_info.description"),step:1,title:n.unref(t)("plugins.form.sections.general_info.title")},n.createSlots({default:n.withCtx(()=>[n.createElementVNode("div",Zw,[n.createVNode(n.unref(Ce.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),n.createElementVNode("div",Xw,[n.createVNode(n.unref(Pe.KRadio),n.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[0]||(_[0]=y=>p.value=y),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),n.createVNode(n.unref(Pe.KRadio),n.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[1]||(_[1]=y=>p.value=y),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),p.value?(n.openBlock(),n.createElementBlock("div",Jw,[n.createVNode(n.unref(Ce.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:w},null,8,["model","options","schema"])])):n.createCommentVNode("",!0),n.createVNode(b,{modelValue:m.value,"onUpdate:modelValue":_[2]||(_[2]=y=>m.value=y),"trigger-label":"Show more"},{default:n.withCtx(()=>[n.createVNode(n.unref(Ce.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:c.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),n.createVNode(n.unref(ae.EntityFormBlock),{description:n.unref(t)("plugins.form.sections.plugin_config.description"),step:2,title:n.unref(t)("plugins.form.sections.plugin_config.title")},n.createSlots({default:n.withCtx(()=>[n.renderSlot(g.$slots,"default",{data:u(g.model),schema:f.value,onChange:_[3]||(_[3]=(...y)=>g.onFormChange&&g.onFormChange(...y))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-a727028f"]]),{t:sa}=Ue.createI18n("en-us",Ge);function wt(e){return sa(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function uo(e){return sa(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function eE(e){return sa(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const ur={call:{type:"call",summary:uo("call"),description:wt("call"),icon:Ee.NetworkIcon,io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}}},jq:{type:"jq",summary:uo("jq"),description:wt("jq"),icon:Ee.CodeblockIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},exit:{type:"exit",summary:uo("exit"),description:wt("exit"),icon:Ee.GatewayIcon,io:{input:{fields:[{name:"headers"},{name:"body"}]}}},property:{type:"property",summary:uo("property"),description:wt("property"),icon:Ee.StackIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},static:{type:"static",summary:uo("static"),description:wt("static"),icon:Ee.VitalsIcon,io:{output:{fields:[],configurable:!0}}}},ca={request:{type:"request",description:wt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_request:{type:"service_request",description:wt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_response:{type:"service_response",description:wt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}}},response:{type:"response",description:wt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}}}},Ic=Object.keys(ca),Oc=e=>Ic.includes(e),In=e=>Ic.includes(e),tE=e=>In(e.type),nE="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let oE=(e=21)=>{let t="",o=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)t+=nE[o[e]&63];return t};function On(e){return lr(e)}function fo(e){return`${e}:${oE()}`}function fr(e){const[t,o]=e.split(".");return{nodeName:t,fieldName:o}}function $c(e){const[t,o]=e.split(".");return{nodeId:t,fieldId:o}}function da(e){return In(e)?ca[e]:ur[e]}function Bc(e){var i,a,l,s,c,d;const t=da(e),o=((l=(a=(i=t.io)==null?void 0:i.input)==null?void 0:a.fields)==null?void 0:l.map(({name:f})=>f))??[],r=((d=(c=(s=t.io)==null?void 0:s.output)==null?void 0:c.fields)==null?void 0:d.map(({name:f})=>f))??[];return{input:o,output:r}}function Dc(e){return(e??[]).map(t=>({id:fo("field"),name:t}))}function po(e,t,o){if(o)return e.fields[t].find(r=>r.name===o)}function rn(e,t,o){if(o)return e.fields[t].find(r=>r.id===o)}function ua(e,t){return t?e.fields.output.some(o=>o.id===t):!0}function Vc(e,t){return t?e.fields.input.some(o=>o.id===t):!0}const rE=["request","service_request","service_response","response"];function iE(e){const t=e==="request"||e==="service_request"?"request":"response",o=ca[e];return{name:e,phase:t,position:{x:0,y:0},fields:Bc(o.type),expanded:{}}}function aE(e,t){const o=e.toUpperCase();let r=1;for(;t.has(`${o}_${r}`);)r++;return`${o}_${r}`}function lE(e,t){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d}=Je.useManualRefHistory(e,{capacity:t==null?void 0:t.capacity,clone:t==null?void 0:t.clone});let f;function u(g,_){!!(_!=null&&_.replace)&&g&&f===g&&d.value.length>0&&d.value.pop(),o(),f=g}function p(){r(),f=void 0}function m(){i(),f=void 0}function h(){s(),f=void 0}function w(){c(),f=void 0}return{canUndo:a,canRedo:l,commit:u,undo:p,redo:m,clear:h,reset:w}}function Rc(e,t){var d,f;const o=new Map(t.map(u=>[u.name,u])),r=[],i=[],a=new Map,l=[],s=new Map,c=u=>{const p=new Set,m=[...u];for(;m.length>0;){const h=m.shift();if(!p.has(h)&&(p.add(h),Oc(h)||(a.get(h).phase="request"),!!s.has(h)))for(const w of s.get(h))p.has(w)||m.push(w)}};for(const u of e){const p=o.get(u.name),m=Fc(u.type,u,p);r.push(m),a.set(m.name,m)}for(const u of rE)if(!a.has(u)){const p=o.get(u)??iE(u),m=Fc(u,void 0,p);r.push(m),a.set(m.name,m)}for(const u of e)cE(u,l);for(const u of l){const p=a.get(u.source),m=a.get(u.target);if(!p||!m){p||console.warn(`[initEditorState] skip: source "${u.source}" not found`),m||console.warn(`[initEditorState] skip: target "${u.target}" not found`);continue}s.has(u.source)||s.set(u.source,new Set),s.get(u.source).add(u.target),s.has(u.target)||s.set(u.target,new Set),s.get(u.target).add(u.source),i.push({id:fo("edge"),source:p.id,sourceField:(d=po(p,"output",u.sourceField))==null?void 0:d.id,target:m.id,targetField:(f=po(m,"input",u.targetField))==null?void 0:f.id})}return c(["request","service_request"]),{nodes:r,edges:i}}function Mc(e){const{type:t,name:o,phase:r,position:i,fields:a,config:l}=e,s=Bc(t);return{id:fo("node"),type:t,name:o??t,phase:r??(t==="request"||t==="service_request"?"request":"response"),position:i??{x:0,y:0},expanded:{},fields:{input:Dc((a==null?void 0:a.input)??s.input),output:Dc((a==null?void 0:a.output)??s.output)},config:l?On(l):{}}}function Fc(e,t,o){return Mc({type:e,name:t==null?void 0:t.name,phase:(o==null?void 0:o.phase)??(e==="request"||e==="service_request"?"request":"response"),position:o==null?void 0:o.position,fields:dE(t,o),config:t?sE(t):void 0})}function sE(e){const{type:t,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return On(s)}function cE(e,t){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=fr(e.input);r&&t.push({source:r,sourceField:i,target:o})}if(e.inputs)for(const[r,i]of Object.entries(e.inputs)){const{nodeName:a,fieldName:l}=fr(i);a&&t.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=fr(e.output);r&&t.push({source:o,target:r,targetField:i})}if(e.outputs)for(const[r,i]of Object.entries(e.outputs)){const{nodeName:a,fieldName:l}=fr(i);a&&t.push({source:o,sourceField:r,target:a,targetField:l})}}function dE(e,t){var a,l;if(!e&&!t)return;const o=new Set,r=new Set;e!=null&&e.inputs&&Object.keys(e.inputs).forEach(s=>o.add(s)),e!=null&&e.outputs&&Object.keys(e.outputs).forEach(s=>r.add(s)),(a=t==null?void 0:t.fields)!=null&&a.input&&t.fields.input.forEach(s=>o.add(s)),(l=t==null?void 0:t.fields)!=null&&l.output&&t.fields.output.forEach(s=>r.add(s));const i={};return o.size&&(i.input=Array.from(o)),r.size&&(i.output=Array.from(r)),Object.keys(i).length?i:void 0}function uE(e){const t=n.computed(()=>{const c=new Map;return e.value.nodes.forEach(d=>c.set(d.id,d)),c}),o=n.computed(()=>e.value.edges);function r(c){const d=t.value.get(c.source),f=t.value.get(c.target);if(!d||!f)return c;const u=Vc(d,c.sourceField)&&!ua(d,c.sourceField),p=ua(f,c.targetField);return u&&p?{source:c.target,sourceField:c.targetField,target:c.source,targetField:c.sourceField}:c}function i(c){const d=r(c),f=[],u=t.value.get(d.source),p=t.value.get(d.target);if(u||f.push("source node not found"),p||f.push("target node not found"),!u||!p)return{ok:!1,errors:f};ua(u,d.sourceField)||f.push("source handle is not an output field"),Vc(p,d.targetField)||f.push("target handle is not an input field"),u.phase==="response"&&p.phase==="request"&&f.push("cannot connect from response phase to request phase"),p.name==="request"&&f.push('cannot target "request"'),u.name==="response"&&f.push('cannot source from "response"'),u.phase==="response"&&p.phase!=="response"&&f.push("response-phase output must go to response-phase nodes");const m=o.value.some(g=>g.target===d.target&&!g.targetField),h=o.value.some(g=>g.target===d.target&&!!g.targetField);(m&&d.targetField||h&&!d.targetField)&&f.push("cannot mix whole-node and field-level inputs on same target"),d.targetField&&o.value.some(g=>g.target===d.target&&g.targetField===d.targetField)&&f.push("target field already connected"),!d.targetField&&o.value.some(g=>g.target===d.target&&!g.targetField)&&f.push("target input already taken"),d.source===d.target&&f.push("self-loop not allowed");const w=pr(o.value,d);return fa(w)&&f.push("connection introduces a cycle"),f.length?{ok:!1,errors:f}:{ok:!0}}function a(){const c=[],d=["request","service_request","service_response","response"];for(const f of d)[...t.value.values()].some(u=>u.name===f)||c.push(`missing implicit node "${f}"`);for(const f of o.value){const u=t.value.get(f.source),p=t.value.get(f.target);u.phase==="response"&&p.phase==="request"&&c.push(`edge "${f.id}" crosses phases (response → request)`),p.name==="request"&&c.push(`edge "${f.id}" targets "request"`),u.name==="response"&&c.push(`edge "${f.id}" sources from "response"`),u.phase==="response"&&p.phase!=="response"&&c.push(`edge "${f.id}" violates response-phase rule`)}return fa(pr(o.value))&&c.push("graph contains cycle"),c.length?{ok:!1,errors:c}:{ok:!0}}function l(c){return i(c).ok}function s(c){return!c.source||!c.target?!1:l({source:c.source,sourceField:c.sourceHandle,target:c.target,targetField:c.targetHandle})}return{canonicalizeConnection:r,validateConnection:i,validateGraph:a,isValidConnection:l,isValidVueFlowConnection:s,buildAdjacency:pr}}function fa(e){const t=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(t.has(i))return!1;t.add(i),o.add(i);for(const a of e.get(i)??[])if(r(a))return!0;return o.delete(i),!1}for(const i of e.keys())if(r(i))return!0;return!1}function pr(e,t){const o=new Map;for(const r of e)o.has(r.source)||o.set(r.source,[]),o.get(r.source).push(r.target),o.has(r.target)||o.set(r.target,[]);return t&&(o.has(t.source)||o.set(t.source,[]),o.get(t.source).push(t.target),o.has(t.target)||o.set(t.target,[])),o}const[fE,pE]=Je.createInjectionState(function(t,o){const r=n.ref(Rc(t,o)),i=n.ref(),a=lE(r,{capacity:200,clone:On}),l=n.computed(()=>new Map(r.value.nodes.map($=>[$.id,$]))),s=n.computed(()=>new Map(r.value.nodes.map($=>[$.name,$]))),c=n.computed(()=>{const $=new Map,z=new Map;for(const Z of r.value.edges)$.set(Z.id,Z),z.has(Z.source)||z.set(Z.source,new Set),z.get(Z.source).add(Z.id),z.has(Z.target)||z.set(Z.target,new Set),z.get(Z.target).add(Z.id);return{edgeMapById:$,edgeIdMapByNodeId:z}}),d=n.computed(()=>c.value.edgeMapById),f=n.computed(()=>c.value.edgeIdMapByNodeId),u=n.computed(()=>new Set(r.value.nodes.map($=>$.name))),{canonicalizeConnection:p,validateConnection:m,validateGraph:h,isValidConnection:w,isValidVueFlowConnection:g}=uE(r);function _($){return l.value.get($)}function b($){return s.value.get($)}function y($){return d.value.get($)}function C($){if(!f.value.has($))return[];const z=[];return f.value.get($).forEach(Z=>{const Q=y(Z);Q&&z.push(Q)}),z}function x($){return C($).filter(z=>z.target===$)}function k($){return C($).filter(z=>z.source===$)}const P=n.computed(()=>i.value?_(i.value):void 0);function I($){i.value=$}function B($){if(In($.type))throw new Error("[createNode] implicit nodes are fixed.");return Mc({type:$.type,name:$.name||(In($.type)?void 0:aE($.type,u.value)),phase:$.phase,position:$.position,fields:$.fields,config:$.config})}function W($,z=!0){const Z=B($);if(Z)return r.value.nodes.push(Z),z&&a.commit(),Z.id}function M($,z=!0){r.value.edges=r.value.edges.filter(Q=>Q.source!==$&&Q.target!==$),r.value.nodes=r.value.nodes.filter(Q=>Q.id!==$),i.value===$&&(i.value=void 0);const Z=h();Z.ok||console.warn("[removeNode] topology invalid:",Z.errors.join("; ")),z&&a.commit()}function v($,z,Z=!0){const Q=_($);if(Q){if(Oc(Q.name)){console.warn("[renameNode] implicit node name is reserved.");return}Q.name=z,Z&&a.commit()}}function N($,z,Z=!0){const Q=_($);Q&&(Q.position={...z},Z&&a.commit())}function E($,z,Z,Q=!0){const ne=_($);ne&&(ne.expanded[z]=Z??!ne.expanded[z],Q&&a.commit(`toggle:${$}:${z}`,{replace:!0}))}function R($,z,Z=!0){const Q=_($);Q&&(Q.config=On(z),Z&&a.commit())}function O($,z,Z,Q=!0){const ne=_($);if(!ne)return;const ue=ne.fields[z];if(ue.some(me=>me.name===Z)){console.warn(`[addField] field "${Z}" already exists on ${z}.`);return}ue.push({id:fo("field"),name:Z}),z==="input"?ne.fields.input=ue:ne.fields.output=ue,Q&&a.commit()}function j($,z,Z,Q=!0){const ne=_($);if(!ne)return;const ue=ne.fields.input,me=ne.fields.output,T=ue.find(S=>S.id===z)??me.find(S=>S.id===z);T&&(T.name=Z,Q&&a.commit())}function G($,z,Z=!0,Q=!0){const ne=_($);if(!ne)return;const ue=ne.fields.input,me=ne.fields.output,T=ue.findIndex(D=>D.id===z);T>=0&&ue.splice(T,1);const S=me.findIndex(D=>D.id===z);S>=0&&me.splice(S,1),ne.fields.input=ue,ne.fields.output=me,Z&&(r.value.edges=r.value.edges.filter(D=>D.sourceField!==z&&D.targetField!==z));const A=h();A.ok||console.warn("[removeField] topology invalid:",A.errors.join("; ")),Q&&a.commit()}function F($,z=!0){const Z=p($),Q=m(Z);if(!Q.ok){console.warn("[connectEdge] invalid connection:",Q.errors.join("; "));return}const ne={id:fo("edge"),...Z};r.value.edges.push(ne);const ue=h();if(!ue.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",ue.errors.join("; "));return}return z&&a.commit(),ne.id}function V($,z,Z=!0){U($,!1),F(z,!1),Z&&a.commit()}function U($,z=!0){const Z=r.value.edges.findIndex(ue=>ue.id===$);if(Z<0)return;const Q=r.value.edges[Z];r.value.edges.splice(Z,1);const ne=h();if(!ne.ok){r.value.edges.splice(Z,0,Q),console.warn("[disconnectEdge] topology invalid:",ne.errors.join("; "));return}z&&a.commit()}function re($,z=!0){const Z=x($);for(const Q of Z)U(Q.id,!1);z&&a.commit()}function de($,z=!0){const Z=k($);for(const Q of Z)U(Q.id,!1);z&&a.commit()}function ee(){var z,Z,Q,ne;const $=[];for(const ue of r.value.nodes){if(In(ue.type))continue;const me={},T={};for(const L of r.value.edges.filter(X=>X.target===ue.id)){const X=_(L.source);if(!X)continue;const te=(z=rn(X,"output",L.sourceField))==null?void 0:z.name,K=te?`${X.name}.${te}`:X.name,J=(Z=rn(ue,"input",L.targetField))==null?void 0:Z.name;J?me[J]=K:"input"in me||(me.input=K)}for(const L of r.value.edges.filter(X=>X.source===ue.id)){const X=_(L.target);if(!X)continue;const te=(Q=rn(X,"input",L.targetField))==null?void 0:Q.name,K=te?`${X.name}.${te}`:X.name,J=(ne=rn(ue,"output",L.sourceField))==null?void 0:ne.name;J?T[J]=K:"output"in T||(T.output=K)}const S={...On(ue.config),name:ue.name,type:ue.type},A=Object.keys(me),D=Object.keys(T);A.length===1&&A[0]==="input"?S.input=me.input:A.length&&(S.inputs=me),D.length===1&&D[0]==="output"?S.output=T.output:D.length&&(S.outputs=T),$.push(S)}return $}function oe(){return r.value.nodes.map($=>On({name:$.name,phase:$.phase,position:{...$.position},expanded:{...$.expanded},fields:{input:$.fields.input.map(z=>z.name),output:$.fields.output.map(z=>z.name)}}))}function Y($,z){r.value=Rc($,z),a.reset()}return{state:r,selection:i,nodeMapById:l,nodeMapByName:s,edgeMapById:d,edgeIdMapByNodeId:f,getNodeById:_,getNodeByName:b,getEdgeById:y,getEdgesByNodeId:C,getInEdgesByNodeId:x,getOutEdgesByNodeId:k,selectedNode:P,selectNode:I,createNode:B,addNode:W,removeNode:M,renameNode:v,moveNode:N,toggleExpanded:E,replaceConfig:R,addField:O,renameField:j,removeField:G,connectEdge:F,replaceConnection:V,disconnectEdge:U,disconnectInEdges:re,disconnectOutEdges:de,toConfigNodes:ee,toUINodes:oe,load:Y,commit:a.commit,undo:a.undo,redo:a.redo,canUndo:a.canUndo,canRedo:a.canRedo,clear:a.clear,reset:a.reset,isValidConnection:w,isValidVueFlowConnection:g,validateGraph:()=>h()}});function Et(){const e=pE();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const pa=Je.createGlobalState(()=>{const e=Je.useLocalStorage("datakit-editor-mode","flow"),t=Je.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:t}});typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const mE=e=>e!=null;/*!
|
|
11
|
+
it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:vn.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
|
|
12
|
+
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:vn.tags}]},pm={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"]}}]},ql={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
13
|
+
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Zt}]},mm={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."}}]},At={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",isEnterprise:!1,nameKey:"plugins.meta.jwt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",isEnterprise:!1,nameKey:"plugins.meta.cors.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",isEnterprise:!0,nameKey:"plugins.meta.opa.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",isEnterprise:!1,nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",isEnterprise:!0,nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",isEnterprise:!0,nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",isEnterprise:!0,nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",isEnterprise:!0,nameKey:"plugins.meta.post-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",isEnterprise:!1,nameKey:"plugins.meta.datadog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",isEnterprise:!0,nameKey:"plugins.meta.collector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",isEnterprise:!0,nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",isEnterprise:!1,nameKey:"plugins.meta.file-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",isEnterprise:!1,nameKey:"plugins.meta.http-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",isEnterprise:!1,nameKey:"plugins.meta.loggly.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",isEnterprise:!1,nameKey:"plugins.meta.statsd.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",isEnterprise:!1,nameKey:"plugins.meta.syslog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",isEnterprise:!1,nameKey:"plugins.meta.session.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",isEnterprise:!1,nameKey:"plugins.meta.acme.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",isEnterprise:!0,nameKey:"plugins.meta.saml.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.json-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",isEnterprise:!0,nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",isEnterprise:!0,nameKey:"plugins.meta.confluent.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",isEnterprise:!1,nameKey:"plugins.meta.redirect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",isEnterprise:!1,nameKey:"plugins.meta.kafka-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",isEnterprise:!1,nameKey:"plugins.meta.confluent-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",isEnterprise:!1,nameKey:"plugins.meta.request-callout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",isEnterprise:!1,nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",isEnterprise:!1,nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",isEnterprise:!1,nameKey:"plugins.meta.datakit.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",isEnterprise:!1,nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",isEnterprise:!1,nameKey:"plugins.meta.solace-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",isEnterprise:!1,nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]}},Nn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ll,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Xt(Ll),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Ul,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Xt(Ul)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Kl,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Xt(Kl)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:ql,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Xt(ql)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:jl,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Xt(jl)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Gl,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Xt(Gl)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:um,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},gm={acls:om,basicauth_credentials:rm,keyauth_credentials:cm,keyauth_enc_credentials:mm,oauth2_credentials:pm,hmacauth_credentials:dm,jwt_secrets:fm},hm=()=>{const{i18n:{t:e}}=qe(),t={},o={};for(const[i,a]of Object.entries(At))t[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(Nn))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:t,credentialMetaData:o,credentialSchemas:Nn,getDisplayName:i=>{var a;return((a=t[i])==null?void 0:a.name)||i}}},eo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},ym={"config-prompts-prepend":{...eo,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":{...eo,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"}]}}}},_m={"config-templates":{...eo,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"}]}}}},bm={shamefullyTransformPayload:({originalModel:e,model:t,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&t[l]?!0:e[l]===t[l]?!1:e[l]===null?t[l]!==""&&!Number.isNaN(t[l]):!0},a=l=>Object.keys(e).some(s=>s.startsWith(l)&&i(s));a("config-embeddings")||(o.config.embeddings=null),a("config-vectordb")||(o.config.vectordb=null)}},wm={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:vn.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"}},Ae={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"},Zo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Em={"config-metrics":{...Zo,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"}]}}}},km={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Cm={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},vm={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Nm={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Sm={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},zl=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,t)=>({...e,[t]:vn.fields.arrayItems({newElementButtonLabel:"Add"})}),Sm),Jo={"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"}},xm={"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":{}},Am=["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,t)=>({...e,[t]:vn.fields.arrayItems({newElementButtonLabel:"Add"})}),xm),Hl={"config-add-json":{...Ae,label:"Config.Add.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Ae,label:"Config.Append.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Ae,label:"Config.Remove.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Ae,label:"Config.Rename.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Ae,label:"Config.Replace.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},Tm={...Hl,"config-allow-json":{...Ae,label:"Config.Allow.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Ae,label:"Config.Transform.Functions",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Ae,label:"Config.Transform.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},Pm={"config-rules":{...eo,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"}]}}}},Im={"config-session_redis_cluster_nodes":{...eo,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"}]}}}},Om={"config-metrics":{...Zo,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"]}]}}}},$m={"config-metrics":{...Zo,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"]}]}}}},Bm={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Vm={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}},Jt=e=>{var o,r;const t=(r=(o=e==null?void 0:e.confluent)==null?void 0:o.authentication)==null?void 0:r.basic;t&&!t.password&&!t.username&&delete e.confluent.authentication.basic},Rm={"config-message_by_lua_functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var t;Jt((t=e.config)==null?void 0:t.schema_registry)}},Dm={"config-message_by_lua_functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var t;Jt((t=e.config)==null?void 0:t.schema_registry)}},Mm={shamefullyTransformPayload:({payload:e})=>{var t,o,r;Jt((t=e.config)==null?void 0:t.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Jt(i==null?void 0:i.schema_registry)})}},Fm={shamefullyTransformPayload:({payload:e})=>{var t,o,r;Jt((t=e.config)==null?void 0:t.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Jt(i==null?void 0:i.schema_registry)})}},Lm={shamefullyTransformPayload:({payload:e})=>{var t;Jt((t=e.config)==null?void 0:t.schema_registry)}},Um={"config-static_tags":{...Zo,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"}]}}}},Km={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm"};function Yl(e,t){const o=Km[e];if(typeof o=="string")return o;if(t.includes(e))return o.component}const ki=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),Wl={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR")};function Xl(){return n.inject(ki,[])}function Gm(e){n.provide(ki,e)}const jm=(e,t)=>{const o=e.model.startsWith("config-"),r=t.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},Zl=(e,t)=>(e.order??0)-(t.order??0),Jl=(e,t)=>jm(e,t)||Zl(e,t)||e.model.localeCompare(t.model),Ie={useI18n:qe,usePluginMetaData:hm,usePluginHelpers:Dl,useSchemas:e=>{const{capitalize:t}=ae.useStringHelpers(),{convertToDotNotation:o}=Dl(),{i18n:{t:r}}=qe(),i=Xl(),a={"application-registration":{overwriteDefault:!0,formSchema:{...wm}},datadog:{...Em},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Om},"statsd-advanced":{...$m},"route-by-header":{...Pm},"ai-prompt-decorator":{...ym},"ai-prompt-template":{..._m},"ai-proxy-advanced":{...bm},"vault-auth":{...Vm},"oas-validation":{...Nm},mocking:{...vm},"rate-limiting":{...Jo},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Jo["config-consumer_groups"]}:{...Jo},"graphql-rate-limiting-advanced":{...km},"injection-protection":{...Cm},"response-ratelimiting":{...Jo},"pre-function":{...zl},"post-function":{...zl},"request-transformer-advanced":{...Am},"response-transformer":{...Hl},"response-transformer-advanced":{...Tm},zipkin:{...Um},"upstream-oauth":{...Bm},saml:{...Im},"kafka-upstream":{...Rm},"key-auth":sm(e),confluent:{...Dm},"confluent-consume":{...Mm},"kafka-consume":{...Fm},"kafka-log":{...Lm}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(k,S,I)=>{let B={};(S||k)&&(B=S||(k.fields?k.fields:k));const W=l().concat(k.blacklist?k.blacklist:[]),M=Object.keys(B).filter(F=>!W.includes(F)),v=M.indexOf("comparator");v>-1&&M.splice(v,1);let N={fields:[]};const E={};M.forEach(F=>{d(B[F],F,B,E,N,I)});const D=E.name,O=At[D],q=[],j=F=>{const R=["cluster-cache"];for(const U of R)if(F.model.includes(U))return!1;return new RegExp("(?<=-redis-).*").test(F.model)};if(N._supported_redis_partial_type=k._supported_redis_partial_type,N._redis_partial_path=k._redis_partial_path,Ce.getSharedFormName(D)||Yl(D,i)||O!=null&&O.useLegacyForm||e!=null&&e.credential){if(O!=null&&O.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&k._supported_redis_partial_type){for(const F of N.fields)if(j(F)){q.push(F);continue}N.fields=N.fields.filter(F=>!j(F)),q.length&&N.fields.push({id:"_redis",fields:q,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path})}N.fields.sort((F,R)=>(F.order=F.order||0,R.order=R.order||0,F.order-R.order))}else{const F=[],R=[],U=[],re=[],de={};if(O!=null&&O.fieldRules){const Y=[...O.fieldRules.atLeastOneOf??[],...O.fieldRules.onlyOneOf??[],...O.fieldRules.mutuallyRequired??[]];if(O.fieldRules.onlyOneOfMutuallyRequired)for(const $ of O.fieldRules.onlyOneOfMutuallyRequired)Y.push(...$);for(const $ of Y)for(const z of $)de[z.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const Y of N.fields){if(e!=null&&e.enableRedisPartial&&k._supported_redis_partial_type&&j(Y)){re.push(Y);continue}if(Y.pinned){F.push(Y);continue}if(Y.required||de[Y.model]!==void 0){de[Y.model]===!1&&(de[Y.model]=!0),R.push(Y);continue}U.push(Y)}re.length&&U.push({id:"_redis",fields:re,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path,order:-1});const ee=Object.entries(de).filter(([,Y])=>!Y).map(([Y])=>Y.replace(/-/g,".").replace(/_/g,"-"));ee.length>0&&console.warn(`Unknown checked fields for plugin ${D}: ${ee.join(", ")}`);const oe=[];F.length>0&&oe.push({fields:F.sort(Zl)}),(R.length>0||U.length>0)&&oe.push({fields:R.sort(Jl),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:U.sort(Jl),triggerLabel:{expand:r("plugins.form.grouping.advanced_parameters.view"),collapse:r("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),N={groups:oe}}return{schema:N,model:E,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=k=>Array.isArray(k.default)||k.default!=null&&typeof k.default!="object"&&k.default!=="function",d=(k,S,I,B,W,M)=>{const v=c(k);return B[S]=v?k.default:null,k.id=S,k.model=S,k.fields&&k.type==="record"?f(k,S,I,B,W,M):(I[S]=k,C(k,B),M&&M[S]&&u(I[S],M[S]),W.fields.push(k)),I},u=(k,S)=>(S&&(Object.assign(k,S),S.label&&(k.label=S.label)),k),f=(k,S,I,B,W,M)=>{k.fields.forEach(v=>{Object.keys(v).forEach(N=>{const E=v[N];I=d(E,S+"-"+N,I,B,W,M)})})},p=(k,S)=>{k.type="input",k.inputType="hidden",k.styleClasses="kong-form-hidden-field-wrapper";const I=e==null?void 0:e.entityId;S[k.model]=I?{id:I}:null},m=k=>{k.type="input",k.inputType="number",k.between&&k.between.length===2&&(k.min=k.between[0],k.max=k.between[1])},h=k=>{Object.prototype.hasOwnProperty.call(k,"one_of")?(k.type="select",k.values=k.one_of,k.selectOptions={hideNoneSelectedText:!0}):(k.type="input",k.inputType="text")},w=k=>{k.type="checkbox",k.default=!0,k.required=!1},g=k=>{if(k.type="object-advanced",k.values.type==="array"){const{type:S}=k.values.elements||{};k.schema={fields:[{schema:{fields:[{...Ae,model:k.model,valueArrayType:S==="integer"?"number":S||"string",inputAttributes:{...Ae.inputAttributes,type:S==="integer"?"number":"text",inputMode:S==="integer"?"numeric":"text"}}]}}]}}else k.values.fields&&(k.schema={fields:[{type:"object",model:"object",schema:{fields:k.values.fields.map(S=>{const I=Object.keys(S)[0];return{model:I,type:"input",label:t(I),placeholder:I,inputType:S[I].type}})}}]})},_=k=>k.fields.reduce((S,I)=>(I.fields&&I.fields.forEach(B=>{S[B.model]=B}),I.model&&(S[I.model]=I),S),{}),b=(k,S)=>{if(!Ce.customFields.includes(k.model))return;const I=_(k);Ce.customFields.forEach(B=>{Object.keys(I).forEach(W=>{const M=c(I[W]);S[W]=M?I[W].default:null}),delete S[B]})},y=(k,S)=>k.inputType==="hidden"?"":o(t(k.label||S.replace(/_/g," "))),C=(k,S)=>{switch(b(k,S),k.type){case"foreign":p(k,S);break;case"number":m(k),k.attributes={step:"any"};break;case"integer":m(k);break;case"string":h(k);break;case"boolean":w(k);break;case"map":g(k);break}k.inputType==="foreign"&&p(k,S),k.label=y(k,k.model)};function T(k,S){if(S==null||S.type&&S.type!=="record"||typeof k!="object"||k==null)return k;const I={};for(const B of S.fields){const W=Object.keys(B)[0],M=B[W];M.type==="record"?I[W]=T(k[W],M):M.type==="array"&&Array.isArray(k[W])&&M.elements.type==="record"?I[W]=k[W].map(v=>T(v,M.elements)):I[W]=k[W]}return I}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:vn,pruneRecord:T}},useExperimentalFreeForms:Xl,useProvideExperimentalFreeForms:Gm},ze="/v2/control-planes/{controlPlaneId}/core-entities",We="/{workspace}",Oe={list:{konnect:{all:`${ze}/plugins`,forEntity:`${ze}/{entityType}/{entityId}/plugins`},kongManager:{all:`${We}/plugins`,forEntity:`${We}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ze}/v1/available-plugins`,streamingCustomPlugins:`${ze}/custom-plugins`,schemaCustomPluginItem:`${ze}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ze}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${We}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ze}/plugins`,forEntity:`${ze}/{entityType}/{entityId}/plugins`},edit:{all:`${ze}/plugins/{id}`,forEntity:`${ze}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ze}/{resourceEndpoint}`,edit:`${ze}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${ze}/v1/schemas/json/plugin/validate`,entityGetOne:`${ze}/{entity}/{id}`,entityGetAll:`${ze}/{entity}?size=1000`},kongManager:{create:{all:`${We}/plugins`,forEntity:`${We}/{entityType}/{entityId}/plugins`},edit:{all:`${We}/plugins/{id}`,forEntity:`${We}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${We}/schemas/plugins/{plugin}`,credential:{create:`${We}/{resourceEndpoint}`,edit:`${We}/{resourceEndpoint}/{id}`},credentialSchema:`${We}/schemas/{plugin}`,validate:`${We}/schemas/plugins/validate`,entityGetOne:`${We}/{entity}/{id}`,entityGetAll:`${We}/{entity}`}},item:{konnect:{all:`${ze}/plugins/{id}`,forEntity:`${ze}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${We}/plugins/{id}`,forEntity:`${We}/{entityType}/{entityId}/plugins/{id}`}}},qm={key:0},zm=_e(n.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const t=e,{formatPluginFieldLabel:o}=Ie.usePluginHelpers(),{i18n:{t:r}}=Ie.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>o(d)).join(".")).join(", "),a=(s,c)=>r(s,{parameters:i(c)}),l=n.computed(()=>{const s=[];if(t.rules.atLeastOneOf)for(const c of t.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(t.rules.onlyOneOf)for(const c of t.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(t.rules.mutuallyRequired)for(const c of t.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=n.resolveComponent("KAlert");return n.openBlock(),n.createBlock(d,{class:"plugin-field-rule-alerts"},{default:n.withCtx(()=>[n.createElementVNode("ul",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(l.value,(u,f)=>(n.openBlock(),n.createElementBlock("li",{key:`simple-alert-${f}`},n.toDisplayString(u),1))),128)),t.rules.onlyOneOfMutuallyRequired&&t.rules.onlyOneOfMutuallyRequired.length>0?(n.openBlock(),n.createElementBlock("li",qm,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(t.rules.onlyOneOfMutuallyRequired,(u,f)=>(n.openBlock(),n.createElementBlock("div",{key:`only-one-mutually-alert-${f}`},[n.createElementVNode("div",null,n.toDisplayString(n.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),n.createElementVNode("ul",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(u,(p,m)=>(n.openBlock(),n.createElementBlock("li",{key:`only-one-mutually-alert-${f}-combination-${m}`},n.toDisplayString(i(p)),1))),128))])]))),128))])):n.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);var Ql=typeof global=="object"&&global&&global.Object===Object&&global,Hm=typeof self=="object"&&self&&self.Object===Object&&self,yt=Ql||Hm||Function("return this")(),at=yt.Symbol,es=Object.prototype,Ym=es.hasOwnProperty,Wm=es.toString,to=at?at.toStringTag:void 0;function Xm(e){var t=Ym.call(e,to),o=e[to];try{e[to]=void 0;var r=!0}catch{}var i=Wm.call(e);return r&&(t?e[to]=o:delete e[to]),i}var Zm=Object.prototype,Jm=Zm.toString;function Qm(e){return Jm.call(e)}var eg="[object Null]",tg="[object Undefined]",ts=at?at.toStringTag:void 0;function Qt(e){return e==null?e===void 0?tg:eg:ts&&ts in Object(e)?Xm(e):Qm(e)}function Tt(e){return e!=null&&typeof e=="object"}var ng="[object Symbol]";function Ci(e){return typeof e=="symbol"||Tt(e)&&Qt(e)==ng}function ns(e,t){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=t(e[o],o,e);return i}var ct=Array.isArray,os=at?at.prototype:void 0,rs=os?os.toString:void 0;function is(e){if(typeof e=="string")return e;if(ct(e))return ns(e,is)+"";if(Ci(e))return rs?rs.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function en(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function og(e){return e}var rg="[object AsyncFunction]",ig="[object Function]",ag="[object GeneratorFunction]",lg="[object Proxy]";function Qo(e){if(!en(e))return!1;var t=Qt(e);return t==ig||t==ag||t==rg||t==lg}var vi=yt["__core-js_shared__"],as=function(){var e=/[^.]+$/.exec(vi&&vi.keys&&vi.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function sg(e){return!!as&&as in e}var cg=Function.prototype,dg=cg.toString;function tn(e){if(e!=null){try{return dg.call(e)}catch{}try{return e+""}catch{}}return""}var ug=/[\\^$.*+?()[\]{}|]/g,fg=/^\[object .+?Constructor\]$/,pg=Function.prototype,mg=Object.prototype,gg=pg.toString,hg=mg.hasOwnProperty,yg=RegExp("^"+gg.call(hg).replace(ug,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function _g(e){if(!en(e)||sg(e))return!1;var t=Qo(e)?yg:fg;return t.test(tn(e))}function bg(e,t){return e==null?void 0:e[t]}function nn(e,t){var o=bg(e,t);return _g(o)?o:void 0}var Ni=nn(yt,"WeakMap"),ls=Object.create,wg=function(){function e(){}return function(t){if(!en(t))return{};if(ls)return ls(t);e.prototype=t;var o=new e;return e.prototype=void 0,o}}();function Eg(e,t,o){switch(o.length){case 0:return e.call(t);case 1:return e.call(t,o[0]);case 2:return e.call(t,o[0],o[1]);case 3:return e.call(t,o[0],o[1],o[2])}return e.apply(t,o)}function kg(e,t){var o=-1,r=e.length;for(t||(t=Array(r));++o<r;)t[o]=e[o];return t}var Cg=800,vg=16,Ng=Date.now;function Sg(e){var t=0,o=0;return function(){var r=Ng(),i=vg-(r-o);if(o=r,i>0){if(++t>=Cg)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function xg(e){return function(){return e}}var er=function(){try{var e=nn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Ag=er?function(e,t){return er(e,"toString",{configurable:!0,enumerable:!1,value:xg(t),writable:!0})}:og,Tg=Sg(Ag);function Pg(e,t){for(var o=-1,r=e==null?0:e.length;++o<r&&t(e[o],o,e)!==!1;);return e}var Ig=9007199254740991,Og=/^(?:0|[1-9]\d*)$/;function Si(e,t){var o=typeof e;return t=t??Ig,!!t&&(o=="number"||o!="symbol"&&Og.test(e))&&e>-1&&e%1==0&&e<t}function ss(e,t,o){t=="__proto__"&&er?er(e,t,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[t]=o}function xi(e,t){return e===t||e!==e&&t!==t}var $g=Object.prototype,Bg=$g.hasOwnProperty;function Ai(e,t,o){var r=e[t];(!(Bg.call(e,t)&&xi(r,o))||o===void 0&&!(t in e))&&ss(e,t,o)}function no(e,t,o,r){var i=!o;o||(o={});for(var a=-1,l=t.length;++a<l;){var s=t[a],c=void 0;c===void 0&&(c=e[s]),i?ss(o,s,c):Ai(o,s,c)}return o}var cs=Math.max;function Vg(e,t,o){return t=cs(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,a=cs(r.length-t,0),l=Array(a);++i<a;)l[i]=r[t+i];i=-1;for(var s=Array(t+1);++i<t;)s[i]=r[i];return s[t]=o(l),Eg(e,this,s)}}var Rg=9007199254740991;function Ti(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Rg}function Pi(e){return e!=null&&Ti(e.length)&&!Qo(e)}var Dg=Object.prototype;function tr(e){var t=e&&e.constructor,o=typeof t=="function"&&t.prototype||Dg;return e===o}function Mg(e,t){for(var o=-1,r=Array(e);++o<e;)r[o]=t(o);return r}var Fg="[object Arguments]";function ds(e){return Tt(e)&&Qt(e)==Fg}var us=Object.prototype,Lg=us.hasOwnProperty,Ug=us.propertyIsEnumerable,nr=ds(function(){return arguments}())?ds:function(e){return Tt(e)&&Lg.call(e,"callee")&&!Ug.call(e,"callee")};function Kg(){return!1}var fs=typeof he=="object"&&he&&!he.nodeType&&he,ps=fs&&typeof module=="object"&&module&&!module.nodeType&&module,Gg=ps&&ps.exports===fs,ms=Gg?yt.Buffer:void 0,jg=ms?ms.isBuffer:void 0,oo=jg||Kg,qg="[object Arguments]",zg="[object Array]",Hg="[object Boolean]",Yg="[object Date]",Wg="[object Error]",Xg="[object Function]",Zg="[object Map]",Jg="[object Number]",Qg="[object Object]",eh="[object RegExp]",th="[object Set]",nh="[object String]",oh="[object WeakMap]",rh="[object ArrayBuffer]",ih="[object DataView]",ah="[object Float32Array]",lh="[object Float64Array]",sh="[object Int8Array]",ch="[object Int16Array]",dh="[object Int32Array]",uh="[object Uint8Array]",fh="[object Uint8ClampedArray]",ph="[object Uint16Array]",mh="[object Uint32Array]",Te={};Te[ah]=Te[lh]=Te[sh]=Te[ch]=Te[dh]=Te[uh]=Te[fh]=Te[ph]=Te[mh]=!0,Te[qg]=Te[zg]=Te[rh]=Te[Hg]=Te[ih]=Te[Yg]=Te[Wg]=Te[Xg]=Te[Zg]=Te[Jg]=Te[Qg]=Te[eh]=Te[th]=Te[nh]=Te[oh]=!1;function gh(e){return Tt(e)&&Ti(e.length)&&!!Te[Qt(e)]}function Ii(e){return function(t){return e(t)}}var gs=typeof he=="object"&&he&&!he.nodeType&&he,ro=gs&&typeof module=="object"&&module&&!module.nodeType&&module,hh=ro&&ro.exports===gs,Oi=hh&&Ql.process,Sn=function(){try{var e=ro&&ro.require&&ro.require("util").types;return e||Oi&&Oi.binding&&Oi.binding("util")}catch{}}(),hs=Sn&&Sn.isTypedArray,$i=hs?Ii(hs):gh,yh=Object.prototype,_h=yh.hasOwnProperty;function ys(e,t){var o=ct(e),r=!o&&nr(e),i=!o&&!r&&oo(e),a=!o&&!r&&!i&&$i(e),l=o||r||i||a,s=l?Mg(e.length,String):[],c=s.length;for(var d in e)(t||_h.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Si(d,c)))&&s.push(d);return s}function _s(e,t){return function(o){return e(t(o))}}var bh=_s(Object.keys,Object),wh=Object.prototype,Eh=wh.hasOwnProperty;function bs(e){if(!tr(e))return bh(e);var t=[];for(var o in Object(e))Eh.call(e,o)&&o!="constructor"&&t.push(o);return t}function Bi(e){return Pi(e)?ys(e):bs(e)}function kh(e){var t=[];if(e!=null)for(var o in Object(e))t.push(o);return t}var Ch=Object.prototype,vh=Ch.hasOwnProperty;function Nh(e){if(!en(e))return kh(e);var t=tr(e),o=[];for(var r in e)r=="constructor"&&(t||!vh.call(e,r))||o.push(r);return o}function Vi(e){return Pi(e)?ys(e,!0):Nh(e)}var Sh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xh=/^\w*$/;function Ah(e,t){if(ct(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Ci(e)?!0:xh.test(e)||!Sh.test(e)||t!=null&&e in Object(t)}var io=nn(Object,"create");function Th(){this.__data__=io?io(null):{},this.size=0}function Ph(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Ih="__lodash_hash_undefined__",Oh=Object.prototype,$h=Oh.hasOwnProperty;function Bh(e){var t=this.__data__;if(io){var o=t[e];return o===Ih?void 0:o}return $h.call(t,e)?t[e]:void 0}var Vh=Object.prototype,Rh=Vh.hasOwnProperty;function Dh(e){var t=this.__data__;return io?t[e]!==void 0:Rh.call(t,e)}var Mh="__lodash_hash_undefined__";function Fh(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=io&&t===void 0?Mh:t,this}function on(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}on.prototype.clear=Th,on.prototype.delete=Ph,on.prototype.get=Bh,on.prototype.has=Dh,on.prototype.set=Fh;function Lh(){this.__data__=[],this.size=0}function or(e,t){for(var o=e.length;o--;)if(xi(e[o][0],t))return o;return-1}var Uh=Array.prototype,Kh=Uh.splice;function Gh(e){var t=this.__data__,o=or(t,e);if(o<0)return!1;var r=t.length-1;return o==r?t.pop():Kh.call(t,o,1),--this.size,!0}function jh(e){var t=this.__data__,o=or(t,e);return o<0?void 0:t[o][1]}function qh(e){return or(this.__data__,e)>-1}function zh(e,t){var o=this.__data__,r=or(o,e);return r<0?(++this.size,o.push([e,t])):o[r][1]=t,this}function Pt(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}Pt.prototype.clear=Lh,Pt.prototype.delete=Gh,Pt.prototype.get=jh,Pt.prototype.has=qh,Pt.prototype.set=zh;var ao=nn(yt,"Map");function Hh(){this.size=0,this.__data__={hash:new on,map:new(ao||Pt),string:new on}}function Yh(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function rr(e,t){var o=e.__data__;return Yh(t)?o[typeof t=="string"?"string":"hash"]:o.map}function Wh(e){var t=rr(this,e).delete(e);return this.size-=t?1:0,t}function Xh(e){return rr(this,e).get(e)}function Zh(e){return rr(this,e).has(e)}function Jh(e,t){var o=rr(this,e),r=o.size;return o.set(e,t),this.size+=o.size==r?0:1,this}function It(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}It.prototype.clear=Hh,It.prototype.delete=Wh,It.prototype.get=Xh,It.prototype.has=Zh,It.prototype.set=Jh;var Qh="Expected a function";function Ri(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(Qh);var o=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=o.cache;if(a.has(i))return a.get(i);var l=e.apply(this,r);return o.cache=a.set(i,l)||a,l};return o.cache=new(Ri.Cache||It),o}Ri.Cache=It;var ey=500;function ty(e){var t=Ri(e,function(r){return o.size===ey&&o.clear(),r}),o=t.cache;return t}var ny=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,oy=/\\(\\)?/g,ry=ty(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(ny,function(o,r,i,a){t.push(i?a.replace(oy,"$1"):r||o)}),t});function ir(e){return e==null?"":is(e)}function xn(e,t){return ct(e)?e:Ah(e,t)?[e]:ry(ir(e))}function ar(e){if(typeof e=="string"||Ci(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function Di(e,t){t=xn(t,e);for(var o=0,r=t.length;e!=null&&o<r;)e=e[ar(t[o++])];return o&&o==r?e:void 0}function ws(e,t,o){var r=e==null?void 0:Di(e,t);return r===void 0?o:r}function Mi(e,t){for(var o=-1,r=t.length,i=e.length;++o<r;)e[i+o]=t[o];return e}var Es=at?at.isConcatSpreadable:void 0;function iy(e){return ct(e)||nr(e)||!!(Es&&e&&e[Es])}function ay(e,t,o,r,i){var a=-1,l=e.length;for(o||(o=iy),i||(i=[]);++a<l;){var s=e[a];o(s)?Mi(i,s):i[i.length]=s}return i}function ly(e){var t=e==null?0:e.length;return t?ay(e):[]}function ks(e){return Tg(Vg(e,void 0,ly),e+"")}var Fi=_s(Object.getPrototypeOf,Object),sy="[object Object]",cy=Function.prototype,dy=Object.prototype,Cs=cy.toString,uy=dy.hasOwnProperty,fy=Cs.call(Object);function py(e){if(!Tt(e)||Qt(e)!=sy)return!1;var t=Fi(e);if(t===null)return!0;var o=uy.call(t,"constructor")&&t.constructor;return typeof o=="function"&&o instanceof o&&Cs.call(o)==fy}function vs(e,t,o){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),o=o>i?i:o,o<0&&(o+=i),i=t>o?0:o-t>>>0,t>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+t];return a}function my(e,t,o){var r=e.length;return o=o===void 0?r:o,!t&&o>=r?e:vs(e,t,o)}var gy="\\ud800-\\udfff",hy="\\u0300-\\u036f",yy="\\ufe20-\\ufe2f",_y="\\u20d0-\\u20ff",by=hy+yy+_y,wy="\\ufe0e\\ufe0f",Ey="\\u200d",ky=RegExp("["+Ey+gy+by+wy+"]");function Ns(e){return ky.test(e)}function Cy(e){return e.split("")}var Ss="\\ud800-\\udfff",vy="\\u0300-\\u036f",Ny="\\ufe20-\\ufe2f",Sy="\\u20d0-\\u20ff",xy=vy+Ny+Sy,Ay="\\ufe0e\\ufe0f",Ty="["+Ss+"]",Li="["+xy+"]",Ui="\\ud83c[\\udffb-\\udfff]",Py="(?:"+Li+"|"+Ui+")",xs="[^"+Ss+"]",As="(?:\\ud83c[\\udde6-\\uddff]){2}",Ts="[\\ud800-\\udbff][\\udc00-\\udfff]",Iy="\\u200d",Ps=Py+"?",Is="["+Ay+"]?",Oy="(?:"+Iy+"(?:"+[xs,As,Ts].join("|")+")"+Is+Ps+")*",$y=Is+Ps+Oy,By="(?:"+[xs+Li+"?",Li,As,Ts,Ty].join("|")+")",Vy=RegExp(Ui+"(?="+Ui+")|"+By+$y,"g");function Ry(e){return e.match(Vy)||[]}function Dy(e){return Ns(e)?Ry(e):Cy(e)}function My(e){return function(t){t=ir(t);var o=Ns(t)?Dy(t):void 0,r=o?o[0]:t.charAt(0),i=o?my(o,1).join(""):t.slice(1);return r[e]()+i}}var Fy=My("toUpperCase");function Ly(e){return Fy(ir(e).toLowerCase())}function Uy(){this.__data__=new Pt,this.size=0}function Ky(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o}function Gy(e){return this.__data__.get(e)}function jy(e){return this.__data__.has(e)}var qy=200;function zy(e,t){var o=this.__data__;if(o instanceof Pt){var r=o.__data__;if(!ao||r.length<qy-1)return r.push([e,t]),this.size=++o.size,this;o=this.__data__=new It(r)}return o.set(e,t),this.size=o.size,this}function Ot(e){var t=this.__data__=new Pt(e);this.size=t.size}Ot.prototype.clear=Uy,Ot.prototype.delete=Ky,Ot.prototype.get=Gy,Ot.prototype.has=jy,Ot.prototype.set=zy;function Hy(e,t){return e&&no(t,Bi(t),e)}function Yy(e,t){return e&&no(t,Vi(t),e)}var Os=typeof he=="object"&&he&&!he.nodeType&&he,$s=Os&&typeof module=="object"&&module&&!module.nodeType&&module,Wy=$s&&$s.exports===Os,Bs=Wy?yt.Buffer:void 0,Vs=Bs?Bs.allocUnsafe:void 0;function Xy(e,t){if(t)return e.slice();var o=e.length,r=Vs?Vs(o):new e.constructor(o);return e.copy(r),r}function Zy(e,t){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];t(l,o,e)&&(a[i++]=l)}return a}function Rs(){return[]}var Jy=Object.prototype,Qy=Jy.propertyIsEnumerable,Ds=Object.getOwnPropertySymbols,Ki=Ds?function(e){return e==null?[]:(e=Object(e),Zy(Ds(e),function(t){return Qy.call(e,t)}))}:Rs;function e_(e,t){return no(e,Ki(e),t)}var t_=Object.getOwnPropertySymbols,Ms=t_?function(e){for(var t=[];e;)Mi(t,Ki(e)),e=Fi(e);return t}:Rs;function n_(e,t){return no(e,Ms(e),t)}function Fs(e,t,o){var r=t(e);return ct(e)?r:Mi(r,o(e))}function Gi(e){return Fs(e,Bi,Ki)}function Ls(e){return Fs(e,Vi,Ms)}var ji=nn(yt,"DataView"),qi=nn(yt,"Promise"),zi=nn(yt,"Set"),Us="[object Map]",o_="[object Object]",Ks="[object Promise]",Gs="[object Set]",js="[object WeakMap]",qs="[object DataView]",r_=tn(ji),i_=tn(ao),a_=tn(qi),l_=tn(zi),s_=tn(Ni),lt=Qt;(ji&<(new ji(new ArrayBuffer(1)))!=qs||ao&<(new ao)!=Us||qi&<(qi.resolve())!=Ks||zi&<(new zi)!=Gs||Ni&<(new Ni)!=js)&&(lt=function(e){var t=Qt(e),o=t==o_?e.constructor:void 0,r=o?tn(o):"";if(r)switch(r){case r_:return qs;case i_:return Us;case a_:return Ks;case l_:return Gs;case s_:return js}return t});var c_=Object.prototype,d_=c_.hasOwnProperty;function u_(e){var t=e.length,o=new e.constructor(t);return t&&typeof e[0]=="string"&&d_.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var lr=yt.Uint8Array;function Hi(e){var t=new e.constructor(e.byteLength);return new lr(t).set(new lr(e)),t}function f_(e,t){var o=t?Hi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var p_=/\w*$/;function m_(e){var t=new e.constructor(e.source,p_.exec(e));return t.lastIndex=e.lastIndex,t}var zs=at?at.prototype:void 0,Hs=zs?zs.valueOf:void 0;function g_(e){return Hs?Object(Hs.call(e)):{}}function h_(e,t){var o=t?Hi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var y_="[object Boolean]",__="[object Date]",b_="[object Map]",w_="[object Number]",E_="[object RegExp]",k_="[object Set]",C_="[object String]",v_="[object Symbol]",N_="[object ArrayBuffer]",S_="[object DataView]",x_="[object Float32Array]",A_="[object Float64Array]",T_="[object Int8Array]",P_="[object Int16Array]",I_="[object Int32Array]",O_="[object Uint8Array]",$_="[object Uint8ClampedArray]",B_="[object Uint16Array]",V_="[object Uint32Array]";function R_(e,t,o){var r=e.constructor;switch(t){case N_:return Hi(e);case y_:case __:return new r(+e);case S_:return f_(e,o);case x_:case A_:case T_:case P_:case I_:case O_:case $_:case B_:case V_:return h_(e,o);case b_:return new r;case w_:case C_:return new r(e);case E_:return m_(e);case k_:return new r;case v_:return g_(e)}}function D_(e){return typeof e.constructor=="function"&&!tr(e)?wg(Fi(e)):{}}var M_="[object Map]";function F_(e){return Tt(e)&<(e)==M_}var Ys=Sn&&Sn.isMap,L_=Ys?Ii(Ys):F_,U_="[object Set]";function K_(e){return Tt(e)&<(e)==U_}var Ws=Sn&&Sn.isSet,G_=Ws?Ii(Ws):K_,j_=1,q_=2,z_=4,Xs="[object Arguments]",H_="[object Array]",Y_="[object Boolean]",W_="[object Date]",X_="[object Error]",Zs="[object Function]",Z_="[object GeneratorFunction]",J_="[object Map]",Q_="[object Number]",Js="[object Object]",eb="[object RegExp]",tb="[object Set]",nb="[object String]",ob="[object Symbol]",rb="[object WeakMap]",ib="[object ArrayBuffer]",ab="[object DataView]",lb="[object Float32Array]",sb="[object Float64Array]",cb="[object Int8Array]",db="[object Int16Array]",ub="[object Int32Array]",fb="[object Uint8Array]",pb="[object Uint8ClampedArray]",mb="[object Uint16Array]",gb="[object Uint32Array]",Se={};Se[Xs]=Se[H_]=Se[ib]=Se[ab]=Se[Y_]=Se[W_]=Se[lb]=Se[sb]=Se[cb]=Se[db]=Se[ub]=Se[J_]=Se[Q_]=Se[Js]=Se[eb]=Se[tb]=Se[nb]=Se[ob]=Se[fb]=Se[pb]=Se[mb]=Se[gb]=!0,Se[X_]=Se[Zs]=Se[rb]=!1;function lo(e,t,o,r,i,a){var l,s=t&j_,c=t&q_,d=t&z_;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!en(e))return e;var u=ct(e);if(u){if(l=u_(e),!s)return kg(e,l)}else{var f=lt(e),p=f==Zs||f==Z_;if(oo(e))return Xy(e,s);if(f==Js||f==Xs||p&&!i){if(l=c||p?{}:D_(e),!s)return c?n_(e,Yy(l,e)):e_(e,Hy(l,e))}else{if(!Se[f])return i?e:{};l=R_(e,f,s)}}a||(a=new Ot);var m=a.get(e);if(m)return m;a.set(e,l),G_(e)?e.forEach(function(g){l.add(lo(g,t,o,g,e,a))}):L_(e)&&e.forEach(function(g,_){l.set(_,lo(g,t,o,_,e,a))});var h=d?c?Ls:Gi:c?Vi:Bi,w=u?void 0:h(e);return Pg(w||e,function(g,_){w&&(_=g,g=e[_]),Ai(l,_,lo(g,t,o,_,e,a))}),l}var hb=1,yb=4;function sr(e){return lo(e,hb|yb)}var _b="__lodash_hash_undefined__";function bb(e){return this.__data__.set(e,_b),this}function wb(e){return this.__data__.has(e)}function cr(e){var t=-1,o=e==null?0:e.length;for(this.__data__=new It;++t<o;)this.add(e[t])}cr.prototype.add=cr.prototype.push=bb,cr.prototype.has=wb;function Eb(e,t){for(var o=-1,r=e==null?0:e.length;++o<r;)if(t(e[o],o,e))return!0;return!1}function kb(e,t){return e.has(t)}var Cb=1,vb=2;function Qs(e,t,o,r,i,a){var l=o&Cb,s=e.length,c=t.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),u=a.get(t);if(d&&u)return d==t&&u==e;var f=-1,p=!0,m=o&vb?new cr:void 0;for(a.set(e,t),a.set(t,e);++f<s;){var h=e[f],w=t[f];if(r)var g=l?r(w,h,f,t,e,a):r(h,w,f,e,t,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!Eb(t,function(_,b){if(!kb(m,b)&&(h===_||i(h,_,o,r,a)))return m.push(b)})){p=!1;break}}else if(!(h===w||i(h,w,o,r,a))){p=!1;break}}return a.delete(e),a.delete(t),p}function Nb(e){var t=-1,o=Array(e.size);return e.forEach(function(r,i){o[++t]=[i,r]}),o}function Sb(e){var t=-1,o=Array(e.size);return e.forEach(function(r){o[++t]=r}),o}var xb=1,Ab=2,Tb="[object Boolean]",Pb="[object Date]",Ib="[object Error]",Ob="[object Map]",$b="[object Number]",Bb="[object RegExp]",Vb="[object Set]",Rb="[object String]",Db="[object Symbol]",Mb="[object ArrayBuffer]",Fb="[object DataView]",ec=at?at.prototype:void 0,Yi=ec?ec.valueOf:void 0;function Lb(e,t,o,r,i,a,l){switch(o){case Fb:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Mb:return!(e.byteLength!=t.byteLength||!a(new lr(e),new lr(t)));case Tb:case Pb:case $b:return xi(+e,+t);case Ib:return e.name==t.name&&e.message==t.message;case Bb:case Rb:return e==t+"";case Ob:var s=Nb;case Vb:var c=r&xb;if(s||(s=Sb),e.size!=t.size&&!c)return!1;var d=l.get(e);if(d)return d==t;r|=Ab,l.set(e,t);var u=Qs(s(e),s(t),r,i,a,l);return l.delete(e),u;case Db:if(Yi)return Yi.call(e)==Yi.call(t)}return!1}var Ub=1,Kb=Object.prototype,Gb=Kb.hasOwnProperty;function jb(e,t,o,r,i,a){var l=o&Ub,s=Gi(e),c=s.length,d=Gi(t),u=d.length;if(c!=u&&!l)return!1;for(var f=c;f--;){var p=s[f];if(!(l?p in t:Gb.call(t,p)))return!1}var m=a.get(e),h=a.get(t);if(m&&h)return m==t&&h==e;var w=!0;a.set(e,t),a.set(t,e);for(var g=l;++f<c;){p=s[f];var _=e[p],b=t[p];if(r)var y=l?r(b,_,p,t,e,a):r(_,b,p,e,t,a);if(!(y===void 0?_===b||i(_,b,o,r,a):y)){w=!1;break}g||(g=p=="constructor")}if(w&&!g){var C=e.constructor,T=t.constructor;C!=T&&"constructor"in e&&"constructor"in t&&!(typeof C=="function"&&C instanceof C&&typeof T=="function"&&T instanceof T)&&(w=!1)}return a.delete(e),a.delete(t),w}var qb=1,tc="[object Arguments]",nc="[object Array]",dr="[object Object]",zb=Object.prototype,oc=zb.hasOwnProperty;function Hb(e,t,o,r,i,a){var l=ct(e),s=ct(t),c=l?nc:lt(e),d=s?nc:lt(t);c=c==tc?dr:c,d=d==tc?dr:d;var u=c==dr,f=d==dr,p=c==d;if(p&&oo(e)){if(!oo(t))return!1;l=!0,u=!1}if(p&&!u)return a||(a=new Ot),l||$i(e)?Qs(e,t,o,r,i,a):Lb(e,t,c,o,r,i,a);if(!(o&qb)){var m=u&&oc.call(e,"__wrapped__"),h=f&&oc.call(t,"__wrapped__");if(m||h){var w=m?e.value():e,g=h?t.value():t;return a||(a=new Ot),i(w,g,o,r,a)}}return p?(a||(a=new Ot),jb(e,t,o,r,i,a)):!1}function rc(e,t,o,r,i){return e===t?!0:e==null||t==null||!Tt(e)&&!Tt(t)?e!==e&&t!==t:Hb(e,t,o,r,rc,i)}function Yb(e,t){return e!=null&&t in Object(e)}function Wb(e,t,o){t=xn(t,e);for(var r=-1,i=t.length,a=!1;++r<i;){var l=ar(t[r]);if(!(a=e!=null&&o(e,l)))break;e=e[l]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&Ti(i)&&Si(l,i)&&(ct(e)||nr(e)))}function Xb(e,t){return e!=null&&Wb(e,t,Yb)}function Zb(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function Jb(e,t){return t.length<2?e:Di(e,vs(t,0,-1))}var Qb="[object Map]",e0="[object Set]",t0=Object.prototype,n0=t0.hasOwnProperty;function ic(e){if(e==null)return!0;if(Pi(e)&&(ct(e)||typeof e=="string"||typeof e.splice=="function"||oo(e)||$i(e)||nr(e)))return!e.length;var t=lt(e);if(t==Qb||t==e0)return!e.size;if(tr(e))return!bs(e).length;for(var o in e)if(n0.call(e,o))return!1;return!0}function o0(e,t){return rc(e,t)}function ac(e,t){return t=xn(t,e),e=Jb(e,t),e==null||delete e[ar(Zb(t))]}function r0(e){return py(e)?void 0:e}var i0=1,a0=2,l0=4,s0=ks(function(e,t){var o={};if(e==null)return o;var r=!1;t=ns(t,function(a){return a=xn(a,e),r||(r=a.length>1),a}),no(e,Ls(e),o),r&&(o=lo(o,i0|a0|l0,r0));for(var i=t.length;i--;)ac(o,t[i]);return o});function lc(e,t,o,r){if(!en(e))return e;t=xn(t,e);for(var i=-1,a=t.length,l=a-1,s=e;s!=null&&++i<a;){var c=ar(t[i]),d=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var u=s[c];d=void 0,d===void 0&&(d=en(u)?u:Si(t[i+1])?[]:{})}Ai(s,c,d),s=s[c]}return e}function c0(e,t,o){for(var r=-1,i=t.length,a={};++r<i;){var l=t[r],s=Di(e,l);o(s,l)&&lc(a,xn(l,e),s)}return a}function d0(e,t){return c0(e,t,function(o,r){return Xb(e,r)})}var Wi=ks(function(e,t){return e==null?{}:d0(e,t)});function u0(e,t,o){return e==null?e:lc(e,t,o)}var f0=0;function Xi(e){var t=++f0;return ir(e)+t}function sc(e,t){return e==null?!0:ac(e,t)}const{t:An}=Ue.createI18n("en-us",je);function Zi(e){return e.map(t=>({value:t,label:t}))}const Ji="*",cc="$",dc=".";function dt(...e){return e.join(dc)}function Qi(...e){return dt(cc,...e)}function uc(e){return e.startsWith(dt(cc,""))}function Tn(e){return e.split(dc).filter(t=>t!=="")}function ea(e){const t=Tn(e);return t[t.length-1]}const p0=e=>{var t,o;return e.type==="redis-ce"?An("redis.shared_configuration.type_label.host_port"):(t=e.config.sentinel_nodes)!=null&&t.length?An("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?An("redis.shared_configuration.type_label.cluster"):An("redis.shared_configuration.type_label.host_port")},m0={"redis-ce":An("redis.shared_configuration.open_source"),"redis-ee":An("redis.shared_configuration.enterprise")},g0=e=>m0[e]??"";function h0(e,t){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return t.filter(a=>{const l=a.model.match(o);return l&&!Object.keys(e).includes(l[0])}).map(a=>{const l=a.label.match(r);return{label:l?l[0]:a.label,key:a.model,value:"N/A",type:"text"}})}function y0(e){const t=n.toValue(e);return t?t.type==="set"&&t.elements.type==="string"&&!t.elements.one_of:!1}const fc=Symbol("free-form-data"),pc=Symbol("free-form-schema"),mc=Symbol("free-form-field-path"),ta=Symbol("free-form-field-renderer-slots"),ur=Symbol("free-form-field-renderer-matchers-map"),gc=Symbol("free-form-config"),hc=Symbol("free-form-field-reset-label-path-setting"),Pn="free-form-field-renderers-slot",_0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function na(e,t=""){const o={},r=e;if(Array.isArray(r.fields))for(const i of r.fields){const a=Object.keys(i)[0],l=i[a],s=t?dt(t,a):a;if(o[s]=l,l.type==="record"&&Array.isArray(l.fields)){const c=na(l,s);Object.assign(o,c)}else if(l.type==="array"&&l.elements){const c=l.elements,d=dt(s,Ji);if(o[d]=c,c.type==="record"&&Array.isArray(c.fields)){const u=na(c,d);Object.assign(o,u)}}}return o}function oa(e){const t=Tn(e).map(o=>/^\d+$/.test(o)?Ji:o);return dt(...t)}function b0(e){const t=n.toValue(e),o=n.computed(()=>t?na(t):{});function r(u){var f;return u==null?t:(f=o.value)==null?void 0:f[oa(u)]}function i(u,f=!1){const p=r(u);return p?p.default!==void 0?p.default:f||p.required?p.type==="record"?a(p,u):p.type==="array"?[]:null:null:null}function a(u,f){const p={};if(Array.isArray(u.fields))for(const m of u.fields){const h=Object.keys(m)[0],w=f?`${f}.${h}`:h,g=i(w,!1);g!==void 0&&(p[h]=g)}return p}function l(u){return u?i(u,!0):a(r(),"")}function s(u){const f=r(u),p=f!=null&&f.description?Ho.marked.parse(f.description,{async:!1}):void 0;return{..._0,"data-testid":`ff-label-${u}`,info:p}}function c(u){var p;const f=r(u);return Zi((f==null?void 0:f.one_of)||((p=f.elements)==null?void 0:p.one_of)||[])}function d(u){var m;const f=(m=r(u))==null?void 0:m.default;let p=null;if(f==null||typeof f=="object"||f==="")return null;if(Array.isArray(f)){if(f.length===0)return null;p=f.join(", ")}else p=f.toString();return`Default: ${p}`}return{getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function $e(){const e=n.inject(fc),t=n.inject(pc),o=n.inject(gc,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!t)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...t}}const yc=e=>{const t=n.inject(mc,n.computed(()=>"")),o=n.computed(()=>{const r=n.toValue(e);let i=r;return!uc(r)&&t.value&&(i=dt(t.value,r)),uc(r)&&(i=i.slice(Qi("").length)),i});return n.provide(mc,o),o},w0=e=>{const{getSchema:t}=$e(),{default:o,...r}=n.useSlots(),i=n.inject(ta),a=n.inject(ur),l=n.computed(()=>{const c=n.toValue(i),d=Object.keys(r).filter(u=>u!==Pn&&u!=="item").reduce((u,f)=>{const p=oa(dt(n.toValue(e),f));return{...u,[p]:r[f]}},{});return c?{...c,...d}:d});n.provide(ta,l);const s=n.toValue(e);return n.computed(()=>{if(o)return;const c=l.value[oa(n.toValue(e))];if(c)return c;for(const[d,u]of a)if(d({path:s,schema:t(s)}))return u})},E0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function k0(e){return E0[e.toLocaleLowerCase()]??e}function C0(e,t){const o=n.inject(hc,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=n.toValue(o),a=n.ref(r?dt(r,e):e),l=n.ref({parentPath:a.value,isolate:i});return n.watch([n.toRef(t),n.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:u}=c,f=d?dt(d,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=f,l.value.isolate=!1,l.value.parentPath=f}};(p=m[s])==null||p.call(m)}else u&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),n.provide(hc,l),a}function v0(e){return Tn(e).map(o=>o.split("_").map(Ly).map(k0).join(" ")).join(" › ")}function N0(e,t){const o=n.toValue(e),r=ea(o),{formConfig:i}=$e(),a=C0(r,t),{getSchema:l}=$e(),s=_c(e);return n.computed(()=>{var p;const c=a.value??r,d=(p=s.value.parent)!=null&&p.path?l(s.value.parent.path):null,f=(d==null?void 0:d.type)==="array"?"":v0(c);return i.transformLabel?i.transformLabel(f,o):f})}function $t(e,t){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=$e(),a=n.toValue(e),l=n.toValue(t),s=N0(e,n.toRef(()=>n.toValue(t).resetLabelPath));return n.computed(()=>{var c;return{...l,placeholder:l.placeholder??r(a)??void 0,labelAttributes:l.labelAttributes??o(a),label:l.label??s.value,required:l.required??((c=i(a))==null?void 0:c.required)}})}function S0(e){var r;const t=Tn(e);let o={parent:null};for(t.pop();t.length;){const i=t.shift();o.path=(r=o.parent)!=null&&r.path?dt(o.parent.path,i):i,o={parent:o}}return o}function _c(e){return n.computed(()=>S0(n.toValue(e)))}function bc(e){const{formData:t}=$e(),o=yc(e);return{value:n.computed({get:()=>ws(t,Tn(o.value)),set:i=>u0(t,Tn(o.value),i)})}}function ut(e){const{getSchema:t}=$e(),o=yc(e),r=w0(o),{value:i}=bc(e),a=n.computed(()=>t(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:_c(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function ra(e){const{getSchema:t}=$e(),o=n.useAttrs();return n.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=n.toValue(e).parent;return r!=null&&r.path?((i=t(r.path))==null?void 0:i.type)==="array":!1})}function wc(e,t){const o=n.reactive(new Map);function r(){return Xi(`${e}-`)}function i(a,l){return a!=null&&typeof a=="object"?o.get(a):`${e}-${l}`}return n.watch(t,a=>{const l=n.toValue(a);l.forEach(c=>{o.has(c)||o.set(c,r())});const s=new Set(l);[...o.keys()].forEach(c=>{s.has(c)||o.delete(c)})},{immediate:!0,deep:!0}),{getKey:i}}const x0="__request_callout_";function Ec(){return Xi(x0)}const so=n.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const o=e,r=t,i=n.computed(()=>o.multiline?Pe.KTextArea:Pe.KInput),a=n.ref(o.modelValue);n.watch(()=>o.modelValue,d=>{a.value=d});const{formConfig:l}=$e(),s=d=>{a.value=d,l.updateOnChange||r("update:modelValue",d)},c=()=>{l.updateOnChange&&r("update:modelValue",a.value)};return(d,u)=>(n.openBlock(),n.createBlock(n.unref(i),n.mergeProps(d.$attrs,{"model-value":d.modelValue,onChange:c,"onUpdate:modelValue":s}),n.createSlots({_:2},[n.renderList(n.useSlots(),(f,p)=>({name:p,fn:n.withCtx(m=>[n.renderSlot(d.$slots,p,n.normalizeProps(n.guardReactiveProps(m)))])}))]),1040,["model-value"]))}}),A0=["innerHTML"],In=_e(n.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.useAttrs(),{i18n:r}=qe(),i=n.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=t,{value:l,...s}=ut(n.toRef(()=>e.name)),c=$t(s.path,n.toRef({...i,...o})),d=l==null?void 0:l.value;function u(_){d!==void 0&&_===""&&_!==d?(l.value=null,a("update:modelValue",null)):(l.value=_.trim(),a("update:modelValue",_.trim()))}const f=n.computed(()=>{var _;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((_=s.schema)==null?void 0:_.value).encrypted}),p=n.inject(Ce.AUTOFILL_SLOT,void 0),m=n.computed(()=>{var _;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((_=s.schema.value)!=null&&_.referenceable)}),h=n.computed(()=>({referenceable:m.value})),w=ra(s.ancestors),g=n.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:ea(e.name)==="name");return(_,b)=>{var C;const y=n.resolveComponent("KAlert");return s.error?(n.openBlock(),n.createBlock(y,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",n.normalizeProps(n.mergeProps({key:1},_.$attrs)),[n.createVNode(so,n.mergeProps({...n.unref(c),showPasswordMaskToggle:f.value,type:f.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":g.value,"data-autofocus":n.unref(w),"data-testid":`ff-${s.path.value}`,"model-value":n.unref(l)??"",multiline:_.multiline,"onUpdate:modelValue":u}),n.createSlots({_:2},[(C=n.unref(c).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(_.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(c).labelAttributes.info},null,8,A0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value","multiline"]),n.unref(p)&&m.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(p)),{key:0,schema:h.value,update:u,value:n.unref(l)??""},null,8,["schema","value"])):n.createCommentVNode("",!0),m.value&&!n.unref(p)?(n.openBlock(),n.createBlock(y,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:n.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):n.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-3e9674bf"]]),T0=["innerHTML"],kc=_e(n.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.createPropsRestProxy(e,["name"]),{value:r,...i}=ut(n.toRef(()=>e.name)),a=t,l=c=>{r.value=c,a("update:modelValue",c)},s=$t(i.path,o);return(c,d)=>{var f;const u=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(u,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock(n.unref(Pe.KCheckbox),n.mergeProps({key:1},n.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":n.unref(r)??!1,"onUpdate:modelValue":l}),n.createSlots({_:2},[(f=n.unref(s).labelAttributes)!=null&&f.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(c.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(s).labelAttributes.info},null,8,T0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),Cc=_e(n.defineComponent({__name:"SlideTransition",setup(e){const t=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(t.map(p=>[p,""])),r=Object.fromEntries(t.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(t.map(h=>[h,m.getPropertyValue(h)]))}function a(p){["overflow","transition",...t].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const h=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...h,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function u(p){Object.assign(p.style,r)}function f(p){a(p)}return(p,m)=>(n.openBlock(),n.createBlock(n.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:f,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:u},{default:n.withCtx(()=>[n.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),P0=["data-testid"],I0=["data-testid"],O0=["data-testid"],$0=["innerHTML"],B0={class:"ff-object-field-actions"},V0=["data-testid"],ft=_e(n.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:n.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(e){n.useSlots();const t=n.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=ut(n.toRef(t,"name")),{getSchema:i,getDefault:a}=$e(),l=n.useModel(e,"added"),s=n.useModel(e,"expanded"),c=n.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),d=n.computed(()=>{var g,_;if((g=r.ancestors)!=null&&g.value){const b=r.ancestors.value.parent;if(b!=null&&b.path)return((_=i(b.path))==null?void 0:_.type)==="array"}return!1}),u=n.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),f=$t(r.path,n.toRef(()=>({required:e.required,...t,resetLabelPath:u.value}))),p=n.computed(()=>f.value.required?!0:l.value??e.defaultAdded),m=n.computed(()=>e.asChild!==void 0?e.asChild:d.value),h=n.computed(()=>{let g=r.schema.value.fields;return e.omit&&(g=g.filter(_=>!e.omit.includes(Object.keys(_)[0]))),e.fieldsOrder?g.sort((_,b)=>{const y=Object.keys(_)[0],C=Object.keys(b)[0],T=e.fieldsOrder.indexOf(y),k=e.fieldsOrder.indexOf(C);return T===-1&&k===-1?0:T===-1?1:k===-1?-1:T-k}):g});function w(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return n.watch(p,g=>{e.collapsible&&(s.value=g)}),n.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(g,_)=>{var y;const b=n.resolveComponent("KAlert");return n.openBlock(),n.createElementBlock(n.Fragment,null,[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(g.$slots[n.unref(Pn)]))),r.error?(n.openBlock(),n.createBlock(b,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(n.openBlock(),n.createElementBlock("div",n.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},g.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[n.renderSlot(g.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(h.value,C=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(C)[0],name:Object.keys(C)[0]},null,8,["name"]))),128))],!0)],16,P0)):(n.openBlock(),n.createElementBlock("div",n.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},g.$attrs),[n.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[n.createVNode(n.unref(Pe.KLabel),n.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...n.unref(f),required:!1},{"tooltip-attributes":n.unref(f).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(f).label)+" ",1)]),_:2},[(y=n.unref(f).labelAttributes)!=null&&y.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(f).labelAttributes.info},null,8,$0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createElementVNode("div",B0,[g.collapsible&&p.value?(n.openBlock(),n.createBlock(n.unref(Pe.KButton),{key:0,appearance:"tertiary",class:n.normalizeClass(`ff-object-field-button-${c.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${r.path.value}`,icon:"",onClick:_[0]||(_[0]=C=>s.value=!c.value)},{default:n.withCtx(()=>[p.value?(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):n.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):n.createCommentVNode("",!0),n.unref(f).required?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Pe.KButton),{key:1,appearance:"tertiary",class:n.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:w},{default:n.withCtx(()=>[p.value?(n.openBlock(),n.createBlock(n.unref(Ee.TrashIcon),{key:0})):(n.openBlock(),n.createBlock(n.unref(Ee.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,O0),n.createVNode(Cc,null,{default:n.withCtx(()=>[c.value?(n.openBlock(),n.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[n.renderSlot(g.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(h.value,C=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(C)[0],name:Object.keys(C)[0]},null,8,["name"]))),128))],!0)],8,V0)):n.createCommentVNode("",!0)]),_:3})],16,I0))],64)}}}),[["__scopeId","data-v-21f3af99"]]),R0=["innerHTML"],On=_e(n.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.createPropsRestProxy(e,["name"]),{value:r,...i}=ut(n.toRef(()=>e.name)),a=$t(i.path,o),l=n.computed(()=>{var w;const p=(w=i.schema)==null?void 0:w.value;if(p.gt)return{min:p.gt};const[m,h]=p.between??[];return{min:o.min??m,max:o.max??h}}),s=t,c=r.value,d=n.computed(()=>(r==null?void 0:r.value)!=null&&Number.isFinite(r.value)?`${r.value}`:"");function u(p){c!==void 0&&p===""&&Number(p)!==c?(r.value=null,s("update:modelValue",null)):(r.value=p===""?null:Number(p),s("update:modelValue",p===""?null:Number(p)))}const f=ra(i.ancestors);return(p,m)=>{var w;const h=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock(so,n.mergeProps({key:1,class:"ff-number-field"},{...n.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":n.unref(f),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":u}),n.createSlots({_:2},[(w=n.unref(a).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(p.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(a).labelAttributes.info},null,8,R0)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-296fb1b7"]]),D0=["innerHTML"],_t=_e(n.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},multiple:{type:Boolean,default:()=>{}},items:{},placeholder:{}},setup(e){const t=n.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:o}=$e(),{value:r,...i}=ut(n.toRef(()=>e.name)),a=$t(i.path,t),l=n.computed(()=>e.items?e.items:i.path?o(i.path.value):[]),s=n.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=i.schema.value)==null?void 0:d.type)==="set"}),c=n.computed(()=>s.value?Pe.KMultiselect:Pe.KSelect);return(d,u)=>{var p;const f=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock(n.unref(c),n.mergeProps({key:1},n.unref(a),{modelValue:n.unref(r),"onUpdate:modelValue":u[0]||(u[0]=m=>n.isRef(r)?r.value=m:null),class:"ff-enum-field","data-testid":`ff-${i.path.value}`,items:l.value,"kpop-attributes":{"data-testid":`${i.path.value}-items`}}),n.createSlots({_:2},[(p=n.unref(a).labelAttributes)!=null&&p.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(d.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(a).labelAttributes.info},null,8,D0)],!0)]),key:"0"}:void 0]),1040,["modelValue","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-181f0d06"]]);function ia(e,t,o=!0){const{value:r,...i}=ut(n.toRef(e,"name")),a=$t(i.path,n.toRef({...e,...n.useAttrs()})),l=n.ref(d(e.initialValue??n.toValue(r)??{},e.keyOrder));function s(){return Xi("ff-kv-field-")}function c(g,_,b){const y=b.indexOf(g),C=b.indexOf(_);return y===-1&&C===-1?0:y===-1?1:C===-1?-1:y-C}function d(g,_){const b=Object.entries(g).map(([y,C])=>({id:s(),key:y,value:C}));return _&&b.sort((y,C)=>c(y.key,C.key,_)),b}function u(){const g={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(g),g}function f(g){const _=l.value.findIndex(b=>b.id===g);_!==-1&&l.value.splice(_,1)}function p(){l.value=d(e.initialValue||{},e.keyOrder)}function m(g){l.value=d(g,e.keyOrder)}let h=null;n.watch(l,g=>{if(!o)return;const _=Object.fromEntries(g.map(({key:b,value:y})=>[b,y]).filter(([b])=>b));r.value=_,h=_,t("change",_)},{deep:!0,immediate:!0}),n.watch(()=>r==null?void 0:r.value,g=>{o0(g,h)||w(g)},{deep:!0});function w(g){if(!g){l.value=[];return}const _=new Map;l.value.forEach(T=>{T.key&&_.set(T.key,T)});const b=[],y=Object.keys(g);(e.keyOrder?[...y].sort((T,k)=>c(T,k,e.keyOrder)):y).forEach(T=>{const k=g[T];if(_.has(T)){const S=_.get(T);S.value=k,b.push(S)}else b.push({id:s(),key:T,value:k})}),l.value=b}return{entries:l,addEntry:u,removeEntry:f,reset:p,setValue:m,labelAttrs:a,field:i}}const M0=["data-testid"],F0=["data-testid"],L0=["innerHTML"],U0=["data-testid"],K0=_e(n.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:t,emit:o}){const r=n.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=qe(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:u,labelAttrs:f,field:p}=ia(r,a),m=n.useTemplateRef("root");async function h(T,k="key"){var S;m.value&&(await n.nextTick(),(S=m.value.querySelector(`[data-${k}-input="${T}"]`))==null||S.focus())}function w(){s();const T=l.value.findIndex(({key:k})=>!k);h(T===-1?l.value.length-1:T)}function g(T){T===l.value.length-1&&s(),h(T+1)}const _=n.inject(Ce.AUTOFILL_SLOT,void 0),b=n.computed(()=>{var T,k;return e.showVaultSecretPicker??!!((k=(T=p.schema.value)==null?void 0:T.values)!=null&&k.referenceable)}),y=n.computed(()=>({referenceable:b.value}));function C(T,k){l.value[T].value=k}return t({reset:d,setValue:u}),(T,k)=>{var W;const S=n.resolveComponent("KAlert"),I=n.resolveComponent("KLabel"),B=n.resolveComponent("KButton");return n.unref(p).error?(n.openBlock(),n.createBlock(S,{key:0,appearance:"danger",message:n.unref(p).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${n.unref(p).path.value}`},[n.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${n.unref(p).path.value}`},[n.createVNode(I,n.mergeProps({class:"ff-kv-field-label"},n.unref(f),{"data-testid":`ff-label-${n.unref(p).path.value}`,"tooltip-attributes":n.unref(f).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(f).label)+" ",1)]),_:2},[(W=n.unref(f).labelAttributes)!=null&&W.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(T.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(f).labelAttributes.info},null,8,L0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createVNode(B,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(p).path.value}`,icon:"",onClick:w},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:1},8,["data-testid"])],8,F0),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(l),(M,v)=>(n.openBlock(),n.createElementBlock("div",{key:M.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${n.unref(p).path.value}.${v}`},[n.createVNode(so,{modelValue:M.key,"onUpdate:modelValue":N=>M.key=N,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":v,"data-testid":`ff-key-${n.unref(p).path.value}.${v}`,placeholder:T.keyPlaceholder||"Key",onKeydown:n.withKeys(n.withModifiers(N=>h(v,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),n.createVNode(so,{modelValue:M.value,"onUpdate:modelValue":N=>M.value=N,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${n.unref(p).path.value}.${v}`,"data-value-input":v,placeholder:T.valuePlaceholder||"Value",onKeydown:n.withKeys(n.withModifiers(N=>g(v),["prevent"]),["enter"])},{after:n.withCtx(()=>[n.unref(_)&&b.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(_)),{key:0,schema:y.value,update:N=>C(v,N),value:M.value},null,8,["schema","update","value"])):n.createCommentVNode("",!0),b.value&&!n.unref(_)?(n.openBlock(),n.createBlock(S,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${n.unref(p).path.value}`,message:n.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):n.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),n.createVNode(B,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${n.unref(p).path.value}.${v}`,icon:"",onClick:N=>n.unref(c)(M.id)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,U0))),128))],8,M0))}}}),[["__scopeId","data-v-92e0893d"]]),G0=["data-testid"],j0=["innerHTML"],vc=_e(n.defineComponent({inheritAttrs:!1,__name:"TagField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},type:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.useAttrs(),r=n.createPropsRestProxy(e,["name"]),i=t,{value:a,...l}=ut(n.toRef(()=>e.name)),s=$t(l.path,n.toRef({...r,...o})),c=n.computed(()=>{var w,g;return((g=(w=l.schema)==null?void 0:w.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),d=n.ref("");function u(w){return w.map(g=>g.trim()).filter(Boolean).join(", ")}function f(w){return w.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(w){d.value=w;const g=f(w),_=!g.length&&c.value?null:g;a.value=_,i("update:modelValue",_)}const m=ra(l.ancestors),h=n.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:ea(e.name)==="name");return n.watch(a,w=>{const g=w?u(w):"";u(f(d.value))!==g&&(d.value=g)},{immediate:!0}),(w,g)=>{var b;const _=n.resolveComponent("KAlert");return l.error?(n.openBlock(),n.createBlock(_,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[n.createVNode(so,n.mergeProps(n.unref(s),{class:"ff-tag-field","data-1p-ignore":h.value,"data-autofocus":n.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),n.createSlots({_:2},[(b=n.unref(s).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(w.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(s).labelAttributes.info},null,8,j0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,G0))}}}),[["__scopeId","data-v-43602ab3"]]),Qe=n.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const t=e,o=ut(n.toRef(t,"name")),r=n.computed(()=>{var i,a;switch((a=(i=o.schema)==null?void 0:i.value)==null?void 0:a.type){case"string":return"one_of"in o.schema.value?_t:In;case"boolean":return"one_of"in o.schema.value?_t:kc;case"number":case"integer":return"one_of"in o.schema.value?_t:On;case"array":return aa;case"set":return y0(o.schema)?vc:_t;case"record":return ft;case"map":return K0;default:return}});return(i,a)=>{const l=n.resolveComponent("KAlert");return n.openBlock(),n.createElementBlock(n.Fragment,null,[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(i.$slots[n.unref(Pn)]))),n.unref(o).error?(n.openBlock(),n.createBlock(l,{key:0,appearance:"danger",message:n.unref(o).error.message},null,8,["message"])):n.unref(o).renderer.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(o).renderer.value),{key:1,name:Qi(n.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(n.openBlock(),n.createElementBlock(n.Fragment,{key:2},[r.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(r.value),{key:0,name:Qi(n.unref(o).path.value)},null,8,["name"])):(n.openBlock(),n.createBlock(l,{key:1,appearance:"warning",message:`${n.unref(o).path.value} ${n.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),n.renderSlot(i.$slots,"default")],64))],64)}}}),q0=["data-testid"],z0=["data-testid"],H0=["innerHTML"],Y0=["data-testid"],W0={class:"ff-array-field-item-content"},X0=["data-index","data-testid"],aa=_e(n.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:t}){var C;n.useCssVars(T=>({"6954cf1c":y.value}));const o=e,r=t,{i18n:{t:i}}=qe(),{getDefault:a}=$e(),{value:l,...s}=ut(n.toRef(o,"name")),c=$t(s.path,n.toRef({...o,...n.useAttrs()})),d=n.computed(()=>o.items??n.toValue(l)??[]),{getKey:u}=wc("ff-array-field",d),f=n.computed(()=>o.appearance==="card"?Pe.KCard:"div");function p(T,k){return typeof o.itemLabel=="function"?o.itemLabel(T,k):o.itemLabel||c.value.label||`Item #${k}`}const m=n.computed(()=>d.value.map((T,k)=>({hash:`#${u(T,k)}`,title:""}))),h=n.ref((C=m.value[0])==null?void 0:C.hash),w=async()=>{var k;const T=a(dt(s.path.value,Ji));Array.isArray(l.value)||(l.value=[]),l.value.push(T),r("add"),o.appearance==="tabs"&&(await n.nextTick(),h.value=(k=m.value[m.value.length-1])==null?void 0:k.hash),await n.nextTick(),b(d.value.length+1)},g=async T=>{var k;Array.isArray(l.value)&&l.value.splice(T,1),r("remove",T),o.appearance==="tabs"&&(h.value=(k=m.value[Math.max(0,T-1)])==null?void 0:k.hash)},_=n.useTemplateRef("root");function b(T){var S;if(!_.value)return;const k=Math.max(0,Math.min(T,d.value.length-1));(S=_.value.querySelector(`[data-index="${k}"] [data-autofocus]`))==null||S.focus()}const y=n.computed(()=>{const{appearance:T,stickyTabs:k}=o;return T!=="tabs"||k==null||k===!1?null:typeof k=="number"?`${o.stickyTabs}px`:typeof k=="string"?k:"0"});return(T,k)=>{var M;const S=n.resolveComponent("KAlert"),I=n.resolveComponent("KLabel"),B=n.resolveComponent("KButton"),W=n.resolveComponent("KTabs");return s.error?(n.openBlock(),n.createBlock(S,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:_,class:n.normalizeClass(["ff-array-field",{[`ff-array-field-${T.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":T.stickyTabs}]),"data-testid":`ff-array-${s.path.value}`},[n.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${s.path.value}`},[n.createVNode(I,n.mergeProps({class:"ff-array-field-label"},n.unref(c),{"data-testid":`ff-label-${s.path.value}`,"tooltip-attributes":n.unref(c).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(c).label)+" ",1)]),_:2},[(M=n.unref(c).labelAttributes)!=null&&M.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(T.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(c).labelAttributes.info},null,8,H0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createVNode(B,{appearance:"tertiary","aria-label":n.unref(i)("actions.add_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${s.path.value}`,icon:"",onClick:w},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,z0),d.value.length?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[T.appearance!=="tabs"?(n.openBlock(),n.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${s.path.value}`},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(d.value,(v,N)=>(n.openBlock(),n.createBlock(n.unref(f),{key:n.unref(u)(v,N),class:"ff-array-field-item","data-index":N,"data-testid":`ff-array-item-${s.path.value}.${N}`},{default:n.withCtx(()=>[n.createElementVNode("div",W0,[T.$slots.item?n.renderSlot(T.$slots,"item",{key:0,fieldName:String(N),index:N},void 0,!0):(n.openBlock(),n.createBlock(Qe,{key:1,name:String(N)},null,8,["name"]))]),n.createVNode(B,{appearance:"tertiary","aria-label":n.unref(i)("actions.remove_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${s.path.value}.${N}`,icon:"",onClick:E=>g(N)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,Y0)):(n.openBlock(),n.createBlock(n.unref(Pe.KCard),{key:1,"data-testid":`ff-array-tab-container-${s.path.value}`},{default:n.withCtx(()=>[n.createVNode(W,{modelValue:h.value,"onUpdate:modelValue":k[0]||(k[0]=v=>h.value=v),"data-testid":`ff-array-tabs-${s.path.value}`,tabs:m.value},n.createSlots({_:2},[n.renderList(d.value,(v,N)=>({name:n.unref(u)(v,N),fn:n.withCtx(()=>[n.createElementVNode("div",{class:"ff-array-field-item","data-index":N,"data-testid":`ff-array-item-${s.path.value}.${N}`},[T.$slots.item?n.renderSlot(T.$slots,"item",{key:0,fieldName:String(N),index:N},void 0,!0):(n.openBlock(),n.createBlock(Qe,{key:1,name:String(N)},null,8,["name"]))],8,X0)])})),n.renderList(d.value,(v,N)=>({name:`${n.unref(u)(v,N)}-anchor`,fn:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(p(v,N))+" ",1),n.createVNode(B,{appearance:"tertiary","aria-label":n.unref(i)("actions.remove_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${s.path.value}.${N}`,icon:"",onClick:n.withModifiers(E=>g(N),["stop"])},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):n.createCommentVNode("",!0)],10,q0))}}}),[["__scopeId","data-v-463d07bb"]]),co=Symbol(),Z0=n.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const t=e,{formData:o}=$e(),r=n.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[t.index])==null?void 0:c.name)})}),i=n.computed(()=>r.value.map(({[co]:l,name:s})=>({value:l,label:s}))),a=n.computed(()=>o.config.callouts[t.index]);return n.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(n.openBlock(),n.createBlock(ft,{name:l.fieldName},{depends_on:n.withCtx(c=>[n.createVNode(_t,n.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:n.withCtx(c=>[n.createVNode(ft,n.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:n.withCtx(d=>[n.createVNode(_t,n.mergeProps(d,{items:n.unref(Zi)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),J0=n.defineComponent({__name:"CalloutsForm",setup(e){const{formData:t,getDefault:o}=$e();function r(){const i=o("config.callouts.*");i.request.body.custom=i.request.body.custom??{};const a=t.config.callouts[t.config.callouts.length-1];a&&(a[co]=Ec())}return(i,a)=>(n.openBlock(),n.createBlock(aa,{appearance:"tabs","item-label":l=>l.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:r},{item:n.withCtx(({index:l,fieldName:s})=>[n.createVNode(Z0,{"field-name":s,index:l},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),Nc=n.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const t=e,{default:o}=n.useSlots(),r=n.inject(ur);if(!r)throw new Error(ur.toString()+"not provided");return o&&r.set(t.match,o),(i,a)=>null}}),bt=n.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:t,emit:o}){const r=o,i=n.useSlots(),a=b0(e.schema);n.provide(pc,a);const l=m=>{var h;return Qo((h=e.config)==null?void 0:h.hasValue)?e.config.hasValue(m):!!m},s=n.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((h,w)=>{const g=Object.keys(h)[0],_=Object.keys(w)[0],b=e.fieldsOrder.indexOf(g),y=e.fieldsOrder.indexOf(_);return b===-1&&y===-1?0:b===-1?1:y===-1?-1:b-y}):m});let c=!1;const d=n.reactive({});n.provide(fc,d),n.provide(ta,s0(i,"default",Pn));const u=new Map;n.provide(ur,u),n.provide(gc,e.config??{}),n.watch(d,m=>{c&&r("change",n.toValue(m))},{deep:!0,immediate:!0});function f(m){Object.keys(d).forEach(h=>{delete d[h]}),Object.assign(d,m)}function p(m){var w;let h;!m||!l(n.toValue(m))?h=a.getDefault():h=sr(n.toValue(m)),Qo((w=e.config)==null?void 0:w.prepareFormData)?f(e.config.prepareFormData(h)):f(h),c=!0}return n.onBeforeMount(()=>{p(e.data)}),n.watch(()=>e.data,m=>{p(m)},{deep:!0}),t({getInnerData:()=>n.toRaw(d)}),(m,h)=>(n.openBlock(),n.createBlock(n.resolveDynamicComponent(m.tag),null,{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(i)[n.unref(Pn)]))),n.renderSlot(m.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(s.value,w=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(w)[0],name:Object.keys(w)[0],onGlobalAction:h[0]||(h[0]=(g,_)=>r("globalAction",g,_))},null,8,["name"]))),128))])]),_:3}))}}),Q0={class:"ff-advanced-fields"},Sc=_e(n.defineComponent({__name:"AdvancedFields",setup(e){const{t}=Ue.createI18n("en-us",je),{getSchema:o}=$e(),r=n.ref(!0);return(i,a)=>(n.openBlock(),n.createBlock(n.unref(Pe.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"trigger-label":r.value?n.unref(t)("plugins.form.grouping.advanced_parameters.view"):n.unref(t)("plugins.form.grouping.advanced_parameters.hide")},{default:n.withCtx(()=>[n.createElementVNode("div",Q0,[n.unref(o)("instance_name")?(n.openBlock(),n.createBlock(Qe,{key:0,name:"instance_name"})):n.createCommentVNode("",!0),n.unref(o)("protocols")?(n.openBlock(),n.createBlock(Qe,{key:1,name:"protocols"})):n.createCommentVNode("",!0),n.unref(o)("tags")?(n.openBlock(),n.createBlock(vc,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:n.unref(t)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):n.createCommentVNode("",!0),n.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-190b1d21"]]),ew=n.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:t}){const o=t,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=qe();function a(d,u=!1){return d.reduce((f,{[co]:p,name:m})=>(u?f[m]=p:f[p]=m,f),{})}function l(d){var m;const u=sr(d);if(!((m=u.config)!=null&&m.callouts))return u;const{callouts:f}=u.config;f.forEach(h=>{h.request.body.custom=h.request.body.custom??{},h[co]=Ec()});const p=a(f,!0);return f.forEach(h=>{h.depends_on=h.depends_on.map(w=>p[w])}),u}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const u=sr(d);if(!((p=u.config)!=null&&p.callouts))throw new Error("data is not correct");const f=a(u.config.callouts);u.config.callouts=u.config.callouts.map(m=>{const{[co]:h,depends_on:w,...g}=m;return{depends_on:w.map(_=>f[_]).filter(_=>_!=null),...g}}),o("change",u)}return(d,u)=>(n.openBlock(),n.createBlock(bt,{class:"rc-config-form",config:r,data:d.data,schema:d.schema,tag:"div",onChange:c},{[n.unref(Pn)]:n.withCtx(()=>[n.createVNode(Nc,{match:({path:f})=>f.endsWith("by_lua")},{default:n.withCtx(f=>[n.createVNode(In,n.mergeProps(f,{autosize:"",class:"rc-code",multiline:"",placeholder:n.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),n.createVNode(Nc,{match:({path:f})=>["cluster_nodes","sentinel_nodes"].some(p=>f.endsWith(p))},{default:n.withCtx(f=>[n.createVNode(aa,n.mergeProps(f,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:n.withCtx(()=>[n.createVNode(ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:n.withCtx(()=>[n.createVNode(J0),n.createVNode(ft,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),n.createVNode(ft,{appearance:"card",name:"cache"},{redis:n.withCtx(f=>[n.createVNode(ft,n.mergeProps(f,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),n.createVNode(Sc)]),_:2},1032,["data","schema"]))}}),tw={class:"sc-form-pinned-fields"},nw={class:"sc-form-config-form"},xc=_e(n.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t}=Ue.createI18n("en-us",je),o=e;n.useSlots();function r(u){return n.computed(()=>({fields:n.toValue(u).map(f=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===f)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=n.computed(()=>{const u=o.schema;u.fields=u.fields.filter(p=>l.includes(Object.keys(p)[0])),u.fields.unshift({instance_name:{type:"string",description:t("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:t("plugins.form.fields.tags.help"),elements:{type:"string"}}});const f=u.fields.find(p=>Object.keys(p)[0]==="protocols");return f&&(f.protocols.help=f.protocols.default?t("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:f.protocols.default.join(", ")}):t("plugins.form.fields.protocols.placeholder"),f.protocols.description=t("plugins.form.fields.protocols.help")),u}),c=n.ref(!1);function d(u){return Wi(u,["config","instance_name","partials","protocols","tags"])}return(u,f)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",tw,[n.createVNode(n.unref(Ce.VueFormGenerator),{model:u.formModel,options:u.formOptions,schema:n.unref(a),onModelUpdated:u.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),n.createVNode(n.unref(Pe.KCollapse),{modelValue:c.value,"onUpdate:modelValue":f[1]||(f[1]=p=>c.value=p),class:"sc-form-config-fields"},{title:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.form.grouping.plugin_configuration.description")),1)]),default:n.withCtx(()=>[n.createElementVNode("div",nw,[n.renderSlot(u.$slots,"default",{data:d(u.model),schema:s.value,onChange:f[0]||(f[0]=(...p)=>u.onFormChange&&u.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-175fd883"]]),ow=n.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const t=e,o=n.useSlots();return n.provide(Ce.AUTOFILL_SLOT,o==null?void 0:o[Ce.AUTOFILL_SLOT_NAME]),(r,i)=>(n.openBlock(),n.createBlock(xc,n.normalizeProps(n.guardReactiveProps(t)),{default:n.withCtx(a=>[n.createVNode(ew,n.normalizeProps(n.guardReactiveProps(a)),null,16)]),_:1},16))}}),rw={key:1},iw=["innerHTML"],aw={class:"horizontal-container"},lw=_e(n.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=t,r=n.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=$e(),a=ut(n.toRef(()=>e.name)),l=$t(a.path,r),s=n.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,u)=>{var m;const f=n.resolveComponent("KAlert"),p=n.resolveComponent("KLabel");return n.unref(a).error?(n.openBlock(),n.createBlock(f,{key:0,appearance:"danger",message:n.unref(a).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",rw,[n.createVNode(p,n.normalizeProps(n.guardReactiveProps(n.unref(l).labelAttributes)),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(l).label)+" ",1)]),_:2},[(m=n.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:n.withCtx(()=>[n.createElementVNode("div",{innerHTML:n.unref(l).labelAttributes.info},null,8,iw)]),key:"0"}:void 0]),1040),n.createElementVNode("div",aw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(s.value,h=>(n.openBlock(),n.createBlock(n.unref(Pe.KRadio),{key:h.value,"model-value":n.unref(a).value.value,"onUpdate:modelValue":[u[0]||(u[0]=w=>n.unref(a).value.value=w),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),sw={class:"sp-form-request-limits-subtitle"},cw={class:"sp-form-request-limits-content"},dw={class:"sp-form-window-type"},uw={class:"sp-form-request-limits-items"},fw={class:"sp-form-request-limits-row"},pw=["id"],mw={class:"sp-form-request-limits-actions"},gw={key:0,class:"sp-form-request-limits-examples"},hw={class:"sp-form-request-limits-examples-badges"},la="config.window_type",yw=_e(n.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t}=Ue.createI18n("en-us",je),{formData:o,getSelectItems:r,getSchema:i}=$e(),a=n.computed(()=>{var b,y;const _=(y=(b=o.config)==null?void 0:b.limit)==null?void 0:y.map((C,T)=>{var k,S;return{limit:C,windowSize:(S=(k=o.config)==null?void 0:k.window_size)==null?void 0:S[T]}});return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=wc("request-limits",a),s=_=>{var b,y;p.value=void 0,o.config&&((b=o.config.limit)!=null&&b.length||(o.config.limit=[null]),(y=o.config.window_size)!=null&&y.length||(o.config.window_size=[null]),o.config.limit.splice(_+1,0,null),o.config.window_size.splice(_+1,0,null))},c=_=>{o.config&&(o.config.limit.splice(_,1),o.config.window_size.splice(_,1))},d=(g=i(la))==null?void 0:g.default,u=n.computed(()=>ws(o,la)),f=n.computed(()=>r(la).sort((_,b)=>_.value===d?-1:b.value===d?1:0)),p=n.ref(),m={fixed:[{label:t("sp.use_cases.fixed.hourly_500.label"),description:t("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:t("sp.use_cases.fixed.half_hourly_200.label"),description:t("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:t("sp.use_cases.fixed.daily_500.label"),description:t("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:t("sp.use_cases.sliding.hourly_100.label"),description:t("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:t("sp.use_cases.sliding.half_hourly_300.label"),description:t("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:t("sp.use_cases.sliding.hourly_500.label"),description:t("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},h=n.computed(()=>Object.prototype.hasOwnProperty.call(m,u.value)?m[u.value]:[]),w=(_,b)=>{if(b===p.value){n.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}n.nextTick(()=>{p.value=b}),o.config.limit=[_.config.limit],o.config.window_size=[_.config.window_size]};return(_,b)=>{const y=n.resolveComponent("KLabel"),C=n.resolveComponent("KButton"),T=n.resolveComponent("KBadge"),k=n.resolveComponent("KTooltip"),S=n.resolveComponent("KCard");return n.openBlock(),n.createBlock(S,{class:"sp-form-request-limits"},{title:n.withCtx(()=>[n.createVNode(y,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.request_limits.title")),1)]),_:1}),n.createElementVNode("div",sw,n.toDisplayString(n.unref(t)("sp.request_limits.subtitle")),1)]),default:n.withCtx(()=>[n.createElementVNode("div",cw,[n.createElementVNode("div",dw,[n.createVNode(lw,{items:f.value,label:n.unref(t)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":b[0]||(b[0]=I=>p.value=void 0)},null,8,["items","label"])]),n.createElementVNode("div",uw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(a.value,(I,B)=>(n.openBlock(),n.createElementBlock("div",{key:n.unref(l)(I,B)},[n.createVNode(y,{for:`sp-form-request-limits-item-${B}-legend`},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.request_limits.label_index",{index:B+1})),1)]),_:2},1032,["for"]),n.createElementVNode("div",fw,[n.createElementVNode("legend",{id:`sp-form-request-limits-item-${B}-legend`,class:"sp-form-request-limits-inputs"},[n.createVNode(On,{name:`$.config.limit.${B}`,placeholder:n.unref(t)("sp.request_limits.request_number")},null,8,["name","placeholder"]),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.interval_determiner")),1),n.createVNode(On,{name:`$.config.window_size.${B}`,placeholder:n.unref(t)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.seconds")),1)],8,pw),n.createElementVNode("div",mw,[n.createVNode(C,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(B)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.RemoveIcon))]),_:2},1032,["disabled","onClick"]),n.createVNode(C,{appearance:"tertiary",onClick:()=>s(B)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),h.value.length>0?(n.openBlock(),n.createElementBlock("div",gw,[n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.start_with_a_use_case")),1),n.createElementVNode("div",hw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(h.value,(I,B)=>(n.openBlock(),n.createBlock(k,{key:`use-case-${B}`,"max-width":"300"},{content:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(I.description),1),b[1]||(b[1]=n.createElementVNode("br",null,null,-1)),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.label"))+": "+n.toDisplayString(I.config.limit),1),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.time_interval"))+": "+n.toDisplayString(I.config.window_size),1)]),default:n.withCtx(()=>[n.createVNode(T,{appearance:p.value===`${u.value}-${B}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>w(I,`${u.value}-${B}`)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(I.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):n.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-f3727aa3"]]),_w={id:"sp-form-error-legend",class:"sp-form-error-inputs"},bw=_e(n.defineComponent({__name:"ErrorMessageForm",setup(e){const{t}=Ue.createI18n("en-us",je);return(o,r)=>{const i=n.resolveComponent("KLabel");return n.openBlock(),n.createElementBlock("div",null,[n.createVNode(i,{for:"sp-form-error-legend",info:n.unref(t)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.error_message.label")),1)]),_:1},8,["info"]),n.createElementVNode("legend",_w,[n.createVNode(On,{class:"input-error-code",label:"",name:"error_code",placeholder:n.unref(t)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=n.createElementVNode("div",null,":",-1)),n.createVNode(In,{class:"input-error-message",label:"",name:"error_message",placeholder:n.unref(t)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),ww={class:"partial-config-card"},Ew={class:"config-card-row-label"},kw={class:"label-text"},Cw=["data-testid"],vw=["data-testid"],Nw={key:1},Sw=["data-testid"],xw=["data-testid"],Aw=_e(n.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t,formatUnixTimeStamp:o}=Ue.createI18n("en-us",je),r={id:{order:1},name:{order:1},type:{label:t("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:t("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:t("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=f=>f!=null,l=(f,p)=>a(p)&&["password","sentinel_password"].includes(f)?"password":"text",{convertKeyToTitle:s}=ae.useStringHelpers(),c=n.computed(()=>Object.entries(i.configFields).map(([f,p])=>{var m,h,w,g;return{key:f,label:((m=r[f])==null?void 0:m.label)??s(f),value:(h=r[f])!=null&&h.formatter?r[f].formatter(p):p,type:((w=r[f])==null?void 0:w.type)??l(f,p),order:((g=r[f])==null?void 0:g.order)??100}}).sort((f,p)=>f.order-p.order).filter(f=>f.type!=="hidden")),d=h0(i.configFields,i.pluginRedisFields||[]),u=n.computed(()=>c.value.concat(d));return(f,p)=>{const m=n.resolveComponent("KCopy");return n.openBlock(),n.createElementBlock("div",ww,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(u.value,({key:h,label:w,value:g,type:_})=>(n.openBlock(),n.createElementBlock("div",{key:h,class:"partial-config-card-row"},[n.createElementVNode("div",Ew,[n.createElementVNode("div",kw,n.toDisplayString(w),1)]),n.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(g)?(n.openBlock(),n.createElementBlock("div",Nw,[_==="password"?(n.openBlock(),n.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[n.createVNode(m,{format:"redacted",text:String(g)},null,8,["text"])],8,Sw)):(n.openBlock(),n.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},n.toDisplayString(g),9,xw))])):(n.openBlock(),n.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,vw))],8,Cw)]))),128))])}}}),[["__scopeId","data-v-836def53"]]),Tw=_e(n.defineComponent({__name:"NewRedisPartialModal",props:{visible:{type:Boolean,default:!1},partialType:{type:String,default:""}},emits:["partialUpdated","partialUpdateFailed","modalClose"],setup(e,{emit:t}){const o=e,{t:r}=Ue.createI18n("en-us",je),i=n.inject(Ce.FORMS_CONFIG),a=t,{getMessageFromError:l}=ae.useErrors(),s=n.computed(()=>{switch(o.partialType){case Jn.PartialType.REDIS_CE:return Jn.PartialType.REDIS_EE;case Jn.PartialType.REDIS_EE:return Jn.PartialType.REDIS_CE;default:return}}),c=n.ref(!1),d=n.ref(),u=m=>{a("partialUpdateFailed",{message:l(m),appearance:"danger"})},f=()=>{a("partialUpdated",{message:r("plugins.free-form.redis_partial.partial_created_success_message"),appearance:"success"}),p()},p=()=>{d.value=void 0,a("modalClose"),n.nextTick(()=>{c.value=!1})};return n.watch(()=>o.visible,m=>{m&&(c.value=!0,n.nextTick(()=>{d.value="#km-modal-footer"}))}),(m,h)=>{const w=n.resolveComponent("KModal");return n.openBlock(),n.createBlock(w,{class:"plugin-redis-partial-form","data-testid":"redis-partial-form-modal","full-screen":"",title:n.unref(r)("plugins.free-form.redis_partial.redis_partial_modal_title"),visible:c.value,onCancel:p},{footer:n.withCtx(()=>h[0]||(h[0]=[n.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:n.withCtx(()=>[n.createVNode(n.unref(Jn.RedisConfigurationForm),{"action-teleport-target":d.value,config:n.unref(i),"disabled-partial-type":s.value,"slidout-top-offset":0,onCancel:p,onError:u,onUpdate:f},null,8,["action-teleport-target","config","disabled-partial-type"])]),_:1},8,["title","visible"])}}}),[["__scopeId","data-v-ac12474e"]]),Pw="#52596e",Iw="#e0e4ea",Ow="#00abd2",Ac="#afb7c5",uo="12px",$w="16px",sa="20px",Bw="24px",Vw="8px",Tc=Symbol("redis-partial-info"),Pc={konnect:{getOne:"/v2/control-planes/{controlPlaneId}/core-entities/partials/{id}",getAll:"/v2/control-planes/{controlPlaneId}/core-entities/partials"},kongManager:{getOne:"/{workspace}/partials/{id}",getAll:"/{workspace}/partials"}},Ic=["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"],Rw={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},Dw={key:0,class:"shared-redis-config"},Mw={class:"shared-redis-config-title"},Fw={class:"redis-config-select","data-testid":"redis-config-select"},Lw={class:"selected-redis-config"},Uw=["data-testid"],Kw={class:"select-item-name","data-testid":"selected-redis-config"},Gw={class:"empty-redis-config","data-testid":"empty-redis-config"},jw={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},qw="1000",zw=_e(n.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:t}){var q;const o=t,{t:r}=Ue.createI18n("en-us",je),i=e,a=n.inject(Tc),l=(a==null?void 0:a.isEditing)||!1,s=n.computed(()=>{var j;return i.redisPath?i.redisPath:(j=a==null?void 0:a.redisPath)!=null&&j.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((q=a==null?void 0:a.redisType)==null?void 0:q.value)||"all",d=n.computed(()=>{var j;return!!((j=a==null?void 0:a.redisType)!=null&&j.value)}),u=n.ref(!1),f=n.ref(null),p=n.ref(!l),{getMessageFromError:m}=ae.useErrors(),h=n.ref(i.defaultRedisConfigItem),w=n.ref({}),g=n.ref(),{value:_}=bc("$.partials"),{value:b}=ut(s),y=n.inject(Ce.FORMS_CONFIG),{debouncedQueryChange:C,loading:T,error:k,loadItems:S,results:I}=ae.useDebouncedFilter(y,Pc[y.app].getAll,qw,{fetchedItemsKey:"data",searchKeys:["id","name"]}),B=n.computed(()=>k.value?m(k.value):""),W=j=>{let F=`${y.apiBaseUrl}${Pc[y.app].getOne}`;return y.app==="konnect"?F=F.replace(/{controlPlaneId}/gi,(y==null?void 0:y.controlPlaneId)||""):y.app==="kongManager"&&(F=F.replace(/\/{workspace}/gi,y!=null&&y.workspace?`/${y.workspace}`:"")),F=F.replace(/{id}/gi,String(j)),F},M=n.computed(()=>{const j=(I.value||[]).map(F=>({label:F.id,name:F.name,value:F.id,type:F.type,tag:p0(F)})).filter(F=>F.type==="redis-ce"||F.type==="redis-ee");return c!=="all"?j.filter(F=>F.type===c):j}),{axiosInstance:v}=ae.useAxios(y==null?void 0:y.axiosRequestConfig),N=()=>{p.value?(g.value&&(_.value=g.value,h.value=g.value[0].id,b.value=void 0),b!=null&&b.value&&(w.value=b.value)):(Object.keys(w.value).length&&(b.value=w.value),_!=null&&_.value&&(g.value=_.value),_.value=l?null:void 0)},E=j=>{S(),o("globalAction","notify",j)},D=j=>{o("globalAction","notify",j)},O=async j=>{if(j){h.value=j,_.value=[{id:j}],g.value=[{id:j}],b.value=void 0;try{const F=await v.get(W(j));if(F.data.config){const R=Object.assign(F.data,F.data.config);delete R.config,f.value=R}}catch(F){console.error(F)}}};return n.watch(()=>p.value,()=>{N()}),n.onBeforeMount(()=>{var j;if(S(),i.defaultRedisConfigItem||_!=null&&_.value){const F=i.defaultRedisConfigItem||((j=_==null?void 0:_.value)==null?void 0:j[0].id);O(F),p.value=!0}else b!=null&&b.value&&(w.value=b.value)}),(j,F)=>{const R=n.resolveComponent("KBadge"),U=n.resolveComponent("KRadio"),re=n.resolveComponent("KSelect"),de=n.resolveComponent("KCard");return d.value?(n.openBlock(),n.createBlock(de,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:n.unref(r)("redis.title")},{default:n.withCtx(()=>[n.createElementVNode("div",Rw,[n.createVNode(U,{modelValue:p.value,"onUpdate:modelValue":F[0]||(F[0]=ee=>p.value=ee),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:n.unref(r)("redis.shared_configuration.description"),label:n.unref(r)("redis.shared_configuration.label"),"selected-value":!0},{default:n.withCtx(()=>[n.createVNode(R,{appearance:"success"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(r)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),n.createVNode(U,{modelValue:p.value,"onUpdate:modelValue":F[1]||(F[1]=ee=>p.value=ee),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:n.unref(r)("redis.dedicated_configuration.description"),label:n.unref(r)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),p.value?(n.openBlock(),n.createElementBlock("div",Dw,[n.createElementVNode("div",Mw,n.toDisplayString(n.unref(r)("redis.shared_configuration.title")),1),n.createElementVNode("div",Fw,[n.createVNode(re,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:M.value,loading:n.unref(T),"model-value":h.value,placeholder:n.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:F[3]||(F[3]=ee=>O(ee==null?void 0:ee.value)),onQueryChange:n.unref(C)},{"selected-item-template":n.withCtx(({item:ee})=>[n.createElementVNode("div",Lw,n.toDisplayString(ee.name),1)]),"item-template":n.withCtx(({item:ee})=>[n.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${ee.name}`},[n.createElementVNode("span",Kw,n.toDisplayString(ee.name),1),n.createVNode(R,{appearance:"info",class:"select-item-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(ee.tag),1)]),_:2},1024)],8,Uw)]),empty:n.withCtx(()=>[n.createElementVNode("div",Gw,n.toDisplayString(n.unref(r)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":n.withCtx(()=>[n.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:F[2]||(F[2]=()=>u.value=!0)},[n.createVNode(n.unref(Ee.AddIcon),{size:n.unref(uo)},null,8,["size"]),n.createElementVNode("span",null,n.toDisplayString(n.unref(r)("redis.shared_configuration.create_new_configuration",{type:n.unref(g0)(n.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),f.value?(n.openBlock(),n.createBlock(Aw,{key:0,"config-fields":f.value},null,8,["config-fields"])):n.createCommentVNode("",!0),B.value?(n.openBlock(),n.createElementBlock("p",jw,n.toDisplayString(B.value||n.unref(r)("redis.shared_configuration.error")),1)):n.createCommentVNode("",!0)])):(n.openBlock(),n.createBlock(ft,n.mergeProps({key:1},i,{"as-child":"","fields-order":n.unref(Ic),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),n.createVNode(Tw,{"partial-type":n.unref(c),visible:u.value,onModalClose:F[4]||(F[4]=ee=>u.value=!1),onPartialUpdateFailed:D,onPartialUpdated:E},null,8,["partial-type","visible"])]),_:1},8,["title"])):(n.openBlock(),n.createBlock(ft,n.mergeProps({key:1},i,{"fields-order":n.unref(Ic),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-f58fb92a"]]),Hw=n.defineComponent({__name:"RedisField",setup(e){const{formData:t}=$e();return n.watchEffect(()=>{t.config&&t.config.strategy!=="redis"&&(t.partials=void 0)}),(o,r)=>(n.openBlock(),n.createBlock(Cc,null,{default:n.withCtx(()=>{var i;return[((i=n.unref(t).config)==null?void 0:i.strategy)==="redis"?(n.openBlock(),n.createBlock(zw,{key:0})):n.createCommentVNode("",!0)]}),_:1}))}}),Yw=n.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},setup(e){const t={hasValue:o=>!!(o!=null&&o.config)};return(o,r)=>(n.openBlock(),n.createBlock(bt,{class:"rc-config-form",config:t,data:o.data,schema:o.schema,tag:"div",onChange:r[0]||(r[0]=i=>o.$emit("change",i))},{default:n.withCtx(()=>[n.createVNode(ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:n.withCtx(()=>[n.createVNode(yw),n.createVNode(bw)]),_:1}),n.createVNode(Sc,null,{default:n.withCtx(()=>[n.createVNode(Qe,{name:"config.dictionary_name"}),n.createVNode(Qe,{name:"config.lock_dictionary_name"}),n.createVNode(Qe,{name:"config.strategy"}),n.createVNode(Hw),n.createVNode(Qe,{name:"config.namespace"}),n.createVNode(Qe,{name:"config.hide_client_headers"}),n.createVNode(Qe,{name:"config.disable_penalty"}),n.createVNode(Qe,{name:"config.retry_after_jitter_max"}),n.createVNode(Qe,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),Ww=n.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const t=e,o=n.useSlots();return n.provide(Ce.AUTOFILL_SLOT,o==null?void 0:o[Ce.AUTOFILL_SLOT_NAME]),(r,i)=>(n.openBlock(),n.createBlock(xc,n.normalizeProps(n.guardReactiveProps(t)),{default:n.withCtx(a=>[n.createVNode(Yw,n.normalizeProps(n.guardReactiveProps(a)),null,16)]),_:1},16))}}),Xw={class:"ff-standard-layout"},Zw={class:"enabled"},Jw={class:"scope"},Qw={key:0,class:"scope-detail"},eE=_e(n.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t}=Ue.createI18n("en-us",je),o=e,r=n.useSlots();n.provide(Ce.AUTOFILL_SLOT,r==null?void 0:r[Ce.AUTOFILL_SLOT_NAME]);const i=n.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(_=>_.model==="enabled")}}),a=n.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(_=>_.model==="selectionGroup")}),l=n.computed(()=>(a.value.fields||[]).map(({label:g,description:_})=>({label:g,description:_}))),s=n.computed(()=>a.value.fields[1]),c=n.computed(()=>{var _;const g=["instance_name","protocols","tags"];return{fields:(_=o.formSchema)==null?void 0:_.fields.filter(b=>g.includes(b.model))}}),d=["config"],u=n.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(_=>d.includes(Object.keys(_)[0])),g});function f(g){return Wi(g,["config","partials"])}const p=n.ref(!1),m=n.ref(!0),h=Wi(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]);function w(g,_){h[_]=g,o.onModelUpdated(g,_)}return n.watch(p,g=>{g?Object.keys(h).forEach(_=>{o.onModelUpdated(h[_],_)}):Object.keys(h).forEach(_=>{o.onModelUpdated("",_)})}),(g,_)=>{const b=n.resolveComponent("KCollapse");return n.openBlock(),n.createElementBlock("div",Xw,[n.createVNode(n.unref(ae.EntityFormBlock),{description:n.unref(t)("plugins.form.sections.general_info.description"),step:1,title:n.unref(t)("plugins.form.sections.general_info.title")},n.createSlots({default:n.withCtx(()=>[n.createElementVNode("div",Zw,[n.createVNode(n.unref(Ce.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),n.createElementVNode("div",Jw,[n.createVNode(n.unref(Pe.KRadio),n.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[0]||(_[0]=y=>p.value=y),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),n.createVNode(n.unref(Pe.KRadio),n.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[1]||(_[1]=y=>p.value=y),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),p.value?(n.openBlock(),n.createElementBlock("div",Qw,[n.createVNode(n.unref(Ce.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:w},null,8,["model","options","schema"])])):n.createCommentVNode("",!0),n.createVNode(b,{modelValue:m.value,"onUpdate:modelValue":_[2]||(_[2]=y=>m.value=y),"trigger-label":"Show more"},{default:n.withCtx(()=>[n.createVNode(n.unref(Ce.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:c.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),n.createVNode(n.unref(ae.EntityFormBlock),{description:n.unref(t)("plugins.form.sections.plugin_config.description"),step:2,title:n.unref(t)("plugins.form.sections.plugin_config.title")},n.createSlots({default:n.withCtx(()=>[n.renderSlot(g.$slots,"default",{data:f(g.model),schema:u.value,onChange:_[3]||(_[3]=(...y)=>g.onFormChange&&g.onFormChange(...y))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:n.withCtx(()=>[n.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-a727028f"]]),{t:ca}=Ue.createI18n("en-us",je);function wt(e){return ca(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function fo(e){return ca(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function tE(e){return ca(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const fr={call:{type:"call",summary:fo("call"),description:wt("call"),icon:Ee.NetworkIcon,io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}}},jq:{type:"jq",summary:fo("jq"),description:wt("jq"),icon:Ee.CodeblockIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},exit:{type:"exit",summary:fo("exit"),description:wt("exit"),icon:Ee.GatewayIcon,io:{input:{fields:[{name:"headers"},{name:"body"}]}}},property:{type:"property",summary:fo("property"),description:wt("property"),icon:Ee.StackIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},static:{type:"static",summary:fo("static"),description:wt("static"),icon:Ee.VitalsIcon,io:{output:{fields:[],configurable:!0}}}},da={request:{type:"request",description:wt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_request:{type:"service_request",description:wt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_response:{type:"service_response",description:wt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}}},response:{type:"response",description:wt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}}}},Oc=Object.keys(da),$c=e=>Oc.includes(e),rn=e=>Oc.includes(e),nE=e=>rn(e.type),oE="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let rE=(e=21)=>{let t="",o=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)t+=oE[o[e]&63];return t};function $n(e){return sr(e)}function po(e){return`${e}:${rE()}`}function pr(e){const[t,o]=e.split(".");return{nodeName:t,fieldName:o}}function Bc(e){const[t,o]=e.split(".");return{nodeId:t,fieldId:o}}function ua(e){return rn(e)?da[e]:fr[e]}function Vc(e){var i,a,l,s,c,d;const t=ua(e),o=((l=(a=(i=t.io)==null?void 0:i.input)==null?void 0:a.fields)==null?void 0:l.map(({name:u})=>u))??[],r=((d=(c=(s=t.io)==null?void 0:s.output)==null?void 0:c.fields)==null?void 0:d.map(({name:u})=>u))??[];return{input:o,output:r}}function Rc(e){return(e??[]).map(t=>({id:po("field"),name:t}))}function mo(e,t,o){if(o)return e.fields[t].find(r=>r.name===o)}function an(e,t,o){if(o)return e.fields[t].find(r=>r.id===o)}function fa(e,t){return t?e.fields.output.some(o=>o.id===t):!0}function Dc(e,t){return t?e.fields.input.some(o=>o.id===t):!0}const iE=["request","service_request","service_response","response"];function aE(e){const t=e==="request"||e==="service_request"?"request":"response",o=da[e];return{name:e,phase:t,position:{x:0,y:0},fields:Vc(o.type),expanded:{}}}function lE(e,t){const o=e.toUpperCase();let r=1;for(;t.has(`${o}_${r}`);)r++;return`${o}_${r}`}function sE(e,t){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d}=Je.useManualRefHistory(e,{capacity:t==null?void 0:t.capacity,clone:t==null?void 0:t.clone});let u;function f(g,_){!!(_!=null&&_.replace)&&g&&u===g&&d.value.length>0&&d.value.pop(),o(),u=g}function p(){r(),u=void 0}function m(){i(),u=void 0}function h(){s(),u=void 0}function w(){c(),u=void 0}return{canUndo:a,canRedo:l,commit:f,undo:p,redo:m,clear:h,reset:w}}function Mc(e,t){var d,u;const o=new Map(t.map(f=>[f.name,f])),r=[],i=[],a=new Map,l=[],s=new Map,c=f=>{const p=new Set,m=[...f];for(;m.length>0;){const h=m.shift();if(!p.has(h)&&(p.add(h),$c(h)||(a.get(h).phase="request"),!!s.has(h)))for(const w of s.get(h))p.has(w)||m.push(w)}};for(const f of e){const p=o.get(f.name),m=Lc(f.type,f,p);r.push(m),a.set(m.name,m)}for(const f of iE)if(!a.has(f)){const p=o.get(f)??aE(f),m=Lc(f,void 0,p);r.push(m),a.set(m.name,m)}for(const f of e)dE(f,l);for(const f of l){const p=a.get(f.source),m=a.get(f.target);if(!p||!m){p||console.warn(`[initEditorState] skip: source "${f.source}" not found`),m||console.warn(`[initEditorState] skip: target "${f.target}" not found`);continue}s.has(f.source)||s.set(f.source,new Set),s.get(f.source).add(f.target),s.has(f.target)||s.set(f.target,new Set),s.get(f.target).add(f.source),i.push({id:po("edge"),source:p.id,sourceField:(d=mo(p,"output",f.sourceField))==null?void 0:d.id,target:m.id,targetField:(u=mo(m,"input",f.targetField))==null?void 0:u.id})}return c(["request","service_request"]),{nodes:r,edges:i}}function Fc(e){const{type:t,name:o,phase:r,position:i,fields:a,config:l}=e,s=Vc(t);return{id:po("node"),type:t,name:o??t,phase:r??(t==="request"||t==="service_request"?"request":"response"),position:i??{x:0,y:0},expanded:{},fields:{input:Rc((a==null?void 0:a.input)??s.input),output:Rc((a==null?void 0:a.output)??s.output)},config:l?$n(l):{}}}function Lc(e,t,o){return Fc({type:e,name:t==null?void 0:t.name,phase:(o==null?void 0:o.phase)??(e==="request"||e==="service_request"?"request":"response"),position:o==null?void 0:o.position,fields:uE(t,o),config:t?cE(t):void 0})}function cE(e){const{type:t,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return $n(s)}function dE(e,t){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=pr(e.input);r&&t.push({source:r,sourceField:i,target:o})}if(e.inputs)for(const[r,i]of Object.entries(e.inputs)){const{nodeName:a,fieldName:l}=pr(i);a&&t.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=pr(e.output);r&&t.push({source:o,target:r,targetField:i})}if(e.outputs)for(const[r,i]of Object.entries(e.outputs)){const{nodeName:a,fieldName:l}=pr(i);a&&t.push({source:o,sourceField:r,target:a,targetField:l})}}function uE(e,t){var a,l;if(!e&&!t)return;const o=new Set,r=new Set;e!=null&&e.inputs&&Object.keys(e.inputs).forEach(s=>o.add(s)),e!=null&&e.outputs&&Object.keys(e.outputs).forEach(s=>r.add(s)),(a=t==null?void 0:t.fields)!=null&&a.input&&t.fields.input.forEach(s=>o.add(s)),(l=t==null?void 0:t.fields)!=null&&l.output&&t.fields.output.forEach(s=>r.add(s));const i={};return o.size&&(i.input=Array.from(o)),r.size&&(i.output=Array.from(r)),Object.keys(i).length?i:void 0}function fE(e){const t=n.computed(()=>{const c=new Map;return e.value.nodes.forEach(d=>c.set(d.id,d)),c}),o=n.computed(()=>e.value.edges);function r(c){const d=t.value.get(c.source),u=t.value.get(c.target);if(!d||!u)return c;const f=Dc(d,c.sourceField)&&!fa(d,c.sourceField),p=fa(u,c.targetField);return f&&p?{source:c.target,sourceField:c.targetField,target:c.source,targetField:c.sourceField}:c}function i(c){const d=r(c),u=[],f=t.value.get(d.source),p=t.value.get(d.target);if(f||u.push("source node not found"),p||u.push("target node not found"),!f||!p)return{ok:!1,errors:u};fa(f,d.sourceField)||u.push("source handle is not an output field"),Dc(p,d.targetField)||u.push("target handle is not an input field"),f.phase==="response"&&p.phase==="request"&&u.push("cannot connect from response phase to request phase"),p.name==="request"&&u.push('cannot target "request"'),f.name==="response"&&u.push('cannot source from "response"'),f.phase==="response"&&p.phase!=="response"&&u.push("response-phase output must go to response-phase nodes");const m=o.value.some(g=>g.target===d.target&&!g.targetField),h=o.value.some(g=>g.target===d.target&&!!g.targetField);(m&&d.targetField||h&&!d.targetField)&&u.push("cannot mix whole-node and field-level inputs on same target"),d.targetField&&o.value.some(g=>g.target===d.target&&g.targetField===d.targetField)&&u.push("target field already connected"),!d.targetField&&o.value.some(g=>g.target===d.target&&!g.targetField)&&u.push("target input already taken"),d.source===d.target&&u.push("self-loop not allowed");const w=mr(o.value,d);return pa(w)&&u.push("connection introduces a cycle"),u.length?{ok:!1,errors:u}:{ok:!0}}function a(){const c=[],d=["request","service_request","service_response","response"];for(const u of d)[...t.value.values()].some(f=>f.name===u)||c.push(`missing implicit node "${u}"`);for(const u of o.value){const f=t.value.get(u.source),p=t.value.get(u.target);f.phase==="response"&&p.phase==="request"&&c.push(`edge "${u.id}" crosses phases (response → request)`),p.name==="request"&&c.push(`edge "${u.id}" targets "request"`),f.name==="response"&&c.push(`edge "${u.id}" sources from "response"`),f.phase==="response"&&p.phase!=="response"&&c.push(`edge "${u.id}" violates response-phase rule`)}return pa(mr(o.value))&&c.push("graph contains cycle"),c.length?{ok:!1,errors:c}:{ok:!0}}function l(c){return i(c).ok}function s(c){return!c.source||!c.target?!1:l({source:c.source,sourceField:c.sourceHandle,target:c.target,targetField:c.targetHandle})}return{canonicalizeConnection:r,validateConnection:i,validateGraph:a,isValidConnection:l,isValidVueFlowConnection:s,buildAdjacency:mr}}function pa(e){const t=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(t.has(i))return!1;t.add(i),o.add(i);for(const a of e.get(i)??[])if(r(a))return!0;return o.delete(i),!1}for(const i of e.keys())if(r(i))return!0;return!1}function mr(e,t){const o=new Map;for(const r of e)o.has(r.source)||o.set(r.source,[]),o.get(r.source).push(r.target),o.has(r.target)||o.set(r.target,[]);return t&&(o.has(t.source)||o.set(t.source,[]),o.get(t.source).push(t.target),o.has(t.target)||o.set(t.target,[])),o}const[pE,mE]=Je.createInjectionState(function(t,o){const r=n.ref(Mc(t,o)),i=n.ref(),a=sE(r,{capacity:200,clone:$n}),l=n.computed(()=>new Map(r.value.nodes.map($=>[$.id,$]))),s=n.computed(()=>new Map(r.value.nodes.map($=>[$.name,$]))),c=n.computed(()=>{const $=new Map,z=new Map;for(const X of r.value.edges)$.set(X.id,X),z.has(X.source)||z.set(X.source,new Set),z.get(X.source).add(X.id),z.has(X.target)||z.set(X.target,new Set),z.get(X.target).add(X.id);return{edgeMapById:$,edgeIdMapByNodeId:z}}),d=n.computed(()=>c.value.edgeMapById),u=n.computed(()=>c.value.edgeIdMapByNodeId),f=n.computed(()=>new Set(r.value.nodes.map($=>$.name))),{canonicalizeConnection:p,validateConnection:m,validateGraph:h,isValidConnection:w,isValidVueFlowConnection:g}=fE(r);function _($){return l.value.get($)}function b($){return s.value.get($)}function y($){return d.value.get($)}function C($){if(!u.value.has($))return[];const z=[];return u.value.get($).forEach(X=>{const Q=y(X);Q&&z.push(Q)}),z}function T($){return C($).filter(z=>z.target===$)}function k($){return C($).filter(z=>z.source===$)}const S=n.computed(()=>i.value?_(i.value):void 0);function I($){i.value=$}function B($){if(rn($.type))throw new Error("[createNode] implicit nodes are fixed.");return Fc({type:$.type,name:$.name||(rn($.type)?void 0:lE($.type,f.value)),phase:$.phase,position:$.position,fields:$.fields,config:$.config})}function W($,z=!0){const X=B($);if(X)return r.value.nodes.push(X),z&&a.commit(),X.id}function M($,z=!0){r.value.edges=r.value.edges.filter(Q=>Q.source!==$&&Q.target!==$),r.value.nodes=r.value.nodes.filter(Q=>Q.id!==$),i.value===$&&(i.value=void 0);const X=h();X.ok||console.warn("[removeNode] topology invalid:",X.errors.join("; ")),z&&a.commit()}function v($,z,X=!0){const Q=_($);if(Q){if($c(Q.name)){console.warn("[renameNode] implicit node name is reserved.");return}Q.name=z,X&&a.commit()}}function N($,z,X=!0){const Q=_($);Q&&(Q.position={...z},X&&a.commit())}function E($,z,X,Q=!0){const ne=_($);ne&&(ne.expanded[z]=X??!ne.expanded[z],Q&&a.commit(`toggle:${$}:${z}`,{replace:!0}))}function D($,z,X=!0){const Q=_($);Q&&(Q.config=$n(z),X&&a.commit())}function O($,z,X,Q=!0){const ne=_($);if(!ne)return;const ue=ne.fields[z];if(ue.some(me=>me.name===X)){console.warn(`[addField] field "${X}" already exists on ${z}.`);return}ue.push({id:po("field"),name:X}),z==="input"?ne.fields.input=ue:ne.fields.output=ue,Q&&a.commit()}function q($,z,X,Q=!0){const ne=_($);if(!ne)return;const ue=ne.fields.input,me=ne.fields.output,P=ue.find(x=>x.id===z)??me.find(x=>x.id===z);P&&(P.name=X,Q&&a.commit())}function j($,z,X=!0,Q=!0){const ne=_($);if(!ne)return;const ue=ne.fields.input,me=ne.fields.output,P=ue.findIndex(V=>V.id===z);P>=0&&ue.splice(P,1);const x=me.findIndex(V=>V.id===z);x>=0&&me.splice(x,1),ne.fields.input=ue,ne.fields.output=me,X&&(r.value.edges=r.value.edges.filter(V=>V.sourceField!==z&&V.targetField!==z));const A=h();A.ok||console.warn("[removeField] topology invalid:",A.errors.join("; ")),Q&&a.commit()}function F($,z=!0){const X=p($),Q=m(X);if(!Q.ok){console.warn("[connectEdge] invalid connection:",Q.errors.join("; "));return}const ne={id:po("edge"),...X};r.value.edges.push(ne);const ue=h();if(!ue.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",ue.errors.join("; "));return}return z&&a.commit(),ne.id}function R($,z,X=!0){U($,!1),F(z,!1),X&&a.commit()}function U($,z=!0){const X=r.value.edges.findIndex(ue=>ue.id===$);if(X<0)return;const Q=r.value.edges[X];r.value.edges.splice(X,1);const ne=h();if(!ne.ok){r.value.edges.splice(X,0,Q),console.warn("[disconnectEdge] topology invalid:",ne.errors.join("; "));return}z&&a.commit()}function re($,z=!0){const X=T($);for(const Q of X)U(Q.id,!1);z&&a.commit()}function de($,z=!0){const X=k($);for(const Q of X)U(Q.id,!1);z&&a.commit()}function ee(){var z,X,Q,ne;const $=[];for(const ue of r.value.nodes){if(rn(ue.type))continue;const me={},P={};for(const L of r.value.edges.filter(Z=>Z.target===ue.id)){const Z=_(L.source);if(!Z)continue;const te=(z=an(Z,"output",L.sourceField))==null?void 0:z.name,K=te?`${Z.name}.${te}`:Z.name,J=(X=an(ue,"input",L.targetField))==null?void 0:X.name;J?me[J]=K:"input"in me||(me.input=K)}for(const L of r.value.edges.filter(Z=>Z.source===ue.id)){const Z=_(L.target);if(!Z)continue;const te=(Q=an(Z,"input",L.targetField))==null?void 0:Q.name,K=te?`${Z.name}.${te}`:Z.name,J=(ne=an(ue,"output",L.sourceField))==null?void 0:ne.name;J?P[J]=K:"output"in P||(P.output=K)}const x={...$n(ue.config),name:ue.name,type:ue.type},A=Object.keys(me),V=Object.keys(P);A.length===1&&A[0]==="input"?x.input=me.input:A.length&&(x.inputs=me),V.length===1&&V[0]==="output"?x.output=P.output:V.length&&(x.outputs=P),$.push(x)}return $}function oe(){return r.value.nodes.map($=>$n({name:$.name,phase:$.phase,position:{...$.position},expanded:{...$.expanded},fields:{input:$.fields.input.map(z=>z.name),output:$.fields.output.map(z=>z.name)}}))}function Y($,z){r.value=Mc($,z),a.reset()}return{state:r,selection:i,nodeMapById:l,nodeMapByName:s,edgeMapById:d,edgeIdMapByNodeId:u,getNodeById:_,getNodeByName:b,getEdgeById:y,getEdgesByNodeId:C,getInEdgesByNodeId:T,getOutEdgesByNodeId:k,selectedNode:S,selectNode:I,createNode:B,addNode:W,removeNode:M,renameNode:v,moveNode:N,toggleExpanded:E,replaceConfig:D,addField:O,renameField:q,removeField:j,connectEdge:F,replaceConnection:R,disconnectEdge:U,disconnectInEdges:re,disconnectOutEdges:de,toConfigNodes:ee,toUINodes:oe,load:Y,commit:a.commit,undo:a.undo,redo:a.redo,canUndo:a.canUndo,canRedo:a.canRedo,clear:a.clear,reset:a.reset,isValidConnection:w,isValidVueFlowConnection:g,validateGraph:()=>h()}});function Et(){const e=mE();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const ma=Je.createGlobalState(()=>{const e=Je.useLocalStorage("datakit-editor-mode","flow"),t=Je.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:t}});typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const gE=e=>e!=null;/*!
|
|
14
14
|
* tabbable 6.2.0
|
|
15
15
|
* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
|
|
16
|
-
*/var
|
|
16
|
+
*/var Uc=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],gr=Uc.join(","),Kc=typeof Element>"u",ln=Kc?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,hr=!Kc&&Element.prototype.getRootNode?function(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}:function(e){return e==null?void 0:e.ownerDocument},yr=function e(t,o){var r;o===void 0&&(o=!0);var i=t==null||(r=t.getAttribute)===null||r===void 0?void 0:r.call(t,"inert"),a=i===""||i==="true",l=a||o&&t&&e(t.parentNode);return l},hE=function(t){var o,r=t==null||(o=t.getAttribute)===null||o===void 0?void 0:o.call(t,"contenteditable");return r===""||r==="true"},Gc=function(t,o,r){if(yr(t))return[];var i=Array.prototype.slice.apply(t.querySelectorAll(gr));return o&&ln.call(t,gr)&&i.unshift(t),i=i.filter(r),i},jc=function e(t,o,r){for(var i=[],a=Array.from(t);a.length;){var l=a.shift();if(!yr(l,!1))if(l.tagName==="SLOT"){var s=l.assignedElements(),c=s.length?s:l.children,d=e(c,!0,r);r.flatten?i.push.apply(i,d):i.push({scopeParent:l,candidates:d})}else{var u=ln.call(l,gr);u&&r.filter(l)&&(o||!t.includes(l))&&i.push(l);var f=l.shadowRoot||typeof r.getShadowRoot=="function"&&r.getShadowRoot(l),p=!yr(f,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(l));if(f&&p){var m=e(f===!0?l.children:f.children,!0,r);r.flatten?i.push.apply(i,m):i.push({scopeParent:l,candidates:m})}else a.unshift.apply(a,l.children)}}return i},qc=function(t){return!isNaN(parseInt(t.getAttribute("tabindex"),10))},sn=function(t){if(!t)throw new Error("No node provided");return t.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(t.tagName)||hE(t))&&!qc(t)?0:t.tabIndex},yE=function(t,o){var r=sn(t);return r<0&&o&&!qc(t)?0:r},_E=function(t,o){return t.tabIndex===o.tabIndex?t.documentOrder-o.documentOrder:t.tabIndex-o.tabIndex},zc=function(t){return t.tagName==="INPUT"},bE=function(t){return zc(t)&&t.type==="hidden"},wE=function(t){var o=t.tagName==="DETAILS"&&Array.prototype.slice.apply(t.children).some(function(r){return r.tagName==="SUMMARY"});return o},EE=function(t,o){for(var r=0;r<t.length;r++)if(t[r].checked&&t[r].form===o)return t[r]},kE=function(t){if(!t.name)return!0;var o=t.form||hr(t),r=function(s){return o.querySelectorAll('input[type="radio"][name="'+s+'"]')},i;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")i=r(window.CSS.escape(t.name));else try{i=r(t.name)}catch(l){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",l.message),!1}var a=EE(i,t.form);return!a||a===t},CE=function(t){return zc(t)&&t.type==="radio"},vE=function(t){return CE(t)&&!kE(t)},NE=function(t){var o,r=t&&hr(t),i=(o=r)===null||o===void 0?void 0:o.host,a=!1;if(r&&r!==t){var l,s,c;for(a=!!((l=i)!==null&&l!==void 0&&(s=l.ownerDocument)!==null&&s!==void 0&&s.contains(i)||t!=null&&(c=t.ownerDocument)!==null&&c!==void 0&&c.contains(t));!a&&i;){var d,u,f;r=hr(i),i=(d=r)===null||d===void 0?void 0:d.host,a=!!((u=i)!==null&&u!==void 0&&(f=u.ownerDocument)!==null&&f!==void 0&&f.contains(i))}}return a},Hc=function(t){var o=t.getBoundingClientRect(),r=o.width,i=o.height;return r===0&&i===0},SE=function(t,o){var r=o.displayCheck,i=o.getShadowRoot;if(getComputedStyle(t).visibility==="hidden")return!0;var a=ln.call(t,"details>summary:first-of-type"),l=a?t.parentElement:t;if(ln.call(l,"details:not([open]) *"))return!0;if(!r||r==="full"||r==="legacy-full"){if(typeof i=="function"){for(var s=t;t;){var c=t.parentElement,d=hr(t);if(c&&!c.shadowRoot&&i(c)===!0)return Hc(t);t.assignedSlot?t=t.assignedSlot:!c&&d!==t.ownerDocument?t=d.host:t=c}t=s}if(NE(t))return!t.getClientRects().length;if(r!=="legacy-full")return!0}else if(r==="non-zero-area")return Hc(t);return!1},xE=function(t){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(t.tagName))for(var o=t.parentElement;o;){if(o.tagName==="FIELDSET"&&o.disabled){for(var r=0;r<o.children.length;r++){var i=o.children.item(r);if(i.tagName==="LEGEND")return ln.call(o,"fieldset[disabled] *")?!0:!i.contains(t)}return!0}o=o.parentElement}return!1},_r=function(t,o){return!(o.disabled||yr(o)||bE(o)||SE(o,t)||wE(o)||xE(o))},ga=function(t,o){return!(vE(o)||sn(o)<0||!_r(t,o))},AE=function(t){var o=parseInt(t.getAttribute("tabindex"),10);return!!(isNaN(o)||o>=0)},TE=function e(t){var o=[],r=[];return t.forEach(function(i,a){var l=!!i.scopeParent,s=l?i.scopeParent:i,c=yE(s,l),d=l?e(i.candidates):s;c===0?l?o.push.apply(o,d):o.push(s):r.push({documentOrder:a,tabIndex:c,item:i,isScope:l,content:d})}),r.sort(_E).reduce(function(i,a){return a.isScope?i.push.apply(i,a.content):i.push(a.content),i},[]).concat(o)},PE=function(t,o){o=o||{};var r;return o.getShadowRoot?r=jc([t],o.includeContainer,{filter:ga.bind(null,o),flatten:!1,getShadowRoot:o.getShadowRoot,shadowRootFilter:AE}):r=Gc(t,o.includeContainer,ga.bind(null,o)),TE(r)},IE=function(t,o){o=o||{};var r;return o.getShadowRoot?r=jc([t],o.includeContainer,{filter:_r.bind(null,o),flatten:!0,getShadowRoot:o.getShadowRoot}):r=Gc(t,o.includeContainer,_r.bind(null,o)),r},Bn=function(t,o){if(o=o||{},!t)throw new Error("No node provided");return ln.call(t,gr)===!1?!1:ga(o,t)},OE=Uc.concat("iframe").join(","),ha=function(t,o){if(o=o||{},!t)throw new Error("No node provided");return ln.call(t,OE)===!1?!1:_r(o,t)};/*!
|
|
17
17
|
* focus-trap 7.6.5
|
|
18
18
|
* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
|
|
19
|
-
*/function
|
|
20
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Hc(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),o.push.apply(o,r)}return o}function Yc(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?Hc(Object(o),!0).forEach(function(r){$E(e,r,o[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):Hc(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}function VE(e){return OE(e)||BE(e)||FE(e)||DE()}function RE(e,t){if(typeof e!="object"||!e)return e;var o=e[Symbol.toPrimitive];if(o!==void 0){var r=o.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ME(e){var t=RE(e,"string");return typeof t=="symbol"?t:t+""}function FE(e,t){if(e){if(typeof e=="string")return ha(e,t);var o={}.toString.call(e).slice(8,-1);return o==="Object"&&e.constructor&&(o=e.constructor.name),o==="Map"||o==="Set"?Array.from(e):o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?ha(e,t):void 0}}var Wc={activateTrap:function(t,o){if(t.length>0){var r=t[t.length-1];r!==o&&r._setPausedState(!0)}var i=t.indexOf(o);i===-1||t.splice(i,1),t.push(o)},deactivateTrap:function(t,o){var r=t.indexOf(o);r!==-1&&t.splice(r,1),t.length>0&&!t[t.length-1]._isManuallyPaused()&&t[t.length-1]._setPausedState(!1)}},LE=function(t){return t.tagName&&t.tagName.toLowerCase()==="input"&&typeof t.select=="function"},UE=function(t){return(t==null?void 0:t.key)==="Escape"||(t==null?void 0:t.key)==="Esc"||(t==null?void 0:t.keyCode)===27},mo=function(t){return(t==null?void 0:t.key)==="Tab"||(t==null?void 0:t.keyCode)===9},KE=function(t){return mo(t)&&!t.shiftKey},qE=function(t){return mo(t)&&t.shiftKey},Zc=function(t){return setTimeout(t,0)},go=function(t){for(var o=arguments.length,r=new Array(o>1?o-1:0),i=1;i<o;i++)r[i-1]=arguments[i];return typeof t=="function"?t.apply(void 0,r):t},_r=function(t){return t.target.shadowRoot&&typeof t.composedPath=="function"?t.composedPath()[0]:t.target},GE=[],jE=function(t,o){var r=(o==null?void 0:o.document)||document,i=(o==null?void 0:o.trapStack)||GE,a=Yc({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0,isKeyForward:KE,isKeyBackward:qE},o),l={containers:[],containerGroups:[],tabbableGroups:[],nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,manuallyPaused:!1,delayInitialFocusTimer:void 0,recentNavEvent:void 0},s,c=function(N,E,R){return N&&N[E]!==void 0?N[E]:a[R||E]},d=function(N,E){var R=typeof(E==null?void 0:E.composedPath)=="function"?E.composedPath():void 0;return l.containerGroups.findIndex(function(O){var j=O.container,G=O.tabbableNodes;return j.contains(N)||(R==null?void 0:R.includes(j))||G.find(function(F){return F===N})})},f=function(N){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},R=E.hasFallback,O=R===void 0?!1:R,j=E.params,G=j===void 0?[]:j,F=a[N];if(typeof F=="function"&&(F=F.apply(void 0,VE(G))),F===!0&&(F=void 0),!F){if(F===void 0||F===!1)return F;throw new Error("`".concat(N,"` was specified but was not a node, or did not return a node"))}var V=F;if(typeof F=="string"){try{V=r.querySelector(F)}catch(U){throw new Error("`".concat(N,'` appears to be an invalid selector; error="').concat(U.message,'"'))}if(!V&&!O)throw new Error("`".concat(N,"` as selector refers to no known node"))}return V},u=function(){var N=f("initialFocus",{hasFallback:!0});if(N===!1)return!1;if(N===void 0||N&&!ga(N,a.tabbableOptions))if(d(r.activeElement)>=0)N=r.activeElement;else{var E=l.tabbableGroups[0],R=E&&E.firstTabbableNode;N=R||f("fallbackFocus")}else N===null&&(N=f("fallbackFocus"));if(!N)throw new Error("Your focus-trap needs to have at least one focusable element");return N},p=function(){if(l.containerGroups=l.containers.map(function(N){var E=TE(N,a.tabbableOptions),R=PE(N,a.tabbableOptions),O=E.length>0?E[0]:void 0,j=E.length>0?E[E.length-1]:void 0,G=R.find(function(U){return $n(U)}),F=R.slice().reverse().find(function(U){return $n(U)}),V=!!E.find(function(U){return ln(U)>0});return{container:N,tabbableNodes:E,focusableNodes:R,posTabIndexesFound:V,firstTabbableNode:O,lastTabbableNode:j,firstDomTabbableNode:G,lastDomTabbableNode:F,nextTabbableNode:function(re){var de=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,ee=E.indexOf(re);return ee<0?de?R.slice(R.indexOf(re)+1).find(function(oe){return $n(oe)}):R.slice(0,R.indexOf(re)).reverse().find(function(oe){return $n(oe)}):E[ee+(de?1:-1)]}}}),l.tabbableGroups=l.containerGroups.filter(function(N){return N.tabbableNodes.length>0}),l.tabbableGroups.length<=0&&!f("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(l.containerGroups.find(function(N){return N.posTabIndexesFound})&&l.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},m=function(N){var E=N.activeElement;if(E)return E.shadowRoot&&E.shadowRoot.activeElement!==null?m(E.shadowRoot):E},h=function(N){if(N!==!1&&N!==m(document)){if(!N||!N.focus){h(u());return}N.focus({preventScroll:!!a.preventScroll}),l.mostRecentlyFocusedNode=N,LE(N)&&N.select()}},w=function(N){var E=f("setReturnFocus",{params:[N]});return E||(E===!1?!1:N)},g=function(N){var E=N.target,R=N.event,O=N.isBackward,j=O===void 0?!1:O;E=E||_r(R),p();var G=null;if(l.tabbableGroups.length>0){var F=d(E,R),V=F>=0?l.containerGroups[F]:void 0;if(F<0)j?G=l.tabbableGroups[l.tabbableGroups.length-1].lastTabbableNode:G=l.tabbableGroups[0].firstTabbableNode;else if(j){var U=l.tabbableGroups.findIndex(function($){var z=$.firstTabbableNode;return E===z});if(U<0&&(V.container===E||ga(E,a.tabbableOptions)&&!$n(E,a.tabbableOptions)&&!V.nextTabbableNode(E,!1))&&(U=F),U>=0){var re=U===0?l.tabbableGroups.length-1:U-1,de=l.tabbableGroups[re];G=ln(E)>=0?de.lastTabbableNode:de.lastDomTabbableNode}else mo(R)||(G=V.nextTabbableNode(E,!1))}else{var ee=l.tabbableGroups.findIndex(function($){var z=$.lastTabbableNode;return E===z});if(ee<0&&(V.container===E||ga(E,a.tabbableOptions)&&!$n(E,a.tabbableOptions)&&!V.nextTabbableNode(E))&&(ee=F),ee>=0){var oe=ee===l.tabbableGroups.length-1?0:ee+1,Y=l.tabbableGroups[oe];G=ln(E)>=0?Y.firstTabbableNode:Y.firstDomTabbableNode}else mo(R)||(G=V.nextTabbableNode(E))}}else G=f("fallbackFocus");return G},_=function(N){var E=_r(N);if(!(d(E,N)>=0)){if(go(a.clickOutsideDeactivates,N)){s.deactivate({returnFocus:a.returnFocusOnDeactivate});return}go(a.allowOutsideClick,N)||N.preventDefault()}},b=function(N){var E=_r(N),R=d(E,N)>=0;if(R||E instanceof Document)R&&(l.mostRecentlyFocusedNode=E);else{N.stopImmediatePropagation();var O,j=!0;if(l.mostRecentlyFocusedNode)if(ln(l.mostRecentlyFocusedNode)>0){var G=d(l.mostRecentlyFocusedNode),F=l.containerGroups[G].tabbableNodes;if(F.length>0){var V=F.findIndex(function(U){return U===l.mostRecentlyFocusedNode});V>=0&&(a.isKeyForward(l.recentNavEvent)?V+1<F.length&&(O=F[V+1],j=!1):V-1>=0&&(O=F[V-1],j=!1))}}else l.containerGroups.some(function(U){return U.tabbableNodes.some(function(re){return ln(re)>0})})||(j=!1);else j=!1;j&&(O=g({target:l.mostRecentlyFocusedNode,isBackward:a.isKeyBackward(l.recentNavEvent)})),h(O||l.mostRecentlyFocusedNode||u())}l.recentNavEvent=void 0},y=function(N){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;l.recentNavEvent=N;var R=g({event:N,isBackward:E});R&&(mo(N)&&N.preventDefault(),h(R))},C=function(N){(a.isKeyForward(N)||a.isKeyBackward(N))&&y(N,a.isKeyBackward(N))},x=function(N){UE(N)&&go(a.escapeDeactivates,N)!==!1&&(N.preventDefault(),s.deactivate())},k=function(N){var E=_r(N);d(E,N)>=0||go(a.clickOutsideDeactivates,N)||go(a.allowOutsideClick,N)||(N.preventDefault(),N.stopImmediatePropagation())},P=function(){if(l.active)return Wc.activateTrap(i,s),l.delayInitialFocusTimer=a.delayInitialFocus?Zc(function(){h(u())}):h(u()),r.addEventListener("focusin",b,!0),r.addEventListener("mousedown",_,{capture:!0,passive:!1}),r.addEventListener("touchstart",_,{capture:!0,passive:!1}),r.addEventListener("click",k,{capture:!0,passive:!1}),r.addEventListener("keydown",C,{capture:!0,passive:!1}),r.addEventListener("keydown",x),s},I=function(){if(l.active)return r.removeEventListener("focusin",b,!0),r.removeEventListener("mousedown",_,!0),r.removeEventListener("touchstart",_,!0),r.removeEventListener("click",k,!0),r.removeEventListener("keydown",C,!0),r.removeEventListener("keydown",x),s},B=function(N){var E=N.some(function(R){var O=Array.from(R.removedNodes);return O.some(function(j){return j===l.mostRecentlyFocusedNode})});E&&h(u())},W=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(B):void 0,M=function(){W&&(W.disconnect(),l.active&&!l.paused&&l.containers.map(function(N){W.observe(N,{subtree:!0,childList:!0})}))};return s={get active(){return l.active},get paused(){return l.paused},activate:function(N){if(l.active)return this;var E=c(N,"onActivate"),R=c(N,"onPostActivate"),O=c(N,"checkCanFocusTrap");O||p(),l.active=!0,l.paused=!1,l.nodeFocusedBeforeActivation=m(r),E==null||E();var j=function(){O&&p(),P(),M(),R==null||R()};return O?(O(l.containers.concat()).then(j,j),this):(j(),this)},deactivate:function(N){if(!l.active)return this;var E=Yc({onDeactivate:a.onDeactivate,onPostDeactivate:a.onPostDeactivate,checkCanReturnFocus:a.checkCanReturnFocus},N);clearTimeout(l.delayInitialFocusTimer),l.delayInitialFocusTimer=void 0,I(),l.active=!1,l.paused=!1,M(),Wc.deactivateTrap(i,s);var R=c(E,"onDeactivate"),O=c(E,"onPostDeactivate"),j=c(E,"checkCanReturnFocus"),G=c(E,"returnFocus","returnFocusOnDeactivate");R==null||R();var F=function(){Zc(function(){G&&h(w(l.nodeFocusedBeforeActivation)),O==null||O()})};return G&&j?(j(w(l.nodeFocusedBeforeActivation)).then(F,F),this):(F(),this)},pause:function(N){return l.active?(l.manuallyPaused=!0,this._setPausedState(!0,N)):this},unpause:function(N){return l.active?(l.manuallyPaused=!1,i[i.length-1]!==this?this:this._setPausedState(!1,N)):this},updateContainerElements:function(N){var E=[].concat(N).filter(Boolean);return l.containers=E.map(function(R){return typeof R=="string"?r.querySelector(R):R}),l.active&&p(),M(),this}},Object.defineProperties(s,{_isManuallyPaused:{value:function(){return l.manuallyPaused}},_setPausedState:{value:function(N,E){if(l.paused===N)return this;if(l.paused=N,N){var R=c(E,"onPause"),O=c(E,"onPostPause");R==null||R(),I(),M(),O==null||O()}else{var j=c(E,"onUnpause"),G=c(E,"onPostUnpause");j==null||j(),p(),P(),M(),G==null||G()}return this}}}),s.updateContainerElements(t),s};function zE(e,t={}){let o;const{immediate:r,...i}=t,a=n.shallowRef(!1),l=n.shallowRef(!1),s=p=>o&&o.activate(p),c=p=>o&&o.deactivate(p),d=()=>{o&&(o.pause(),l.value=!0)},f=()=>{o&&(o.unpause(),l.value=!1)},u=n.computed(()=>{const p=n.toValue(e);return Je.toArray(p).map(m=>{const h=n.toValue(m);return typeof h=="string"?h:Je.unrefElement(h)}).filter(mE)});return n.watch(u,p=>{p.length&&(o=jE(p,{...i,onActivate(){a.value=!0,t.onActivate&&t.onActivate()},onDeactivate(){a.value=!1,t.onDeactivate&&t.onDeactivate()}}),r&&s())},{flush:"post"}),Je.tryOnScopeDispose(()=>c()),{hasFocus:a,isPaused:l,activate:s,deactivate:c,pause:d,unpause:f}}const HE="44px",YE="220px",WE="366px",ZE="52px",XE=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Xc="application/x-datakit+json",JE={class:"dk-editor-nav"},QE={class:"top"},ek={class:"bottom"},tk=_e(n.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:t}){const{t:o}=Ue.createI18n("en-us",Ge),r=t,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Ee.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=pa(),l=n.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=n.ref(!1);function c(){a.value=!a.value}return(d,f)=>(n.openBlock(),n.createElementBlock("nav",JE,[n.createElementVNode("div",QE,[(n.openBlock(),n.createElementBlock(n.Fragment,null,n.renderList(i,({label:u,to:p,icon:m,onClick:h})=>n.createVNode(n.unref(Pe.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.unref(Pe.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:h},{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(m),{decorative:"",size:n.unref(la)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),n.createElementVNode("div",ek,[n.createElementVNode("div",{class:n.normalizeClass(["side-panel-toggle",{expanded:n.unref(a)}]),onTransitionend:f[0]||(f[0]=n.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=n.withModifiers(u=>s.value=!0,["self"]))},[n.createVNode(n.unref(Pe.KTooltip),{label:s.value?void 0:l.value,placement:n.unref(a)?"left":"right"},{default:n.withCtx(()=>[n.createVNode(n.unref(Pe.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:n.withCtx(()=>[n.unref(a)?(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDoubleLeftIcon),{key:0,decorative:"",size:n.unref(la)},null,8,["size"])):(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDoubleRightIcon),{key:1,decorative:"",size:n.unref(la)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-4498cfce"]]),nk=_e(n.defineComponent({__name:"EditorCanvas",setup(e){const t=n.useTemplateRef("editorCanvas"),o=n.useTemplateRef("requestLabel"),r=n.useTemplateRef("requestCanvas"),i=n.useTemplateRef("resizeHandle"),a=n.useTemplateRef("responseCanvas"),l=Je.useElementBounding(t),s=Je.useElementBounding(o),c=Je.useElementBounding(r),d=Je.useElementBounding(i),f=Je.useElementBounding(a),u=n.computed(()=>Math.max(30,l.height.value*.03)),p=n.computed(()=>c.height.value<u.value),m=n.computed(()=>f.height.value<u.value),h=n.ref("50%"),w=()=>{p.value?h.value="50%":h.value="0"},g=()=>{m.value?h.value="50%":h.value="100%"},{isDragging:_}=Je.useDraggable(i,{onMove(b){const C=b.y+d.height.value/2-s.bottom.value;h.value=`max(0%, min(100%, ${C}px))`},onEnd(){c.height.value<u.value?h.value="0":f.height.value<u.value&&(h.value="100%")}});return(b,y)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"editorCanvas",ref:t,class:"editor-canvas"},[n.createElementVNode("div",{ref_key:"requestLabel",ref:o,class:"label",onClick:w},[n.createVNode(n.unref(Ee.ChevronDownIcon),{class:n.normalizeClass(["icon",{collapsed:p.value}])},null,8,["class"]),y[0]||(y[0]=n.createElementVNode("div",null,"Request",-1))],512),n.createElementVNode("div",{ref_key:"requestCanvas",ref:r,class:n.normalizeClass(["canvas",{dragging:n.unref(_)}]),style:n.normalizeStyle({height:h.value})},[n.renderSlot(b.$slots,"request",{},void 0,!0)],6),n.createElementVNode("div",{ref_key:"resizeHandle",ref:i,class:"resize-handle"},null,512),n.createElementVNode("div",{ref:"responseLabel",class:n.normalizeClass(["label",{dragging:n.unref(_)}]),onClick:g},[n.createVNode(n.unref(Ee.ChevronDownIcon),{class:n.normalizeClass(["icon",{collapsed:m.value}])},null,8,["class"]),y[1]||(y[1]=n.createElementVNode("div",null," Response ",-1))],2),n.createElementVNode("div",{ref_key:"responseCanvas",ref:a,class:"canvas response"},[n.renderSlot(b.$slots,"response",{},void 0,!0)],512)],512))}}),[["__scopeId","data-v-e2f7b17f"]]);function br(e){return n.getCurrentScope()?(n.onScopeDispose(e),!0):!1}function Bt(e){return typeof e=="function"?e():n.unref(e)}const ok=typeof window<"u"&&typeof document<"u",rk=e=>typeof e<"u",ik=Object.prototype.toString,ak=e=>ik.call(e)==="[object Object]",lk=()=>{};function sk(e,t){function o(...r){return new Promise((i,a)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(i).catch(a)})}return o}const Jc=e=>e();function ck(e=Jc){const t=n.ref(!0);function o(){t.value=!1}function r(){t.value=!0}const i=(...a)=>{t.value&&e(...a)};return{isActive:n.readonly(t),pause:o,resume:r,eventFilter:i}}function Qc(e,t=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(t?()=>i(o):r,e)})}function dk(e,t,o={}){const{eventFilter:r=Jc,...i}=o;return n.watch(e,sk(r,t),i)}function Bn(e,t,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=ck(r);return{stop:dk(e,t,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function uk(e,t={}){if(!n.isRef(e))return n.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=n.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=Bt(t.replaceRef))!=null?a:!0)if(Array.isArray(e.value)){const s=[...e.value];s[r]=i,e.value=s}else{const s={...e.value,[r]:i};Object.setPrototypeOf(s,Object.getPrototypeOf(e.value)),e.value=s}else e.value[r]=i}}));return o}function ya(e,t=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:w}={}){let g=null;const b=[new Promise(y=>{g=n.watch(e,C=>{u(C)!==t&&(g==null||g(),y(C))},{flush:p,deep:m,immediate:!0})})];return h!=null&&b.push(Qc(h,w).then(()=>Bt(e)).finally(()=>g==null?void 0:g())),Promise.race(b)}function r(u,p){if(!n.isRef(u))return o(C=>C===u,p);const{flush:m="sync",deep:h=!1,timeout:w,throwOnTimeout:g}=p??{};let _=null;const y=[new Promise(C=>{_=n.watch([e,u],([x,k])=>{t!==(x===k)&&(_==null||_(),C(x))},{flush:m,deep:h,immediate:!0})})];return w!=null&&y.push(Qc(w,g).then(()=>Bt(e)).finally(()=>(_==null||_(),Bt(e)))),Promise.race(y)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const h=Array.from(m);return h.includes(u)||h.includes(Bt(u))},p)}function d(u){return f(1,u)}function f(u=1,p){let m=-1;return o(()=>(m+=1,m>=u),p)}return Array.isArray(Bt(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return ya(e,!t)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return ya(e,!t)}}}function _a(e){return ya(e)}function fk(e){var t;const o=Bt(e);return(t=o==null?void 0:o.$el)!=null?t:o}const ed=ok?window:void 0;function td(...e){let t,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,t=ed):[t,o,r,i]=e,!t)return lk;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(f=>f()),a.length=0},s=(f,u,p,m)=>(f.addEventListener(u,p,m),()=>f.removeEventListener(u,p,m)),c=n.watch(()=>[fk(t),Bt(i)],([f,u])=>{if(l(),!f)return;const p=ak(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return br(d),d}function pk(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function nd(...e){let t,o,r={};e.length===3?(t=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,o=e[0],r=e[1]):(t=e[0],o=e[1]):(t=!0,o=e[0]);const{target:i=ed,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=pk(t);return td(i,a,f=>{f.repeat&&Bt(s)||c(f)&&o(f)},l)}function mk(e){return JSON.parse(JSON.stringify(e))}function ba(e,t,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=n.getCurrentInstance(),h=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let w=d;t||(t="modelValue"),w=w||`update:${t.toString()}`;const g=y=>s?typeof s=="function"?s(y):mk(y):y,_=()=>rk(e[t])?g(e[t]):u,b=y=>{p?p(y)&&h(w,y):h(w,y)};if(c){const y=_(),C=n.ref(y);let x=!1;return n.watch(()=>e[t],k=>{x||(x=!0,C.value=g(k),n.nextTick(()=>x=!1))}),n.watch(C,k=>{!x&&(k!==e[t]||f)&&b(k)},{deep:f}),C}else return n.computed({get(){return _()},set(y){b(y)}})}var gk={value:()=>{}};function wr(){for(var e=0,t=arguments.length,o={},r;e<t;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new Er(o)}function Er(e){this._=e}function hk(e,t){return e.trim().split(/^|\s+/).map(function(o){var r="",i=o.indexOf(".");if(i>=0&&(r=o.slice(i+1),o=o.slice(0,i)),o&&!t.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}Er.prototype=wr.prototype={constructor:Er,on:function(e,t){var o=this._,r=hk(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=yk(o[i],e.name)))return i;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++a<l;)if(i=(e=r[a]).type)o[i]=od(o[i],e.name,t);else if(t==null)for(i in o)o[i]=od(o[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var o in t)e[o]=t[o].slice();return new Er(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var o=new Array(i),r=0,i,a;r<i;++r)o[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,o)},apply:function(e,t,o){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,o)}};function yk(e,t){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===t)return i.value}function od(e,t,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=gk,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:t,value:o}),e}var wa="http://www.w3.org/1999/xhtml";const rd={svg:"http://www.w3.org/2000/svg",xhtml:wa,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function kr(e){var t=e+="",o=t.indexOf(":");return o>=0&&(t=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),rd.hasOwnProperty(t)?{space:rd[t],local:e}:e}function _k(e){return function(){var t=this.ownerDocument,o=this.namespaceURI;return o===wa&&t.documentElement.namespaceURI===wa?t.createElement(e):t.createElementNS(o,e)}}function bk(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function id(e){var t=kr(e);return(t.local?bk:_k)(t)}function wk(){}function Ea(e){return e==null?wk:function(){return this.querySelector(e)}}function Ek(e){typeof e!="function"&&(e=Ea(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[i],l=a.length,s=r[i]=new Array(l),c,d,f=0;f<l;++f)(c=a[f])&&(d=e.call(c,c.__data__,f,a))&&("__data__"in c&&(d.__data__=c.__data__),s[f]=d);return new rt(r,this._parents)}function kk(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function Ck(){return[]}function ad(e){return e==null?Ck:function(){return this.querySelectorAll(e)}}function vk(e){return function(){return kk(e.apply(this,arguments))}}function Nk(e){typeof e=="function"?e=vk(e):e=ad(e);for(var t=this._groups,o=t.length,r=[],i=[],a=0;a<o;++a)for(var l=t[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&(r.push(e.call(c,c.__data__,d,l)),i.push(c));return new rt(r,i)}function ld(e){return function(){return this.matches(e)}}function sd(e){return function(t){return t.matches(e)}}var Sk=Array.prototype.find;function xk(e){return function(){return Sk.call(this.children,e)}}function Ak(){return this.firstElementChild}function Tk(e){return this.select(e==null?Ak:xk(typeof e=="function"?e:sd(e)))}var Pk=Array.prototype.filter;function Ik(){return Array.from(this.children)}function Ok(e){return function(){return Pk.call(this.children,e)}}function $k(e){return this.selectAll(e==null?Ik:Ok(typeof e=="function"?e:sd(e)))}function Bk(e){typeof e!="function"&&(e=ld(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new rt(r,this._parents)}function cd(e){return new Array(e.length)}function Dk(){return new rt(this._enter||this._groups.map(cd),this._parents)}function Cr(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}Cr.prototype={constructor:Cr,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Vk(e){return function(){return e}}function Rk(e,t,o,r,i,a){for(var l=0,s,c=t.length,d=a.length;l<d;++l)(s=t[l])?(s.__data__=a[l],r[l]=s):o[l]=new Cr(e,a[l]);for(;l<c;++l)(s=t[l])&&(i[l]=s)}function Mk(e,t,o,r,i,a,l){var s,c,d=new Map,f=t.length,u=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=t[s])&&(p[s]=m=l.call(c,c.__data__,s,t)+"",d.has(m)?i[s]=c:d.set(m,c));for(s=0;s<u;++s)m=l.call(e,a[s],s,a)+"",(c=d.get(m))?(r[s]=c,c.__data__=a[s],d.delete(m)):o[s]=new Cr(e,a[s]);for(s=0;s<f;++s)(c=t[s])&&d.get(p[s])===c&&(i[s]=c)}function Fk(e){return e.__data__}function Lk(e,t){if(!arguments.length)return Array.from(this,Fk);var o=t?Mk:Rk,r=this._parents,i=this._groups;typeof e!="function"&&(e=Vk(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),d=0;d<a;++d){var f=r[d],u=i[d],p=u.length,m=Uk(e.call(f,f&&f.__data__,d,r)),h=m.length,w=s[d]=new Array(h),g=l[d]=new Array(h),_=c[d]=new Array(p);o(f,u,w,g,_,m,t);for(var b=0,y=0,C,x;b<h;++b)if(C=w[b]){for(b>=y&&(y=b+1);!(x=g[y])&&++y<h;);C._next=x||null}}return l=new rt(l,r),l._enter=s,l._exit=c,l}function Uk(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Kk(){return new rt(this._exit||this._groups.map(cd),this._parents)}function qk(e,t,o){var r=this.enter(),i=this,a=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(i=t(i),i&&(i=i.selection())),o==null?a.remove():o(a),r&&i?r.merge(i).order():i}function Gk(e){for(var t=e.selection?e.selection():e,o=this._groups,r=t._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],f=r[c],u=d.length,p=s[c]=new Array(u),m,h=0;h<u;++h)(m=d[h]||f[h])&&(p[h]=m);for(;c<i;++c)s[c]=o[c];return new rt(s,this._parents)}function jk(){for(var e=this._groups,t=-1,o=e.length;++t<o;)for(var r=e[t],i=r.length-1,a=r[i],l;--i>=0;)(l=r[i])&&(a&&l.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(l,a),a=l);return this}function zk(e){e||(e=Hk);function t(u,p){return u&&p?e(u.__data__,p.__data__):!u-!p}for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a){for(var l=o[a],s=l.length,c=i[a]=new Array(s),d,f=0;f<s;++f)(d=l[f])&&(c[f]=d);c.sort(t)}return new rt(i,this._parents).order()}function Hk(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function Yk(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Wk(){return Array.from(this)}function Zk(){for(var e=this._groups,t=0,o=e.length;t<o;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function Xk(){let e=0;for(const t of this)++e;return e}function Jk(){return!this.node()}function Qk(e){for(var t=this._groups,o=0,r=t.length;o<r;++o)for(var i=t[o],a=0,l=i.length,s;a<l;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function eC(e){return function(){this.removeAttribute(e)}}function tC(e){return function(){this.removeAttributeNS(e.space,e.local)}}function nC(e,t){return function(){this.setAttribute(e,t)}}function oC(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function rC(e,t){return function(){var o=t.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function iC(e,t){return function(){var o=t.apply(this,arguments);o==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,o)}}function aC(e,t){var o=kr(e);if(arguments.length<2){var r=this.node();return o.local?r.getAttributeNS(o.space,o.local):r.getAttribute(o)}return this.each((t==null?o.local?tC:eC:typeof t=="function"?o.local?iC:rC:o.local?oC:nC)(o,t))}function dd(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function lC(e){return function(){this.style.removeProperty(e)}}function sC(e,t,o){return function(){this.style.setProperty(e,t,o)}}function cC(e,t,o){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function dC(e,t,o){return arguments.length>1?this.each((t==null?lC:typeof t=="function"?cC:sC)(e,t,o??"")):Dn(this.node(),e)}function Dn(e,t){return e.style.getPropertyValue(t)||dd(e).getComputedStyle(e,null).getPropertyValue(t)}function uC(e){return function(){delete this[e]}}function fC(e,t){return function(){this[e]=t}}function pC(e,t){return function(){var o=t.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function mC(e,t){return arguments.length>1?this.each((t==null?uC:typeof t=="function"?pC:fC)(e,t)):this.node()[e]}function ud(e){return e.trim().split(/^|\s+/)}function ka(e){return e.classList||new fd(e)}function fd(e){this._node=e,this._names=ud(e.getAttribute("class")||"")}fd.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function pd(e,t){for(var o=ka(e),r=-1,i=t.length;++r<i;)o.add(t[r])}function md(e,t){for(var o=ka(e),r=-1,i=t.length;++r<i;)o.remove(t[r])}function gC(e){return function(){pd(this,e)}}function hC(e){return function(){md(this,e)}}function yC(e,t){return function(){(t.apply(this,arguments)?pd:md)(this,e)}}function _C(e,t){var o=ud(e+"");if(arguments.length<2){for(var r=ka(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof t=="function"?yC:t?gC:hC)(o,t))}function bC(){this.textContent=""}function wC(e){return function(){this.textContent=e}}function EC(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function kC(e){return arguments.length?this.each(e==null?bC:(typeof e=="function"?EC:wC)(e)):this.node().textContent}function CC(){this.innerHTML=""}function vC(e){return function(){this.innerHTML=e}}function NC(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function SC(e){return arguments.length?this.each(e==null?CC:(typeof e=="function"?NC:vC)(e)):this.node().innerHTML}function xC(){this.nextSibling&&this.parentNode.appendChild(this)}function AC(){return this.each(xC)}function TC(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function PC(){return this.each(TC)}function IC(e){var t=typeof e=="function"?e:id(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function OC(){return null}function $C(e,t){var o=typeof e=="function"?e:id(e),r=t==null?OC:typeof t=="function"?t:Ea(t);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function BC(){var e=this.parentNode;e&&e.removeChild(this)}function DC(){return this.each(BC)}function VC(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function RC(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function MC(e){return this.select(e?RC:VC)}function FC(e){return arguments.length?this.property("__data__",e):this.node().__data__}function LC(e){return function(t){e.call(this,t,this.__data__)}}function UC(e){return e.trim().split(/^|\s+/).map(function(t){var o="",r=t.indexOf(".");return r>=0&&(o=t.slice(r+1),t=t.slice(0,r)),{type:t,name:o}})}function KC(e){return function(){var t=this.__on;if(t){for(var o=0,r=-1,i=t.length,a;o<i;++o)a=t[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function qC(e,t,o){return function(){var r=this.__on,i,a=LC(t);if(r){for(var l=0,s=r.length;l<s;++l)if((i=r[l]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=o),i.value=t;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:t,listener:a,options:o},r?r.push(i):this.__on=[i]}}function GC(e,t,o){var r=UC(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,d=s.length,f;c<d;++c)for(i=0,f=s[c];i<a;++i)if((l=r[i]).type===f.type&&l.name===f.name)return f.value}return}for(s=t?qC:KC,i=0;i<a;++i)this.each(s(r[i],t,o));return this}function gd(e,t,o){var r=dd(e),i=r.CustomEvent;typeof i=="function"?i=new i(t,o):(i=r.document.createEvent("Event"),o?(i.initEvent(t,o.bubbles,o.cancelable),i.detail=o.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function jC(e,t){return function(){return gd(this,e,t)}}function zC(e,t){return function(){return gd(this,e,t.apply(this,arguments))}}function HC(e,t){return this.each((typeof t=="function"?zC:jC)(e,t))}function*YC(){for(var e=this._groups,t=0,o=e.length;t<o;++t)for(var r=e[t],i=0,a=r.length,l;i<a;++i)(l=r[i])&&(yield l)}var hd=[null];function rt(e,t){this._groups=e,this._parents=t}function ho(){return new rt([[document.documentElement]],hd)}function WC(){return this}rt.prototype=ho.prototype={constructor:rt,select:Ek,selectAll:Nk,selectChild:Tk,selectChildren:$k,filter:Bk,data:Lk,enter:Dk,exit:Kk,join:qk,merge:Gk,selection:WC,order:jk,sort:zk,call:Yk,nodes:Wk,node:Zk,size:Xk,empty:Jk,each:Qk,attr:aC,style:dC,property:mC,classed:_C,text:kC,html:SC,raise:AC,lower:PC,append:IC,insert:$C,remove:DC,clone:MC,datum:FC,on:GC,dispatch:HC,[Symbol.iterator]:YC};function pt(e){return typeof e=="string"?new rt([[document.querySelector(e)]],[document.documentElement]):new rt([[e]],hd)}function ZC(e){let t;for(;t=e.sourceEvent;)e=t;return e}function kt(e,t){if(e=ZC(e),t===void 0&&(t=e.currentTarget),t){var o=t.ownerSVGElement||t;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}const XC={passive:!1},yo={capture:!0,passive:!1};function Ca(e){e.stopImmediatePropagation()}function Vn(e){e.preventDefault(),e.stopImmediatePropagation()}function yd(e){var t=e.document.documentElement,o=pt(e).on("dragstart.drag",Vn,yo);"onselectstart"in t?o.on("selectstart.drag",Vn,yo):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function _d(e,t){var o=e.document.documentElement,r=pt(e).on("dragstart.drag",null);t&&(r.on("click.drag",Vn,yo),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in o?r.on("selectstart.drag",null):(o.style.MozUserSelect=o.__noselect,delete o.__noselect)}const vr=e=>()=>e;function va(e,{sourceEvent:t,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:d,dispatch:f}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:o,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:f}})}va.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function JC(e){return!e.ctrlKey&&!e.button}function QC(){return this.parentNode}function ev(e,t){return t??{x:e.x,y:e.y}}function tv(){return navigator.maxTouchPoints||"ontouchstart"in this}function nv(){var e=JC,t=QC,o=ev,r=tv,i={},a=wr("start","drag","end"),l=0,s,c,d,f,u=0;function p(C){C.on("mousedown.drag",m).filter(r).on("touchstart.drag",g).on("touchmove.drag",_,XC).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(C,x){if(!(f||!e.call(this,C,x))){var k=y(this,t.call(this,C,x),C,x,"mouse");k&&(pt(C.view).on("mousemove.drag",h,yo).on("mouseup.drag",w,yo),yd(C.view),Ca(C),d=!1,s=C.clientX,c=C.clientY,k("start",C))}}function h(C){if(Vn(C),!d){var x=C.clientX-s,k=C.clientY-c;d=x*x+k*k>u}i.mouse("drag",C)}function w(C){pt(C.view).on("mousemove.drag mouseup.drag",null),_d(C.view,d),Vn(C),i.mouse("end",C)}function g(C,x){if(e.call(this,C,x)){var k=C.changedTouches,P=t.call(this,C,x),I=k.length,B,W;for(B=0;B<I;++B)(W=y(this,P,C,x,k[B].identifier,k[B]))&&(Ca(C),W("start",C,k[B]))}}function _(C){var x=C.changedTouches,k=x.length,P,I;for(P=0;P<k;++P)(I=i[x[P].identifier])&&(Vn(C),I("drag",C,x[P]))}function b(C){var x=C.changedTouches,k=x.length,P,I;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),P=0;P<k;++P)(I=i[x[P].identifier])&&(Ca(C),I("end",C,x[P]))}function y(C,x,k,P,I,B){var W=a.copy(),M=kt(B||k,x),v,N,E;if((E=o.call(C,new va("beforestart",{sourceEvent:k,target:p,identifier:I,active:l,x:M[0],y:M[1],dx:0,dy:0,dispatch:W}),P))!=null)return v=E.x-M[0]||0,N=E.y-M[1]||0,function R(O,j,G){var F=M,V;switch(O){case"start":i[I]=R,V=l++;break;case"end":delete i[I],--l;case"drag":M=kt(G||j,x),V=l;break}W.call(O,C,new va(O,{sourceEvent:j,subject:E,target:p,identifier:I,active:V,x:M[0]+v,y:M[1]+N,dx:M[0]-F[0],dy:M[1]-F[1],dispatch:W}),P)}}return p.filter=function(C){return arguments.length?(e=typeof C=="function"?C:vr(!!C),p):e},p.container=function(C){return arguments.length?(t=typeof C=="function"?C:vr(C),p):t},p.subject=function(C){return arguments.length?(o=typeof C=="function"?C:vr(C),p):o},p.touchable=function(C){return arguments.length?(r=typeof C=="function"?C:vr(!!C),p):r},p.on=function(){var C=a.on.apply(a,arguments);return C===a?p:C},p.clickDistance=function(C){return arguments.length?(u=(C=+C)*C,p):Math.sqrt(u)},p}function Na(e,t,o){e.prototype=t.prototype=o,o.constructor=e}function bd(e,t){var o=Object.create(e.prototype);for(var r in t)o[r]=t[r];return o}function _o(){}var bo=.7,Nr=1/bo,Rn="\\s*([+-]?\\d+)\\s*",wo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Ct="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",ov=/^#([0-9a-f]{3,8})$/,rv=new RegExp(`^rgb\\(${Rn},${Rn},${Rn}\\)$`),iv=new RegExp(`^rgb\\(${Ct},${Ct},${Ct}\\)$`),av=new RegExp(`^rgba\\(${Rn},${Rn},${Rn},${wo}\\)$`),lv=new RegExp(`^rgba\\(${Ct},${Ct},${Ct},${wo}\\)$`),sv=new RegExp(`^hsl\\(${wo},${Ct},${Ct}\\)$`),cv=new RegExp(`^hsla\\(${wo},${Ct},${Ct},${wo}\\)$`),wd={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Na(_o,sn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Ed,formatHex:Ed,formatHex8:dv,formatHsl:uv,formatRgb:kd,toString:kd});function Ed(){return this.rgb().formatHex()}function dv(){return this.rgb().formatHex8()}function uv(){return xd(this).formatHsl()}function kd(){return this.rgb().formatRgb()}function sn(e){var t,o;return e=(e+"").trim().toLowerCase(),(t=ov.exec(e))?(o=t[1].length,t=parseInt(t[1],16),o===6?Cd(t):o===3?new tt(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):o===8?Sr(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):o===4?Sr(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=rv.exec(e))?new tt(t[1],t[2],t[3],1):(t=iv.exec(e))?new tt(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=av.exec(e))?Sr(t[1],t[2],t[3],t[4]):(t=lv.exec(e))?Sr(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=sv.exec(e))?Sd(t[1],t[2]/100,t[3]/100,1):(t=cv.exec(e))?Sd(t[1],t[2]/100,t[3]/100,t[4]):wd.hasOwnProperty(e)?Cd(wd[e]):e==="transparent"?new tt(NaN,NaN,NaN,0):null}function Cd(e){return new tt(e>>16&255,e>>8&255,e&255,1)}function Sr(e,t,o,r){return r<=0&&(e=t=o=NaN),new tt(e,t,o,r)}function fv(e){return e instanceof _o||(e=sn(e)),e?(e=e.rgb(),new tt(e.r,e.g,e.b,e.opacity)):new tt}function Sa(e,t,o,r){return arguments.length===1?fv(e):new tt(e,t,o,r??1)}function tt(e,t,o,r){this.r=+e,this.g=+t,this.b=+o,this.opacity=+r}Na(tt,Sa,bd(_o,{brighter(e){return e=e==null?Nr:Math.pow(Nr,e),new tt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?bo:Math.pow(bo,e),new tt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new tt(cn(this.r),cn(this.g),cn(this.b),xr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:vd,formatHex:vd,formatHex8:pv,formatRgb:Nd,toString:Nd}));function vd(){return`#${dn(this.r)}${dn(this.g)}${dn(this.b)}`}function pv(){return`#${dn(this.r)}${dn(this.g)}${dn(this.b)}${dn((isNaN(this.opacity)?1:this.opacity)*255)}`}function Nd(){const e=xr(this.opacity);return`${e===1?"rgb(":"rgba("}${cn(this.r)}, ${cn(this.g)}, ${cn(this.b)}${e===1?")":`, ${e})`}`}function xr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function cn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function dn(e){return e=cn(e),(e<16?"0":"")+e.toString(16)}function Sd(e,t,o,r){return r<=0?e=t=o=NaN:o<=0||o>=1?e=t=NaN:t<=0&&(e=NaN),new mt(e,t,o,r)}function xd(e){if(e instanceof mt)return new mt(e.h,e.s,e.l,e.opacity);if(e instanceof _o||(e=sn(e)),!e)return new mt;if(e instanceof mt)return e;e=e.rgb();var t=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(t,o,r),a=Math.max(t,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(t===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-t)/s+2:l=(t-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new mt(l,s,c,e.opacity)}function mv(e,t,o,r){return arguments.length===1?xd(e):new mt(e,t,o,r??1)}function mt(e,t,o,r){this.h=+e,this.s=+t,this.l=+o,this.opacity=+r}Na(mt,mv,bd(_o,{brighter(e){return e=e==null?Nr:Math.pow(Nr,e),new mt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?bo:Math.pow(bo,e),new mt(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*t,i=2*o-r;return new tt(xa(e>=240?e-240:e+120,i,r),xa(e,i,r),xa(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new mt(Ad(this.h),Ar(this.s),Ar(this.l),xr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=xr(this.opacity);return`${e===1?"hsl(":"hsla("}${Ad(this.h)}, ${Ar(this.s)*100}%, ${Ar(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Ad(e){return e=(e||0)%360,e<0?e+360:e}function Ar(e){return Math.max(0,Math.min(1,e||0))}function xa(e,t,o){return(e<60?t+(o-t)*e/60:e<180?o:e<240?t+(o-t)*(240-e)/60:t)*255}const Aa=e=>()=>e;function gv(e,t){return function(o){return e+o*t}}function hv(e,t,o){return e=Math.pow(e,o),t=Math.pow(t,o)-e,o=1/o,function(r){return Math.pow(e+r*t,o)}}function yv(e){return(e=+e)==1?Td:function(t,o){return o-t?hv(t,o,e):Aa(isNaN(t)?o:t)}}function Td(e,t){var o=t-e;return o?gv(e,o):Aa(isNaN(e)?t:e)}const Tr=function e(t){var o=yv(t);function r(i,a){var l=o((i=Sa(i)).r,(a=Sa(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Td(i.opacity,a.opacity);return function(f){return i.r=l(f),i.g=s(f),i.b=c(f),i.opacity=d(f),i+""}}return r.gamma=e,r}(1);function _v(e,t){t||(t=[]);var o=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<o;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function bv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function wv(e,t){var o=t?t.length:0,r=e?Math.min(o,e.length):0,i=new Array(r),a=new Array(o),l;for(l=0;l<r;++l)i[l]=Eo(e[l],t[l]);for(;l<o;++l)a[l]=t[l];return function(s){for(l=0;l<r;++l)a[l]=i[l](s);return a}}function Ev(e,t){var o=new Date;return e=+e,t=+t,function(r){return o.setTime(e*(1-r)+t*r),o}}function vt(e,t){return e=+e,t=+t,function(o){return e*(1-o)+t*o}}function kv(e,t){var o={},r={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?o[i]=Eo(e[i],t[i]):r[i]=t[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Ta=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Pa=new RegExp(Ta.source,"g");function Cv(e){return function(){return e}}function vv(e){return function(t){return e(t)+""}}function Pd(e,t){var o=Ta.lastIndex=Pa.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",t=t+"";(r=Ta.exec(e))&&(i=Pa.exec(t));)(a=i.index)>o&&(a=t.slice(o,a),s[l]?s[l]+=a:s[++l]=a),(r=r[0])===(i=i[0])?s[l]?s[l]+=i:s[++l]=i:(s[++l]=null,c.push({i:l,x:vt(r,i)})),o=Pa.lastIndex;return o<t.length&&(a=t.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?vv(c[0].x):Cv(t):(t=c.length,function(d){for(var f=0,u;f<t;++f)s[(u=c[f]).i]=u.x(d);return s.join("")})}function Eo(e,t){var o=typeof t,r;return t==null||o==="boolean"?Aa(t):(o==="number"?vt:o==="string"?(r=sn(t))?(t=r,Tr):Pd:t instanceof sn?Tr:t instanceof Date?Ev:bv(t)?_v:Array.isArray(t)?wv:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?kv:vt)(e,t)}var Id=180/Math.PI,Ia={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Od(e,t,o,r,i,a){var l,s,c;return(l=Math.sqrt(e*e+t*t))&&(e/=l,t/=l),(c=e*o+t*r)&&(o-=e*c,r-=t*c),(s=Math.sqrt(o*o+r*r))&&(o/=s,r/=s,c/=s),e*r<t*o&&(e=-e,t=-t,c=-c,l=-l),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*Id,skewX:Math.atan(c)*Id,scaleX:l,scaleY:s}}var Pr;function Nv(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?Ia:Od(t.a,t.b,t.c,t.d,t.e,t.f)}function Sv(e){return e==null||(Pr||(Pr=document.createElementNS("http://www.w3.org/2000/svg","g")),Pr.setAttribute("transform",e),!(e=Pr.transform.baseVal.consolidate()))?Ia:(e=e.matrix,Od(e.a,e.b,e.c,e.d,e.e,e.f))}function $d(e,t,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,h){if(d!==u||f!==p){var w=m.push("translate(",null,t,null,o);h.push({i:w-4,x:vt(d,u)},{i:w-2,x:vt(f,p)})}else(u||p)&&m.push("translate("+u+t+p+o)}function l(d,f,u,p){d!==f?(d-f>180?f+=360:f-d>180&&(d+=360),p.push({i:u.push(i(u)+"rotate(",null,r)-2,x:vt(d,f)})):f&&u.push(i(u)+"rotate("+f+r)}function s(d,f,u,p){d!==f?p.push({i:u.push(i(u)+"skewX(",null,r)-2,x:vt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var w=m.push(i(m)+"scale(",null,",",null,")");h.push({i:w-4,x:vt(d,u)},{i:w-2,x:vt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var h=-1,w=p.length,g;++h<w;)u[(g=p[h]).i]=g.x(m);return u.join("")}}}var xv=$d(Nv,"px, ","px)","deg)"),Av=$d(Sv,", ",")",")"),Tv=1e-12;function Bd(e){return((e=Math.exp(e))+1/e)/2}function Pv(e){return((e=Math.exp(e))-1/e)/2}function Iv(e){return((e=Math.exp(2*e))-1)/(e+1)}const Ir=function e(t,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,h=u-c,w=m*m+h*h,g,_;if(w<Tv)_=Math.log(p/d)/t,g=function(P){return[s+P*m,c+P*h,d*Math.exp(t*P*_)]};else{var b=Math.sqrt(w),y=(p*p-d*d+r*w)/(2*d*o*b),C=(p*p-d*d-r*w)/(2*p*o*b),x=Math.log(Math.sqrt(y*y+1)-y),k=Math.log(Math.sqrt(C*C+1)-C);_=(k-x)/t,g=function(P){var I=P*_,B=Bd(x),W=d/(o*b)*(B*Iv(t*I+x)-Pv(x));return[s+W*m,c+W*h,d*B/Bd(t*I+x)]}}return g.duration=_*1e3*t/Math.SQRT2,g}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var Mn=0,ko=0,Co=0,Dd=1e3,Or,vo,$r=0,un=0,Br=0,No=typeof performance=="object"&&performance.now?performance:Date,Vd=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Oa(){return un||(Vd(Ov),un=No.now()+Br)}function Ov(){un=0}function Dr(){this._call=this._time=this._next=null}Dr.prototype=Rd.prototype={constructor:Dr,restart:function(e,t,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Oa():+o)+(t==null?0:+t),!this._next&&vo!==this&&(vo?vo._next=this:Or=this,vo=this),this._call=e,this._time=o,$a()},stop:function(){this._call&&(this._call=null,this._time=1/0,$a())}};function Rd(e,t,o){var r=new Dr;return r.restart(e,t,o),r}function $v(){Oa(),++Mn;for(var e=Or,t;e;)(t=un-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Mn}function Md(){un=($r=No.now())+Br,Mn=ko=0;try{$v()}finally{Mn=0,Dv(),un=0}}function Bv(){var e=No.now(),t=e-$r;t>Dd&&(Br-=t,$r=e)}function Dv(){for(var e,t=Or,o,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(o=t._next,t._next=null,t=e?e._next=o:Or=o);vo=e,$a(r)}function $a(e){if(!Mn){ko&&(ko=clearTimeout(ko));var t=e-un;t>24?(e<1/0&&(ko=setTimeout(Md,e-No.now()-Br)),Co&&(Co=clearInterval(Co))):(Co||($r=No.now(),Co=setInterval(Bv,Dd)),Mn=1,Vd(Md))}}function Fd(e,t,o){var r=new Dr;return t=t==null?0:+t,r.restart(i=>{r.stop(),e(i+t)},t,o),r}var Vv=wr("start","end","cancel","interrupt"),Rv=[],Ld=0,Ud=1,Ba=2,Vr=3,Kd=4,Da=5,Rr=6;function Mr(e,t,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;Mv(e,o,{name:t,index:r,group:i,on:Vv,tween:Rv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Ld})}function Va(e,t){var o=gt(e,t);if(o.state>Ld)throw new Error("too late; already scheduled");return o}function Nt(e,t){var o=gt(e,t);if(o.state>Vr)throw new Error("too late; already running");return o}function gt(e,t){var o=e.__transition;if(!o||!(o=o[t]))throw new Error("transition not found");return o}function Mv(e,t,o){var r=e.__transition,i;r[t]=o,o.timer=Rd(a,0,o.time);function a(d){o.state=Ud,o.timer.restart(l,o.delay,o.time),o.delay<=d&&l(d-o.delay)}function l(d){var f,u,p,m;if(o.state!==Ud)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Vr)return Fd(l);m.state===Kd?(m.state=Rr,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<t&&(m.state=Rr,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Fd(function(){o.state===Vr&&(o.state=Kd,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Ba,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Ba){for(o.state=Vr,i=new Array(p=o.tween.length),f=0,u=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++u]=m);i.length=u+1}}function s(d){for(var f=d<o.duration?o.ease.call(null,d/o.duration):(o.timer.restart(c),o.state=Da,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Da&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Rr,o.timer.stop(),delete r[t];for(var d in r)return;delete e.__transition}}function Fr(e,t){var o=e.__transition,r,i,a=!0,l;if(o){t=t==null?null:t+"";for(l in o){if((r=o[l]).name!==t){a=!1;continue}i=r.state>Ba&&r.state<Da,r.state=Rr,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function Fv(e){return this.each(function(){Fr(this,e)})}function Lv(e,t){var o,r;return function(){var i=Nt(this,e),a=i.tween;if(a!==o){r=o=a;for(var l=0,s=r.length;l<s;++l)if(r[l].name===t){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function Uv(e,t,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=Nt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:t,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===t){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function Kv(e,t){var o=this._id;if(e+="",arguments.length<2){for(var r=gt(this.node(),o).tween,i=0,a=r.length,l;i<a;++i)if((l=r[i]).name===e)return l.value;return null}return this.each((t==null?Lv:Uv)(o,e,t))}function Ra(e,t,o){var r=e._id;return e.each(function(){var i=Nt(this,r);(i.value||(i.value={}))[t]=o.apply(this,arguments)}),function(i){return gt(i,r).value[t]}}function qd(e,t){var o;return(typeof t=="number"?vt:t instanceof sn?Tr:(o=sn(t))?(t=o,Tr):Pd)(e,t)}function qv(e){return function(){this.removeAttribute(e)}}function Gv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function jv(e,t,o){var r,i=o+"",a;return function(){var l=this.getAttribute(e);return l===i?null:l===r?a:a=t(r=l,o)}}function zv(e,t,o){var r,i=o+"",a;return function(){var l=this.getAttributeNS(e.space,e.local);return l===i?null:l===r?a:a=t(r=l,o)}}function Hv(e,t,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttribute(e):(l=this.getAttribute(e),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=t(r=l,s)))}}function Yv(e,t,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=t(r=l,s)))}}function Wv(e,t){var o=kr(e),r=o==="transform"?Av:qd;return this.attrTween(e,typeof t=="function"?(o.local?Yv:Hv)(o,r,Ra(this,"attr."+e,t)):t==null?(o.local?Gv:qv)(o):(o.local?zv:jv)(o,r,t))}function Zv(e,t){return function(o){this.setAttribute(e,t.call(this,o))}}function Xv(e,t){return function(o){this.setAttributeNS(e.space,e.local,t.call(this,o))}}function Jv(e,t){var o,r;function i(){var a=t.apply(this,arguments);return a!==r&&(o=(r=a)&&Xv(e,a)),o}return i._value=t,i}function Qv(e,t){var o,r;function i(){var a=t.apply(this,arguments);return a!==r&&(o=(r=a)&&Zv(e,a)),o}return i._value=t,i}function eN(e,t){var o="attr."+e;if(arguments.length<2)return(o=this.tween(o))&&o._value;if(t==null)return this.tween(o,null);if(typeof t!="function")throw new Error;var r=kr(e);return this.tween(o,(r.local?Jv:Qv)(r,t))}function tN(e,t){return function(){Va(this,e).delay=+t.apply(this,arguments)}}function nN(e,t){return t=+t,function(){Va(this,e).delay=t}}function oN(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?tN:nN)(t,e)):gt(this.node(),t).delay}function rN(e,t){return function(){Nt(this,e).duration=+t.apply(this,arguments)}}function iN(e,t){return t=+t,function(){Nt(this,e).duration=t}}function aN(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?rN:iN)(t,e)):gt(this.node(),t).duration}function lN(e,t){if(typeof t!="function")throw new Error;return function(){Nt(this,e).ease=t}}function sN(e){var t=this._id;return arguments.length?this.each(lN(t,e)):gt(this.node(),t).ease}function cN(e,t){return function(){var o=t.apply(this,arguments);if(typeof o!="function")throw new Error;Nt(this,e).ease=o}}function dN(e){if(typeof e!="function")throw new Error;return this.each(cN(this._id,e))}function uN(e){typeof e!="function"&&(e=ld(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new Dt(r,this._parents,this._name,this._id)}function fN(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,o=e._groups,r=t.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=t[s],d=o[s],f=c.length,u=l[s]=new Array(f),p,m=0;m<f;++m)(p=c[m]||d[m])&&(u[m]=p);for(;s<r;++s)l[s]=t[s];return new Dt(l,this._parents,this._name,this._id)}function pN(e){return(e+"").trim().split(/^|\s+/).every(function(t){var o=t.indexOf(".");return o>=0&&(t=t.slice(0,o)),!t||t==="start"})}function mN(e,t,o){var r,i,a=pN(t)?Va:Nt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(t,o),l.on=i}}function gN(e,t){var o=this._id;return arguments.length<2?gt(this.node(),o).on.on(e):this.each(mN(o,e,t))}function hN(e){return function(){var t=this.parentNode;for(var o in this.__transition)if(+o!==e)return;t&&t.removeChild(this)}}function yN(){return this.on("end.remove",hN(this._id))}function _N(e){var t=this._name,o=this._id;typeof e!="function"&&(e=Ea(e));for(var r=this._groups,i=r.length,a=new Array(i),l=0;l<i;++l)for(var s=r[l],c=s.length,d=a[l]=new Array(c),f,u,p=0;p<c;++p)(f=s[p])&&(u=e.call(f,f.__data__,p,s))&&("__data__"in f&&(u.__data__=f.__data__),d[p]=u,Mr(d[p],t,o,p,d,gt(f,o)));return new Dt(a,this._parents,t,o)}function bN(e){var t=this._name,o=this._id;typeof e!="function"&&(e=ad(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,h=gt(f,o),w=0,g=p.length;w<g;++w)(m=p[w])&&Mr(m,t,o,w,p,h);a.push(p),l.push(f)}return new Dt(a,l,t,o)}var wN=ho.prototype.constructor;function EN(){return new wN(this._groups,this._parents)}function kN(e,t){var o,r,i;return function(){var a=Dn(this,e),l=(this.style.removeProperty(e),Dn(this,e));return a===l?null:a===o&&l===r?i:i=t(o=a,r=l)}}function Gd(e){return function(){this.style.removeProperty(e)}}function CN(e,t,o){var r,i=o+"",a;return function(){var l=Dn(this,e);return l===i?null:l===r?a:a=t(r=l,o)}}function vN(e,t,o){var r,i,a;return function(){var l=Dn(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Dn(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=t(r=l,s))}}function NN(e,t){var o,r,i,a="style."+t,l="end."+a,s;return function(){var c=Nt(this,e),d=c.on,f=c.value[a]==null?s||(s=Gd(t)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function SN(e,t,o){var r=(e+="")=="transform"?xv:qd;return t==null?this.styleTween(e,kN(e,r)).on("end.style."+e,Gd(e)):typeof t=="function"?this.styleTween(e,vN(e,r,Ra(this,"style."+e,t))).each(NN(this._id,e)):this.styleTween(e,CN(e,r,t),o).on("end.style."+e,null)}function xN(e,t,o){return function(r){this.style.setProperty(e,t.call(this,r),o)}}function AN(e,t,o){var r,i;function a(){var l=t.apply(this,arguments);return l!==i&&(r=(i=l)&&xN(e,l,o)),r}return a._value=t,a}function TN(e,t,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;return this.tween(r,AN(e,t,o??""))}function PN(e){return function(){this.textContent=e}}function IN(e){return function(){var t=e(this);this.textContent=t??""}}function ON(e){return this.tween("text",typeof e=="function"?IN(Ra(this,"text",e)):PN(e==null?"":e+""))}function $N(e){return function(t){this.textContent=e.call(this,t)}}function BN(e){var t,o;function r(){var i=e.apply(this,arguments);return i!==o&&(t=(o=i)&&$N(i)),t}return r._value=e,r}function DN(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,BN(e))}function VN(){for(var e=this._name,t=this._id,o=jd(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)if(c=l[d]){var f=gt(c,t);Mr(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Dt(r,this._parents,e,o)}function RN(){var e,t,o=this,r=o._id,i=o.size();return new Promise(function(a,l){var s={value:l},c={value:function(){--i===0&&a()}};o.each(function(){var d=Nt(this,r),f=d.on;f!==e&&(t=(e=f).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),d.on=t}),i===0&&a()})}var MN=0;function Dt(e,t,o,r){this._groups=e,this._parents=t,this._name=o,this._id=r}function jd(){return++MN}var Vt=ho.prototype;Dt.prototype={constructor:Dt,select:_N,selectAll:bN,selectChild:Vt.selectChild,selectChildren:Vt.selectChildren,filter:uN,merge:fN,selection:EN,transition:VN,call:Vt.call,nodes:Vt.nodes,node:Vt.node,size:Vt.size,empty:Vt.empty,each:Vt.each,on:gN,attr:Wv,attrTween:eN,style:SN,styleTween:TN,text:ON,textTween:DN,remove:yN,tween:Kv,delay:oN,duration:aN,ease:sN,easeVarying:dN,end:RN,[Symbol.iterator]:Vt[Symbol.iterator]};function FN(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var LN={time:null,delay:0,duration:250,ease:FN};function UN(e,t){for(var o;!(o=e.__transition)||!(o=o[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return o}function KN(e){var t,o;e instanceof Dt?(t=e._id,e=e._name):(t=jd(),(o=LN).time=Oa(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&Mr(c,e,t,d,l,o||UN(c,t));return new Dt(r,this._parents,e,t)}ho.prototype.interrupt=Fv,ho.prototype.transition=KN;const Lr=e=>()=>e;function qN(e,{sourceEvent:t,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function Rt(e,t,o){this.k=e,this.x=t,this.y=o}Rt.prototype={constructor:Rt,scale:function(e){return e===1?this:new Rt(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Rt(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Fn=new Rt(1,0,0);Rt.prototype;function Ma(e){e.stopImmediatePropagation()}function So(e){e.preventDefault(),e.stopImmediatePropagation()}function GN(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function jN(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function zd(){return this.__zoom||Fn}function zN(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function HN(){return navigator.maxTouchPoints||"ontouchstart"in this}function YN(e,t,o){var r=e.invertX(t[0][0])-o[0][0],i=e.invertX(t[1][0])-o[1][0],a=e.invertY(t[0][1])-o[0][1],l=e.invertY(t[1][1])-o[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),l>a?(a+l)/2:Math.min(0,a)||Math.max(0,l))}function WN(){var e=GN,t=jN,o=YN,r=zN,i=HN,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Ir,d=wr("start","zoom","end"),f,u,p,m=500,h=150,w=0,g=10;function _(E){E.property("__zoom",zd).on("wheel.zoom",I,{passive:!1}).on("mousedown.zoom",B).on("dblclick.zoom",W).filter(i).on("touchstart.zoom",M).on("touchmove.zoom",v).on("touchend.zoom touchcancel.zoom",N).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(E,R,O,j){var G=E.selection?E.selection():E;G.property("__zoom",zd),E!==G?x(E,R,O,j):G.interrupt().each(function(){k(this,arguments).event(j).start().zoom(null,typeof R=="function"?R.apply(this,arguments):R).end()})},_.scaleBy=function(E,R,O,j){_.scaleTo(E,function(){var G=this.__zoom.k,F=typeof R=="function"?R.apply(this,arguments):R;return G*F},O,j)},_.scaleTo=function(E,R,O,j){_.transform(E,function(){var G=t.apply(this,arguments),F=this.__zoom,V=O==null?C(G):typeof O=="function"?O.apply(this,arguments):O,U=F.invert(V),re=typeof R=="function"?R.apply(this,arguments):R;return o(y(b(F,re),V,U),G,l)},O,j)},_.translateBy=function(E,R,O,j){_.transform(E,function(){return o(this.__zoom.translate(typeof R=="function"?R.apply(this,arguments):R,typeof O=="function"?O.apply(this,arguments):O),t.apply(this,arguments),l)},null,j)},_.translateTo=function(E,R,O,j,G){_.transform(E,function(){var F=t.apply(this,arguments),V=this.__zoom,U=j==null?C(F):typeof j=="function"?j.apply(this,arguments):j;return o(Fn.translate(U[0],U[1]).scale(V.k).translate(typeof R=="function"?-R.apply(this,arguments):-R,typeof O=="function"?-O.apply(this,arguments):-O),F,l)},j,G)};function b(E,R){return R=Math.max(a[0],Math.min(a[1],R)),R===E.k?E:new Rt(R,E.x,E.y)}function y(E,R,O){var j=R[0]-O[0]*E.k,G=R[1]-O[1]*E.k;return j===E.x&&G===E.y?E:new Rt(E.k,j,G)}function C(E){return[(+E[0][0]+ +E[1][0])/2,(+E[0][1]+ +E[1][1])/2]}function x(E,R,O,j){E.on("start.zoom",function(){k(this,arguments).event(j).start()}).on("interrupt.zoom end.zoom",function(){k(this,arguments).event(j).end()}).tween("zoom",function(){var G=this,F=arguments,V=k(G,F).event(j),U=t.apply(G,F),re=O==null?C(U):typeof O=="function"?O.apply(G,F):O,de=Math.max(U[1][0]-U[0][0],U[1][1]-U[0][1]),ee=G.__zoom,oe=typeof R=="function"?R.apply(G,F):R,Y=c(ee.invert(re).concat(de/ee.k),oe.invert(re).concat(de/oe.k));return function($){if($===1)$=oe;else{var z=Y($),Z=de/z[2];$=new Rt(Z,re[0]-z[0]*Z,re[1]-z[1]*Z)}V.zoom(null,$)}})}function k(E,R,O){return!O&&E.__zooming||new P(E,R)}function P(E,R){this.that=E,this.args=R,this.active=0,this.sourceEvent=null,this.extent=t.apply(E,R),this.taps=0}P.prototype={event:function(E){return E&&(this.sourceEvent=E),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(E,R){return this.mouse&&E!=="mouse"&&(this.mouse[1]=R.invert(this.mouse[0])),this.touch0&&E!=="touch"&&(this.touch0[1]=R.invert(this.touch0[0])),this.touch1&&E!=="touch"&&(this.touch1[1]=R.invert(this.touch1[0])),this.that.__zoom=R,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(E){var R=pt(this.that).datum();d.call(E,this.that,new qN(E,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:d}),R)}};function I(E,...R){if(!e.apply(this,arguments))return;var O=k(this,R).event(E),j=this.__zoom,G=Math.max(a[0],Math.min(a[1],j.k*Math.pow(2,r.apply(this,arguments)))),F=kt(E);if(O.wheel)(O.mouse[0][0]!==F[0]||O.mouse[0][1]!==F[1])&&(O.mouse[1]=j.invert(O.mouse[0]=F)),clearTimeout(O.wheel);else{if(j.k===G)return;O.mouse=[F,j.invert(F)],Fr(this),O.start()}So(E),O.wheel=setTimeout(V,h),O.zoom("mouse",o(y(b(j,G),O.mouse[0],O.mouse[1]),O.extent,l));function V(){O.wheel=null,O.end()}}function B(E,...R){if(p||!e.apply(this,arguments))return;var O=E.currentTarget,j=k(this,R,!0).event(E),G=pt(E.view).on("mousemove.zoom",re,!0).on("mouseup.zoom",de,!0),F=kt(E,O),V=E.clientX,U=E.clientY;yd(E.view),Ma(E),j.mouse=[F,this.__zoom.invert(F)],Fr(this),j.start();function re(ee){if(So(ee),!j.moved){var oe=ee.clientX-V,Y=ee.clientY-U;j.moved=oe*oe+Y*Y>w}j.event(ee).zoom("mouse",o(y(j.that.__zoom,j.mouse[0]=kt(ee,O),j.mouse[1]),j.extent,l))}function de(ee){G.on("mousemove.zoom mouseup.zoom",null),_d(ee.view,j.moved),So(ee),j.event(ee).end()}}function W(E,...R){if(e.apply(this,arguments)){var O=this.__zoom,j=kt(E.changedTouches?E.changedTouches[0]:E,this),G=O.invert(j),F=O.k*(E.shiftKey?.5:2),V=o(y(b(O,F),j,G),t.apply(this,R),l);So(E),s>0?pt(this).transition().duration(s).call(x,V,j,E):pt(this).call(_.transform,V,j,E)}}function M(E,...R){if(e.apply(this,arguments)){var O=E.touches,j=O.length,G=k(this,R,E.changedTouches.length===j).event(E),F,V,U,re;for(Ma(E),V=0;V<j;++V)U=O[V],re=kt(U,this),re=[re,this.__zoom.invert(re),U.identifier],G.touch0?!G.touch1&&G.touch0[2]!==re[2]&&(G.touch1=re,G.taps=0):(G.touch0=re,F=!0,G.taps=1+!!f);f&&(f=clearTimeout(f)),F&&(G.taps<2&&(u=re[0],f=setTimeout(function(){f=null},m)),Fr(this),G.start())}}function v(E,...R){if(this.__zooming){var O=k(this,R).event(E),j=E.changedTouches,G=j.length,F,V,U,re;for(So(E),F=0;F<G;++F)V=j[F],U=kt(V,this),O.touch0&&O.touch0[2]===V.identifier?O.touch0[0]=U:O.touch1&&O.touch1[2]===V.identifier&&(O.touch1[0]=U);if(V=O.that.__zoom,O.touch1){var de=O.touch0[0],ee=O.touch0[1],oe=O.touch1[0],Y=O.touch1[1],$=($=oe[0]-de[0])*$+($=oe[1]-de[1])*$,z=(z=Y[0]-ee[0])*z+(z=Y[1]-ee[1])*z;V=b(V,Math.sqrt($/z)),U=[(de[0]+oe[0])/2,(de[1]+oe[1])/2],re=[(ee[0]+Y[0])/2,(ee[1]+Y[1])/2]}else if(O.touch0)U=O.touch0[0],re=O.touch0[1];else return;O.zoom("touch",o(y(V,U,re),O.extent,l))}}function N(E,...R){if(this.__zooming){var O=k(this,R).event(E),j=E.changedTouches,G=j.length,F,V;for(Ma(E),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),F=0;F<G;++F)V=j[F],O.touch0&&O.touch0[2]===V.identifier?delete O.touch0:O.touch1&&O.touch1[2]===V.identifier&&delete O.touch1;if(O.touch1&&!O.touch0&&(O.touch0=O.touch1,delete O.touch1),O.touch0)O.touch0[1]=this.__zoom.invert(O.touch0[0]);else if(O.end(),O.taps===2&&(V=kt(V,this),Math.hypot(u[0]-V[0],u[1]-V[1])<g)){var U=pt(this).on("dblclick.zoom");U&&U.apply(this,arguments)}}}return _.wheelDelta=function(E){return arguments.length?(r=typeof E=="function"?E:Lr(+E),_):r},_.filter=function(E){return arguments.length?(e=typeof E=="function"?E:Lr(!!E),_):e},_.touchable=function(E){return arguments.length?(i=typeof E=="function"?E:Lr(!!E),_):i},_.extent=function(E){return arguments.length?(t=typeof E=="function"?E:Lr([[+E[0][0],+E[0][1]],[+E[1][0],+E[1][1]]]),_):t},_.scaleExtent=function(E){return arguments.length?(a[0]=+E[0],a[1]=+E[1],_):[a[0],a[1]]},_.translateExtent=function(E){return arguments.length?(l[0][0]=+E[0][0],l[1][0]=+E[1][0],l[0][1]=+E[0][1],l[1][1]=+E[1][1],_):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},_.constrain=function(E){return arguments.length?(o=E,_):o},_.duration=function(E){return arguments.length?(s=+E,_):s},_.interpolate=function(E){return arguments.length?(c=E,_):c},_.on=function(){var E=d.on.apply(d,arguments);return E===d?_:E},_.clickDistance=function(E){return arguments.length?(w=(E=+E)*E,_):Math.sqrt(w)},_.tapDistance=function(E){return arguments.length?(g=+E,_):g},_}var ge=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ge||{}),Fa=(e=>(e.Partial="partial",e.Full="full",e))(Fa||{}),fn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(fn||{}),Ut=(e=>(e.Strict="strict",e.Loose="loose",e))(Ut||{}),Ur=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(Ur||{}),xo=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(xo||{}),Hd=(e=>(e.TopLeft="top-left",e.TopCenter="top-center",e.TopRight="top-right",e.BottomLeft="bottom-left",e.BottomCenter="bottom-center",e.BottomRight="bottom-right",e))(Hd||{});const ZN=["INPUT","SELECT","TEXTAREA"],XN=typeof document<"u"?document:null;function La(e){var t,o;const r=((o=(t=e.composedPath)==null?void 0:t.call(e))==null?void 0:o[0])||e.target,i=typeof(r==null?void 0:r.hasAttribute)=="function"?r.hasAttribute("contenteditable"):!1,a=typeof(r==null?void 0:r.closest)=="function"?r.closest(".nokey"):null;return ZN.includes(r==null?void 0:r.nodeName)||i||!!a}function JN(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Yd(e,t,o,r){const i=t.replace("+",`
|
|
19
|
+
*/function ya(e,t){(t==null||t>e.length)&&(t=e.length);for(var o=0,r=Array(t);o<t;o++)r[o]=e[o];return r}function $E(e){if(Array.isArray(e))return ya(e)}function BE(e,t,o){return(t=FE(t))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function VE(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function RE(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
20
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Yc(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),o.push.apply(o,r)}return o}function Wc(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?Yc(Object(o),!0).forEach(function(r){BE(e,r,o[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):Yc(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}function DE(e){return $E(e)||VE(e)||LE(e)||RE()}function ME(e,t){if(typeof e!="object"||!e)return e;var o=e[Symbol.toPrimitive];if(o!==void 0){var r=o.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function FE(e){var t=ME(e,"string");return typeof t=="symbol"?t:t+""}function LE(e,t){if(e){if(typeof e=="string")return ya(e,t);var o={}.toString.call(e).slice(8,-1);return o==="Object"&&e.constructor&&(o=e.constructor.name),o==="Map"||o==="Set"?Array.from(e):o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?ya(e,t):void 0}}var Xc={activateTrap:function(t,o){if(t.length>0){var r=t[t.length-1];r!==o&&r._setPausedState(!0)}var i=t.indexOf(o);i===-1||t.splice(i,1),t.push(o)},deactivateTrap:function(t,o){var r=t.indexOf(o);r!==-1&&t.splice(r,1),t.length>0&&!t[t.length-1]._isManuallyPaused()&&t[t.length-1]._setPausedState(!1)}},UE=function(t){return t.tagName&&t.tagName.toLowerCase()==="input"&&typeof t.select=="function"},KE=function(t){return(t==null?void 0:t.key)==="Escape"||(t==null?void 0:t.key)==="Esc"||(t==null?void 0:t.keyCode)===27},go=function(t){return(t==null?void 0:t.key)==="Tab"||(t==null?void 0:t.keyCode)===9},GE=function(t){return go(t)&&!t.shiftKey},jE=function(t){return go(t)&&t.shiftKey},Zc=function(t){return setTimeout(t,0)},ho=function(t){for(var o=arguments.length,r=new Array(o>1?o-1:0),i=1;i<o;i++)r[i-1]=arguments[i];return typeof t=="function"?t.apply(void 0,r):t},br=function(t){return t.target.shadowRoot&&typeof t.composedPath=="function"?t.composedPath()[0]:t.target},qE=[],zE=function(t,o){var r=(o==null?void 0:o.document)||document,i=(o==null?void 0:o.trapStack)||qE,a=Wc({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0,isKeyForward:GE,isKeyBackward:jE},o),l={containers:[],containerGroups:[],tabbableGroups:[],nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,manuallyPaused:!1,delayInitialFocusTimer:void 0,recentNavEvent:void 0},s,c=function(N,E,D){return N&&N[E]!==void 0?N[E]:a[D||E]},d=function(N,E){var D=typeof(E==null?void 0:E.composedPath)=="function"?E.composedPath():void 0;return l.containerGroups.findIndex(function(O){var q=O.container,j=O.tabbableNodes;return q.contains(N)||(D==null?void 0:D.includes(q))||j.find(function(F){return F===N})})},u=function(N){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},D=E.hasFallback,O=D===void 0?!1:D,q=E.params,j=q===void 0?[]:q,F=a[N];if(typeof F=="function"&&(F=F.apply(void 0,DE(j))),F===!0&&(F=void 0),!F){if(F===void 0||F===!1)return F;throw new Error("`".concat(N,"` was specified but was not a node, or did not return a node"))}var R=F;if(typeof F=="string"){try{R=r.querySelector(F)}catch(U){throw new Error("`".concat(N,'` appears to be an invalid selector; error="').concat(U.message,'"'))}if(!R&&!O)throw new Error("`".concat(N,"` as selector refers to no known node"))}return R},f=function(){var N=u("initialFocus",{hasFallback:!0});if(N===!1)return!1;if(N===void 0||N&&!ha(N,a.tabbableOptions))if(d(r.activeElement)>=0)N=r.activeElement;else{var E=l.tabbableGroups[0],D=E&&E.firstTabbableNode;N=D||u("fallbackFocus")}else N===null&&(N=u("fallbackFocus"));if(!N)throw new Error("Your focus-trap needs to have at least one focusable element");return N},p=function(){if(l.containerGroups=l.containers.map(function(N){var E=PE(N,a.tabbableOptions),D=IE(N,a.tabbableOptions),O=E.length>0?E[0]:void 0,q=E.length>0?E[E.length-1]:void 0,j=D.find(function(U){return Bn(U)}),F=D.slice().reverse().find(function(U){return Bn(U)}),R=!!E.find(function(U){return sn(U)>0});return{container:N,tabbableNodes:E,focusableNodes:D,posTabIndexesFound:R,firstTabbableNode:O,lastTabbableNode:q,firstDomTabbableNode:j,lastDomTabbableNode:F,nextTabbableNode:function(re){var de=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,ee=E.indexOf(re);return ee<0?de?D.slice(D.indexOf(re)+1).find(function(oe){return Bn(oe)}):D.slice(0,D.indexOf(re)).reverse().find(function(oe){return Bn(oe)}):E[ee+(de?1:-1)]}}}),l.tabbableGroups=l.containerGroups.filter(function(N){return N.tabbableNodes.length>0}),l.tabbableGroups.length<=0&&!u("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(l.containerGroups.find(function(N){return N.posTabIndexesFound})&&l.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},m=function(N){var E=N.activeElement;if(E)return E.shadowRoot&&E.shadowRoot.activeElement!==null?m(E.shadowRoot):E},h=function(N){if(N!==!1&&N!==m(document)){if(!N||!N.focus){h(f());return}N.focus({preventScroll:!!a.preventScroll}),l.mostRecentlyFocusedNode=N,UE(N)&&N.select()}},w=function(N){var E=u("setReturnFocus",{params:[N]});return E||(E===!1?!1:N)},g=function(N){var E=N.target,D=N.event,O=N.isBackward,q=O===void 0?!1:O;E=E||br(D),p();var j=null;if(l.tabbableGroups.length>0){var F=d(E,D),R=F>=0?l.containerGroups[F]:void 0;if(F<0)q?j=l.tabbableGroups[l.tabbableGroups.length-1].lastTabbableNode:j=l.tabbableGroups[0].firstTabbableNode;else if(q){var U=l.tabbableGroups.findIndex(function($){var z=$.firstTabbableNode;return E===z});if(U<0&&(R.container===E||ha(E,a.tabbableOptions)&&!Bn(E,a.tabbableOptions)&&!R.nextTabbableNode(E,!1))&&(U=F),U>=0){var re=U===0?l.tabbableGroups.length-1:U-1,de=l.tabbableGroups[re];j=sn(E)>=0?de.lastTabbableNode:de.lastDomTabbableNode}else go(D)||(j=R.nextTabbableNode(E,!1))}else{var ee=l.tabbableGroups.findIndex(function($){var z=$.lastTabbableNode;return E===z});if(ee<0&&(R.container===E||ha(E,a.tabbableOptions)&&!Bn(E,a.tabbableOptions)&&!R.nextTabbableNode(E))&&(ee=F),ee>=0){var oe=ee===l.tabbableGroups.length-1?0:ee+1,Y=l.tabbableGroups[oe];j=sn(E)>=0?Y.firstTabbableNode:Y.firstDomTabbableNode}else go(D)||(j=R.nextTabbableNode(E))}}else j=u("fallbackFocus");return j},_=function(N){var E=br(N);if(!(d(E,N)>=0)){if(ho(a.clickOutsideDeactivates,N)){s.deactivate({returnFocus:a.returnFocusOnDeactivate});return}ho(a.allowOutsideClick,N)||N.preventDefault()}},b=function(N){var E=br(N),D=d(E,N)>=0;if(D||E instanceof Document)D&&(l.mostRecentlyFocusedNode=E);else{N.stopImmediatePropagation();var O,q=!0;if(l.mostRecentlyFocusedNode)if(sn(l.mostRecentlyFocusedNode)>0){var j=d(l.mostRecentlyFocusedNode),F=l.containerGroups[j].tabbableNodes;if(F.length>0){var R=F.findIndex(function(U){return U===l.mostRecentlyFocusedNode});R>=0&&(a.isKeyForward(l.recentNavEvent)?R+1<F.length&&(O=F[R+1],q=!1):R-1>=0&&(O=F[R-1],q=!1))}}else l.containerGroups.some(function(U){return U.tabbableNodes.some(function(re){return sn(re)>0})})||(q=!1);else q=!1;q&&(O=g({target:l.mostRecentlyFocusedNode,isBackward:a.isKeyBackward(l.recentNavEvent)})),h(O||l.mostRecentlyFocusedNode||f())}l.recentNavEvent=void 0},y=function(N){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;l.recentNavEvent=N;var D=g({event:N,isBackward:E});D&&(go(N)&&N.preventDefault(),h(D))},C=function(N){(a.isKeyForward(N)||a.isKeyBackward(N))&&y(N,a.isKeyBackward(N))},T=function(N){KE(N)&&ho(a.escapeDeactivates,N)!==!1&&(N.preventDefault(),s.deactivate())},k=function(N){var E=br(N);d(E,N)>=0||ho(a.clickOutsideDeactivates,N)||ho(a.allowOutsideClick,N)||(N.preventDefault(),N.stopImmediatePropagation())},S=function(){if(l.active)return Xc.activateTrap(i,s),l.delayInitialFocusTimer=a.delayInitialFocus?Zc(function(){h(f())}):h(f()),r.addEventListener("focusin",b,!0),r.addEventListener("mousedown",_,{capture:!0,passive:!1}),r.addEventListener("touchstart",_,{capture:!0,passive:!1}),r.addEventListener("click",k,{capture:!0,passive:!1}),r.addEventListener("keydown",C,{capture:!0,passive:!1}),r.addEventListener("keydown",T),s},I=function(){if(l.active)return r.removeEventListener("focusin",b,!0),r.removeEventListener("mousedown",_,!0),r.removeEventListener("touchstart",_,!0),r.removeEventListener("click",k,!0),r.removeEventListener("keydown",C,!0),r.removeEventListener("keydown",T),s},B=function(N){var E=N.some(function(D){var O=Array.from(D.removedNodes);return O.some(function(q){return q===l.mostRecentlyFocusedNode})});E&&h(f())},W=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(B):void 0,M=function(){W&&(W.disconnect(),l.active&&!l.paused&&l.containers.map(function(N){W.observe(N,{subtree:!0,childList:!0})}))};return s={get active(){return l.active},get paused(){return l.paused},activate:function(N){if(l.active)return this;var E=c(N,"onActivate"),D=c(N,"onPostActivate"),O=c(N,"checkCanFocusTrap");O||p(),l.active=!0,l.paused=!1,l.nodeFocusedBeforeActivation=m(r),E==null||E();var q=function(){O&&p(),S(),M(),D==null||D()};return O?(O(l.containers.concat()).then(q,q),this):(q(),this)},deactivate:function(N){if(!l.active)return this;var E=Wc({onDeactivate:a.onDeactivate,onPostDeactivate:a.onPostDeactivate,checkCanReturnFocus:a.checkCanReturnFocus},N);clearTimeout(l.delayInitialFocusTimer),l.delayInitialFocusTimer=void 0,I(),l.active=!1,l.paused=!1,M(),Xc.deactivateTrap(i,s);var D=c(E,"onDeactivate"),O=c(E,"onPostDeactivate"),q=c(E,"checkCanReturnFocus"),j=c(E,"returnFocus","returnFocusOnDeactivate");D==null||D();var F=function(){Zc(function(){j&&h(w(l.nodeFocusedBeforeActivation)),O==null||O()})};return j&&q?(q(w(l.nodeFocusedBeforeActivation)).then(F,F),this):(F(),this)},pause:function(N){return l.active?(l.manuallyPaused=!0,this._setPausedState(!0,N)):this},unpause:function(N){return l.active?(l.manuallyPaused=!1,i[i.length-1]!==this?this:this._setPausedState(!1,N)):this},updateContainerElements:function(N){var E=[].concat(N).filter(Boolean);return l.containers=E.map(function(D){return typeof D=="string"?r.querySelector(D):D}),l.active&&p(),M(),this}},Object.defineProperties(s,{_isManuallyPaused:{value:function(){return l.manuallyPaused}},_setPausedState:{value:function(N,E){if(l.paused===N)return this;if(l.paused=N,N){var D=c(E,"onPause"),O=c(E,"onPostPause");D==null||D(),I(),M(),O==null||O()}else{var q=c(E,"onUnpause"),j=c(E,"onPostUnpause");q==null||q(),p(),S(),M(),j==null||j()}return this}}}),s.updateContainerElements(t),s};function HE(e,t={}){let o;const{immediate:r,...i}=t,a=n.shallowRef(!1),l=n.shallowRef(!1),s=p=>o&&o.activate(p),c=p=>o&&o.deactivate(p),d=()=>{o&&(o.pause(),l.value=!0)},u=()=>{o&&(o.unpause(),l.value=!1)},f=n.computed(()=>{const p=n.toValue(e);return Je.toArray(p).map(m=>{const h=n.toValue(m);return typeof h=="string"?h:Je.unrefElement(h)}).filter(gE)});return n.watch(f,p=>{p.length&&(o=zE(p,{...i,onActivate(){a.value=!0,t.onActivate&&t.onActivate()},onDeactivate(){a.value=!1,t.onDeactivate&&t.onDeactivate()}}),r&&s())},{flush:"post"}),Je.tryOnScopeDispose(()=>c()),{hasFocus:a,isPaused:l,activate:s,deactivate:c,pause:d,unpause:u}}const YE="44px",WE="220px",XE="366px",ZE="52px",JE=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Jc="application/x-datakit+json",QE={class:"dk-editor-nav"},ek={class:"top"},tk={class:"bottom"},nk=_e(n.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:t}){const{t:o}=Ue.createI18n("en-us",je),r=t,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Ee.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=ma(),l=n.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=n.ref(!1);function c(){a.value=!a.value}return(d,u)=>(n.openBlock(),n.createElementBlock("nav",QE,[n.createElementVNode("div",ek,[(n.openBlock(),n.createElementBlock(n.Fragment,null,n.renderList(i,({label:f,to:p,icon:m,onClick:h})=>n.createVNode(n.unref(Pe.KTooltip),{key:f,"kpop-attributes":{offset:"10px"},label:f,placement:"right"},{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.unref(Pe.KButton),{key:f,appearance:"none",class:"nav-item",icon:"",to:p,onClick:h},{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(m),{decorative:"",size:n.unref(sa)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),n.createElementVNode("div",tk,[n.createElementVNode("div",{class:n.normalizeClass(["side-panel-toggle",{expanded:n.unref(a)}]),onTransitionend:u[0]||(u[0]=n.withModifiers(f=>s.value=!1,["self"])),onTransitionstart:u[1]||(u[1]=n.withModifiers(f=>s.value=!0,["self"]))},[n.createVNode(n.unref(Pe.KTooltip),{label:s.value?void 0:l.value,placement:n.unref(a)?"left":"right"},{default:n.withCtx(()=>[n.createVNode(n.unref(Pe.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:n.withCtx(()=>[n.unref(a)?(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDoubleLeftIcon),{key:0,decorative:"",size:n.unref(sa)},null,8,["size"])):(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDoubleRightIcon),{key:1,decorative:"",size:n.unref(sa)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-4498cfce"]]),ok=_e(n.defineComponent({__name:"EditorCanvas",setup(e){const t=n.useTemplateRef("editorCanvas"),o=n.useTemplateRef("requestLabel"),r=n.useTemplateRef("requestCanvas"),i=n.useTemplateRef("resizeHandle"),a=n.useTemplateRef("responseCanvas"),l=Je.useElementBounding(t),s=Je.useElementBounding(o),c=Je.useElementBounding(r),d=Je.useElementBounding(i),u=Je.useElementBounding(a),f=n.computed(()=>Math.max(30,l.height.value*.03)),p=n.computed(()=>c.height.value<f.value),m=n.computed(()=>u.height.value<f.value),h=n.ref("50%"),w=()=>{p.value?h.value="50%":h.value="0"},g=()=>{m.value?h.value="50%":h.value="100%"},{isDragging:_}=Je.useDraggable(i,{onMove(b){const C=b.y+d.height.value/2-s.bottom.value;h.value=`max(0%, min(100%, ${C}px))`},onEnd(){c.height.value<f.value?h.value="0":u.height.value<f.value&&(h.value="100%")}});return(b,y)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"editorCanvas",ref:t,class:"editor-canvas"},[n.createElementVNode("div",{ref_key:"requestLabel",ref:o,class:"label",onClick:w},[n.createVNode(n.unref(Ee.ChevronDownIcon),{class:n.normalizeClass(["icon",{collapsed:p.value}])},null,8,["class"]),y[0]||(y[0]=n.createElementVNode("div",null,"Request",-1))],512),n.createElementVNode("div",{ref_key:"requestCanvas",ref:r,class:n.normalizeClass(["canvas",{dragging:n.unref(_)}]),style:n.normalizeStyle({height:h.value})},[n.renderSlot(b.$slots,"request",{},void 0,!0)],6),n.createElementVNode("div",{ref_key:"resizeHandle",ref:i,class:"resize-handle"},null,512),n.createElementVNode("div",{ref:"responseLabel",class:n.normalizeClass(["label",{dragging:n.unref(_)}]),onClick:g},[n.createVNode(n.unref(Ee.ChevronDownIcon),{class:n.normalizeClass(["icon",{collapsed:m.value}])},null,8,["class"]),y[1]||(y[1]=n.createElementVNode("div",null," Response ",-1))],2),n.createElementVNode("div",{ref_key:"responseCanvas",ref:a,class:"canvas response"},[n.renderSlot(b.$slots,"response",{},void 0,!0)],512)],512))}}),[["__scopeId","data-v-e2f7b17f"]]);function wr(e){return n.getCurrentScope()?(n.onScopeDispose(e),!0):!1}function Bt(e){return typeof e=="function"?e():n.unref(e)}const rk=typeof window<"u"&&typeof document<"u",ik=e=>typeof e<"u",ak=Object.prototype.toString,lk=e=>ak.call(e)==="[object Object]",sk=()=>{};function ck(e,t){function o(...r){return new Promise((i,a)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(i).catch(a)})}return o}const Qc=e=>e();function dk(e=Qc){const t=n.ref(!0);function o(){t.value=!1}function r(){t.value=!0}const i=(...a)=>{t.value&&e(...a)};return{isActive:n.readonly(t),pause:o,resume:r,eventFilter:i}}function ed(e,t=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(t?()=>i(o):r,e)})}function uk(e,t,o={}){const{eventFilter:r=Qc,...i}=o;return n.watch(e,ck(r,t),i)}function Vn(e,t,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=dk(r);return{stop:uk(e,t,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function fk(e,t={}){if(!n.isRef(e))return n.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=n.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=Bt(t.replaceRef))!=null?a:!0)if(Array.isArray(e.value)){const s=[...e.value];s[r]=i,e.value=s}else{const s={...e.value,[r]:i};Object.setPrototypeOf(s,Object.getPrototypeOf(e.value)),e.value=s}else e.value[r]=i}}));return o}function _a(e,t=!1){function o(f,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:w}={}){let g=null;const b=[new Promise(y=>{g=n.watch(e,C=>{f(C)!==t&&(g==null||g(),y(C))},{flush:p,deep:m,immediate:!0})})];return h!=null&&b.push(ed(h,w).then(()=>Bt(e)).finally(()=>g==null?void 0:g())),Promise.race(b)}function r(f,p){if(!n.isRef(f))return o(C=>C===f,p);const{flush:m="sync",deep:h=!1,timeout:w,throwOnTimeout:g}=p??{};let _=null;const y=[new Promise(C=>{_=n.watch([e,f],([T,k])=>{t!==(T===k)&&(_==null||_(),C(T))},{flush:m,deep:h,immediate:!0})})];return w!=null&&y.push(ed(w,g).then(()=>Bt(e)).finally(()=>(_==null||_(),Bt(e)))),Promise.race(y)}function i(f){return o(p=>!!p,f)}function a(f){return r(null,f)}function l(f){return r(void 0,f)}function s(f){return o(Number.isNaN,f)}function c(f,p){return o(m=>{const h=Array.from(m);return h.includes(f)||h.includes(Bt(f))},p)}function d(f){return u(1,f)}function u(f=1,p){let m=-1;return o(()=>(m+=1,m>=f),p)}return Array.isArray(Bt(e))?{toMatch:o,toContains:c,changed:d,changedTimes:u,get not(){return _a(e,!t)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:u,get not(){return _a(e,!t)}}}function ba(e){return _a(e)}function pk(e){var t;const o=Bt(e);return(t=o==null?void 0:o.$el)!=null?t:o}const td=rk?window:void 0;function nd(...e){let t,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,t=td):[t,o,r,i]=e,!t)return sk;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(u=>u()),a.length=0},s=(u,f,p,m)=>(u.addEventListener(f,p,m),()=>u.removeEventListener(f,p,m)),c=n.watch(()=>[pk(t),Bt(i)],([u,f])=>{if(l(),!u)return;const p=lk(f)?{...f}:f;a.push(...o.flatMap(m=>r.map(h=>s(u,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return wr(d),d}function mk(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function od(...e){let t,o,r={};e.length===3?(t=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,o=e[0],r=e[1]):(t=e[0],o=e[1]):(t=!0,o=e[0]);const{target:i=td,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=mk(t);return nd(i,a,u=>{u.repeat&&Bt(s)||c(u)&&o(u)},l)}function gk(e){return JSON.parse(JSON.stringify(e))}function wa(e,t,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:u=!1,defaultValue:f,shouldEmit:p}=r,m=n.getCurrentInstance(),h=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let w=d;t||(t="modelValue"),w=w||`update:${t.toString()}`;const g=y=>s?typeof s=="function"?s(y):gk(y):y,_=()=>ik(e[t])?g(e[t]):f,b=y=>{p?p(y)&&h(w,y):h(w,y)};if(c){const y=_(),C=n.ref(y);let T=!1;return n.watch(()=>e[t],k=>{T||(T=!0,C.value=g(k),n.nextTick(()=>T=!1))}),n.watch(C,k=>{!T&&(k!==e[t]||u)&&b(k)},{deep:u}),C}else return n.computed({get(){return _()},set(y){b(y)}})}var hk={value:()=>{}};function Er(){for(var e=0,t=arguments.length,o={},r;e<t;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new kr(o)}function kr(e){this._=e}function yk(e,t){return e.trim().split(/^|\s+/).map(function(o){var r="",i=o.indexOf(".");if(i>=0&&(r=o.slice(i+1),o=o.slice(0,i)),o&&!t.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}kr.prototype=Er.prototype={constructor:kr,on:function(e,t){var o=this._,r=yk(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=_k(o[i],e.name)))return i;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++a<l;)if(i=(e=r[a]).type)o[i]=rd(o[i],e.name,t);else if(t==null)for(i in o)o[i]=rd(o[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var o in t)e[o]=t[o].slice();return new kr(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var o=new Array(i),r=0,i,a;r<i;++r)o[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,o)},apply:function(e,t,o){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,o)}};function _k(e,t){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===t)return i.value}function rd(e,t,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=hk,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:t,value:o}),e}var Ea="http://www.w3.org/1999/xhtml";const id={svg:"http://www.w3.org/2000/svg",xhtml:Ea,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Cr(e){var t=e+="",o=t.indexOf(":");return o>=0&&(t=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),id.hasOwnProperty(t)?{space:id[t],local:e}:e}function bk(e){return function(){var t=this.ownerDocument,o=this.namespaceURI;return o===Ea&&t.documentElement.namespaceURI===Ea?t.createElement(e):t.createElementNS(o,e)}}function wk(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function ad(e){var t=Cr(e);return(t.local?wk:bk)(t)}function Ek(){}function ka(e){return e==null?Ek:function(){return this.querySelector(e)}}function kk(e){typeof e!="function"&&(e=ka(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[i],l=a.length,s=r[i]=new Array(l),c,d,u=0;u<l;++u)(c=a[u])&&(d=e.call(c,c.__data__,u,a))&&("__data__"in c&&(d.__data__=c.__data__),s[u]=d);return new rt(r,this._parents)}function Ck(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function vk(){return[]}function ld(e){return e==null?vk:function(){return this.querySelectorAll(e)}}function Nk(e){return function(){return Ck(e.apply(this,arguments))}}function Sk(e){typeof e=="function"?e=Nk(e):e=ld(e);for(var t=this._groups,o=t.length,r=[],i=[],a=0;a<o;++a)for(var l=t[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&(r.push(e.call(c,c.__data__,d,l)),i.push(c));return new rt(r,i)}function sd(e){return function(){return this.matches(e)}}function cd(e){return function(t){return t.matches(e)}}var xk=Array.prototype.find;function Ak(e){return function(){return xk.call(this.children,e)}}function Tk(){return this.firstElementChild}function Pk(e){return this.select(e==null?Tk:Ak(typeof e=="function"?e:cd(e)))}var Ik=Array.prototype.filter;function Ok(){return Array.from(this.children)}function $k(e){return function(){return Ik.call(this.children,e)}}function Bk(e){return this.selectAll(e==null?Ok:$k(typeof e=="function"?e:cd(e)))}function Vk(e){typeof e!="function"&&(e=sd(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new rt(r,this._parents)}function dd(e){return new Array(e.length)}function Rk(){return new rt(this._enter||this._groups.map(dd),this._parents)}function vr(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}vr.prototype={constructor:vr,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Dk(e){return function(){return e}}function Mk(e,t,o,r,i,a){for(var l=0,s,c=t.length,d=a.length;l<d;++l)(s=t[l])?(s.__data__=a[l],r[l]=s):o[l]=new vr(e,a[l]);for(;l<c;++l)(s=t[l])&&(i[l]=s)}function Fk(e,t,o,r,i,a,l){var s,c,d=new Map,u=t.length,f=a.length,p=new Array(u),m;for(s=0;s<u;++s)(c=t[s])&&(p[s]=m=l.call(c,c.__data__,s,t)+"",d.has(m)?i[s]=c:d.set(m,c));for(s=0;s<f;++s)m=l.call(e,a[s],s,a)+"",(c=d.get(m))?(r[s]=c,c.__data__=a[s],d.delete(m)):o[s]=new vr(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&d.get(p[s])===c&&(i[s]=c)}function Lk(e){return e.__data__}function Uk(e,t){if(!arguments.length)return Array.from(this,Lk);var o=t?Fk:Mk,r=this._parents,i=this._groups;typeof e!="function"&&(e=Dk(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),d=0;d<a;++d){var u=r[d],f=i[d],p=f.length,m=Kk(e.call(u,u&&u.__data__,d,r)),h=m.length,w=s[d]=new Array(h),g=l[d]=new Array(h),_=c[d]=new Array(p);o(u,f,w,g,_,m,t);for(var b=0,y=0,C,T;b<h;++b)if(C=w[b]){for(b>=y&&(y=b+1);!(T=g[y])&&++y<h;);C._next=T||null}}return l=new rt(l,r),l._enter=s,l._exit=c,l}function Kk(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Gk(){return new rt(this._exit||this._groups.map(dd),this._parents)}function jk(e,t,o){var r=this.enter(),i=this,a=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(i=t(i),i&&(i=i.selection())),o==null?a.remove():o(a),r&&i?r.merge(i).order():i}function qk(e){for(var t=e.selection?e.selection():e,o=this._groups,r=t._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],u=r[c],f=d.length,p=s[c]=new Array(f),m,h=0;h<f;++h)(m=d[h]||u[h])&&(p[h]=m);for(;c<i;++c)s[c]=o[c];return new rt(s,this._parents)}function zk(){for(var e=this._groups,t=-1,o=e.length;++t<o;)for(var r=e[t],i=r.length-1,a=r[i],l;--i>=0;)(l=r[i])&&(a&&l.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(l,a),a=l);return this}function Hk(e){e||(e=Yk);function t(f,p){return f&&p?e(f.__data__,p.__data__):!f-!p}for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a){for(var l=o[a],s=l.length,c=i[a]=new Array(s),d,u=0;u<s;++u)(d=l[u])&&(c[u]=d);c.sort(t)}return new rt(i,this._parents).order()}function Yk(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function Wk(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Xk(){return Array.from(this)}function Zk(){for(var e=this._groups,t=0,o=e.length;t<o;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function Jk(){let e=0;for(const t of this)++e;return e}function Qk(){return!this.node()}function eC(e){for(var t=this._groups,o=0,r=t.length;o<r;++o)for(var i=t[o],a=0,l=i.length,s;a<l;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function tC(e){return function(){this.removeAttribute(e)}}function nC(e){return function(){this.removeAttributeNS(e.space,e.local)}}function oC(e,t){return function(){this.setAttribute(e,t)}}function rC(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function iC(e,t){return function(){var o=t.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function aC(e,t){return function(){var o=t.apply(this,arguments);o==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,o)}}function lC(e,t){var o=Cr(e);if(arguments.length<2){var r=this.node();return o.local?r.getAttributeNS(o.space,o.local):r.getAttribute(o)}return this.each((t==null?o.local?nC:tC:typeof t=="function"?o.local?aC:iC:o.local?rC:oC)(o,t))}function ud(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function sC(e){return function(){this.style.removeProperty(e)}}function cC(e,t,o){return function(){this.style.setProperty(e,t,o)}}function dC(e,t,o){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function uC(e,t,o){return arguments.length>1?this.each((t==null?sC:typeof t=="function"?dC:cC)(e,t,o??"")):Rn(this.node(),e)}function Rn(e,t){return e.style.getPropertyValue(t)||ud(e).getComputedStyle(e,null).getPropertyValue(t)}function fC(e){return function(){delete this[e]}}function pC(e,t){return function(){this[e]=t}}function mC(e,t){return function(){var o=t.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function gC(e,t){return arguments.length>1?this.each((t==null?fC:typeof t=="function"?mC:pC)(e,t)):this.node()[e]}function fd(e){return e.trim().split(/^|\s+/)}function Ca(e){return e.classList||new pd(e)}function pd(e){this._node=e,this._names=fd(e.getAttribute("class")||"")}pd.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function md(e,t){for(var o=Ca(e),r=-1,i=t.length;++r<i;)o.add(t[r])}function gd(e,t){for(var o=Ca(e),r=-1,i=t.length;++r<i;)o.remove(t[r])}function hC(e){return function(){md(this,e)}}function yC(e){return function(){gd(this,e)}}function _C(e,t){return function(){(t.apply(this,arguments)?md:gd)(this,e)}}function bC(e,t){var o=fd(e+"");if(arguments.length<2){for(var r=Ca(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof t=="function"?_C:t?hC:yC)(o,t))}function wC(){this.textContent=""}function EC(e){return function(){this.textContent=e}}function kC(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function CC(e){return arguments.length?this.each(e==null?wC:(typeof e=="function"?kC:EC)(e)):this.node().textContent}function vC(){this.innerHTML=""}function NC(e){return function(){this.innerHTML=e}}function SC(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function xC(e){return arguments.length?this.each(e==null?vC:(typeof e=="function"?SC:NC)(e)):this.node().innerHTML}function AC(){this.nextSibling&&this.parentNode.appendChild(this)}function TC(){return this.each(AC)}function PC(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function IC(){return this.each(PC)}function OC(e){var t=typeof e=="function"?e:ad(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function $C(){return null}function BC(e,t){var o=typeof e=="function"?e:ad(e),r=t==null?$C:typeof t=="function"?t:ka(t);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function VC(){var e=this.parentNode;e&&e.removeChild(this)}function RC(){return this.each(VC)}function DC(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function MC(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function FC(e){return this.select(e?MC:DC)}function LC(e){return arguments.length?this.property("__data__",e):this.node().__data__}function UC(e){return function(t){e.call(this,t,this.__data__)}}function KC(e){return e.trim().split(/^|\s+/).map(function(t){var o="",r=t.indexOf(".");return r>=0&&(o=t.slice(r+1),t=t.slice(0,r)),{type:t,name:o}})}function GC(e){return function(){var t=this.__on;if(t){for(var o=0,r=-1,i=t.length,a;o<i;++o)a=t[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function jC(e,t,o){return function(){var r=this.__on,i,a=UC(t);if(r){for(var l=0,s=r.length;l<s;++l)if((i=r[l]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=o),i.value=t;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:t,listener:a,options:o},r?r.push(i):this.__on=[i]}}function qC(e,t,o){var r=KC(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,d=s.length,u;c<d;++c)for(i=0,u=s[c];i<a;++i)if((l=r[i]).type===u.type&&l.name===u.name)return u.value}return}for(s=t?jC:GC,i=0;i<a;++i)this.each(s(r[i],t,o));return this}function hd(e,t,o){var r=ud(e),i=r.CustomEvent;typeof i=="function"?i=new i(t,o):(i=r.document.createEvent("Event"),o?(i.initEvent(t,o.bubbles,o.cancelable),i.detail=o.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function zC(e,t){return function(){return hd(this,e,t)}}function HC(e,t){return function(){return hd(this,e,t.apply(this,arguments))}}function YC(e,t){return this.each((typeof t=="function"?HC:zC)(e,t))}function*WC(){for(var e=this._groups,t=0,o=e.length;t<o;++t)for(var r=e[t],i=0,a=r.length,l;i<a;++i)(l=r[i])&&(yield l)}var yd=[null];function rt(e,t){this._groups=e,this._parents=t}function yo(){return new rt([[document.documentElement]],yd)}function XC(){return this}rt.prototype=yo.prototype={constructor:rt,select:kk,selectAll:Sk,selectChild:Pk,selectChildren:Bk,filter:Vk,data:Uk,enter:Rk,exit:Gk,join:jk,merge:qk,selection:XC,order:zk,sort:Hk,call:Wk,nodes:Xk,node:Zk,size:Jk,empty:Qk,each:eC,attr:lC,style:uC,property:gC,classed:bC,text:CC,html:xC,raise:TC,lower:IC,append:OC,insert:BC,remove:RC,clone:FC,datum:LC,on:qC,dispatch:YC,[Symbol.iterator]:WC};function pt(e){return typeof e=="string"?new rt([[document.querySelector(e)]],[document.documentElement]):new rt([[e]],yd)}function ZC(e){let t;for(;t=e.sourceEvent;)e=t;return e}function kt(e,t){if(e=ZC(e),t===void 0&&(t=e.currentTarget),t){var o=t.ownerSVGElement||t;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}const JC={passive:!1},_o={capture:!0,passive:!1};function va(e){e.stopImmediatePropagation()}function Dn(e){e.preventDefault(),e.stopImmediatePropagation()}function _d(e){var t=e.document.documentElement,o=pt(e).on("dragstart.drag",Dn,_o);"onselectstart"in t?o.on("selectstart.drag",Dn,_o):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function bd(e,t){var o=e.document.documentElement,r=pt(e).on("dragstart.drag",null);t&&(r.on("click.drag",Dn,_o),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in o?r.on("selectstart.drag",null):(o.style.MozUserSelect=o.__noselect,delete o.__noselect)}const Nr=e=>()=>e;function Na(e,{sourceEvent:t,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:d,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:o,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:u}})}Na.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function QC(e){return!e.ctrlKey&&!e.button}function ev(){return this.parentNode}function tv(e,t){return t??{x:e.x,y:e.y}}function nv(){return navigator.maxTouchPoints||"ontouchstart"in this}function ov(){var e=QC,t=ev,o=tv,r=nv,i={},a=Er("start","drag","end"),l=0,s,c,d,u,f=0;function p(C){C.on("mousedown.drag",m).filter(r).on("touchstart.drag",g).on("touchmove.drag",_,JC).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(C,T){if(!(u||!e.call(this,C,T))){var k=y(this,t.call(this,C,T),C,T,"mouse");k&&(pt(C.view).on("mousemove.drag",h,_o).on("mouseup.drag",w,_o),_d(C.view),va(C),d=!1,s=C.clientX,c=C.clientY,k("start",C))}}function h(C){if(Dn(C),!d){var T=C.clientX-s,k=C.clientY-c;d=T*T+k*k>f}i.mouse("drag",C)}function w(C){pt(C.view).on("mousemove.drag mouseup.drag",null),bd(C.view,d),Dn(C),i.mouse("end",C)}function g(C,T){if(e.call(this,C,T)){var k=C.changedTouches,S=t.call(this,C,T),I=k.length,B,W;for(B=0;B<I;++B)(W=y(this,S,C,T,k[B].identifier,k[B]))&&(va(C),W("start",C,k[B]))}}function _(C){var T=C.changedTouches,k=T.length,S,I;for(S=0;S<k;++S)(I=i[T[S].identifier])&&(Dn(C),I("drag",C,T[S]))}function b(C){var T=C.changedTouches,k=T.length,S,I;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),S=0;S<k;++S)(I=i[T[S].identifier])&&(va(C),I("end",C,T[S]))}function y(C,T,k,S,I,B){var W=a.copy(),M=kt(B||k,T),v,N,E;if((E=o.call(C,new Na("beforestart",{sourceEvent:k,target:p,identifier:I,active:l,x:M[0],y:M[1],dx:0,dy:0,dispatch:W}),S))!=null)return v=E.x-M[0]||0,N=E.y-M[1]||0,function D(O,q,j){var F=M,R;switch(O){case"start":i[I]=D,R=l++;break;case"end":delete i[I],--l;case"drag":M=kt(j||q,T),R=l;break}W.call(O,C,new Na(O,{sourceEvent:q,subject:E,target:p,identifier:I,active:R,x:M[0]+v,y:M[1]+N,dx:M[0]-F[0],dy:M[1]-F[1],dispatch:W}),S)}}return p.filter=function(C){return arguments.length?(e=typeof C=="function"?C:Nr(!!C),p):e},p.container=function(C){return arguments.length?(t=typeof C=="function"?C:Nr(C),p):t},p.subject=function(C){return arguments.length?(o=typeof C=="function"?C:Nr(C),p):o},p.touchable=function(C){return arguments.length?(r=typeof C=="function"?C:Nr(!!C),p):r},p.on=function(){var C=a.on.apply(a,arguments);return C===a?p:C},p.clickDistance=function(C){return arguments.length?(f=(C=+C)*C,p):Math.sqrt(f)},p}function Sa(e,t,o){e.prototype=t.prototype=o,o.constructor=e}function wd(e,t){var o=Object.create(e.prototype);for(var r in t)o[r]=t[r];return o}function bo(){}var wo=.7,Sr=1/wo,Mn="\\s*([+-]?\\d+)\\s*",Eo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Ct="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",rv=/^#([0-9a-f]{3,8})$/,iv=new RegExp(`^rgb\\(${Mn},${Mn},${Mn}\\)$`),av=new RegExp(`^rgb\\(${Ct},${Ct},${Ct}\\)$`),lv=new RegExp(`^rgba\\(${Mn},${Mn},${Mn},${Eo}\\)$`),sv=new RegExp(`^rgba\\(${Ct},${Ct},${Ct},${Eo}\\)$`),cv=new RegExp(`^hsl\\(${Eo},${Ct},${Ct}\\)$`),dv=new RegExp(`^hsla\\(${Eo},${Ct},${Ct},${Eo}\\)$`),Ed={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Sa(bo,cn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:kd,formatHex:kd,formatHex8:uv,formatHsl:fv,formatRgb:Cd,toString:Cd});function kd(){return this.rgb().formatHex()}function uv(){return this.rgb().formatHex8()}function fv(){return Ad(this).formatHsl()}function Cd(){return this.rgb().formatRgb()}function cn(e){var t,o;return e=(e+"").trim().toLowerCase(),(t=rv.exec(e))?(o=t[1].length,t=parseInt(t[1],16),o===6?vd(t):o===3?new tt(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):o===8?xr(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):o===4?xr(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=iv.exec(e))?new tt(t[1],t[2],t[3],1):(t=av.exec(e))?new tt(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=lv.exec(e))?xr(t[1],t[2],t[3],t[4]):(t=sv.exec(e))?xr(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=cv.exec(e))?xd(t[1],t[2]/100,t[3]/100,1):(t=dv.exec(e))?xd(t[1],t[2]/100,t[3]/100,t[4]):Ed.hasOwnProperty(e)?vd(Ed[e]):e==="transparent"?new tt(NaN,NaN,NaN,0):null}function vd(e){return new tt(e>>16&255,e>>8&255,e&255,1)}function xr(e,t,o,r){return r<=0&&(e=t=o=NaN),new tt(e,t,o,r)}function pv(e){return e instanceof bo||(e=cn(e)),e?(e=e.rgb(),new tt(e.r,e.g,e.b,e.opacity)):new tt}function xa(e,t,o,r){return arguments.length===1?pv(e):new tt(e,t,o,r??1)}function tt(e,t,o,r){this.r=+e,this.g=+t,this.b=+o,this.opacity=+r}Sa(tt,xa,wd(bo,{brighter(e){return e=e==null?Sr:Math.pow(Sr,e),new tt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?wo:Math.pow(wo,e),new tt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new tt(dn(this.r),dn(this.g),dn(this.b),Ar(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Nd,formatHex:Nd,formatHex8:mv,formatRgb:Sd,toString:Sd}));function Nd(){return`#${un(this.r)}${un(this.g)}${un(this.b)}`}function mv(){return`#${un(this.r)}${un(this.g)}${un(this.b)}${un((isNaN(this.opacity)?1:this.opacity)*255)}`}function Sd(){const e=Ar(this.opacity);return`${e===1?"rgb(":"rgba("}${dn(this.r)}, ${dn(this.g)}, ${dn(this.b)}${e===1?")":`, ${e})`}`}function Ar(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function dn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function un(e){return e=dn(e),(e<16?"0":"")+e.toString(16)}function xd(e,t,o,r){return r<=0?e=t=o=NaN:o<=0||o>=1?e=t=NaN:t<=0&&(e=NaN),new mt(e,t,o,r)}function Ad(e){if(e instanceof mt)return new mt(e.h,e.s,e.l,e.opacity);if(e instanceof bo||(e=cn(e)),!e)return new mt;if(e instanceof mt)return e;e=e.rgb();var t=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(t,o,r),a=Math.max(t,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(t===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-t)/s+2:l=(t-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new mt(l,s,c,e.opacity)}function gv(e,t,o,r){return arguments.length===1?Ad(e):new mt(e,t,o,r??1)}function mt(e,t,o,r){this.h=+e,this.s=+t,this.l=+o,this.opacity=+r}Sa(mt,gv,wd(bo,{brighter(e){return e=e==null?Sr:Math.pow(Sr,e),new mt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?wo:Math.pow(wo,e),new mt(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*t,i=2*o-r;return new tt(Aa(e>=240?e-240:e+120,i,r),Aa(e,i,r),Aa(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new mt(Td(this.h),Tr(this.s),Tr(this.l),Ar(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Ar(this.opacity);return`${e===1?"hsl(":"hsla("}${Td(this.h)}, ${Tr(this.s)*100}%, ${Tr(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Td(e){return e=(e||0)%360,e<0?e+360:e}function Tr(e){return Math.max(0,Math.min(1,e||0))}function Aa(e,t,o){return(e<60?t+(o-t)*e/60:e<180?o:e<240?t+(o-t)*(240-e)/60:t)*255}const Ta=e=>()=>e;function hv(e,t){return function(o){return e+o*t}}function yv(e,t,o){return e=Math.pow(e,o),t=Math.pow(t,o)-e,o=1/o,function(r){return Math.pow(e+r*t,o)}}function _v(e){return(e=+e)==1?Pd:function(t,o){return o-t?yv(t,o,e):Ta(isNaN(t)?o:t)}}function Pd(e,t){var o=t-e;return o?hv(e,o):Ta(isNaN(e)?t:e)}const Pr=function e(t){var o=_v(t);function r(i,a){var l=o((i=xa(i)).r,(a=xa(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Pd(i.opacity,a.opacity);return function(u){return i.r=l(u),i.g=s(u),i.b=c(u),i.opacity=d(u),i+""}}return r.gamma=e,r}(1);function bv(e,t){t||(t=[]);var o=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<o;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function wv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Ev(e,t){var o=t?t.length:0,r=e?Math.min(o,e.length):0,i=new Array(r),a=new Array(o),l;for(l=0;l<r;++l)i[l]=ko(e[l],t[l]);for(;l<o;++l)a[l]=t[l];return function(s){for(l=0;l<r;++l)a[l]=i[l](s);return a}}function kv(e,t){var o=new Date;return e=+e,t=+t,function(r){return o.setTime(e*(1-r)+t*r),o}}function vt(e,t){return e=+e,t=+t,function(o){return e*(1-o)+t*o}}function Cv(e,t){var o={},r={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?o[i]=ko(e[i],t[i]):r[i]=t[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Pa=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ia=new RegExp(Pa.source,"g");function vv(e){return function(){return e}}function Nv(e){return function(t){return e(t)+""}}function Id(e,t){var o=Pa.lastIndex=Ia.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",t=t+"";(r=Pa.exec(e))&&(i=Ia.exec(t));)(a=i.index)>o&&(a=t.slice(o,a),s[l]?s[l]+=a:s[++l]=a),(r=r[0])===(i=i[0])?s[l]?s[l]+=i:s[++l]=i:(s[++l]=null,c.push({i:l,x:vt(r,i)})),o=Ia.lastIndex;return o<t.length&&(a=t.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?Nv(c[0].x):vv(t):(t=c.length,function(d){for(var u=0,f;u<t;++u)s[(f=c[u]).i]=f.x(d);return s.join("")})}function ko(e,t){var o=typeof t,r;return t==null||o==="boolean"?Ta(t):(o==="number"?vt:o==="string"?(r=cn(t))?(t=r,Pr):Id:t instanceof cn?Pr:t instanceof Date?kv:wv(t)?bv:Array.isArray(t)?Ev:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?Cv:vt)(e,t)}var Od=180/Math.PI,Oa={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function $d(e,t,o,r,i,a){var l,s,c;return(l=Math.sqrt(e*e+t*t))&&(e/=l,t/=l),(c=e*o+t*r)&&(o-=e*c,r-=t*c),(s=Math.sqrt(o*o+r*r))&&(o/=s,r/=s,c/=s),e*r<t*o&&(e=-e,t=-t,c=-c,l=-l),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*Od,skewX:Math.atan(c)*Od,scaleX:l,scaleY:s}}var Ir;function Sv(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?Oa:$d(t.a,t.b,t.c,t.d,t.e,t.f)}function xv(e){return e==null||(Ir||(Ir=document.createElementNS("http://www.w3.org/2000/svg","g")),Ir.setAttribute("transform",e),!(e=Ir.transform.baseVal.consolidate()))?Oa:(e=e.matrix,$d(e.a,e.b,e.c,e.d,e.e,e.f))}function Bd(e,t,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,u,f,p,m,h){if(d!==f||u!==p){var w=m.push("translate(",null,t,null,o);h.push({i:w-4,x:vt(d,f)},{i:w-2,x:vt(u,p)})}else(f||p)&&m.push("translate("+f+t+p+o)}function l(d,u,f,p){d!==u?(d-u>180?u+=360:u-d>180&&(d+=360),p.push({i:f.push(i(f)+"rotate(",null,r)-2,x:vt(d,u)})):u&&f.push(i(f)+"rotate("+u+r)}function s(d,u,f,p){d!==u?p.push({i:f.push(i(f)+"skewX(",null,r)-2,x:vt(d,u)}):u&&f.push(i(f)+"skewX("+u+r)}function c(d,u,f,p,m,h){if(d!==f||u!==p){var w=m.push(i(m)+"scale(",null,",",null,")");h.push({i:w-4,x:vt(d,f)},{i:w-2,x:vt(u,p)})}else(f!==1||p!==1)&&m.push(i(m)+"scale("+f+","+p+")")}return function(d,u){var f=[],p=[];return d=e(d),u=e(u),a(d.translateX,d.translateY,u.translateX,u.translateY,f,p),l(d.rotate,u.rotate,f,p),s(d.skewX,u.skewX,f,p),c(d.scaleX,d.scaleY,u.scaleX,u.scaleY,f,p),d=u=null,function(m){for(var h=-1,w=p.length,g;++h<w;)f[(g=p[h]).i]=g.x(m);return f.join("")}}}var Av=Bd(Sv,"px, ","px)","deg)"),Tv=Bd(xv,", ",")",")"),Pv=1e-12;function Vd(e){return((e=Math.exp(e))+1/e)/2}function Iv(e){return((e=Math.exp(e))-1/e)/2}function Ov(e){return((e=Math.exp(2*e))-1)/(e+1)}const Or=function e(t,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],u=l[0],f=l[1],p=l[2],m=u-s,h=f-c,w=m*m+h*h,g,_;if(w<Pv)_=Math.log(p/d)/t,g=function(S){return[s+S*m,c+S*h,d*Math.exp(t*S*_)]};else{var b=Math.sqrt(w),y=(p*p-d*d+r*w)/(2*d*o*b),C=(p*p-d*d-r*w)/(2*p*o*b),T=Math.log(Math.sqrt(y*y+1)-y),k=Math.log(Math.sqrt(C*C+1)-C);_=(k-T)/t,g=function(S){var I=S*_,B=Vd(T),W=d/(o*b)*(B*Ov(t*I+T)-Iv(T));return[s+W*m,c+W*h,d*B/Vd(t*I+T)]}}return g.duration=_*1e3*t/Math.SQRT2,g}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var Fn=0,Co=0,vo=0,Rd=1e3,$r,No,Br=0,fn=0,Vr=0,So=typeof performance=="object"&&performance.now?performance:Date,Dd=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function $a(){return fn||(Dd($v),fn=So.now()+Vr)}function $v(){fn=0}function Rr(){this._call=this._time=this._next=null}Rr.prototype=Md.prototype={constructor:Rr,restart:function(e,t,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?$a():+o)+(t==null?0:+t),!this._next&&No!==this&&(No?No._next=this:$r=this,No=this),this._call=e,this._time=o,Ba()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ba())}};function Md(e,t,o){var r=new Rr;return r.restart(e,t,o),r}function Bv(){$a(),++Fn;for(var e=$r,t;e;)(t=fn-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Fn}function Fd(){fn=(Br=So.now())+Vr,Fn=Co=0;try{Bv()}finally{Fn=0,Rv(),fn=0}}function Vv(){var e=So.now(),t=e-Br;t>Rd&&(Vr-=t,Br=e)}function Rv(){for(var e,t=$r,o,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(o=t._next,t._next=null,t=e?e._next=o:$r=o);No=e,Ba(r)}function Ba(e){if(!Fn){Co&&(Co=clearTimeout(Co));var t=e-fn;t>24?(e<1/0&&(Co=setTimeout(Fd,e-So.now()-Vr)),vo&&(vo=clearInterval(vo))):(vo||(Br=So.now(),vo=setInterval(Vv,Rd)),Fn=1,Dd(Fd))}}function Ld(e,t,o){var r=new Rr;return t=t==null?0:+t,r.restart(i=>{r.stop(),e(i+t)},t,o),r}var Dv=Er("start","end","cancel","interrupt"),Mv=[],Ud=0,Kd=1,Va=2,Dr=3,Gd=4,Ra=5,Mr=6;function Fr(e,t,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;Fv(e,o,{name:t,index:r,group:i,on:Dv,tween:Mv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Ud})}function Da(e,t){var o=gt(e,t);if(o.state>Ud)throw new Error("too late; already scheduled");return o}function Nt(e,t){var o=gt(e,t);if(o.state>Dr)throw new Error("too late; already running");return o}function gt(e,t){var o=e.__transition;if(!o||!(o=o[t]))throw new Error("transition not found");return o}function Fv(e,t,o){var r=e.__transition,i;r[t]=o,o.timer=Md(a,0,o.time);function a(d){o.state=Kd,o.timer.restart(l,o.delay,o.time),o.delay<=d&&l(d-o.delay)}function l(d){var u,f,p,m;if(o.state!==Kd)return c();for(u in r)if(m=r[u],m.name===o.name){if(m.state===Dr)return Ld(l);m.state===Gd?(m.state=Mr,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[u]):+u<t&&(m.state=Mr,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[u])}if(Ld(function(){o.state===Dr&&(o.state=Gd,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Va,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Va){for(o.state=Dr,i=new Array(p=o.tween.length),u=0,f=-1;u<p;++u)(m=o.tween[u].value.call(e,e.__data__,o.index,o.group))&&(i[++f]=m);i.length=f+1}}function s(d){for(var u=d<o.duration?o.ease.call(null,d/o.duration):(o.timer.restart(c),o.state=Ra,1),f=-1,p=i.length;++f<p;)i[f].call(e,u);o.state===Ra&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Mr,o.timer.stop(),delete r[t];for(var d in r)return;delete e.__transition}}function Lr(e,t){var o=e.__transition,r,i,a=!0,l;if(o){t=t==null?null:t+"";for(l in o){if((r=o[l]).name!==t){a=!1;continue}i=r.state>Va&&r.state<Ra,r.state=Mr,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function Lv(e){return this.each(function(){Lr(this,e)})}function Uv(e,t){var o,r;return function(){var i=Nt(this,e),a=i.tween;if(a!==o){r=o=a;for(var l=0,s=r.length;l<s;++l)if(r[l].name===t){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function Kv(e,t,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=Nt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:t,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===t){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function Gv(e,t){var o=this._id;if(e+="",arguments.length<2){for(var r=gt(this.node(),o).tween,i=0,a=r.length,l;i<a;++i)if((l=r[i]).name===e)return l.value;return null}return this.each((t==null?Uv:Kv)(o,e,t))}function Ma(e,t,o){var r=e._id;return e.each(function(){var i=Nt(this,r);(i.value||(i.value={}))[t]=o.apply(this,arguments)}),function(i){return gt(i,r).value[t]}}function jd(e,t){var o;return(typeof t=="number"?vt:t instanceof cn?Pr:(o=cn(t))?(t=o,Pr):Id)(e,t)}function jv(e){return function(){this.removeAttribute(e)}}function qv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function zv(e,t,o){var r,i=o+"",a;return function(){var l=this.getAttribute(e);return l===i?null:l===r?a:a=t(r=l,o)}}function Hv(e,t,o){var r,i=o+"",a;return function(){var l=this.getAttributeNS(e.space,e.local);return l===i?null:l===r?a:a=t(r=l,o)}}function Yv(e,t,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttribute(e):(l=this.getAttribute(e),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=t(r=l,s)))}}function Wv(e,t,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=t(r=l,s)))}}function Xv(e,t){var o=Cr(e),r=o==="transform"?Tv:jd;return this.attrTween(e,typeof t=="function"?(o.local?Wv:Yv)(o,r,Ma(this,"attr."+e,t)):t==null?(o.local?qv:jv)(o):(o.local?Hv:zv)(o,r,t))}function Zv(e,t){return function(o){this.setAttribute(e,t.call(this,o))}}function Jv(e,t){return function(o){this.setAttributeNS(e.space,e.local,t.call(this,o))}}function Qv(e,t){var o,r;function i(){var a=t.apply(this,arguments);return a!==r&&(o=(r=a)&&Jv(e,a)),o}return i._value=t,i}function e1(e,t){var o,r;function i(){var a=t.apply(this,arguments);return a!==r&&(o=(r=a)&&Zv(e,a)),o}return i._value=t,i}function t1(e,t){var o="attr."+e;if(arguments.length<2)return(o=this.tween(o))&&o._value;if(t==null)return this.tween(o,null);if(typeof t!="function")throw new Error;var r=Cr(e);return this.tween(o,(r.local?Qv:e1)(r,t))}function n1(e,t){return function(){Da(this,e).delay=+t.apply(this,arguments)}}function o1(e,t){return t=+t,function(){Da(this,e).delay=t}}function r1(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?n1:o1)(t,e)):gt(this.node(),t).delay}function i1(e,t){return function(){Nt(this,e).duration=+t.apply(this,arguments)}}function a1(e,t){return t=+t,function(){Nt(this,e).duration=t}}function l1(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?i1:a1)(t,e)):gt(this.node(),t).duration}function s1(e,t){if(typeof t!="function")throw new Error;return function(){Nt(this,e).ease=t}}function c1(e){var t=this._id;return arguments.length?this.each(s1(t,e)):gt(this.node(),t).ease}function d1(e,t){return function(){var o=t.apply(this,arguments);if(typeof o!="function")throw new Error;Nt(this,e).ease=o}}function u1(e){if(typeof e!="function")throw new Error;return this.each(d1(this._id,e))}function f1(e){typeof e!="function"&&(e=sd(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new Vt(r,this._parents,this._name,this._id)}function p1(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,o=e._groups,r=t.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=t[s],d=o[s],u=c.length,f=l[s]=new Array(u),p,m=0;m<u;++m)(p=c[m]||d[m])&&(f[m]=p);for(;s<r;++s)l[s]=t[s];return new Vt(l,this._parents,this._name,this._id)}function m1(e){return(e+"").trim().split(/^|\s+/).every(function(t){var o=t.indexOf(".");return o>=0&&(t=t.slice(0,o)),!t||t==="start"})}function g1(e,t,o){var r,i,a=m1(t)?Da:Nt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(t,o),l.on=i}}function h1(e,t){var o=this._id;return arguments.length<2?gt(this.node(),o).on.on(e):this.each(g1(o,e,t))}function y1(e){return function(){var t=this.parentNode;for(var o in this.__transition)if(+o!==e)return;t&&t.removeChild(this)}}function _1(){return this.on("end.remove",y1(this._id))}function b1(e){var t=this._name,o=this._id;typeof e!="function"&&(e=ka(e));for(var r=this._groups,i=r.length,a=new Array(i),l=0;l<i;++l)for(var s=r[l],c=s.length,d=a[l]=new Array(c),u,f,p=0;p<c;++p)(u=s[p])&&(f=e.call(u,u.__data__,p,s))&&("__data__"in u&&(f.__data__=u.__data__),d[p]=f,Fr(d[p],t,o,p,d,gt(u,o)));return new Vt(a,this._parents,t,o)}function w1(e){var t=this._name,o=this._id;typeof e!="function"&&(e=ld(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,u,f=0;f<d;++f)if(u=c[f]){for(var p=e.call(u,u.__data__,f,c),m,h=gt(u,o),w=0,g=p.length;w<g;++w)(m=p[w])&&Fr(m,t,o,w,p,h);a.push(p),l.push(u)}return new Vt(a,l,t,o)}var E1=yo.prototype.constructor;function k1(){return new E1(this._groups,this._parents)}function C1(e,t){var o,r,i;return function(){var a=Rn(this,e),l=(this.style.removeProperty(e),Rn(this,e));return a===l?null:a===o&&l===r?i:i=t(o=a,r=l)}}function qd(e){return function(){this.style.removeProperty(e)}}function v1(e,t,o){var r,i=o+"",a;return function(){var l=Rn(this,e);return l===i?null:l===r?a:a=t(r=l,o)}}function N1(e,t,o){var r,i,a;return function(){var l=Rn(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Rn(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=t(r=l,s))}}function S1(e,t){var o,r,i,a="style."+t,l="end."+a,s;return function(){var c=Nt(this,e),d=c.on,u=c.value[a]==null?s||(s=qd(t)):void 0;(d!==o||i!==u)&&(r=(o=d).copy()).on(l,i=u),c.on=r}}function x1(e,t,o){var r=(e+="")=="transform"?Av:jd;return t==null?this.styleTween(e,C1(e,r)).on("end.style."+e,qd(e)):typeof t=="function"?this.styleTween(e,N1(e,r,Ma(this,"style."+e,t))).each(S1(this._id,e)):this.styleTween(e,v1(e,r,t),o).on("end.style."+e,null)}function A1(e,t,o){return function(r){this.style.setProperty(e,t.call(this,r),o)}}function T1(e,t,o){var r,i;function a(){var l=t.apply(this,arguments);return l!==i&&(r=(i=l)&&A1(e,l,o)),r}return a._value=t,a}function P1(e,t,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;return this.tween(r,T1(e,t,o??""))}function I1(e){return function(){this.textContent=e}}function O1(e){return function(){var t=e(this);this.textContent=t??""}}function $1(e){return this.tween("text",typeof e=="function"?O1(Ma(this,"text",e)):I1(e==null?"":e+""))}function B1(e){return function(t){this.textContent=e.call(this,t)}}function V1(e){var t,o;function r(){var i=e.apply(this,arguments);return i!==o&&(t=(o=i)&&B1(i)),t}return r._value=e,r}function R1(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,V1(e))}function D1(){for(var e=this._name,t=this._id,o=zd(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)if(c=l[d]){var u=gt(c,t);Fr(c,e,o,d,l,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new Vt(r,this._parents,e,o)}function M1(){var e,t,o=this,r=o._id,i=o.size();return new Promise(function(a,l){var s={value:l},c={value:function(){--i===0&&a()}};o.each(function(){var d=Nt(this,r),u=d.on;u!==e&&(t=(e=u).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),d.on=t}),i===0&&a()})}var F1=0;function Vt(e,t,o,r){this._groups=e,this._parents=t,this._name=o,this._id=r}function zd(){return++F1}var Rt=yo.prototype;Vt.prototype={constructor:Vt,select:b1,selectAll:w1,selectChild:Rt.selectChild,selectChildren:Rt.selectChildren,filter:f1,merge:p1,selection:k1,transition:D1,call:Rt.call,nodes:Rt.nodes,node:Rt.node,size:Rt.size,empty:Rt.empty,each:Rt.each,on:h1,attr:Xv,attrTween:t1,style:x1,styleTween:P1,text:$1,textTween:R1,remove:_1,tween:Gv,delay:r1,duration:l1,ease:c1,easeVarying:u1,end:M1,[Symbol.iterator]:Rt[Symbol.iterator]};function L1(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var U1={time:null,delay:0,duration:250,ease:L1};function K1(e,t){for(var o;!(o=e.__transition)||!(o=o[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return o}function G1(e){var t,o;e instanceof Vt?(t=e._id,e=e._name):(t=zd(),(o=U1).time=$a(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&Fr(c,e,t,d,l,o||K1(c,t));return new Vt(r,this._parents,e,t)}yo.prototype.interrupt=Lv,yo.prototype.transition=G1;const Ur=e=>()=>e;function j1(e,{sourceEvent:t,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function Dt(e,t,o){this.k=e,this.x=t,this.y=o}Dt.prototype={constructor:Dt,scale:function(e){return e===1?this:new Dt(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Dt(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Ln=new Dt(1,0,0);Dt.prototype;function Fa(e){e.stopImmediatePropagation()}function xo(e){e.preventDefault(),e.stopImmediatePropagation()}function q1(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function z1(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function Hd(){return this.__zoom||Ln}function H1(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function Y1(){return navigator.maxTouchPoints||"ontouchstart"in this}function W1(e,t,o){var r=e.invertX(t[0][0])-o[0][0],i=e.invertX(t[1][0])-o[1][0],a=e.invertY(t[0][1])-o[0][1],l=e.invertY(t[1][1])-o[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),l>a?(a+l)/2:Math.min(0,a)||Math.max(0,l))}function X1(){var e=q1,t=z1,o=W1,r=H1,i=Y1,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Or,d=Er("start","zoom","end"),u,f,p,m=500,h=150,w=0,g=10;function _(E){E.property("__zoom",Hd).on("wheel.zoom",I,{passive:!1}).on("mousedown.zoom",B).on("dblclick.zoom",W).filter(i).on("touchstart.zoom",M).on("touchmove.zoom",v).on("touchend.zoom touchcancel.zoom",N).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(E,D,O,q){var j=E.selection?E.selection():E;j.property("__zoom",Hd),E!==j?T(E,D,O,q):j.interrupt().each(function(){k(this,arguments).event(q).start().zoom(null,typeof D=="function"?D.apply(this,arguments):D).end()})},_.scaleBy=function(E,D,O,q){_.scaleTo(E,function(){var j=this.__zoom.k,F=typeof D=="function"?D.apply(this,arguments):D;return j*F},O,q)},_.scaleTo=function(E,D,O,q){_.transform(E,function(){var j=t.apply(this,arguments),F=this.__zoom,R=O==null?C(j):typeof O=="function"?O.apply(this,arguments):O,U=F.invert(R),re=typeof D=="function"?D.apply(this,arguments):D;return o(y(b(F,re),R,U),j,l)},O,q)},_.translateBy=function(E,D,O,q){_.transform(E,function(){return o(this.__zoom.translate(typeof D=="function"?D.apply(this,arguments):D,typeof O=="function"?O.apply(this,arguments):O),t.apply(this,arguments),l)},null,q)},_.translateTo=function(E,D,O,q,j){_.transform(E,function(){var F=t.apply(this,arguments),R=this.__zoom,U=q==null?C(F):typeof q=="function"?q.apply(this,arguments):q;return o(Ln.translate(U[0],U[1]).scale(R.k).translate(typeof D=="function"?-D.apply(this,arguments):-D,typeof O=="function"?-O.apply(this,arguments):-O),F,l)},q,j)};function b(E,D){return D=Math.max(a[0],Math.min(a[1],D)),D===E.k?E:new Dt(D,E.x,E.y)}function y(E,D,O){var q=D[0]-O[0]*E.k,j=D[1]-O[1]*E.k;return q===E.x&&j===E.y?E:new Dt(E.k,q,j)}function C(E){return[(+E[0][0]+ +E[1][0])/2,(+E[0][1]+ +E[1][1])/2]}function T(E,D,O,q){E.on("start.zoom",function(){k(this,arguments).event(q).start()}).on("interrupt.zoom end.zoom",function(){k(this,arguments).event(q).end()}).tween("zoom",function(){var j=this,F=arguments,R=k(j,F).event(q),U=t.apply(j,F),re=O==null?C(U):typeof O=="function"?O.apply(j,F):O,de=Math.max(U[1][0]-U[0][0],U[1][1]-U[0][1]),ee=j.__zoom,oe=typeof D=="function"?D.apply(j,F):D,Y=c(ee.invert(re).concat(de/ee.k),oe.invert(re).concat(de/oe.k));return function($){if($===1)$=oe;else{var z=Y($),X=de/z[2];$=new Dt(X,re[0]-z[0]*X,re[1]-z[1]*X)}R.zoom(null,$)}})}function k(E,D,O){return!O&&E.__zooming||new S(E,D)}function S(E,D){this.that=E,this.args=D,this.active=0,this.sourceEvent=null,this.extent=t.apply(E,D),this.taps=0}S.prototype={event:function(E){return E&&(this.sourceEvent=E),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(E,D){return this.mouse&&E!=="mouse"&&(this.mouse[1]=D.invert(this.mouse[0])),this.touch0&&E!=="touch"&&(this.touch0[1]=D.invert(this.touch0[0])),this.touch1&&E!=="touch"&&(this.touch1[1]=D.invert(this.touch1[0])),this.that.__zoom=D,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(E){var D=pt(this.that).datum();d.call(E,this.that,new j1(E,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:d}),D)}};function I(E,...D){if(!e.apply(this,arguments))return;var O=k(this,D).event(E),q=this.__zoom,j=Math.max(a[0],Math.min(a[1],q.k*Math.pow(2,r.apply(this,arguments)))),F=kt(E);if(O.wheel)(O.mouse[0][0]!==F[0]||O.mouse[0][1]!==F[1])&&(O.mouse[1]=q.invert(O.mouse[0]=F)),clearTimeout(O.wheel);else{if(q.k===j)return;O.mouse=[F,q.invert(F)],Lr(this),O.start()}xo(E),O.wheel=setTimeout(R,h),O.zoom("mouse",o(y(b(q,j),O.mouse[0],O.mouse[1]),O.extent,l));function R(){O.wheel=null,O.end()}}function B(E,...D){if(p||!e.apply(this,arguments))return;var O=E.currentTarget,q=k(this,D,!0).event(E),j=pt(E.view).on("mousemove.zoom",re,!0).on("mouseup.zoom",de,!0),F=kt(E,O),R=E.clientX,U=E.clientY;_d(E.view),Fa(E),q.mouse=[F,this.__zoom.invert(F)],Lr(this),q.start();function re(ee){if(xo(ee),!q.moved){var oe=ee.clientX-R,Y=ee.clientY-U;q.moved=oe*oe+Y*Y>w}q.event(ee).zoom("mouse",o(y(q.that.__zoom,q.mouse[0]=kt(ee,O),q.mouse[1]),q.extent,l))}function de(ee){j.on("mousemove.zoom mouseup.zoom",null),bd(ee.view,q.moved),xo(ee),q.event(ee).end()}}function W(E,...D){if(e.apply(this,arguments)){var O=this.__zoom,q=kt(E.changedTouches?E.changedTouches[0]:E,this),j=O.invert(q),F=O.k*(E.shiftKey?.5:2),R=o(y(b(O,F),q,j),t.apply(this,D),l);xo(E),s>0?pt(this).transition().duration(s).call(T,R,q,E):pt(this).call(_.transform,R,q,E)}}function M(E,...D){if(e.apply(this,arguments)){var O=E.touches,q=O.length,j=k(this,D,E.changedTouches.length===q).event(E),F,R,U,re;for(Fa(E),R=0;R<q;++R)U=O[R],re=kt(U,this),re=[re,this.__zoom.invert(re),U.identifier],j.touch0?!j.touch1&&j.touch0[2]!==re[2]&&(j.touch1=re,j.taps=0):(j.touch0=re,F=!0,j.taps=1+!!u);u&&(u=clearTimeout(u)),F&&(j.taps<2&&(f=re[0],u=setTimeout(function(){u=null},m)),Lr(this),j.start())}}function v(E,...D){if(this.__zooming){var O=k(this,D).event(E),q=E.changedTouches,j=q.length,F,R,U,re;for(xo(E),F=0;F<j;++F)R=q[F],U=kt(R,this),O.touch0&&O.touch0[2]===R.identifier?O.touch0[0]=U:O.touch1&&O.touch1[2]===R.identifier&&(O.touch1[0]=U);if(R=O.that.__zoom,O.touch1){var de=O.touch0[0],ee=O.touch0[1],oe=O.touch1[0],Y=O.touch1[1],$=($=oe[0]-de[0])*$+($=oe[1]-de[1])*$,z=(z=Y[0]-ee[0])*z+(z=Y[1]-ee[1])*z;R=b(R,Math.sqrt($/z)),U=[(de[0]+oe[0])/2,(de[1]+oe[1])/2],re=[(ee[0]+Y[0])/2,(ee[1]+Y[1])/2]}else if(O.touch0)U=O.touch0[0],re=O.touch0[1];else return;O.zoom("touch",o(y(R,U,re),O.extent,l))}}function N(E,...D){if(this.__zooming){var O=k(this,D).event(E),q=E.changedTouches,j=q.length,F,R;for(Fa(E),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),F=0;F<j;++F)R=q[F],O.touch0&&O.touch0[2]===R.identifier?delete O.touch0:O.touch1&&O.touch1[2]===R.identifier&&delete O.touch1;if(O.touch1&&!O.touch0&&(O.touch0=O.touch1,delete O.touch1),O.touch0)O.touch0[1]=this.__zoom.invert(O.touch0[0]);else if(O.end(),O.taps===2&&(R=kt(R,this),Math.hypot(f[0]-R[0],f[1]-R[1])<g)){var U=pt(this).on("dblclick.zoom");U&&U.apply(this,arguments)}}}return _.wheelDelta=function(E){return arguments.length?(r=typeof E=="function"?E:Ur(+E),_):r},_.filter=function(E){return arguments.length?(e=typeof E=="function"?E:Ur(!!E),_):e},_.touchable=function(E){return arguments.length?(i=typeof E=="function"?E:Ur(!!E),_):i},_.extent=function(E){return arguments.length?(t=typeof E=="function"?E:Ur([[+E[0][0],+E[0][1]],[+E[1][0],+E[1][1]]]),_):t},_.scaleExtent=function(E){return arguments.length?(a[0]=+E[0],a[1]=+E[1],_):[a[0],a[1]]},_.translateExtent=function(E){return arguments.length?(l[0][0]=+E[0][0],l[1][0]=+E[1][0],l[0][1]=+E[0][1],l[1][1]=+E[1][1],_):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},_.constrain=function(E){return arguments.length?(o=E,_):o},_.duration=function(E){return arguments.length?(s=+E,_):s},_.interpolate=function(E){return arguments.length?(c=E,_):c},_.on=function(){var E=d.on.apply(d,arguments);return E===d?_:E},_.clickDistance=function(E){return arguments.length?(w=(E=+E)*E,_):Math.sqrt(w)},_.tapDistance=function(E){return arguments.length?(g=+E,_):g},_}var ge=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ge||{}),La=(e=>(e.Partial="partial",e.Full="full",e))(La||{}),pn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(pn||{}),Ut=(e=>(e.Strict="strict",e.Loose="loose",e))(Ut||{}),Kr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(Kr||{}),Ao=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(Ao||{}),Yd=(e=>(e.TopLeft="top-left",e.TopCenter="top-center",e.TopRight="top-right",e.BottomLeft="bottom-left",e.BottomCenter="bottom-center",e.BottomRight="bottom-right",e))(Yd||{});const Z1=["INPUT","SELECT","TEXTAREA"],J1=typeof document<"u"?document:null;function Ua(e){var t,o;const r=((o=(t=e.composedPath)==null?void 0:t.call(e))==null?void 0:o[0])||e.target,i=typeof(r==null?void 0:r.hasAttribute)=="function"?r.hasAttribute("contenteditable"):!1,a=typeof(r==null?void 0:r.closest)=="function"?r.closest(".nokey"):null;return Z1.includes(r==null?void 0:r.nodeName)||i||!!a}function Q1(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Wd(e,t,o,r){const i=t.replace("+",`
|
|
21
21
|
`).replace(`
|
|
22
22
|
|
|
23
23
|
`,`
|
|
24
24
|
+`).split(`
|
|
25
|
-
`).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===t.toLowerCase();r||o.add(e.toLowerCase());const a=i.every((l,s)=>o.has(l)&&Array.from(o.values())[s]===i[s]);return r&&o.delete(e.toLowerCase()),a}function QN(e,t){return o=>{if(!o.code&&!o.key)return!1;const r=e1(o.code,e);return Array.isArray(e)?e.some(i=>Yd(o[r],i,t,o.type==="keyup")):Yd(o[r],e,t,o.type==="keyup")}}function e1(e,t){return t.includes(e)?"code":"key"}function Ao(e,t){const o=n.computed(()=>n.toValue(t==null?void 0:t.target)??XN),r=n.shallowRef(n.toValue(e)===!0);let i=!1;const a=new Set;let l=c(n.toValue(e));n.watch(()=>n.toValue(e),(d,f)=>{typeof f=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),td(["blur","contextmenu"],s),nd((...d)=>l(...d),d=>{var f,u;const p=n.toValue(t==null?void 0:t.actInsideInputWithModifier)??!0,m=n.toValue(t==null?void 0:t.preventDefault)??!1;if(i=JN(d),(!i||i&&!p)&&La(d))return;const w=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,g=(w==null?void 0:w.nodeName)==="BUTTON"||(w==null?void 0:w.nodeName)==="A";!m&&(i||!g)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),nd((...d)=>l(...d),d=>{const f=n.toValue(t==null?void 0:t.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&La(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=n.toValue(e)===!0}function c(d){return d===null?(s(),()=>!1):typeof d=="boolean"?(s(),r.value=d,()=>!1):Array.isArray(d)||typeof d=="string"?QN(d,a):d}return r}const Wd="vue-flow__node-desc",Zd="vue-flow__edge-desc",t1="vue-flow__aria-live",Xd=["Enter"," ","Escape"],Ln={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Kr(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function qr(e,t){const o=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(o*r)}function Gr(e){return{width:e.offsetWidth,height:e.offsetHeight}}function pn(e,t=0,o=1){return Math.min(Math.max(e,t),o)}function Jd(e,t){return{x:pn(e.x,t[0][0],t[1][0]),y:pn(e.y,t[0][1],t[1][1])}}function Qd(e){const t=e.getRootNode();return"elementFromPoint"in t?t:window.document}function Kt(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function mn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!Kt(e)}function To(e){return mn(e)&&"computedPosition"in e}function jr(e){return!Number.isNaN(e)&&Number.isFinite(e)}function n1(e){return jr(e.width)&&jr(e.height)&&jr(e.x)&&jr(e.y)}function o1(e,t,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:n.markRaw({width:0,height:0}),computedPosition:n.markRaw({z:0,...e.position}),handleBounds:{source:[],target:[]},draggable:void 0,selectable:void 0,connectable:void 0,focusable:void 0,selected:!1,dragging:!1,resizing:!1,initialized:!1,isParent:!1,position:{x:0,y:0},data:Ve(e.data)?e.data:{},events:n.markRaw(Ve(e.events)?e.events:{})};return Object.assign(t??r,e,{id:e.id.toString(),parentNode:o})}function eu(e,t,o){var r,i;const a={id:e.id.toString(),type:e.type??(t==null?void 0:t.type)??"default",source:e.source.toString(),target:e.target.toString(),sourceHandle:(r=e.sourceHandle)==null?void 0:r.toString(),targetHandle:(i=e.targetHandle)==null?void 0:i.toString(),updatable:e.updatable??(o==null?void 0:o.updatable),selectable:e.selectable??(o==null?void 0:o.selectable),focusable:e.focusable??(o==null?void 0:o.focusable),data:Ve(e.data)?e.data:{},events:n.markRaw(Ve(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(t??a,e,{id:e.id.toString()})}function tu(e,t,o,r){const i=typeof e=="string"?e:e.id,a=new Set,l=r==="source"?"target":"source";for(const s of o)s[l]===i&&a.add(s[r]);return t.filter(s=>a.has(s.id))}function r1(...e){if(e.length===3){const[a,l,s]=e;return tu(a,l,s,"target")}const[t,o]=e,r=typeof t=="string"?t:t.id;return o.filter(a=>Kt(a)&&a.source===r).map(a=>o.find(l=>mn(l)&&l.id===a.target))}function i1(...e){if(e.length===3){const[a,l,s]=e;return tu(a,l,s,"source")}const[t,o]=e,r=typeof t=="string"?t:t.id;return o.filter(a=>Kt(a)&&a.target===r).map(a=>o.find(l=>mn(l)&&l.id===a.source))}function nu({source:e,sourceHandle:t,target:o,targetHandle:r}){return`vueflow__edge-${e}${t??""}-${o}${r??""}`}function a1(e,t){return t.some(o=>Kt(o)&&o.source===e.source&&o.target===e.target&&(o.sourceHandle===e.sourceHandle||!o.sourceHandle&&!e.sourceHandle)&&(o.targetHandle===e.targetHandle||!o.targetHandle&&!e.targetHandle))}function Ua({x:e,y:t},{x:o,y:r,zoom:i}){return{x:e*i+o,y:t*i+r}}function Po({x:e,y:t},{x:o,y:r,zoom:i},a=!1,l=[1,1]){const s={x:(e-o)/i,y:(t-r)/i};return a?Hr(s,l):s}function l1(e,t){return{x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}}function ou({x:e,y:t,width:o,height:r}){return{x:e,y:t,x2:e+o,y2:t+r}}function s1({x:e,y:t,x2:o,y2:r}){return{x:e,y:t,width:o-e,height:r-t}}function ru(e){let t={x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};for(let o=0;o<e.length;o++){const r=e[o];t=l1(t,ou({...r.computedPosition,...r.dimensions}))}return s1(t)}function iu(e,t,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Po(t,o),width:t.width/o.zoom,height:t.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:d=!0,hidden:f=!1}=s,u=c.width??s.width??null,p=c.height??s.height??null;if(i&&!d||f)continue;const m=qr(a,Kr(s)),h=u===null||p===null,w=r&&m>0,g=(u??0)*(p??0);(h||w||m>=g||s.dragging)&&l.push(s)}return l}function au(e,t){const o=new Set;if(typeof e=="string")o.add(e);else if(e.length>=1)for(const r of e)o.add(r.id);return t.filter(r=>o.has(r.source)||o.has(r.target))}function lu(e,t,o,r,i,a=.1,l={x:0,y:0}){const s=t/(e.width*(1+a)),c=o/(e.height*(1+a)),d=Math.min(s,c),f=pn(d,r,i),u=e.x+e.width/2,p=e.y+e.height/2,m=t/2-u*f+(l.x??0),h=o/2-p*f+(l.y??0);return{x:m,y:h,zoom:f}}function c1(e,t){return{x:t.x+e.x,y:t.y+e.y,z:(e.z>t.z?e.z:t.z)+1}}function su(e,t){if(!e.parentNode)return!1;const o=t(e.parentNode);return o?o.selected?!0:su(o,t):!1}function Io(e,t){return typeof e>"u"?"":typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function cu(e,t,o){return e<t?pn(Math.abs(e-t),1,t)/t:e>o?-pn(Math.abs(e-o),1,t)/t:0}function du(e,t,o=15,r=40){const i=cu(e.x,r,t.width-r)*o,a=cu(e.y,r,t.height-r)*o;return[i,a]}function Ka(e,t){if(t){const o=e.position.x+e.dimensions.width-t.dimensions.width,r=e.position.y+e.dimensions.height-t.dimensions.height;if(o>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof t.style=="function"?i={...t.style(t)}:t.style&&(i={...t.style}),i.width=i.width??`${t.dimensions.width}px`,i.height=i.height??`${t.dimensions.height}px`,o>0)if(typeof i.width=="string"){const a=Number(i.width.replace("px",""));i.width=`${a+o}px`}else i.width+=o;if(r>0)if(typeof i.height=="string"){const a=Number(i.height.replace("px",""));i.height=`${a+r}px`}else i.height+=r;if(e.position.x<0){const a=Math.abs(e.position.x);if(t.position.x=t.position.x-a,typeof i.width=="string"){const l=Number(i.width.replace("px",""));i.width=`${l+a}px`}else i.width+=a;e.position.x=0}if(e.position.y<0){const a=Math.abs(e.position.y);if(t.position.y=t.position.y-a,typeof i.height=="string"){const l=Number(i.height.replace("px",""));i.height=`${l+a}px`}else i.height+=a;e.position.y=0}t.dimensions.width=Number(i.width.toString().replace("px","")),t.dimensions.height=Number(i.height.toString().replace("px","")),typeof t.style=="function"?t.style=a=>{const l=t.style;return{...l(a),...i}}:t.style={...t.style,...i}}}}function uu(e,t){var o,r;const i=e.filter(l=>l.type==="add"||l.type==="remove");for(const l of i)if(l.type==="add")t.findIndex(c=>c.id===l.item.id)===-1&&t.push(l.item);else if(l.type==="remove"){const s=t.findIndex(c=>c.id===l.id);s!==-1&&t.splice(s,1)}const a=t.map(l=>l.id);for(const l of t)for(const s of e)if(s.id===l.id)switch(s.type){case"select":l.selected=s.selected;break;case"position":if(To(l)&&(typeof s.position<"u"&&(l.position=s.position),typeof s.dragging<"u"&&(l.dragging=s.dragging),l.expandParent&&l.parentNode)){const c=t[a.indexOf(l.parentNode)];c&&To(c)&&Ka(l,c)}break;case"dimensions":if(To(l)&&(typeof s.dimensions<"u"&&(l.dimensions=s.dimensions),typeof s.updateStyle<"u"&&s.updateStyle&&(l.style={...l.style||{},width:`${(o=s.dimensions)==null?void 0:o.width}px`,height:`${(r=s.dimensions)==null?void 0:r.height}px`}),typeof s.resizing<"u"&&(l.resizing=s.resizing),l.expandParent&&l.parentNode)){const c=t[a.indexOf(l.parentNode)];c&&To(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Ka(l,c):n.nextTick(()=>{Ka(l,c)}))}break}return t}function qt(e,t){return{id:e,type:"select",selected:t}}function fu(e){return{item:e,type:"add"}}function pu(e){return{id:e,type:"remove"}}function mu(e,t,o,r,i){return{id:e,source:t,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function Gt(e,t=new Set,o=!1){const r=[];for(const[i,a]of e){const l=t.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(o&&(a.selected=l),r.push(qt(a.id,l)))}return r}function pe(e){const t=new Set;let o=!1;const r=()=>t.size>0;e&&(o=!0,t.add(e));const i=s=>{t.delete(s)};return{on:s=>{e&&o&&t.delete(e),t.add(s);const c=()=>{i(s),e&&o&&t.add(e)};return br(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(t).map(c=>c(s))),hasListeners:r,fns:t}}function gu(e,t,o){let r=e;do{if(r&&r.matches(t))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function d1(e,t,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!su(c,r))&&(c.draggable||t&&typeof c.draggable>"u")&&s.push(n.markRaw({id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((a=c.computedPosition)==null?void 0:a.x)||0,y:o.y-((l=c.computedPosition)==null?void 0:l.y)||0},from:c.computedPosition,extent:c.extent,parentNode:c.parentNode,dimensions:c.dimensions,expandParent:c.expandParent}));return s}function qa({id:e,dragItems:t,findNode:o}){const r=[];for(const i of t){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function hu(e){if(Array.isArray(e))switch(e.length){case 1:return[e[0],e[0],e[0],e[0]];case 2:return[e[0],e[1],e[0],e[1]];case 3:return[e[0],e[1],e[2],e[1]];case 4:return e;default:return[0,0,0,0]}return[e,e,e,e]}function u1(e,t,o){const[r,i,a,l]=typeof e!="string"?hu(e.padding):[0,0,0,0];return o&&typeof o.computedPosition.x<"u"&&typeof o.computedPosition.y<"u"&&typeof o.dimensions.width<"u"&&typeof o.dimensions.height<"u"?[[o.computedPosition.x+l,o.computedPosition.y+r],[o.computedPosition.x+o.dimensions.width-i,o.computedPosition.y+o.dimensions.height-a]]:!1}function f1(e,t,o,r){let i=e.extent||o;if((i==="parent"||!Array.isArray(i)&&(i==null?void 0:i.range)==="parent")&&!e.expandParent)if(e.parentNode&&r&&e.dimensions.width&&e.dimensions.height){const a=u1(i,e,r);a&&(i=a)}else t(new Ke(De.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=hu(i.padding),d=(r==null?void 0:r.computedPosition.x)||0,f=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+d+c,i.range[0][1]+f+a],[i.range[1][0]+d-l,i.range[1][1]+f-s]]}return i==="parent"?[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]]:i}function p1({width:e,height:t},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(t||0)]]}function Ga(e,t,o,r,i){const a=p1(e.dimensions,f1(e,o,r,i)),l=Jd(t,a);return{position:{x:l.x-((i==null?void 0:i.computedPosition.x)||0),y:l.y-((i==null?void 0:i.computedPosition.y)||0)},computedPosition:l}}function Un(e,t,o=ge.Left,r=!1){const i=((t==null?void 0:t.x)??0)+e.computedPosition.x,a=((t==null?void 0:t.y)??0)+e.computedPosition.y,{width:l,height:s}=t??y1(e);if(r)return{x:i+l/2,y:a+s/2};switch((t==null?void 0:t.position)??o){case ge.Top:return{x:i+l/2,y:a};case ge.Right:return{x:i+l,y:a+s/2};case ge.Bottom:return{x:i+l/2,y:a+s};case ge.Left:return{x:i,y:a+s/2}}}function yu(e,t){return e&&(t?e.find(o=>o.id===t):e[0])||null}function m1({sourcePos:e,targetPos:t,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+o,t.x+i),y2:Math.max(e.y+r,t.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const f=ou({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),u=Math.max(0,Math.min(f.x2,d.x2)-Math.max(f.x,d.x)),p=Math.max(0,Math.min(f.y2,d.y2)-Math.max(f.y,d.y));return Math.ceil(u*p)>0}function g1(e,t,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=t(e.source),l=t(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var De=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(De||{});const _u={MISSING_STYLES:()=>"It seems that you haven't loaded the necessary styles. Please import '@vue-flow/core/dist/style.css' to ensure that the graph is rendered correctly",MISSING_VIEWPORT_DIMENSIONS:()=>"The Vue Flow parent container needs a width and a height to render the graph",NODE_INVALID:e=>`Node is invalid
|
|
25
|
+
`).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===t.toLowerCase();r||o.add(e.toLowerCase());const a=i.every((l,s)=>o.has(l)&&Array.from(o.values())[s]===i[s]);return r&&o.delete(e.toLowerCase()),a}function eN(e,t){return o=>{if(!o.code&&!o.key)return!1;const r=tN(o.code,e);return Array.isArray(e)?e.some(i=>Wd(o[r],i,t,o.type==="keyup")):Wd(o[r],e,t,o.type==="keyup")}}function tN(e,t){return t.includes(e)?"code":"key"}function To(e,t){const o=n.computed(()=>n.toValue(t==null?void 0:t.target)??J1),r=n.shallowRef(n.toValue(e)===!0);let i=!1;const a=new Set;let l=c(n.toValue(e));n.watch(()=>n.toValue(e),(d,u)=>{typeof u=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),nd(["blur","contextmenu"],s),od((...d)=>l(...d),d=>{var u,f;const p=n.toValue(t==null?void 0:t.actInsideInputWithModifier)??!0,m=n.toValue(t==null?void 0:t.preventDefault)??!1;if(i=Q1(d),(!i||i&&!p)&&Ua(d))return;const w=((f=(u=d.composedPath)==null?void 0:u.call(d))==null?void 0:f[0])||d.target,g=(w==null?void 0:w.nodeName)==="BUTTON"||(w==null?void 0:w.nodeName)==="A";!m&&(i||!g)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),od((...d)=>l(...d),d=>{const u=n.toValue(t==null?void 0:t.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!u)&&Ua(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=n.toValue(e)===!0}function c(d){return d===null?(s(),()=>!1):typeof d=="boolean"?(s(),r.value=d,()=>!1):Array.isArray(d)||typeof d=="string"?eN(d,a):d}return r}const Xd="vue-flow__node-desc",Zd="vue-flow__edge-desc",nN="vue-flow__aria-live",Jd=["Enter"," ","Escape"],Un={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Gr(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function jr(e,t){const o=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(o*r)}function qr(e){return{width:e.offsetWidth,height:e.offsetHeight}}function mn(e,t=0,o=1){return Math.min(Math.max(e,t),o)}function Qd(e,t){return{x:mn(e.x,t[0][0],t[1][0]),y:mn(e.y,t[0][1],t[1][1])}}function eu(e){const t=e.getRootNode();return"elementFromPoint"in t?t:window.document}function Kt(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function gn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!Kt(e)}function Po(e){return gn(e)&&"computedPosition"in e}function zr(e){return!Number.isNaN(e)&&Number.isFinite(e)}function oN(e){return zr(e.width)&&zr(e.height)&&zr(e.x)&&zr(e.y)}function rN(e,t,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:n.markRaw({width:0,height:0}),computedPosition:n.markRaw({z:0,...e.position}),handleBounds:{source:[],target:[]},draggable:void 0,selectable:void 0,connectable:void 0,focusable:void 0,selected:!1,dragging:!1,resizing:!1,initialized:!1,isParent:!1,position:{x:0,y:0},data:Re(e.data)?e.data:{},events:n.markRaw(Re(e.events)?e.events:{})};return Object.assign(t??r,e,{id:e.id.toString(),parentNode:o})}function tu(e,t,o){var r,i;const a={id:e.id.toString(),type:e.type??(t==null?void 0:t.type)??"default",source:e.source.toString(),target:e.target.toString(),sourceHandle:(r=e.sourceHandle)==null?void 0:r.toString(),targetHandle:(i=e.targetHandle)==null?void 0:i.toString(),updatable:e.updatable??(o==null?void 0:o.updatable),selectable:e.selectable??(o==null?void 0:o.selectable),focusable:e.focusable??(o==null?void 0:o.focusable),data:Re(e.data)?e.data:{},events:n.markRaw(Re(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(t??a,e,{id:e.id.toString()})}function nu(e,t,o,r){const i=typeof e=="string"?e:e.id,a=new Set,l=r==="source"?"target":"source";for(const s of o)s[l]===i&&a.add(s[r]);return t.filter(s=>a.has(s.id))}function iN(...e){if(e.length===3){const[a,l,s]=e;return nu(a,l,s,"target")}const[t,o]=e,r=typeof t=="string"?t:t.id;return o.filter(a=>Kt(a)&&a.source===r).map(a=>o.find(l=>gn(l)&&l.id===a.target))}function aN(...e){if(e.length===3){const[a,l,s]=e;return nu(a,l,s,"source")}const[t,o]=e,r=typeof t=="string"?t:t.id;return o.filter(a=>Kt(a)&&a.target===r).map(a=>o.find(l=>gn(l)&&l.id===a.source))}function ou({source:e,sourceHandle:t,target:o,targetHandle:r}){return`vueflow__edge-${e}${t??""}-${o}${r??""}`}function lN(e,t){return t.some(o=>Kt(o)&&o.source===e.source&&o.target===e.target&&(o.sourceHandle===e.sourceHandle||!o.sourceHandle&&!e.sourceHandle)&&(o.targetHandle===e.targetHandle||!o.targetHandle&&!e.targetHandle))}function Ka({x:e,y:t},{x:o,y:r,zoom:i}){return{x:e*i+o,y:t*i+r}}function Io({x:e,y:t},{x:o,y:r,zoom:i},a=!1,l=[1,1]){const s={x:(e-o)/i,y:(t-r)/i};return a?Yr(s,l):s}function sN(e,t){return{x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}}function ru({x:e,y:t,width:o,height:r}){return{x:e,y:t,x2:e+o,y2:t+r}}function cN({x:e,y:t,x2:o,y2:r}){return{x:e,y:t,width:o-e,height:r-t}}function iu(e){let t={x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};for(let o=0;o<e.length;o++){const r=e[o];t=sN(t,ru({...r.computedPosition,...r.dimensions}))}return cN(t)}function au(e,t,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Io(t,o),width:t.width/o.zoom,height:t.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:d=!0,hidden:u=!1}=s,f=c.width??s.width??null,p=c.height??s.height??null;if(i&&!d||u)continue;const m=jr(a,Gr(s)),h=f===null||p===null,w=r&&m>0,g=(f??0)*(p??0);(h||w||m>=g||s.dragging)&&l.push(s)}return l}function lu(e,t){const o=new Set;if(typeof e=="string")o.add(e);else if(e.length>=1)for(const r of e)o.add(r.id);return t.filter(r=>o.has(r.source)||o.has(r.target))}function su(e,t,o,r,i,a=.1,l={x:0,y:0}){const s=t/(e.width*(1+a)),c=o/(e.height*(1+a)),d=Math.min(s,c),u=mn(d,r,i),f=e.x+e.width/2,p=e.y+e.height/2,m=t/2-f*u+(l.x??0),h=o/2-p*u+(l.y??0);return{x:m,y:h,zoom:u}}function dN(e,t){return{x:t.x+e.x,y:t.y+e.y,z:(e.z>t.z?e.z:t.z)+1}}function cu(e,t){if(!e.parentNode)return!1;const o=t(e.parentNode);return o?o.selected?!0:cu(o,t):!1}function Oo(e,t){return typeof e>"u"?"":typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function du(e,t,o){return e<t?mn(Math.abs(e-t),1,t)/t:e>o?-mn(Math.abs(e-o),1,t)/t:0}function uu(e,t,o=15,r=40){const i=du(e.x,r,t.width-r)*o,a=du(e.y,r,t.height-r)*o;return[i,a]}function Ga(e,t){if(t){const o=e.position.x+e.dimensions.width-t.dimensions.width,r=e.position.y+e.dimensions.height-t.dimensions.height;if(o>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof t.style=="function"?i={...t.style(t)}:t.style&&(i={...t.style}),i.width=i.width??`${t.dimensions.width}px`,i.height=i.height??`${t.dimensions.height}px`,o>0)if(typeof i.width=="string"){const a=Number(i.width.replace("px",""));i.width=`${a+o}px`}else i.width+=o;if(r>0)if(typeof i.height=="string"){const a=Number(i.height.replace("px",""));i.height=`${a+r}px`}else i.height+=r;if(e.position.x<0){const a=Math.abs(e.position.x);if(t.position.x=t.position.x-a,typeof i.width=="string"){const l=Number(i.width.replace("px",""));i.width=`${l+a}px`}else i.width+=a;e.position.x=0}if(e.position.y<0){const a=Math.abs(e.position.y);if(t.position.y=t.position.y-a,typeof i.height=="string"){const l=Number(i.height.replace("px",""));i.height=`${l+a}px`}else i.height+=a;e.position.y=0}t.dimensions.width=Number(i.width.toString().replace("px","")),t.dimensions.height=Number(i.height.toString().replace("px","")),typeof t.style=="function"?t.style=a=>{const l=t.style;return{...l(a),...i}}:t.style={...t.style,...i}}}}function fu(e,t){var o,r;const i=e.filter(l=>l.type==="add"||l.type==="remove");for(const l of i)if(l.type==="add")t.findIndex(c=>c.id===l.item.id)===-1&&t.push(l.item);else if(l.type==="remove"){const s=t.findIndex(c=>c.id===l.id);s!==-1&&t.splice(s,1)}const a=t.map(l=>l.id);for(const l of t)for(const s of e)if(s.id===l.id)switch(s.type){case"select":l.selected=s.selected;break;case"position":if(Po(l)&&(typeof s.position<"u"&&(l.position=s.position),typeof s.dragging<"u"&&(l.dragging=s.dragging),l.expandParent&&l.parentNode)){const c=t[a.indexOf(l.parentNode)];c&&Po(c)&&Ga(l,c)}break;case"dimensions":if(Po(l)&&(typeof s.dimensions<"u"&&(l.dimensions=s.dimensions),typeof s.updateStyle<"u"&&s.updateStyle&&(l.style={...l.style||{},width:`${(o=s.dimensions)==null?void 0:o.width}px`,height:`${(r=s.dimensions)==null?void 0:r.height}px`}),typeof s.resizing<"u"&&(l.resizing=s.resizing),l.expandParent&&l.parentNode)){const c=t[a.indexOf(l.parentNode)];c&&Po(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Ga(l,c):n.nextTick(()=>{Ga(l,c)}))}break}return t}function Gt(e,t){return{id:e,type:"select",selected:t}}function pu(e){return{item:e,type:"add"}}function mu(e){return{id:e,type:"remove"}}function gu(e,t,o,r,i){return{id:e,source:t,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function jt(e,t=new Set,o=!1){const r=[];for(const[i,a]of e){const l=t.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(o&&(a.selected=l),r.push(Gt(a.id,l)))}return r}function pe(e){const t=new Set;let o=!1;const r=()=>t.size>0;e&&(o=!0,t.add(e));const i=s=>{t.delete(s)};return{on:s=>{e&&o&&t.delete(e),t.add(s);const c=()=>{i(s),e&&o&&t.add(e)};return wr(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(t).map(c=>c(s))),hasListeners:r,fns:t}}function hu(e,t,o){let r=e;do{if(r&&r.matches(t))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function uN(e,t,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!cu(c,r))&&(c.draggable||t&&typeof c.draggable>"u")&&s.push(n.markRaw({id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((a=c.computedPosition)==null?void 0:a.x)||0,y:o.y-((l=c.computedPosition)==null?void 0:l.y)||0},from:c.computedPosition,extent:c.extent,parentNode:c.parentNode,dimensions:c.dimensions,expandParent:c.expandParent}));return s}function ja({id:e,dragItems:t,findNode:o}){const r=[];for(const i of t){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function yu(e){if(Array.isArray(e))switch(e.length){case 1:return[e[0],e[0],e[0],e[0]];case 2:return[e[0],e[1],e[0],e[1]];case 3:return[e[0],e[1],e[2],e[1]];case 4:return e;default:return[0,0,0,0]}return[e,e,e,e]}function fN(e,t,o){const[r,i,a,l]=typeof e!="string"?yu(e.padding):[0,0,0,0];return o&&typeof o.computedPosition.x<"u"&&typeof o.computedPosition.y<"u"&&typeof o.dimensions.width<"u"&&typeof o.dimensions.height<"u"?[[o.computedPosition.x+l,o.computedPosition.y+r],[o.computedPosition.x+o.dimensions.width-i,o.computedPosition.y+o.dimensions.height-a]]:!1}function pN(e,t,o,r){let i=e.extent||o;if((i==="parent"||!Array.isArray(i)&&(i==null?void 0:i.range)==="parent")&&!e.expandParent)if(e.parentNode&&r&&e.dimensions.width&&e.dimensions.height){const a=fN(i,e,r);a&&(i=a)}else t(new Ke(Ve.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=yu(i.padding),d=(r==null?void 0:r.computedPosition.x)||0,u=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+d+c,i.range[0][1]+u+a],[i.range[1][0]+d-l,i.range[1][1]+u-s]]}return i==="parent"?[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]]:i}function mN({width:e,height:t},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(t||0)]]}function qa(e,t,o,r,i){const a=mN(e.dimensions,pN(e,o,r,i)),l=Qd(t,a);return{position:{x:l.x-((i==null?void 0:i.computedPosition.x)||0),y:l.y-((i==null?void 0:i.computedPosition.y)||0)},computedPosition:l}}function Kn(e,t,o=ge.Left,r=!1){const i=((t==null?void 0:t.x)??0)+e.computedPosition.x,a=((t==null?void 0:t.y)??0)+e.computedPosition.y,{width:l,height:s}=t??_N(e);if(r)return{x:i+l/2,y:a+s/2};switch((t==null?void 0:t.position)??o){case ge.Top:return{x:i+l/2,y:a};case ge.Right:return{x:i+l,y:a+s/2};case ge.Bottom:return{x:i+l/2,y:a+s};case ge.Left:return{x:i,y:a+s/2}}}function _u(e,t){return e&&(t?e.find(o=>o.id===t):e[0])||null}function gN({sourcePos:e,targetPos:t,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+o,t.x+i),y2:Math.max(e.y+r,t.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const u=ru({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),f=Math.max(0,Math.min(u.x2,d.x2)-Math.max(u.x,d.x)),p=Math.max(0,Math.min(u.y2,d.y2)-Math.max(u.y,d.y));return Math.ceil(f*p)>0}function hN(e,t,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=t(e.source),l=t(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var Ve=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(Ve||{});const bu={MISSING_STYLES:()=>"It seems that you haven't loaded the necessary styles. Please import '@vue-flow/core/dist/style.css' to ensure that the graph is rendered correctly",MISSING_VIEWPORT_DIMENSIONS:()=>"The Vue Flow parent container needs a width and a height to render the graph",NODE_INVALID:e=>`Node is invalid
|
|
26
26
|
Node: ${e}`,NODE_NOT_FOUND:e=>`Node not found
|
|
27
27
|
Node: ${e}`,NODE_MISSING_PARENT:(e,t)=>`Node is missing a parent
|
|
28
28
|
Node: ${e}
|
|
@@ -42,42 +42,42 @@ Edge: ${e}
|
|
|
42
42
|
Source: ${t}
|
|
43
43
|
Target: ${o}`,EDGE_ORPHANED:e=>`Edge was orphaned (suddenly missing source or target) and has been removed
|
|
44
44
|
Edge: ${e}`,EDGE_NOT_FOUND:e=>`Edge not found
|
|
45
|
-
Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will be removed in the next major version. Please use the id parameter instead"};class Ke extends Error{constructor(t,...o){var r;super((r=_u[t])==null?void 0:r.call(_u,...o)),this.name="VueFlowError",this.code=t,this.args=o}}function ja(e){return"clientX"in e}function h1(e){return"sourceEvent"in e}function St(e,t){const o=ja(e);let r,i;return o?(r=e.clientX,i=e.clientY):"touches"in e&&e.touches.length>0?(r=e.touches[0].clientX,i=e.touches[0].clientY):"changedTouches"in e&&e.changedTouches.length>0?(r=e.changedTouches[0].clientX,i=e.changedTouches[0].clientY):(r=0,i=0),{x:r-((t==null?void 0:t.left)??0),y:i-((t==null?void 0:t.top)??0)}}const zr=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function y1(e){var t,o;return{width:((t=e.dimensions)==null?void 0:t.width)??e.width??0,height:((o=e.dimensions)==null?void 0:o.height)??e.height??0}}function Hr(e,t=[1,1]){return{x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}}const _1=()=>!0;function za(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function b1(e,t,o){const r=[],i={x:e.x-o,y:e.y-o,width:o*2,height:o*2};for(const a of t.values())qr(i,Kr(a))>0&&r.push(a);return r}const w1=250;function E1(e,t,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=b1(e,o,t+w1);for(const d of c){const f=[...((i=d.handleBounds)==null?void 0:i.source)??[],...((a=d.handleBounds)==null?void 0:a.target)??[]];for(const u of f){if(r.nodeId===u.nodeId&&r.type===u.type&&r.id===u.id)continue;const{x:p,y:m}=Un(d,u,u.position,!0),h=Math.sqrt((p-e.x)**2+(m-e.y)**2);h>t||(h<s?(l=[{...u,x:p,y:m}],s=h):h===s&&l.push({...u,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(f=>f.type===d)??l[0]}return l[0]}function bu(e,{handle:t,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=_1},f,u,p){const m=a==="target",h=t?l.querySelector(`.${s}-flow__handle[data-id="${c}-${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`):null,{x:w,y:g}=St(e),_=l.elementFromPoint(w,g),b=_!=null&&_.classList.contains(`${s}-flow__handle`)?_:h,y={handleDomNode:b,isValid:!1,connection:null,toHandle:null};if(b){const C=wu(void 0,b),x=b.getAttribute("data-nodeid"),k=b.getAttribute("data-handleid"),P=b.classList.contains("connectable"),I=b.classList.contains("connectableend");if(!x||!C)return y;const B={source:m?x:r,sourceHandle:m?k:i,target:m?r:x,targetHandle:m?i:k};y.connection=B;const M=P&&I&&(o===Ut.Strict?m&&C==="source"||!m&&C==="target":x!==r||k!==i);y.isValid=M&&d(B,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(x)}),y.toHandle=t}return y}function wu(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function k1(e,t){let o=null;return t?o="valid":e&&!t&&(o="invalid"),o}function C1(e,t){let o=null;return t?o=!0:e&&!t&&(o=!1),o}function v1(e,t,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===Ut.Strict?(l=d.handleBounds)==null?void 0:l[t]:[...((s=d.handleBounds)==null?void 0:s.source)??[],...((c=d.handleBounds)==null?void 0:c.target)??[]],u=(o?f==null?void 0:f.find(p=>p.id===o):f==null?void 0:f[0])??null;return u&&a?{...u,...Un(d,u,u.position,!0)}:u}const Ha={[ge.Left]:ge.Right,[ge.Right]:ge.Left,[ge.Top]:ge.Bottom,[ge.Bottom]:ge.Top},N1=["production","prod"];function Yr(e,...t){Eu()&&console.warn(`[Vue Flow]: ${e}`,...t)}function Eu(){return!N1.includes(process.env.NODE_ENV||"")}function ku(e,t,o,r,i){const a=t.querySelectorAll(`.vue-flow__handle.${e}`);return a!=null&&a.length?Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-o.left)/r,y:(s.top-o.top)/r,...Gr(l)}}):null}function Ya(e,t,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&t)&&(r([e]),n.nextTick(()=>{l.blur()})):o([e])}function Ve(e){return typeof n.unref(e)<"u"}function S1(e,t,o,r){if(!e||!e.source||!e.target)return o(new Ke(De.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return Kt(e)?i=e:i={...e,id:nu(e)},i=eu(i,void 0,r),a1(i,t)?!1:i}function x1(e,t,o,r,i){if(!t.source||!t.target)return i(new Ke(De.EDGE_INVALID,e.id)),!1;if(!o)return i(new Ke(De.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?nu(t):a,source:t.source,target:t.target,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle}}function Cu(e,t,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!mn(l)){o(new Ke(De.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=o1(l,t(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=t(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new Ke(De.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function vu(e,t,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,t)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,t)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,t))}}function Wa(e,t,o){e.clear();for(const r of o){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=r,c={edgeId:r.id,source:i,target:a,sourceHandle:l,targetHandle:s},d=`${i}-${l}--${a}-${s}`,f=`${a}-${s}--${i}-${l}`;vu("source",c,f,e,i,l),vu("target",c,d,e,a,s)}}function Nu(e,t){if(e.size!==t.size)return!1;for(const o of e)if(!t.has(o))return!1;return!0}function Za(e,t,o,r,i,a,l,s){const c=[];for(const d of e){const f=Kt(d)?d:S1(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new Ke(De.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new Ke(De.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new Ke(De.EDGE_TARGET_MISSING,f.id,f.target));continue}if(t&&!t(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new Ke(De.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...eu(f,m,a),sourceNode:u,targetNode:p})}return c}const Su=Symbol("vueFlow"),xu=Symbol("nodeId"),Au=Symbol("nodeRef"),A1=Symbol("edgeId"),T1=Symbol("edgeRef"),Wr=Symbol("slots");function Tu(e){const{vueFlowRef:t,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:f,nodesDraggable:u,panBy:p,findNode:m,multiSelectionActive:h,nodesSelectionActive:w,selectNodesOnDrag:g,removeSelectedElements:_,addSelectedNodes:b,updateNodePositions:y,emits:C}=xe(),{onStart:x,onDrag:k,onStop:P,onClick:I,el:B,disabled:W,id:M,selectable:v,dragHandle:N}=e,E=n.shallowRef(!1);let R=[],O,j=null,G={x:void 0,y:void 0},F={x:0,y:0},V=null,U=!1,re=0,de=!1;const ee=O1(),oe=({x:ne,y:ue})=>{G={x:ne,y:ue};let me=!1;if(R=R.map(T=>{const S={x:ne-T.distance.x,y:ue-T.distance.y},{computedPosition:A}=Ga(T,o.value?Hr(S,r.value):S,C.error,l.value,T.parentNode?m(T.parentNode):void 0);return me=me||T.position.x!==A.x||T.position.y!==A.y,T.position=A,T}),!!me&&(y(R,!0,!0),E.value=!0,V)){const[T,S]=qa({id:M,dragItems:R,findNode:m});k({event:V,node:T,nodes:S})}},Y=()=>{if(!j)return;const[ne,ue]=du(F,j,f.value);if(ne!==0||ue!==0){const me={x:(G.x??0)-ne/c.value.zoom,y:(G.y??0)-ue/c.value.zoom};p({x:ne,y:ue})&&oe(me)}re=requestAnimationFrame(Y)},$=(ne,ue)=>{U=!0;const me=m(M);!g.value&&!h.value&&me&&(me.selected||_()),me&&n.toValue(v)&&g.value&&Ya(me,h.value,b,_,w,!1,ue);const T=ee(ne.sourceEvent);if(G=T,R=d1(a.value,u.value,T,m,M),R.length){const[S,A]=qa({id:M,dragItems:R,findNode:m});x({event:ne.sourceEvent,node:S,nodes:A})}},z=(ne,ue)=>{var me;ne.sourceEvent.type==="touchmove"&&ne.sourceEvent.touches.length>1||(s.value===0&&$(ne,ue),G=ee(ne.sourceEvent),j=((me=t.value)==null?void 0:me.getBoundingClientRect())||null,F=St(ne.sourceEvent,j))},Z=(ne,ue)=>{const me=ee(ne.sourceEvent);if(!de&&U&&d.value&&(de=!0,Y()),!U){const T=me.xSnapped-(G.x??0),S=me.ySnapped-(G.y??0);Math.sqrt(T*T+S*S)>s.value&&$(ne,ue)}(G.x!==me.xSnapped||G.y!==me.ySnapped)&&R.length&&U&&(V=ne.sourceEvent,F=St(ne.sourceEvent,j),oe(me))},Q=ne=>{let ue=!1;if(!U&&!E.value&&!h.value){const me=ne.sourceEvent,T=ee(me),S=T.xSnapped-(G.x??0),A=T.ySnapped-(G.y??0),D=Math.sqrt(S*S+A*A);D!==0&&D<=s.value&&(I==null||I(me),ue=!0)}if(R.length&&!ue){y(R,!1,!1);const[me,T]=qa({id:M,dragItems:R,findNode:m});P({event:ne.sourceEvent,node:me,nodes:T})}R=[],E.value=!1,de=!1,U=!1,G={x:void 0,y:void 0},cancelAnimationFrame(re)};return n.watch([()=>n.toValue(W),B],([ne,ue],me,T)=>{if(ue){const S=pt(ue);ne||(O=nv().on("start",A=>z(A,ue)).on("drag",A=>Z(A,ue)).on("end",A=>Q(A)).filter(A=>{const D=A.target,L=n.toValue(N);return!A.button&&(!i.value||!gu(D,`.${i.value}`,ue)&&(!L||gu(D,L,ue)))}),S.call(O)),T(()=>{S.on(".drag",null),O&&(O.on("start",null),O.on("drag",null),O.on("end",null))})}}),E}function P1(){return{doubleClick:pe(),click:pe(),mouseEnter:pe(),mouseMove:pe(),mouseLeave:pe(),contextMenu:pe(),updateStart:pe(),update:pe(),updateEnd:pe()}}function I1(e,t){const o=P1();return o.doubleClick.on(r=>{var i,a;t.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;t.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;t.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;t.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;t.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;t.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;t.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;t.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;t.edgeUpdateEnd(r),(a=(i=e.events)==null?void 0:i.updateEnd)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function O1(){const{viewport:e,snapGrid:t,snapToGrid:o,vueFlowRef:r}=xe();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=h1(i)?i.sourceEvent:i,{x:c,y:d}=St(s,l),f=Po({x:c,y:d},e.value),{x:u,y:p}=o.value?Hr(f,t.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Zr(){return!0}function Pu({handleId:e,nodeId:t,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:h,autoPanSpeed:w,findNode:g,panBy:_,startConnection:b,updateConnection:y,endConnection:C,emits:x,viewport:k,edges:P,nodes:I,isValidConnection:B,nodeLookup:W}=xe();let M=null,v=!1,N=null;function E(O){var j;const G=n.toValue(o)==="target",F=ja(O),V=Qd(O.target);if(F&&O.button===0||!F){let U=function(J){T=St(J,ne),oe=E1(Po(T,k.value,!1,[1,1]),f.value,W.value,D),S||(A(),S=!0);const q=bu(J,{handle:oe,connectionMode:d.value,fromNodeId:n.toValue(t),fromHandleId:n.toValue(e),fromType:G?"target":"source",isValidConnection:ee,doc:V,lib:"vue",flowId:s,nodeLookup:W.value},P.value,I.value,g);N=q.handleDomNode,M=q.connection,v=C1(!!oe,q.isValid);const ie={...K,isValid:v,to:q.toHandle&&v?Ua({x:q.toHandle.x,y:q.toHandle.y},k.value):T,toHandle:q.toHandle,toPosition:v&&q.toHandle?q.toHandle.position:Ha[D.position],toNode:q.toHandle?W.value.get(q.toHandle.nodeId):null};if(!(v&&oe&&(K!=null&&K.toHandle)&&ie.toHandle&&K.toHandle.type===ie.toHandle.type&&K.toHandle.nodeId===ie.toHandle.nodeId&&K.toHandle.id===ie.toHandle.id&&K.to.x===ie.to.x&&K.to.y===ie.to.y)){if(y(oe&&v?Ua({x:oe.x,y:oe.y},k.value):T,q.toHandle,k1(!!oe,v)),K=ie,!oe&&!v&&!N)return za(me);M&&M.source!==M.target&&N&&(za(me),me=N,N.classList.add("connecting","vue-flow__handle-connecting"),N.classList.toggle("valid",!!v),N.classList.toggle("vue-flow__handle-valid",!!v))}},re=function(J){(oe||N)&&M&&v&&(a?a(J,M):x.connect(M)),x.connectEnd(J),i&&(l==null||l(J)),za(me),cancelAnimationFrame(Y),C(J),S=!1,v=!1,M=null,N=null,V.removeEventListener("mousemove",U),V.removeEventListener("mouseup",re),V.removeEventListener("touchmove",U),V.removeEventListener("touchend",re)};const de=g(n.toValue(t));let ee=n.toValue(r)||B.value||Zr;!ee&&de&&(ee=(G?de.isValidSourcePos:de.isValidTargetPos)||Zr);let oe,Y=0;const{x:$,y:z}=St(O),Z=V==null?void 0:V.elementFromPoint($,z),Q=wu(n.toValue(i),Z),ne=(j=c.value)==null?void 0:j.getBoundingClientRect();if(!ne||!Q)return;const ue=v1(n.toValue(t),Q,n.toValue(e),W.value,d.value);if(!ue)return;let me,T=St(O,ne),S=!1;const A=()=>{if(!h.value)return;const[J,q]=du(T,ne,w.value);_({x:J,y:q}),Y=requestAnimationFrame(A)},D={...ue,nodeId:n.toValue(t),type:Q,position:ue.position},L=W.value.get(n.toValue(t)),te={inProgress:!0,isValid:null,from:Un(L,D,ge.Left,!0),fromHandle:D,fromPosition:D.position,fromNode:L,to:T,toHandle:null,toPosition:Ha[D.position],toNode:null};b({nodeId:n.toValue(t),id:n.toValue(e),type:Q,position:(Z==null?void 0:Z.getAttribute("data-handlepos"))||ge.Top,...T},{x:$-ne.left,y:z-ne.top}),x.connectStart({event:O,nodeId:n.toValue(t),handleId:n.toValue(e),handleType:Q});let K=te;V.addEventListener("mousemove",U),V.addEventListener("mouseup",re),V.addEventListener("touchmove",U),V.addEventListener("touchend",re)}}function R(O){var j,G;if(!u.value)return;const F=n.toValue(o)==="target";if(!p.value){x.clickConnectStart({event:O,nodeId:n.toValue(t),handleId:n.toValue(e)}),b({nodeId:n.toValue(t),type:n.toValue(o),id:n.toValue(e),position:ge.Top,...St(O)},void 0,!0);return}let V=n.toValue(r)||B.value||Zr;const U=g(n.toValue(t));if(!V&&U&&(V=(F?U.isValidSourcePos:U.isValidTargetPos)||Zr),U&&(typeof U.connectable>"u"?m.value:U.connectable)===!1)return;const re=Qd(O.target),de=bu(O,{handle:{nodeId:n.toValue(t),id:n.toValue(e),type:n.toValue(o),position:ge.Top,...St(O)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:V,doc:re,lib:"vue",flowId:s,nodeLookup:W.value},P.value,I.value,g),ee=((j=de.connection)==null?void 0:j.source)===((G=de.connection)==null?void 0:G.target);de.isValid&&de.connection&&!ee&&x.connect(de.connection),x.clickConnectEnd(O),C(O,!0)}return{handlePointerDown:E,handleClick:R}}function $1(){return n.inject(xu,"")}function Iu(e){const t=e??$1()??"",o=n.inject(Au,n.ref(null)),{findNode:r,edges:i,emits:a}=xe(),l=r(t);return l||a.error(new Ke(De.NODE_NOT_FOUND,t)),{id:t,nodeEl:o,node:l,parentNode:n.computed(()=>r(l.parentNode)),connectedEdges:n.computed(()=>au([l],i.value))}}function B1(){return{doubleClick:pe(),click:pe(),mouseEnter:pe(),mouseMove:pe(),mouseLeave:pe(),contextMenu:pe(),dragStart:pe(),drag:pe(),dragStop:pe()}}function D1(e,t){const o=B1();return o.doubleClick.on(r=>{var i,a;t.nodeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;t.nodeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;t.nodeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;t.nodeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;t.nodeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;t.nodeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.dragStart.on(r=>{var i,a;t.nodeDragStart(r),(a=(i=e.events)==null?void 0:i.dragStart)==null||a.call(i,r)}),o.drag.on(r=>{var i,a;t.nodeDrag(r),(a=(i=e.events)==null?void 0:i.drag)==null||a.call(i,r)}),o.dragStop.on(r=>{var i,a;t.nodeDragStop(r),(a=(i=e.events)==null?void 0:i.dragStop)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function Ou(){const{getSelectedNodes:e,nodeExtent:t,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=xe();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,h=c.y*u*p,w=[];for(const g of e.value)if(g.draggable||l&&typeof g.draggable>"u"){const _={x:g.computedPosition.x+m,y:g.computedPosition.y+h},{computedPosition:b}=Ga(g,_,s.error,t.value,g.parentNode?r(g.parentNode):void 0);w.push({id:g.id,position:b,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(w,!0,!1)}}const Xa=.1,V1=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function jt(){return Yr("Viewport not initialized yet."),Promise.resolve(!1)}const R1={zoomIn:jt,zoomOut:jt,zoomTo:jt,fitView:jt,setCenter:jt,fitBounds:jt,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:jt,setTransform:jt,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function M1(e){function t(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?Eo:Ir).scaleBy(Ja(e.d3Selection,i==null?void 0:i.duration,i==null?void 0:i.ease,()=>{a(!0)}),r):a(!1)})}function o(r,i,a,l){return new Promise(s=>{var c;const{x:d,y:f}=Jd({x:-r,y:-i},e.translateExtent),u=Fn.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?Eo:Ir).transform(Ja(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),u):s(!1)})}return n.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>t(1.2,i),zoomOut:i=>t(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?Eo:Ir).scaleTo(Ja(e.d3Selection,a==null?void 0:a.duration,a==null?void 0:a.ease,()=>{l(!0)}),i):l(!1)}),setViewport:(i,a)=>o(i.x,i.y,i.zoom,a),setTransform:(i,a)=>o(i.x,i.y,i.zoom,a),getViewport:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),getTransform:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),fitView:(i={padding:Xa,includeHiddenNodes:!1,duration:0})=>{var a,l;const s=[];for(const p of e.nodes)p.dimensions.width&&p.dimensions.height&&((i==null?void 0:i.includeHiddenNodes)||!p.hidden)&&(!((a=i.nodes)!=null&&a.length)||(l=i.nodes)!=null&&l.length&&i.nodes.includes(p.id))&&s.push(p);if(!s.length)return Promise.resolve(!1);const c=ru(s),{x:d,y:f,zoom:u}=lu(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Xa,i.offset);return o(d,f,u,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,d=e.dimensions.height/2-a*s;return o(c,d,s,l)},fitBounds:(i,a={padding:Xa})=>{const{x:l,y:s,zoom:c}=lu(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>Po(i,e.viewport,e.snapToGrid,e.snapGrid),screenToFlowCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x-a,y:i.y-l};return Po(s,e.viewport,e.snapToGrid,e.snapGrid)}return{x:0,y:0}},flowToScreenCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x+a,y:i.y+l};return Ua(s,e.viewport)}return{x:0,y:0}}}:R1)}function Ja(e,t=0,o=V1,r=()=>{}){const i=typeof t=="number"&&t>0;return i||r(),i?e.transition().duration(t).ease(o).on("end",r):e}function F1(e,t,o){const r=n.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let w,g,_=!!(o.nodes.value.length||o.edges.value.length);w=Bn([e.modelValue,()=>{var b,y;return(y=(b=e.modelValue)==null?void 0:b.value)==null?void 0:y.length}],([b])=>{b&&Array.isArray(b)&&(g==null||g.pause(),o.setElements(b),!g&&!_&&b.length?_=!0:g==null||g.resume())}),g=Bn([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([b,y])=>{var C;(C=e.modelValue)!=null&&C.value&&Array.isArray(e.modelValue.value)&&(w==null||w.pause(),e.modelValue.value=[...b,...y],n.nextTick(()=>{w==null||w.resume()}))},{immediate:_}),n.onScopeDispose(()=>{w==null||w.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let w,g,_=!!o.nodes.value.length;w=Bn([e.nodes,()=>{var b,y;return(y=(b=e.nodes)==null?void 0:b.value)==null?void 0:y.length}],([b])=>{b&&Array.isArray(b)&&(g==null||g.pause(),o.setNodes(b),!g&&!_&&b.length?_=!0:g==null||g.resume())}),g=Bn([o.nodes,()=>o.nodes.value.length],([b])=>{var y;(y=e.nodes)!=null&&y.value&&Array.isArray(e.nodes.value)&&(w==null||w.pause(),e.nodes.value=[...b],n.nextTick(()=>{w==null||w.resume()}))},{immediate:_}),n.onScopeDispose(()=>{w==null||w.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let w,g,_=!!o.edges.value.length;w=Bn([e.edges,()=>{var b,y;return(y=(b=e.edges)==null?void 0:b.value)==null?void 0:y.length}],([b])=>{b&&Array.isArray(b)&&(g==null||g.pause(),o.setEdges(b),!g&&!_&&b.length?_=!0:g==null||g.resume())}),g=Bn([o.edges,()=>o.edges.value.length],([b])=>{var y;(y=e.edges)!=null&&y.value&&Array.isArray(e.edges.value)&&(w==null||w.pause(),e.edges.value=[...b],n.nextTick(()=>{w==null||w.resume()}))},{immediate:_}),n.onScopeDispose(()=>{w==null||w.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{n.watch(()=>t.maxZoom,()=>{t.maxZoom&&Ve(t.maxZoom)&&o.setMaxZoom(t.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{n.watch(()=>t.minZoom,()=>{t.minZoom&&Ve(t.minZoom)&&o.setMinZoom(t.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{n.watch(()=>t.translateExtent,()=>{t.translateExtent&&Ve(t.translateExtent)&&o.setTranslateExtent(t.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{n.watch(()=>t.nodeExtent,()=>{t.nodeExtent&&Ve(t.nodeExtent)&&o.setNodeExtent(t.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{n.watch(()=>t.applyDefault,()=>{Ve(t.applyDefault)&&(o.applyDefault.value=t.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const w=async g=>{let _=g;typeof t.autoConnect=="function"&&(_=await t.autoConnect(g)),_!==!1&&o.addEdges([_])};n.watch(()=>t.autoConnect,()=>{Ve(t.autoConnect)&&(o.autoConnect.value=t.autoConnect)},{immediate:!0}),n.watch(o.autoConnect,(g,_,b)=>{g?o.onConnect(w):o.hooks.value.connect.off(w),b(()=>{o.hooks.value.connect.off(w)})},{immediate:!0})})},m=()=>{const w=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const g of Object.keys(t)){const _=g;if(!w.includes(_)){const b=n.toRef(()=>t[_]),y=o[_];n.isRef(y)&&r.run(()=>{n.watch(b,C=>{Ve(C)&&(y.value=C)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function L1(){return{edgesChange:pe(),nodesChange:pe(),nodeDoubleClick:pe(),nodeClick:pe(),nodeMouseEnter:pe(),nodeMouseMove:pe(),nodeMouseLeave:pe(),nodeContextMenu:pe(),nodeDragStart:pe(),nodeDrag:pe(),nodeDragStop:pe(),nodesInitialized:pe(),miniMapNodeClick:pe(),miniMapNodeDoubleClick:pe(),miniMapNodeMouseEnter:pe(),miniMapNodeMouseMove:pe(),miniMapNodeMouseLeave:pe(),connect:pe(),connectStart:pe(),connectEnd:pe(),clickConnectStart:pe(),clickConnectEnd:pe(),paneReady:pe(),init:pe(),move:pe(),moveStart:pe(),moveEnd:pe(),selectionDragStart:pe(),selectionDrag:pe(),selectionDragStop:pe(),selectionContextMenu:pe(),selectionStart:pe(),selectionEnd:pe(),viewportChangeStart:pe(),viewportChange:pe(),viewportChangeEnd:pe(),paneScroll:pe(),paneClick:pe(),paneContextMenu:pe(),paneMouseEnter:pe(),paneMouseMove:pe(),paneMouseLeave:pe(),edgeContextMenu:pe(),edgeMouseEnter:pe(),edgeMouseMove:pe(),edgeMouseLeave:pe(),edgeDoubleClick:pe(),edgeClick:pe(),edgeUpdateStart:pe(),edgeUpdate:pe(),edgeUpdateEnd:pe(),updateNodeInternals:pe(),error:pe(e=>Yr(e.message))}}function U1(e,t){n.onBeforeMount(()=>{for(const[o,r]of Object.entries(t.value)){const i=a=>{e(o,a)};r.fns.add(i),br(()=>{r.off(i)})}})}function $u(){return{vueFlowRef:null,viewportRef:null,nodes:[],edges:[],connectionLookup:new Map,nodeTypes:{},edgeTypes:{},initialized:!1,dimensions:{width:0,height:0},viewport:{x:0,y:0,zoom:1},d3Zoom:null,d3Selection:null,d3ZoomHandler:null,minZoom:.5,maxZoom:2,translateExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],nodeExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],selectionMode:Fa.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:xo.Free,paneClickDistance:0,panOnDrag:!0,edgeUpdaterRadius:10,onlyRenderVisibleElements:!1,defaultViewport:{x:0,y:0,zoom:1},nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,defaultMarkerColor:"#b1b1b7",connectionLineStyle:{},connectionLineType:null,connectionLineOptions:{type:fn.Bezier,style:{}},connectionMode:Ut.Loose,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectionPosition:{x:Number.NaN,y:Number.NaN},connectionRadius:20,connectOnClick:!0,connectionStatus:null,isValidConnection:null,snapGrid:[15,15],snapToGrid:!1,edgesUpdatable:!1,edgesFocusable:!0,nodesFocusable:!0,nodesConnectable:!0,nodesDraggable:!0,nodeDragThreshold:1,elementsSelectable:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,selectionKeyCode:"Shift",multiSelectionKeyCode:zr()?"Meta":"Control",zoomActivationKeyCode:zr()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:L1(),applyDefault:!0,autoConnect:!1,fitViewOnInit:!1,fitViewOnInitDone:!1,noDragClassName:"nodrag",noWheelClassName:"nowheel",noPanClassName:"nopan",defaultEdgeOptions:void 0,elevateEdgesOnSelect:!1,elevateNodesOnSelect:!0,autoPanOnNodeDrag:!0,autoPanOnConnect:!0,autoPanSpeed:15,disableKeyboardA11y:!1,ariaLiveMessage:""}}const K1=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function q1(e,t,o){const r=M1(e),i=T=>{const S=T??[];e.hooks.updateNodeInternals.trigger(S)},a=T=>i1(T,e.nodes,e.edges),l=T=>r1(T,e.nodes,e.edges),s=T=>au(T,e.edges),c=({id:T,type:S,nodeId:A})=>{var D;return Array.from(((D=e.connectionLookup.get(`${A}-${S}-${T??null}`))==null?void 0:D.values())??[])},d=T=>{if(T)return t.value.get(T)},f=T=>{if(T)return o.value.get(T)},u=(T,S,A)=>{var D,L;const X=[];for(const te of T){const K={id:te.id,type:"position",dragging:A,from:te.from};if(S&&(K.position=te.position,te.parentNode)){const J=d(te.parentNode);K.position={x:K.position.x-(((D=J==null?void 0:J.computedPosition)==null?void 0:D.x)??0),y:K.position.y-(((L=J==null?void 0:J.computedPosition)==null?void 0:L.y)??0)}}X.push(K)}X!=null&&X.length&&e.hooks.nodesChange.trigger(X)},p=T=>{if(!e.vueFlowRef)return;const S=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!S)return;const A=window.getComputedStyle(S),{m22:D}=new window.DOMMatrixReadOnly(A.transform),L=[];for(const X of T){const te=X,K=d(te.id);if(K){const J=Gr(te.nodeElement);if(!!(J.width&&J.height&&(K.dimensions.width!==J.width||K.dimensions.height!==J.height||te.forceUpdate))){const ie=te.nodeElement.getBoundingClientRect();K.dimensions=J,K.handleBounds.source=ku("source",te.nodeElement,ie,D,K.id),K.handleBounds.target=ku("target",te.nodeElement,ie,D,K.id),L.push({id:K.id,type:"dimensions",dimensions:J})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),L.length&&e.hooks.nodesChange.trigger(L)},m=(T,S)=>{const A=new Set,D=new Set;for(const te of T)mn(te)?A.add(te.id):Kt(te)&&D.add(te.id);const L=Gt(t.value,A,!0),X=Gt(o.value,D);if(e.multiSelectionActive){for(const te of A)L.push(qt(te,S));for(const te of D)X.push(qt(te,S))}L.length&&e.hooks.nodesChange.trigger(L),X.length&&e.hooks.edgesChange.trigger(X)},h=T=>{if(e.multiSelectionActive){const S=T.map(A=>qt(A.id,!0));e.hooks.nodesChange.trigger(S);return}e.hooks.nodesChange.trigger(Gt(t.value,new Set(T.map(S=>S.id)),!0)),e.hooks.edgesChange.trigger(Gt(o.value))},w=T=>{if(e.multiSelectionActive){const S=T.map(A=>qt(A.id,!0));e.hooks.edgesChange.trigger(S);return}e.hooks.edgesChange.trigger(Gt(o.value,new Set(T.map(S=>S.id)))),e.hooks.nodesChange.trigger(Gt(t.value,new Set,!0))},g=T=>{m(T,!0)},_=T=>{const A=(T||e.nodes).map(D=>(D.selected=!1,qt(D.id,!1)));e.hooks.nodesChange.trigger(A)},b=T=>{const A=(T||e.edges).map(D=>(D.selected=!1,qt(D.id,!1)));e.hooks.edgesChange.trigger(A)},y=T=>{if(!T||!T.length)return m([],!1);const S=T.reduce((A,D)=>{const L=qt(D.id,!1);return mn(D)?A.nodes.push(L):A.edges.push(L),A},{nodes:[],edges:[]});S.nodes.length&&e.hooks.nodesChange.trigger(S.nodes),S.edges.length&&e.hooks.edgesChange.trigger(S.edges)},C=T=>{var S;(S=e.d3Zoom)==null||S.scaleExtent([T,e.maxZoom]),e.minZoom=T},x=T=>{var S;(S=e.d3Zoom)==null||S.scaleExtent([e.minZoom,T]),e.maxZoom=T},k=T=>{var S;(S=e.d3Zoom)==null||S.translateExtent(T),e.translateExtent=T},P=T=>{e.nodeExtent=T,i()},I=T=>{var S;(S=e.d3Zoom)==null||S.clickDistance(T)},B=T=>{e.nodesDraggable=T,e.nodesConnectable=T,e.elementsSelectable=T},W=T=>{const S=T instanceof Function?T(e.nodes):T;!e.initialized&&!S.length||(e.nodes=Cu(S,d,e.hooks.error.trigger))},M=T=>{const S=T instanceof Function?T(e.edges):T;if(!e.initialized&&!S.length)return;const A=Za(S,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);Wa(e.connectionLookup,o.value,A),e.edges=A},v=T=>{const S=T instanceof Function?T([...e.nodes,...e.edges]):T;!e.initialized&&!S.length||(W(S.filter(mn)),M(S.filter(Kt)))},N=T=>{let S=T instanceof Function?T(e.nodes):T;S=Array.isArray(S)?S:[S];const A=Cu(S,d,e.hooks.error.trigger),D=[];for(const L of A)D.push(fu(L));D.length&&e.hooks.nodesChange.trigger(D)},E=T=>{let S=T instanceof Function?T(e.edges):T;S=Array.isArray(S)?S:[S];const A=Za(S,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),D=[];for(const L of A)D.push(fu(L));D.length&&e.hooks.edgesChange.trigger(D)},R=(T,S=!0,A=!1)=>{const D=T instanceof Function?T(e.nodes):T,L=Array.isArray(D)?D:[D],X=[],te=[];function K(q){const ie=s(q);for(const le of ie)(!Ve(le.deletable)||le.deletable)&&te.push(mu(le.id,le.source,le.target,le.sourceHandle,le.targetHandle))}function J(q){const ie=[];for(const le of e.nodes)le.parentNode===q&&ie.push(le);if(ie.length){for(const le of ie)X.push(pu(le.id));S&&K(ie);for(const le of ie)J(le.id)}}for(const q of L){const ie=typeof q=="string"?d(q):q;ie&&(Ve(ie.deletable)&&!ie.deletable||(X.push(pu(ie.id)),S&&K([ie]),A&&J(ie.id)))}te.length&&e.hooks.edgesChange.trigger(te),X.length&&e.hooks.nodesChange.trigger(X)},O=T=>{const S=T instanceof Function?T(e.edges):T,A=Array.isArray(S)?S:[S],D=[];for(const L of A){const X=typeof L=="string"?f(L):L;X&&(Ve(X.deletable)&&!X.deletable||D.push(mu(typeof L=="string"?L:L.id,X.source,X.target,X.sourceHandle,X.targetHandle)))}e.hooks.edgesChange.trigger(D)},j=(T,S,A=!0)=>{const D=f(T.id);if(!D)return!1;const L=e.edges.indexOf(D),X=x1(T,S,D,A,e.hooks.error.trigger);if(X){const[te]=Za([X],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((K,J)=>J===L?te:K),Wa(e.connectionLookup,o.value,[te]),te}return!1},G=(T,S,A={replace:!1})=>{const D=f(T);if(!D)return;const L=typeof S=="function"?S(D):S;D.data=A.replace?L:{...D.data,...L}},F=T=>uu(T,e.nodes),V=T=>{const S=uu(T,e.edges);return Wa(e.connectionLookup,o.value,S),S},U=(T,S,A={replace:!1})=>{const D=d(T);if(!D)return;const L=typeof S=="function"?S(D):S;A.replace?e.nodes.splice(e.nodes.indexOf(D),1,L):Object.assign(D,L)},re=(T,S,A={replace:!1})=>{const D=d(T);if(!D)return;const L=typeof S=="function"?S(D):S;D.data=A.replace?L:{...D.data,...L}},de=(T,S,A=!1)=>{A?e.connectionClickStartHandle=T:e.connectionStartHandle=T,e.connectionEndHandle=null,e.connectionStatus=null,S&&(e.connectionPosition=S)},ee=(T,S=null,A=null)=>{e.connectionStartHandle&&(e.connectionPosition=T,e.connectionEndHandle=S,e.connectionStatus=A)},oe=(T,S)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,S?e.connectionClickStartHandle=null:e.connectionStartHandle=null},Y=T=>{const S=n1(T),A=S?null:To(T)?T:d(T.id);return!S&&!A?[null,null,S]:[S?T:Kr(A),A,S]},$=(T,S=!0,A=e.nodes)=>{const[D,L,X]=Y(T);if(!D)return[];const te=[];for(const K of A||e.nodes){if(!X&&(K.id===L.id||!K.computedPosition))continue;const J=Kr(K),q=qr(J,D);(S&&q>0||q>=Number(D.width)*Number(D.height))&&te.push(K)}return te},z=(T,S,A=!0)=>{const[D]=Y(T);if(!D)return!1;const L=qr(D,S);return A&&L>0||L>=Number(D.width)*Number(D.height)},Z=T=>{const{viewport:S,dimensions:A,d3Zoom:D,d3Selection:L,translateExtent:X}=e;if(!D||!L||!T.x&&!T.y)return!1;const te=Fn.translate(S.x+T.x,S.y+T.y).scale(S.zoom),K=[[0,0],[A.width,A.height]],J=D.constrain()(te,K,X),q=e.viewport.x!==J.x||e.viewport.y!==J.y||e.viewport.zoom!==J.k;return D.transform(L,J),q},Q=T=>{const S=T instanceof Function?T(e):T,A=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];Ve(S.defaultEdgeOptions)&&(e.defaultEdgeOptions=S.defaultEdgeOptions);const D=S.modelValue||S.nodes||S.edges?[]:void 0;D&&(S.modelValue&&D.push(...S.modelValue),S.nodes&&D.push(...S.nodes),S.edges&&D.push(...S.edges),v(D));const L=()=>{Ve(S.maxZoom)&&x(S.maxZoom),Ve(S.minZoom)&&C(S.minZoom),Ve(S.translateExtent)&&k(S.translateExtent)};for(const X of Object.keys(S)){const te=X,K=S[te];![...K1,...A].includes(te)&&Ve(K)&&(e[te]=K)}_a(()=>e.d3Zoom).not.toBeNull().then(L),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:v,setNodes:W,setEdges:M,addNodes:N,addEdges:E,removeNodes:R,removeEdges:O,findNode:d,findEdge:f,updateEdge:j,updateEdgeData:G,updateNode:U,updateNodeData:re,applyEdgeChanges:V,applyNodeChanges:F,addSelectedElements:g,addSelectedNodes:h,addSelectedEdges:w,setMinZoom:C,setMaxZoom:x,setTranslateExtent:k,setNodeExtent:P,setPaneClickDistance:I,removeSelectedElements:y,removeSelectedNodes:_,removeSelectedEdges:b,startConnection:de,updateConnection:ee,endConnection:oe,setInteractive:B,setState:Q,getIntersectingNodes:$,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:z,panBy:Z,fitView:T=>r.value.fitView(T),zoomIn:T=>r.value.zoomIn(T),zoomOut:T=>r.value.zoomOut(T),zoomTo:(T,S)=>r.value.zoomTo(T,S),setViewport:(T,S)=>r.value.setViewport(T,S),setTransform:(T,S)=>r.value.setTransform(T,S),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(T,S,A)=>r.value.setCenter(T,S,A),fitBounds:(T,S)=>r.value.fitBounds(T,S),project:T=>r.value.project(T),screenToFlowCoordinate:T=>r.value.screenToFlowCoordinate(T),flowToScreenCoordinate:T=>r.value.flowToScreenCoordinate(T),toObject:()=>{const T=[],S=[];for(const A of e.nodes){const{computedPosition:D,handleBounds:L,selected:X,dimensions:te,isParent:K,resizing:J,dragging:q,events:ie,...le}=A;T.push(le)}for(const A of e.edges){const{selected:D,sourceNode:L,targetNode:X,events:te,...K}=A;S.push(K)}return JSON.parse(JSON.stringify({nodes:T,edges:S,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:T=>new Promise(S=>{const{nodes:A,edges:D,position:L,zoom:X,viewport:te}=T;if(A&&W(A),D&&M(D),te!=null&&te.x&&(te!=null&&te.y)||L){const K=(te==null?void 0:te.x)||L[0],J=(te==null?void 0:te.y)||L[1],q=(te==null?void 0:te.zoom)||X||e.viewport.zoom;return _a(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:K,y:J,zoom:q}).then(()=>{S(!0)})})}else S(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const T=$u();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const S=Fn.translate(T.defaultViewport.x??0,T.defaultViewport.y??0).scale(pn(T.defaultViewport.zoom??1,T.minZoom,T.maxZoom)),A=e.viewportRef.getBoundingClientRect(),D=[[0,0],[A.width,A.height]],L=e.d3Zoom.constrain()(S,D,T.translateExtent);e.d3Zoom.transform(e.d3Selection,L)}Q(T)},$destroy:()=>{}}}const G1=["data-id","data-handleid","data-nodeid","data-handlepos"],j1={name:"Handle",compatConfig:{MODE:3}},zt=n.defineComponent({...j1,props:{id:{default:null},type:{},position:{default:()=>ge.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:t}){const o=n.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=n.toRef(()=>o.type??"source"),i=n.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=xe(),{id:m,node:h,nodeEl:w,connectedEdges:g}=Iu(),_=n.ref(),b=n.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),y=n.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),C=n.toRef(()=>{var M,v,N,E,R,O;return((M=l.value)==null?void 0:M.nodeId)===m&&((v=l.value)==null?void 0:v.id)===e.id&&((N=l.value)==null?void 0:N.type)===r.value||((E=c.value)==null?void 0:E.nodeId)===m&&((R=c.value)==null?void 0:R.id)===e.id&&((O=c.value)==null?void 0:O.type)===r.value}),x=n.toRef(()=>{var M,v,N;return((M=s.value)==null?void 0:M.nodeId)===m&&((v=s.value)==null?void 0:v.id)===e.id&&((N=s.value)==null?void 0:N.type)===r.value}),{handlePointerDown:k,handleClick:P}=Pu({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),I=n.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(M=>{const v=M[`${r.value}Handle`];return M[r.value]!==m?!1:v?v===e.id:!0}):typeof e.connectable=="number"?g.value.filter(M=>{const v=M[`${r.value}Handle`];return M[r.value]!==m?!1:v?v===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,g.value):Ve(e.connectable)?e.connectable:f.value);n.onMounted(()=>{var M;if(!h.dimensions.width||!h.dimensions.height)return;const v=(M=h.handleBounds[r.value])==null?void 0:M.find(F=>F.id===e.id);if(!d.value||v)return;const N=d.value.querySelector(".vue-flow__transformationpane");if(!w.value||!_.value||!N||!e.id)return;const E=w.value.getBoundingClientRect(),R=_.value.getBoundingClientRect(),O=window.getComputedStyle(N),{m22:j}=new window.DOMMatrixReadOnly(O.transform),G={id:e.id,position:e.position,x:(R.left-E.left)/j,y:(R.top-E.top)/j,type:r.value,nodeId:m,...Gr(_.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],G]});function B(M){const v=ja(M);I.value&&b.value&&(v&&M.button===0||!v)&&k(M)}function W(M){!m||!s.value&&!b.value||I.value&&P(M)}return t({handleClick:P,handlePointerDown:k,onClick:W,onPointerDown:B}),(M,v)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"handle",ref:_,"data-id":`${n.unref(a)}-${n.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":n.unref(m),"data-handlepos":M.position,class:n.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${M.position}`,`vue-flow__handle-${e.id}`,n.unref(u),n.unref(p),r.value,{connectable:I.value,connecting:x.value,connectablestart:b.value,connectableend:y.value,connectionindicator:I.value&&(b.value&&!C.value||y.value&&C.value)}]]),onMousedown:B,onTouchstartPassive:B,onClick:W},[n.renderSlot(M.$slots,"default",{id:M.id})],42,G1))}}),Xr=function({sourcePosition:e=ge.Bottom,targetPosition:t=ge.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[n.h(zt,{type:"target",position:t,connectable:r,isValidConnection:i}),typeof s!="string"&&s?n.h(s):n.h(n.Fragment,[s]),n.h(zt,{type:"source",position:e,connectable:r,isValidConnection:a})]};Xr.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Xr.inheritAttrs=!1,Xr.compatConfig={MODE:3};const z1=Xr,Jr=function({targetPosition:e=ge.Top,label:t,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??t;return[n.h(zt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?n.h(a):n.h(n.Fragment,[a])]};Jr.props=["targetPosition","label","isValidTargetPos","connectable","data"],Jr.inheritAttrs=!1,Jr.compatConfig={MODE:3};const H1=Jr,Qr=function({sourcePosition:e=ge.Bottom,label:t,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??t;return[typeof a!="string"&&a?n.h(a):n.h(n.Fragment,[a]),n.h(zt,{type:"source",position:e,connectable:o,isValidConnection:r})]};Qr.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Qr.inheritAttrs=!1,Qr.compatConfig={MODE:3};const Y1=Qr,W1=["transform"],Z1=["width","height","x","y","rx","ry"],X1=["y"],J1={name:"EdgeText",compatConfig:{MODE:3}},Q1=n.defineComponent({...J1,props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(e){const t=n.ref({x:0,y:0,width:0,height:0}),o=n.ref(null),r=n.computed(()=>`translate(${e.x-t.value.width/2} ${e.y-t.value.height/2})`);n.onMounted(i),n.watch([()=>e.x,()=>e.y,o,()=>e.label],i);function i(){if(!o.value)return;const a=o.value.getBBox();(a.width!==t.value.width||a.height!==t.value.height)&&(t.value=a)}return(a,l)=>(n.openBlock(),n.createElementBlock("g",{transform:r.value,class:"vue-flow__edge-textwrapper"},[a.labelShowBg?(n.openBlock(),n.createElementBlock("rect",{key:0,class:"vue-flow__edge-textbg",width:`${t.value.width+2*a.labelBgPadding[0]}px`,height:`${t.value.height+2*a.labelBgPadding[1]}px`,x:-a.labelBgPadding[0],y:-a.labelBgPadding[1],style:n.normalizeStyle(a.labelBgStyle),rx:a.labelBgBorderRadius,ry:a.labelBgBorderRadius},null,12,Z1)):n.createCommentVNode("",!0),n.createElementVNode("text",n.mergeProps(a.$attrs,{ref_key:"el",ref:o,class:"vue-flow__edge-text",y:t.value.height/2,dy:"0.3em",style:a.labelStyle}),[n.renderSlot(a.$slots,"default",{},()=>[typeof a.label!="string"?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(a.label),{key:0})):(n.openBlock(),n.createElementBlock(n.Fragment,{key:1},[n.createTextVNode(n.toDisplayString(a.label),1)],64))])],16,X1)],8,W1))}}),eS=["id","d","marker-end","marker-start"],tS=["d","stroke-width"],nS={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},ei=n.defineComponent({...nS,props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(e,{expose:t}){const o=n.ref(null),r=n.ref(null),i=n.ref(null),a=n.useAttrs();return t({pathEl:o,interactionEl:r,labelEl:i}),(l,s)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("path",n.mergeProps(n.unref(a),{id:l.id,ref_key:"pathEl",ref:o,d:l.path,class:"vue-flow__edge-path","marker-end":l.markerEnd,"marker-start":l.markerStart}),null,16,eS),l.interactionWidth?(n.openBlock(),n.createElementBlock("path",{key:0,ref_key:"interactionEl",ref:r,fill:"none",d:l.path,"stroke-width":l.interactionWidth,"stroke-opacity":0,class:"vue-flow__edge-interaction"},null,8,tS)):n.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(n.openBlock(),n.createBlock(Q1,{key:1,ref_key:"labelEl",ref:i,x:l.labelX,y:l.labelY,label:l.label,"label-show-bg":l.labelShowBg,"label-bg-style":l.labelBgStyle,"label-bg-padding":l.labelBgPadding,"label-bg-border-radius":l.labelBgBorderRadius,"label-style":l.labelStyle},null,8,["x","y","label","label-show-bg","label-bg-style","label-bg-padding","label-bg-border-radius","label-style"])):n.createCommentVNode("",!0)],64))}});function Bu({sourceX:e,sourceY:t,targetX:o,targetY:r}){const i=Math.abs(o-e)/2,a=o<e?o+i:o-i,l=Math.abs(r-t)/2,s=r<t?r+l:r-l;return[a,s,i,l]}function Du({sourceX:e,sourceY:t,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=t*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),u=Math.abs(d-t);return[c,d,f,u]}function ti(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function Vu({pos:e,x1:t,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ge.Left:l=t-ti(t-r,a),s=o;break;case ge.Right:l=t+ti(r-t,a),s=o;break;case ge.Top:l=t,s=o-ti(o-i,a);break;case ge.Bottom:l=t,s=o+ti(i-o,a);break}return[l,s]}function Ru(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,curvature:s=.25}=e,[c,d]=Vu({pos:r,x1:t,y1:o,x2:i,y2:a,c:s}),[f,u]=Vu({pos:l,x1:i,y1:a,x2:t,y2:o,c:s}),[p,m,h,w]=Du({sourceX:t,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${t},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,h,w]}function Mu({pos:e,x1:t,y1:o,x2:r,y2:i}){let a,l;switch(e){case ge.Left:case ge.Right:a=.5*(t+r),l=o;break;case ge.Top:case ge.Bottom:a=t,l=.5*(o+i);break}return[a,l]}function Fu(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top}=e,[s,c]=Mu({pos:r,x1:t,y1:o,x2:i,y2:a}),[d,f]=Mu({pos:l,x1:i,y1:a,x2:t,y2:o}),[u,p,m,h]=Du({sourceX:t,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${t},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,h]}const Lu={[ge.Left]:{x:-1,y:0},[ge.Right]:{x:1,y:0},[ge.Top]:{x:0,y:-1},[ge.Bottom]:{x:0,y:1}};function oS({source:e,sourcePosition:t=ge.Bottom,target:o}){return t===ge.Left||t===ge.Right?e.x<o.x?{x:1,y:0}:{x:-1,y:0}:e.y<o.y?{x:0,y:1}:{x:0,y:-1}}function Uu(e,t){return Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2)}function rS({source:e,sourcePosition:t=ge.Bottom,target:o,targetPosition:r=ge.Top,center:i,offset:a}){const l=Lu[t],s=Lu[r],c={x:e.x+l.x*a,y:e.y+l.y*a},d={x:o.x+s.x*a,y:o.y+s.y*a},f=oS({source:c,sourcePosition:t,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,w;const g={x:0,y:0},_={x:0,y:0},[b,y,C,x]=Bu({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??b,w=i.y??y;const P=[{x:h,y:c.y},{x:h,y:d.y}],I=[{x:c.x,y:w},{x:d.x,y:w}];l[u]===p?m=u==="x"?P:I:m=u==="x"?I:P}else{const P=[{x:c.x,y:d.y}],I=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?I:P:m=l.y===p?P:I,t===r){const N=Math.abs(e[u]-o[u]);if(N<=a){const E=Math.min(a-1,a-N);l[u]===p?g[u]=(c[u]>e[u]?-1:1)*E:_[u]=(d[u]>o[u]?-1:1)*E}}if(t!==r){const N=u==="x"?"y":"x",E=l[u]===s[N],R=c[N]>d[N],O=c[N]<d[N];(l[u]===1&&(!E&&R||E&&O)||l[u]!==1&&(!E&&O||E&&R))&&(m=u==="x"?P:I)}const B={x:c.x+g.x,y:c.y+g.y},W={x:d.x+_.x,y:d.y+_.y},M=Math.max(Math.abs(B.x-m[0].x),Math.abs(W.x-m[0].x)),v=Math.max(Math.abs(B.y-m[0].y),Math.abs(W.y-m[0].y));M>=v?(h=(B.x+W.x)/2,w=m[0].y):(h=m[0].x,w=(B.y+W.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...m,{x:d.x+_.x,y:d.y+_.y},o],h,w,C,x]}function iS(e,t,o,r){const i=Math.min(Uu(e,t)/2,Uu(t,o)/2,r),{x:a,y:l}=t;if(e.x===a&&a===o.x||e.y===l&&l===o.y)return`L${a} ${l}`;if(e.y===l){const d=e.x<o.x?-1:1,f=e.y<o.y?1:-1;return`L ${a+i*d},${l}Q ${a},${l} ${a},${l+i*f}`}const s=e.x<o.x?1:-1,c=e.y<o.y?-1:1;return`L ${a},${l+i*c}Q ${a},${l} ${a+i*s},${l}`}function Qa(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,h,w]=rS({source:{x:t,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((_,b,y)=>{let C;return y>0&&y<u.length-1?C=iS(u[y-1],b,u[y+1],s):C=`${y===0?"M":"L"}${b.x} ${b.y}`,_+=C,_},""),p,m,h,w]}function aS(e){const{sourceX:t,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Bu({sourceX:t,sourceY:o,targetX:r,targetY:i});return[`M ${t},${o}L ${r},${i}`,a,l,s,c]}const lS=n.defineComponent({name:"StraightEdge",props:["label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=aS(e);return n.h(ei,{path:o,labelX:r,labelY:i,...t,...e})}}}),Ku=n.defineComponent({name:"SmoothStepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","borderRadius","markerEnd","markerStart","interactionWidth","offset"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=Qa({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(ei,{path:o,labelX:r,labelY:i,...t,...e})}}}),sS=n.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:t}){return()=>n.h(Ku,{...e,...t,borderRadius:0})}}),cS=n.defineComponent({name:"BezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","curvature","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=Ru({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(ei,{path:o,labelX:r,labelY:i,...t,...e})}}}),dS=n.defineComponent({name:"SimpleBezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=Fu({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(ei,{path:o,labelX:r,labelY:i,...t,...e})}}}),uS={input:Y1,default:z1,output:H1},fS={default:cS,straight:lS,step:sS,smoothstep:Ku,simplebezier:dS};function pS(e,t,o){const r=n.computed(()=>w=>t.value.get(w)),i=n.computed(()=>w=>o.value.get(w)),a=n.computed(()=>{const w={...fS,...e.edgeTypes},g=Object.keys(w);for(const _ of e.edges)_.type&&!g.includes(_.type)&&(w[_.type]=_.type);return w}),l=n.computed(()=>{const w={...uS,...e.nodeTypes},g=Object.keys(w);for(const _ of e.nodes)_.type&&!g.includes(_.type)&&(w[_.type]=_.type);return w}),s=n.computed(()=>e.onlyRenderVisibleElements?iu(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=n.computed(()=>{if(e.onlyRenderVisibleElements){const w=[];for(const g of e.edges){const _=t.value.get(g.source),b=t.value.get(g.target);m1({sourcePos:_.computedPosition||{x:0,y:0},targetPos:b.computedPosition||{x:0,y:0},sourceWidth:_.dimensions.width,sourceHeight:_.dimensions.height,targetWidth:b.dimensions.width,targetHeight:b.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&w.push(g)}return w}return e.edges}),d=n.computed(()=>[...s.value,...c.value]),f=n.computed(()=>{const w=[];for(const g of e.nodes)g.selected&&w.push(g);return w}),u=n.computed(()=>{const w=[];for(const g of e.edges)g.selected&&w.push(g);return w}),p=n.computed(()=>[...f.value,...u.value]),m=n.computed(()=>{const w=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&w.push(g);return w}),h=n.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:h}}class gn{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){var t;const o=(t=n.getCurrentInstance())==null?void 0:t.appContext.app,r=(o==null?void 0:o.config.globalProperties.$vueFlowStorage)??gn.instance;return gn.instance=r??new gn,o&&(o.config.globalProperties.$vueFlowStorage=gn.instance),gn.instance}set(t,o){return this.flows.set(t,o)}get(t){return this.flows.get(t)}remove(t){return this.flows.delete(t)}create(t,o){const r=$u(),i=n.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const h=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[h]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=n.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=n.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=pS(i,s,c),f=q1(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...uk(i),nodeLookup:s,edgeLookup:c,emits:l,id:t,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(t)}};return this.set(t,u),u}getId(){return`vue-flow-${this.currentId++}`}}function xe(e){const t=gn.getInstance(),o=n.getCurrentScope(),r=typeof e=="object",i=r?e:{id:e},a=i.id,l=a??(o==null?void 0:o.vueFlowId);let s;if(o){const c=n.inject(Su,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=t.get(l)),!s||l&&s.id!==l){const c=a??t.getId(),d=t.create(c,i);s=d,(o??n.effectScope(!0)).run(()=>{n.watch(d.applyDefault,(u,p,m)=>{const h=g=>{d.applyNodeChanges(g)},w=g=>{d.applyEdgeChanges(g)};u?(d.onNodesChange(h),d.onEdgesChange(w)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(w)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(w)})},{immediate:!0}),br(()=>{if(s){const u=t.get(s.id);u?u.$destroy():Yr(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(n.provide(Su,s),o.vueFlowId=s.id),r){const c=n.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new Ke(De.USEVUEFLOW_OPTIONS))}return s}function mS(e){const{emits:t,dimensions:o}=xe();let r;n.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Gr(i);(l.width===0||l.height===0)&&t.error(new Ke(De.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:l.width||500,height:l.height||500}};a(),window.addEventListener("resize",a),i&&(r=new ResizeObserver(()=>a()),r.observe(i)),n.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const gS={name:"UserSelection",compatConfig:{MODE:3}},hS=n.defineComponent({...gS,props:{userSelectionRect:{}},setup(e){return(t,o)=>(n.openBlock(),n.createElementBlock("div",{class:"vue-flow__selection vue-flow__container",style:n.normalizeStyle({width:`${t.userSelectionRect.width}px`,height:`${t.userSelectionRect.height}px`,transform:`translate(${t.userSelectionRect.x}px, ${t.userSelectionRect.y}px)`})},null,4))}}),yS=["tabIndex"],_S={name:"NodesSelection",compatConfig:{MODE:3}},bS=n.defineComponent({..._S,setup(e){const{emits:t,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=xe(),s=Ou(),c=n.ref(null),d=Tu({el:c,onStart(h){t.selectionDragStart(h)},onDrag(h){t.selectionDrag(h)},onStop(h){t.selectionDragStop(h)}});n.onMounted(()=>{var h;a.value||(h=c.value)==null||h.focus({preventScroll:!0})});const f=n.computed(()=>ru(r.value)),u=n.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(h){t.selectionContextMenu({event:h,nodes:r.value})}function m(h){a||Ln[h.key]&&(h.preventDefault(),s({x:Ln[h.key].x,y:Ln[h.key].y},h.shiftKey))}return(h,w)=>!n.unref(l)&&f.value.width&&f.value.height?(n.openBlock(),n.createElementBlock("div",{key:0,class:n.normalizeClass(["vue-flow__nodesselection vue-flow__container",n.unref(i)]),style:n.normalizeStyle({transform:`translate(${n.unref(o).x}px,${n.unref(o).y}px) scale(${n.unref(o).zoom})`})},[n.createElementVNode("div",{ref_key:"el",ref:c,class:n.normalizeClass([{dragging:n.unref(d)},"vue-flow__nodesselection-rect"]),style:n.normalizeStyle(u.value),tabIndex:n.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,yS)],6)):n.createCommentVNode("",!0)}});function wS(e,t){return{x:e.clientX-t.left,y:e.clientY-t.top}}const ES={name:"Pane",compatConfig:{MODE:3}},kS=n.defineComponent({...ES,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:t,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:h,deleteKeyCode:w,multiSelectionKeyCode:g,multiSelectionActive:_,edgeLookup:b,nodeLookup:y,connectionLookup:C,defaultEdgeOptions:x,connectionStartHandle:k}=xe(),P=n.ref(null),I=n.ref(new Set),B=n.ref(new Set),W=n.ref(),M=n.toRef(()=>c.value&&(e.isSelecting||a.value)),v=n.toRef(()=>k.value!==null);let N=!1,E=!1;const R=Ao(w,{actInsideInputWithModifier:!1}),O=Ao(g);n.watch(R,ee=>{ee&&(p(u.value),m(f.value),d.value=!1)}),n.watch(O,ee=>{_.value=ee});function j(ee,oe){return Y=>{Y.target===oe&&(ee==null||ee(Y))}}function G(ee){if(N||v.value){N=!1;return}i.paneClick(ee),l(),d.value=!1}function F(ee){ee.preventDefault(),ee.stopPropagation(),i.paneContextMenu(ee)}function V(ee){i.paneScroll(ee)}function U(ee){var oe,Y,$;if(W.value=(oe=t.value)==null?void 0:oe.getBoundingClientRect(),!c.value||!e.isSelecting||ee.button!==0||ee.target!==P.value||!W.value)return;($=(Y=ee.target)==null?void 0:Y.setPointerCapture)==null||$.call(Y,ee.pointerId);const{x:z,y:Z}=wS(ee,W.value);E=!0,N=!1,l(),s.value={width:0,height:0,startX:z,startY:Z,x:z,y:Z},i.selectionStart(ee)}function re(ee){var oe;if(!W.value||!s.value)return;N=!0;const{x:Y,y:$}=St(ee,W.value),{startX:z=0,startY:Z=0}=s.value,Q={startX:z,startY:Z,x:Y<z?Y:z,y:$<Z?$:Z,width:Math.abs(Y-z),height:Math.abs($-Z)},ne=I.value,ue=B.value;I.value=new Set(iu(o.value,Q,r.value,h.value===Fa.Partial,!0).map(T=>T.id)),B.value=new Set;const me=((oe=x.value)==null?void 0:oe.selectable)??!0;for(const T of I.value){const S=C.value.get(T);if(S)for(const{edgeId:A}of S.values()){const D=b.value.get(A);D&&(D.selectable??me)&&B.value.add(A)}}if(!Nu(ne,I.value)){const T=Gt(y.value,I.value,!0);i.nodesChange(T)}if(!Nu(ue,B.value)){const T=Gt(b.value,B.value);i.edgesChange(T)}s.value=Q,a.value=!0,d.value=!1}function de(ee){var oe;ee.button!==0||!E||((oe=ee.target)==null||oe.releasePointerCapture(ee.pointerId),!a.value&&s.value&&ee.target===P.value&&G(ee),a.value=!1,s.value=null,d.value=I.value.size>0,i.selectionEnd(ee),e.selectionKeyPressed&&(N=!1),E=!1)}return(ee,oe)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"container",ref:P,class:n.normalizeClass(["vue-flow__pane vue-flow__container",{selection:ee.isSelecting}]),onClick:oe[0]||(oe[0]=Y=>M.value?void 0:j(G,P.value)(Y)),onContextmenu:oe[1]||(oe[1]=Y=>j(F,P.value)(Y)),onWheelPassive:oe[2]||(oe[2]=Y=>j(V,P.value)(Y)),onPointerenter:oe[3]||(oe[3]=Y=>M.value?void 0:n.unref(i).paneMouseEnter(Y)),onPointerdown:oe[4]||(oe[4]=Y=>M.value?U(Y):n.unref(i).paneMouseMove(Y)),onPointermove:oe[5]||(oe[5]=Y=>M.value?re(Y):n.unref(i).paneMouseMove(Y)),onPointerup:oe[6]||(oe[6]=Y=>M.value?de(Y):void 0),onPointerleave:oe[7]||(oe[7]=Y=>n.unref(i).paneMouseLeave(Y))},[n.renderSlot(ee.$slots,"default"),n.unref(a)&&n.unref(s)?(n.openBlock(),n.createBlock(hS,{key:0,"user-selection-rect":n.unref(s)},null,8,["user-selection-rect"])):n.createCommentVNode("",!0),n.unref(d)&&n.unref(u).length?(n.openBlock(),n.createBlock(bS,{key:1})):n.createCommentVNode("",!0)],34))}}),CS={name:"Transform",compatConfig:{MODE:3}},vS=n.defineComponent({...CS,setup(e){const{viewport:t,fitViewOnInit:o,fitViewOnInitDone:r}=xe(),i=n.computed(()=>o.value?!r.value:!1),a=n.computed(()=>`translate(${t.value.x}px,${t.value.y}px) scale(${t.value.zoom})`);return(l,s)=>(n.openBlock(),n.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:n.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[n.renderSlot(l.$slots,"default")],4))}}),NS={name:"Viewport",compatConfig:{MODE:3}},SS=n.defineComponent({...NS,setup(e){const{minZoom:t,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:h,preventScrolling:w,noWheelClassName:g,noPanClassName:_,emits:b,connectionStartHandle:y,userSelectionActive:C,paneDragging:x,d3Zoom:k,d3Selection:P,d3ZoomHandler:I,viewport:B,viewportRef:W,paneClickDistance:M}=xe();mS(W);const v=n.shallowRef(!1),N=n.shallowRef(!1);let E=null,R=!1,O=0,j={x:0,y:0,zoom:0};const G=Ao(s),F=Ao(l),V=Ao(a),U=n.toRef(()=>(!F.value||F.value&&l.value===!0)&&(G.value||u.value)),re=n.toRef(()=>G.value||c.value),de=n.toRef(()=>F.value||l.value===!0&&U.value!==!0);n.onMounted(()=>{if(!W.value){Yr("Viewport element is missing");return}const Z=W.value,Q=Z.getBoundingClientRect(),ne=WN().clickDistance(M.value).scaleExtent([t.value,o.value]).translateExtent(i.value),ue=pt(Z).call(ne),me=ue.on("wheel.zoom"),T=Fn.translate(r.value.x??0,r.value.y??0).scale(pn(r.value.zoom??1,t.value,o.value)),S=[[0,0],[Q.width,Q.height]],A=ne.constrain()(T,S,i.value);ne.transform(ue,A),ne.wheelDelta(oe),k.value=ne,P.value=ue,I.value=me,B.value={x:A.x,y:A.y,zoom:A.k},ne.on("start",D=>{var L;if(!D.sourceEvent)return null;O=D.sourceEvent.button,v.value=!0;const X=$(D.transform);((L=D.sourceEvent)==null?void 0:L.type)==="mousedown"&&(x.value=!0),j=X,b.viewportChangeStart(X),b.moveStart({event:D,flowTransform:X})}),ne.on("end",D=>{if(!D.sourceEvent)return null;if(v.value=!1,x.value=!1,ee(U.value,O??0)&&!R&&b.paneContextMenu(D.sourceEvent),R=!1,Y(j,D.transform)){const L=$(D.transform);j=L,b.viewportChangeEnd(L),b.moveEnd({event:D,flowTransform:L})}}),ne.filter(D=>{var L;const X=V.value||h.value,te=m.value&&D.ctrlKey,K=D.button;if(K===1&&D.type==="mousedown"&&(z(D,"vue-flow__node")||z(D,"vue-flow__edge")))return!0;if(!U.value&&!X&&!re.value&&!p.value&&!m.value||C.value||!p.value&&D.type==="dblclick"||z(D,g.value)&&D.type==="wheel"||z(D,_.value)&&(D.type!=="wheel"||re.value&&D.type==="wheel"&&!V.value)||!m.value&&D.ctrlKey&&D.type==="wheel"||!X&&!re.value&&!te&&D.type==="wheel")return!1;if(!m&&D.type==="touchstart"&&((L=D.touches)==null?void 0:L.length)>1)return D.preventDefault(),!1;if(!U.value&&(D.type==="mousedown"||D.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&K===0||Array.isArray(u.value)&&!u.value.includes(K)&&(D.type==="mousedown"||D.type==="touchstart"))return!1;const J=Array.isArray(u.value)&&u.value.includes(K)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!K||K<=1;return(!D.ctrlKey||G.value||D.type==="wheel")&&J}),n.watch([C,U],()=>{C.value&&!v.value?ne.on("zoom",null):C.value||ne.on("zoom",D=>{B.value={x:D.transform.x,y:D.transform.y,zoom:D.transform.k};const L=$(D.transform);R=ee(U.value,O??0),b.viewportChange(L),b.move({event:D,flowTransform:L})})},{immediate:!0}),n.watch([C,re,d,V,m,w,g],()=>{re.value&&!V.value&&!C.value?ue.on("wheel.zoom",D=>{if(z(D,g.value))return!1;const L=V.value||h.value,X=m.value&&D.ctrlKey;if(!(!w.value||re.value||L||X))return!1;D.preventDefault(),D.stopImmediatePropagation();const K=ue.property("__zoom").k||1,J=zr();if(!G.value&&D.ctrlKey&&m.value&&J){const we=kt(D),be=oe(D),Ne=K*2**be;ne.scaleTo(ue,Ne,we,D);return}const q=D.deltaMode===1?20:1;let ie=d.value===xo.Vertical?0:D.deltaX*q,le=d.value===xo.Horizontal?0:D.deltaY*q;!J&&D.shiftKey&&d.value!==xo.Vertical&&!ie&&le&&(ie=le,le=0),ne.translateBy(ue,-(ie/K)*f.value,-(le/K)*f.value);const se=$(ue.property("__zoom"));E&&clearTimeout(E),N.value?(b.move({event:D,flowTransform:se}),b.viewportChange(se),E=setTimeout(()=>{b.moveEnd({event:D,flowTransform:se}),b.viewportChangeEnd(se),N.value=!1},150)):(N.value=!0,b.moveStart({event:D,flowTransform:se}),b.viewportChangeStart(se))},{passive:!1}):typeof me<"u"&&ue.on("wheel.zoom",function(D,L){const X=!w.value&&D.type==="wheel"&&!D.ctrlKey,te=V.value||h.value,K=m.value&&D.ctrlKey;if(!te&&!c.value&&!K&&D.type==="wheel"||X||z(D,g.value))return null;D.preventDefault(),me.call(this,D,L)},{passive:!1})},{immediate:!0})});function ee(Z,Q){return Q===2&&Array.isArray(Z)&&Z.includes(2)}function oe(Z){const Q=Z.ctrlKey&&zr()?10:1;return-Z.deltaY*(Z.deltaMode===1?.05:Z.deltaMode?1:.002)*Q}function Y(Z,Q){return Z.x!==Q.x&&!Number.isNaN(Q.x)||Z.y!==Q.y&&!Number.isNaN(Q.y)||Z.zoom!==Q.k&&!Number.isNaN(Q.k)}function $(Z){return{x:Z.x,y:Z.y,zoom:Z.k}}function z(Z,Q){return Z.target.closest(`.${Q}`)}return(Z,Q)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"viewportRef",ref:W,class:"vue-flow__viewport vue-flow__container"},[n.createVNode(kS,{"is-selecting":de.value,"selection-key-pressed":n.unref(F),class:n.normalizeClass({connecting:!!n.unref(y),dragging:n.unref(x),draggable:n.unref(u)===!0||Array.isArray(n.unref(u))&&n.unref(u).includes(0)})},{default:n.withCtx(()=>[n.createVNode(vS,null,{default:n.withCtx(()=>[n.renderSlot(Z.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),xS=["id"],AS=["id"],TS=["id"],PS={name:"A11yDescriptions",compatConfig:{MODE:3}},IS=n.defineComponent({...PS,setup(e){const{id:t,disableKeyboardA11y:o,ariaLiveMessage:r}=xe();return(i,a)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",{id:`${n.unref(Wd)}-${n.unref(t)}`,style:{display:"none"}}," Press enter or space to select a node. "+n.toDisplayString(n.unref(o)?"":"You can then use the arrow keys to move the node around.")+" You can then use the arrow keys to move the node around, press delete to remove it and press escape to cancel. ",9,xS),n.createElementVNode("div",{id:`${n.unref(Zd)}-${n.unref(t)}`,style:{display:"none"}}," Press enter or space to select an edge. You can then press delete to remove it or press escape to cancel. ",8,AS),n.unref(o)?n.createCommentVNode("",!0):(n.openBlock(),n.createElementBlock("div",{key:0,id:`${n.unref(t1)}-${n.unref(t)}`,"aria-live":"assertive","aria-atomic":"true",style:{position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(100%)"}},n.toDisplayString(n.unref(r)),9,TS))],64))}});function OS(){const e=xe();n.watch(()=>e.viewportHelper.value.viewportInitialized,t=>{t&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function $S(e,t,o){return o===ge.Left?e-t:o===ge.Right?e+t:e}function BS(e,t,o){return o===ge.Top?e-t:o===ge.Bottom?e+t:e}const el=function({radius:e=10,centerX:t=0,centerY:o=0,position:r=ge.Top,type:i}){return n.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:$S(t,e,r),cy:BS(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};el.props=["radius","centerX","centerY","position","type"],el.compatConfig={MODE:3};const qu=el,DS=n.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:t,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:h,elementsSelectable:w,edgesUpdatable:g,edgesFocusable:_,hooks:b}=xe(),y=n.computed(()=>f(e.id)),{emit:C,on:x}=I1(y.value,a),k=n.inject(Wr),P=n.getCurrentInstance(),I=n.ref(!1),B=n.ref(!1),W=n.ref(""),M=n.ref(null),v=n.ref("source"),N=n.ref(null),E=n.toRef(()=>typeof y.value.selectable>"u"?w.value:y.value.selectable),R=n.toRef(()=>typeof y.value.updatable>"u"?g.value:y.value.updatable),O=n.toRef(()=>typeof y.value.focusable>"u"?_.value:y.value.focusable);n.provide(A1,e.id),n.provide(T1,N);const j=n.computed(()=>y.value.class instanceof Function?y.value.class(y.value):y.value.class),G=n.computed(()=>y.value.style instanceof Function?y.value.style(y.value):y.value.style),F=n.computed(()=>{const S=y.value.type||"default",A=k==null?void 0:k[`edge-${S}`];if(A)return A;let D=y.value.template??c.value[S];if(typeof D=="string"&&P){const L=Object.keys(P.appContext.components);L&&L.includes(S)&&(D=n.resolveComponent(S,!1))}return D&&typeof D!="string"?D:(a.error(new Ke(De.EDGE_TYPE_MISSING,D)),!1)}),{handlePointerDown:V}=Pu({nodeId:W,handleId:M,type:v,isValidConnection:p,edgeUpdaterType:v,onEdgeUpdate:de,onEdgeUpdateEnd:ee});return()=>{const S=u(y.value.source),A=u(y.value.target),D="pathOptions"in y.value?y.value.pathOptions:{};if(!S&&!A)return a.error(new Ke(De.EDGE_SOURCE_TARGET_MISSING,y.value.id,y.value.source,y.value.target)),null;if(!S)return a.error(new Ke(De.EDGE_SOURCE_MISSING,y.value.id,y.value.source)),null;if(!A)return a.error(new Ke(De.EDGE_TARGET_MISSING,y.value.id,y.value.target)),null;if(!y.value||y.value.hidden||S.hidden||A.hidden)return null;let L;r.value===Ut.Strict?L=S.handleBounds.source:L=[...S.handleBounds.source||[],...S.handleBounds.target||[]];const X=yu(L,y.value.sourceHandle);let te;r.value===Ut.Strict?te=A.handleBounds.target:te=[...A.handleBounds.target||[],...A.handleBounds.source||[]];const K=yu(te,y.value.targetHandle),J=(X==null?void 0:X.position)||ge.Bottom,q=(K==null?void 0:K.position)||ge.Top,{x:ie,y:le}=Un(S,X,J),{x:se,y:we}=Un(A,K,q);return y.value.sourceX=ie,y.value.sourceY=le,y.value.targetX=se,y.value.targetY=we,n.h("g",{ref:N,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${F.value===!1?"default":y.value.type||"default"}`,s.value,j.value,{updating:I.value,selected:y.value.selected,animated:y.value.animated,inactive:!E.value&&!b.value.edgeClick.hasListeners()}],tabIndex:O.value?0:void 0,"aria-label":y.value.ariaLabel===null?void 0:y.value.ariaLabel??`Edge from ${y.value.source} to ${y.value.target}`,"aria-describedby":O.value?`${Zd}-${t}`:void 0,"aria-roledescription":"edge",role:O.value?"group":"img",...y.value.domAttributes,onClick:Y,onContextmenu:$,onDblclick:z,onMouseenter:Z,onMousemove:Q,onMouseleave:ne,onKeyDown:O.value?T:void 0},[B.value?null:n.h(F.value===!1?c.value.default:F.value,{id:e.id,sourceNode:S,targetNode:A,source:y.value.source,target:y.value.target,type:y.value.type,updatable:R.value,selected:y.value.selected,animated:y.value.animated,label:y.value.label,labelStyle:y.value.labelStyle,labelShowBg:y.value.labelShowBg,labelBgStyle:y.value.labelBgStyle,labelBgPadding:y.value.labelBgPadding,labelBgBorderRadius:y.value.labelBgBorderRadius,data:y.value.data,events:{...y.value.events,...x},style:G.value,markerStart:`url('#${Io(y.value.markerStart,t)}')`,markerEnd:`url('#${Io(y.value.markerEnd,t)}')`,sourcePosition:J,targetPosition:q,sourceX:ie,sourceY:le,targetX:se,targetY:we,sourceHandleId:y.value.sourceHandle,targetHandleId:y.value.targetHandle,interactionWidth:y.value.interactionWidth,...D}),[R.value==="source"||R.value===!0?[n.h("g",{onMousedown:ue,onMouseenter:U,onMouseout:re},n.h(qu,{position:J,centerX:ie,centerY:le,radius:i.value,type:"source","data-type":"source"}))]:null,R.value==="target"||R.value===!0?[n.h("g",{onMousedown:me,onMouseenter:U,onMouseout:re},n.h(qu,{position:q,centerX:se,centerY:we,radius:i.value,type:"target","data-type":"target"}))]:null]])};function U(){I.value=!0}function re(){I.value=!1}function de(S,A){C.update({event:S,edge:y.value,connection:A})}function ee(S){C.updateEnd({event:S,edge:y.value}),B.value=!1}function oe(S,A){S.button===0&&(B.value=!0,W.value=A?y.value.target:y.value.source,M.value=(A?y.value.targetHandle:y.value.sourceHandle)??null,v.value=A?"target":"source",C.updateStart({event:S,edge:y.value}),V(S))}function Y(S){var A;const D={event:S,edge:y.value};E.value&&(l.value=!1,y.value.selected&&m.value?(d([y.value]),(A=N.value)==null||A.blur()):o([y.value])),C.click(D)}function $(S){C.contextMenu({event:S,edge:y.value})}function z(S){C.doubleClick({event:S,edge:y.value})}function Z(S){C.mouseEnter({event:S,edge:y.value})}function Q(S){C.mouseMove({event:S,edge:y.value})}function ne(S){C.mouseLeave({event:S,edge:y.value})}function ue(S){oe(S,!0)}function me(S){oe(S,!1)}function T(S){var A;!h.value&&Xd.includes(S.key)&&E.value&&(S.key==="Escape"?((A=N.value)==null||A.blur(),d([f(e.id)])):o([f(e.id)]))}}}),VS=n.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:t,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=xe(),p=(e=n.inject(Wr))==null?void 0:e["connection-line"],m=n.computed(()=>{var b;return u((b=r.value)==null?void 0:b.nodeId)}),h=n.computed(()=>{var b;return u((b=i.value)==null?void 0:b.nodeId)??null}),w=n.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),g=n.computed(()=>c.value.markerStart?`url(#${Io(c.value.markerStart,t)})`:""),_=n.computed(()=>c.value.markerEnd?`url(#${Io(c.value.markerEnd,t)})`:"");return()=>{var b,y,C;if(!m.value||!r.value)return null;const x=r.value.id,k=r.value.type,P=m.value.handleBounds;let I=(P==null?void 0:P[k])??[];if(o.value===Ut.Loose){const G=(P==null?void 0:P[k==="source"?"target":"source"])??[];I=[...I,...G]}if(!I)return null;const B=(x?I.find(G=>G.id===x):I[0])??null,W=(B==null?void 0:B.position)??ge.Top,{x:M,y:v}=Un(m.value,B,W);let N=null;h.value&&(o.value===Ut.Strict?N=((b=h.value.handleBounds[k==="source"?"target":"source"])==null?void 0:b.find(G=>{var F;return G.id===((F=i.value)==null?void 0:F.id)}))||null:N=((y=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:y.find(G=>{var F;return G.id===((F=i.value)==null?void 0:F.id)}))||null);const E=((C=i.value)==null?void 0:C.position)??(W?Ha[W]:null);if(!W||!E)return null;const R=l.value??c.value.type??fn.Bezier;let O="";const j={sourceX:M,sourceY:v,sourcePosition:W,targetX:w.value.x,targetY:w.value.y,targetPosition:E};return R===fn.Bezier?[O]=Ru(j):R===fn.Step?[O]=Qa({...j,borderRadius:0}):R===fn.SmoothStep?[O]=Qa(j):R===fn.SimpleBezier?[O]=Fu(j):O=`M${M},${v} ${w.value.x},${w.value.y}`,n.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},n.h("g",{class:"vue-flow__connection"},p?n.h(p,{sourceX:M,sourceY:v,sourcePosition:W,targetX:w.value.x,targetY:w.value.y,targetPosition:E,sourceNode:m.value,sourceHandle:B,targetNode:h.value,targetHandle:N,markerEnd:_.value,markerStart:g.value,connectionStatus:d.value}):n.h("path",{d:O,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":_.value,"marker-start":g.value})))}}}),RS=["id","markerWidth","markerHeight","markerUnits","orient"],MS={name:"MarkerType",compatConfig:{MODE:3}},FS=n.defineComponent({...MS,props:{id:{},type:{},color:{default:"none"},width:{default:12.5},height:{default:12.5},markerUnits:{default:"strokeWidth"},orient:{default:"auto-start-reverse"},strokeWidth:{default:1}},setup(e){return(t,o)=>(n.openBlock(),n.createElementBlock("marker",{id:t.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${t.width}`,markerHeight:`${t.height}`,markerUnits:t.markerUnits,orient:t.orient},[t.type===n.unref(Ur).ArrowClosed?(n.openBlock(),n.createElementBlock("polyline",{key:0,style:n.normalizeStyle({stroke:t.color,fill:t.color,strokeWidth:t.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):n.createCommentVNode("",!0),t.type===n.unref(Ur).Arrow?(n.openBlock(),n.createElementBlock("polyline",{key:1,style:n.normalizeStyle({stroke:t.color,strokeWidth:t.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):n.createCommentVNode("",!0)],8,RS))}}),LS={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},US={name:"MarkerDefinitions",compatConfig:{MODE:3}},KS=n.defineComponent({...US,setup(e){const{id:t,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=xe(),a=n.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=Io(d,t);l.has(f)||(typeof d=="object"?s.push({...d,id:f,color:d.color||i.value}):s.push({id:f,color:i.value,type:d}),l.add(f))}};for(const d of[r.value.markerEnd,r.value.markerStart])c(d);for(const d of o.value)for(const f of[d.markerStart,d.markerEnd])c(f);return s.sort((d,f)=>d.id.localeCompare(f.id))});return(l,s)=>(n.openBlock(),n.createElementBlock("svg",LS,[n.createElementVNode("defs",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(a.value,c=>(n.openBlock(),n.createBlock(FS,{id:c.id,key:c.id,type:c.type,color:c.color,width:c.width,height:c.height,markerUnits:c.markerUnits,"stroke-width":c.strokeWidth,orient:c.orient},null,8,["id","type","color","width","height","markerUnits","stroke-width","orient"]))),128))])]))}}),qS={name:"Edges",compatConfig:{MODE:3}},GS=n.defineComponent({...qS,setup(e){const{findNode:t,getEdges:o,elevateEdgesOnSelect:r}=xe();return(i,a)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(KS),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(o),l=>(n.openBlock(),n.createElementBlock("svg",{key:l.id,class:"vue-flow__edges vue-flow__container",style:n.normalizeStyle({zIndex:n.unref(g1)(l,n.unref(t),n.unref(r))})},[n.createVNode(n.unref(DS),{id:l.id},null,8,["id"])],4))),128)),n.createVNode(n.unref(VS))],64))}}),jS=n.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:t,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:h,ariaLiveMessage:w,snapToGrid:g,snapGrid:_,nodeDragThreshold:b,nodesDraggable:y,elementsSelectable:C,nodesConnectable:x,nodesFocusable:k,hooks:P}=xe(),I=n.ref(null);n.provide(Au,I),n.provide(xu,e.id);const B=n.inject(Wr),W=n.getCurrentInstance(),M=Ou(),{node:v,parentNode:N}=Iu(e.id),{emit:E,on:R}=D1(v,l),O=n.toRef(()=>typeof v.draggable>"u"?y.value:v.draggable),j=n.toRef(()=>typeof v.selectable>"u"?C.value:v.selectable),G=n.toRef(()=>typeof v.connectable>"u"?x.value:v.connectable),F=n.toRef(()=>typeof v.focusable>"u"?k.value:v.focusable),V=n.computed(()=>j.value||O.value||P.value.nodeClick.hasListeners()||P.value.nodeDoubleClick.hasListeners()||P.value.nodeMouseEnter.hasListeners()||P.value.nodeMouseMove.hasListeners()||P.value.nodeMouseLeave.hasListeners()),U=n.toRef(()=>!!v.dimensions.width&&!!v.dimensions.height),re=n.computed(()=>{const A=v.type||"default",D=B==null?void 0:B[`node-${A}`];if(D)return D;let L=v.template||u.value[A];if(typeof L=="string"&&W){const X=Object.keys(W.appContext.components);X&&X.includes(A)&&(L=n.resolveComponent(A,!1))}return L&&typeof L!="string"?L:(l.error(new Ke(De.NODE_TYPE_MISSING,L)),!1)}),de=Tu({id:e.id,el:I,disabled:()=>!O.value,selectable:j,dragHandle:()=>v.dragHandle,onStart(A){E.dragStart(A)},onDrag(A){E.drag(A)},onStop(A){E.dragStop(A)},onClick(A){T(A)}}),ee=n.computed(()=>v.class instanceof Function?v.class(v):v.class),oe=n.computed(()=>{const A=(v.style instanceof Function?v.style(v):v.style)||{},D=v.width instanceof Function?v.width(v):v.width,L=v.height instanceof Function?v.height(v):v.height;return!A.width&&D&&(A.width=typeof D=="string"?D:`${D}px`),!A.height&&L&&(A.height=typeof L=="string"?L:`${L}px`),A}),Y=n.toRef(()=>Number(v.zIndex??oe.value.zIndex??0));return f(A=>{(A.includes(e.id)||!A.length)&&z()}),n.onMounted(()=>{n.watch(()=>v.hidden,(A=!1,D,L)=>{!A&&I.value&&(e.resizeObserver.observe(I.value),L(()=>{I.value&&e.resizeObserver.unobserve(I.value)}))},{immediate:!0,flush:"post"})}),n.watch([()=>v.type,()=>v.sourcePosition,()=>v.targetPosition],()=>{n.nextTick(()=>{d([{id:e.id,nodeElement:I.value,forceUpdate:!0}])})}),n.watch([()=>v.position.x,()=>v.position.y,()=>{var A;return(A=N.value)==null?void 0:A.computedPosition.x},()=>{var A;return(A=N.value)==null?void 0:A.computedPosition.y},()=>{var A;return(A=N.value)==null?void 0:A.computedPosition.z},Y,()=>v.selected,()=>v.dimensions.height,()=>v.dimensions.width,()=>{var A;return(A=N.value)==null?void 0:A.dimensions.height},()=>{var A;return(A=N.value)==null?void 0:A.dimensions.width}],([A,D,L,X,te,K])=>{const J={x:A,y:D,z:K+(m.value&&v.selected?1e3:0)};typeof L<"u"&&typeof X<"u"?v.computedPosition=c1({x:L,y:X,z:te},J):v.computedPosition=J},{flush:"post",immediate:!0}),n.watch([()=>v.extent,p],([A,D],[L,X])=>{(A!==L||D!==X)&&$()}),v.extent==="parent"||typeof v.extent=="object"&&"range"in v.extent&&v.extent.range==="parent"?_a(()=>U).toBe(!0).then($):$(),()=>v.hidden?null:n.h("div",{ref:I,"data-id":v.id,class:["vue-flow__node",`vue-flow__node-${re.value===!1?"default":v.type||"default"}`,{[o.value]:O.value,dragging:de==null?void 0:de.value,draggable:O.value,selected:v.selected,selectable:j.value,parent:v.isParent},ee.value],style:{visibility:U.value?"visible":"hidden",zIndex:v.computedPosition.z??Y.value,transform:`translate(${v.computedPosition.x}px,${v.computedPosition.y}px)`,pointerEvents:V.value?"all":"none",...oe.value},tabIndex:F.value?0:void 0,role:F.value?"group":void 0,"aria-describedby":h.value?void 0:`${Wd}-${t}`,"aria-label":v.ariaLabel,"aria-roledescription":"node",...v.domAttributes,onMouseenter:Z,onMousemove:Q,onMouseleave:ne,onContextmenu:ue,onClick:T,onDblclick:me,onKeydown:S},[n.h(re.value===!1?u.value.default:re.value,{id:v.id,type:v.type,data:v.data,events:{...v.events,...R},selected:v.selected,resizing:v.resizing,dragging:de.value,connectable:G.value,position:v.computedPosition,dimensions:v.dimensions,isValidTargetPos:v.isValidTargetPos,isValidSourcePos:v.isValidSourcePos,parent:v.parentNode,parentNodeId:v.parentNode,zIndex:v.computedPosition.z??Y.value,targetPosition:v.targetPosition,sourcePosition:v.sourcePosition,label:v.label,dragHandle:v.dragHandle,onUpdateNodeInternals:z})]);function $(){const A=v.computedPosition,{computedPosition:D,position:L}=Ga(v,g.value?Hr(A,_.value):A,l.error,p.value,N.value);(v.computedPosition.x!==D.x||v.computedPosition.y!==D.y)&&(v.computedPosition={...v.computedPosition,...D}),(v.position.x!==L.x||v.position.y!==L.y)&&(v.position=L)}function z(){I.value&&d([{id:e.id,nodeElement:I.value,forceUpdate:!0}])}function Z(A){de!=null&&de.value||E.mouseEnter({event:A,node:v})}function Q(A){de!=null&&de.value||E.mouseMove({event:A,node:v})}function ne(A){de!=null&&de.value||E.mouseLeave({event:A,node:v})}function ue(A){return E.contextMenu({event:A,node:v})}function me(A){return E.doubleClick({event:A,node:v})}function T(A){j.value&&(!r.value||!O.value||b.value>0)&&Ya(v,a.value,c,s,i,!1,I.value),E.click({event:A,node:v})}function S(A){if(!(La(A)||h.value))if(Xd.includes(A.key)&&j.value){const D=A.key==="Escape";Ya(v,a.value,c,s,i,D,I.value)}else O.value&&v.selected&&Ln[A.key]&&(A.preventDefault(),w.value=`Moved selected node ${A.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~v.position.x}, y: ${~~v.position.y}`,M({x:Ln[A.key].x,y:Ln[A.key].y},A.shiftKey))}}});function zS(e={includeHiddenNodes:!1}){const{nodes:t}=xe();return n.computed(()=>{if(t.value.length===0)return!1;for(const o of t.value)if((e.includeHiddenNodes||!o.hidden)&&((o==null?void 0:o.handleBounds)===void 0||o.dimensions.width===0||o.dimensions.height===0))return!1;return!0})}const HS={class:"vue-flow__nodes vue-flow__container"},YS={name:"Nodes",compatConfig:{MODE:3}},WS=n.defineComponent({...YS,setup(e){const{getNodes:t,updateNodeDimensions:o,emits:r}=xe(),i=zS(),a=n.ref();return n.watch(i,l=>{l&&n.nextTick(()=>{r.nodesInitialized(t.value)})},{immediate:!0}),n.onMounted(()=>{a.value=new ResizeObserver(l=>{const s=l.map(c=>({id:c.target.getAttribute("data-id"),nodeElement:c.target,forceUpdate:!0}));n.nextTick(()=>o(s))})}),n.onBeforeUnmount(()=>{var l;return(l=a.value)==null?void 0:l.disconnect()}),(l,s)=>(n.openBlock(),n.createElementBlock("div",HS,[a.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(n.unref(t),(c,d,f,u)=>{const p=[c.id];if(u&&u.key===c.id&&n.isMemoSame(u,p))return u;const m=(n.openBlock(),n.createBlock(n.unref(jS),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):n.createCommentVNode("",!0)]))}});function ZS(){const{emits:e}=xe();n.onMounted(()=>{if(Eu()){const t=document.querySelector(".vue-flow__pane");t&&window.getComputedStyle(t).zIndex!=="1"&&e.error(new Ke(De.MISSING_STYLES))}})}const XS=n.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),JS={name:"VueFlow",compatConfig:{MODE:3}},Gu=n.defineComponent({...JS,props:{id:{},modelValue:{},nodes:{},edges:{},edgeTypes:{},nodeTypes:{},connectionMode:{},connectionLineType:{},connectionLineStyle:{default:void 0},connectionLineOptions:{default:void 0},connectionRadius:{},isValidConnection:{type:[Function,null],default:void 0},deleteKeyCode:{default:void 0},selectionKeyCode:{type:[Boolean,null],default:void 0},multiSelectionKeyCode:{default:void 0},zoomActivationKeyCode:{default:void 0},panActivationKeyCode:{default:void 0},snapToGrid:{type:Boolean,default:void 0},snapGrid:{},onlyRenderVisibleElements:{type:Boolean,default:void 0},edgesUpdatable:{type:[Boolean,String],default:void 0},nodesDraggable:{type:Boolean,default:void 0},nodesConnectable:{type:Boolean,default:void 0},nodeDragThreshold:{},elementsSelectable:{type:Boolean,default:void 0},selectNodesOnDrag:{type:Boolean,default:void 0},panOnDrag:{type:[Boolean,Array],default:void 0},minZoom:{},maxZoom:{},defaultViewport:{},translateExtent:{},nodeExtent:{},defaultMarkerColor:{},zoomOnScroll:{type:Boolean,default:void 0},zoomOnPinch:{type:Boolean,default:void 0},panOnScroll:{type:Boolean,default:void 0},panOnScrollSpeed:{},panOnScrollMode:{},paneClickDistance:{},zoomOnDoubleClick:{type:Boolean,default:void 0},preventScrolling:{type:Boolean,default:void 0},selectionMode:{},edgeUpdaterRadius:{},fitViewOnInit:{type:Boolean,default:void 0},connectOnClick:{type:Boolean,default:void 0},applyDefault:{type:Boolean,default:void 0},autoConnect:{type:[Boolean,Function],default:void 0},noDragClassName:{},noWheelClassName:{},noPanClassName:{},defaultEdgeOptions:{},elevateEdgesOnSelect:{type:Boolean,default:void 0},elevateNodesOnSelect:{type:Boolean,default:void 0},disableKeyboardA11y:{type:Boolean,default:void 0},edgesFocusable:{type:Boolean,default:void 0},nodesFocusable:{type:Boolean,default:void 0},autoPanOnConnect:{type:Boolean,default:void 0},autoPanOnNodeDrag:{type:Boolean,default:void 0},autoPanSpeed:{}},emits:["nodesChange","edgesChange","nodesInitialized","paneReady","init","updateNodeInternals","error","connect","connectStart","connectEnd","clickConnectStart","clickConnectEnd","moveStart","move","moveEnd","selectionDragStart","selectionDrag","selectionDragStop","selectionContextMenu","selectionStart","selectionEnd","viewportChangeStart","viewportChange","viewportChangeEnd","paneScroll","paneClick","paneContextMenu","paneMouseEnter","paneMouseMove","paneMouseLeave","edgeUpdate","edgeContextMenu","edgeMouseEnter","edgeMouseMove","edgeMouseLeave","edgeDoubleClick","edgeClick","edgeUpdateStart","edgeUpdateEnd","nodeContextMenu","nodeMouseEnter","nodeMouseMove","nodeMouseLeave","nodeDoubleClick","nodeClick","nodeDragStart","nodeDrag","nodeDragStop","miniMapNodeClick","miniMapNodeDoubleClick","miniMapNodeMouseEnter","miniMapNodeMouseMove","miniMapNodeMouseLeave","update:modelValue","update:nodes","update:edges"],setup(e,{expose:t,emit:o}){const r=e,i=n.useSlots(),a=ba(r,"modelValue",o),l=ba(r,"nodes",o),s=ba(r,"edges",o),c=xe(r),d=F1({modelValue:a,nodes:l,edges:s},r,c);return U1(o,c.hooks),OS(),ZS(),n.provide(Wr,i),n.onUnmounted(()=>{d()}),t(c),(f,u)=>(n.openBlock(),n.createElementBlock("div",{ref:n.unref(c).vueFlowRef,class:"vue-flow"},[n.createVNode(SS,null,{default:n.withCtx(()=>[n.createVNode(GS),XS,n.createVNode(WS),n.renderSlot(f.$slots,"zoom-pane")]),_:3}),n.renderSlot(f.$slots,"default"),n.createVNode(IS)],512))}}),QS={name:"Panel",compatConfig:{MODE:3}},ex=n.defineComponent({...QS,props:{position:{}},setup(e){const t=e,{userSelectionActive:o}=xe(),r=n.computed(()=>`${t.position}`.split("-"));return(i,a)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["vue-flow__panel",r.value]),style:n.normalizeStyle({pointerEvents:n.unref(o)?"none":"all"})},[n.renderSlot(i.$slots,"default")],6))}});var Mt=(e=>(e.Lines="lines",e.Dots="dots",e))(Mt||{});const ju=function({dimensions:e,size:t,color:o}){return n.h("path",{stroke:o,"stroke-width":t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},zu=function({radius:e,color:t}){return n.h("circle",{cx:e,cy:e,r:e,fill:t})};Mt.Lines+"",Mt.Dots+"";const tx={[Mt.Dots]:"#81818a",[Mt.Lines]:"#eee"},nx=["id","x","y","width","height","patternTransform"],ox={key:2,height:"100",width:"100"},rx=["fill"],ix=["x","y","fill"],ax={name:"Background",compatConfig:{MODE:3}},lx=n.defineComponent({...ax,props:{id:{},variant:{default:()=>Mt.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:t,viewport:o}=xe(),r=n.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],d=[s*l||1,c*l||1],f=e.size*l,[u,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[u*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:f}}),i=n.toRef(()=>`pattern-${t}${e.id?`-${e.id}`:""}`),a=n.toRef(()=>e.color||e.patternColor||tx[e.variant||Mt.Dots]);return(l,s)=>(n.openBlock(),n.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:n.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[n.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[n.createElementVNode("pattern",{id:i.value,x:n.unref(o).x%r.value.scaledGap[0],y:n.unref(o).y%r.value.scaledGap[1],width:r.value.scaledGap[0],height:r.value.scaledGap[1],patternTransform:`translate(-${r.value.offset[0]},-${r.value.offset[1]})`,patternUnits:"userSpaceOnUse"},[n.renderSlot(l.$slots,"pattern",{},()=>[l.variant===n.unref(Mt).Lines?(n.openBlock(),n.createBlock(n.unref(ju),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===n.unref(Mt).Dots?(n.openBlock(),n.createBlock(n.unref(zu),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):n.createCommentVNode("",!0),l.bgColor?(n.openBlock(),n.createElementBlock("svg",ox,[n.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,rx)])):n.createCommentVNode("",!0)])],8,nx)]),n.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,ix),n.renderSlot(l.$slots,"default",{id:i.value})],4))}}),sx={name:"ControlButton",compatConfig:{MODE:3}},cx=(e,t)=>{const o=e.__vccOpts||e;for(const[r,i]of t)o[r]=i;return o},dx={class:"vue-flow__controls-button"};function ux(e,t,o,r,i,a){return n.openBlock(),n.createElementBlock("button",dx,[n.renderSlot(e.$slots,"default")])}const ni=cx(sx,[["render",ux]]),fx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},px=[n.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function mx(e,t){return n.openBlock(),n.createElementBlock("svg",fx,px)}const gx={render:mx},hx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},yx=[n.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function _x(e,t){return n.openBlock(),n.createElementBlock("svg",hx,yx)}const bx={render:_x},wx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},Ex=[n.createElementVNode("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"},null,-1)];function kx(e,t){return n.openBlock(),n.createElementBlock("svg",wx,Ex)}const Cx={render:kx},vx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},Nx=[n.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"},null,-1)];function Sx(e,t){return n.openBlock(),n.createElementBlock("svg",vx,Nx)}const xx={render:Sx},Ax={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},Tx=[n.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z"},null,-1)];function Px(e,t){return n.openBlock(),n.createElementBlock("svg",Ax,Tx)}const Ix={render:Px},Ox={name:"Controls",compatConfig:{MODE:3}},$x=n.defineComponent({...Ox,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Hd.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:t}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=xe(),p=n.toRef(()=>o.value||r.value||i.value),m=n.toRef(()=>d.value.zoom<=f.value),h=n.toRef(()=>d.value.zoom>=u.value);function w(){l(),t("zoomIn")}function g(){s(),t("zoomOut")}function _(){c(e.fitViewParams),t("fitView")}function b(){a(!p.value),t("interactionChange",!p.value)}return(y,C)=>(n.openBlock(),n.createBlock(n.unref(ex),{class:"vue-flow__controls",position:y.position},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"top"),y.showZoom?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.renderSlot(y.$slots,"control-zoom-in",{},()=>[n.createVNode(ni,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:w},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-zoom-in",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(gx))))])]),_:3},8,["disabled"])]),n.renderSlot(y.$slots,"control-zoom-out",{},()=>[n.createVNode(ni,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-zoom-out",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(bx))))])]),_:3},8,["disabled"])])],64)):n.createCommentVNode("",!0),y.showFitView?n.renderSlot(y.$slots,"control-fit-view",{key:1},()=>[n.createVNode(ni,{class:"vue-flow__controls-fitview",onClick:_},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-fit-view",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Cx))))])]),_:3})]):n.createCommentVNode("",!0),y.showInteractive?n.renderSlot(y.$slots,"control-interactive",{key:2},()=>[y.showInteractive?(n.openBlock(),n.createBlock(ni,{key:0,class:"vue-flow__controls-interactive",onClick:b},{default:n.withCtx(()=>[p.value?n.renderSlot(y.$slots,"icon-unlock",{key:0},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Ix))))]):n.createCommentVNode("",!0),p.value?n.createCommentVNode("",!0):n.renderSlot(y.$slots,"icon-lock",{key:1},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(xx))))])]),_:3})):n.createCommentVNode("",!0)]):n.createCommentVNode("",!0),n.renderSlot(y.$slots,"default")]),_:3},8,["position"]))}});function Bx(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Dx="\0",hn="\0",Hu="";let Vx=class{constructor(t){Le(this,"_isDirected",!0);Le(this,"_isMultigraph",!1);Le(this,"_isCompound",!1);Le(this,"_label");Le(this,"_defaultNodeLabelFn",()=>{});Le(this,"_defaultEdgeLabelFn",()=>{});Le(this,"_nodes",{});Le(this,"_in",{});Le(this,"_preds",{});Le(this,"_out",{});Le(this,"_sucs",{});Le(this,"_edgeObjs",{});Le(this,"_edgeLabels",{});Le(this,"_nodeCount",0);Le(this,"_edgeCount",0);Le(this,"_parent");Le(this,"_children");t&&(this._isDirected=Object.hasOwn(t,"directed")?t.directed:!0,this._isMultigraph=Object.hasOwn(t,"multigraph")?t.multigraph:!1,this._isCompound=Object.hasOwn(t,"compound")?t.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[hn]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(t){return this._label=t,this}graph(){return this._label}setDefaultNodeLabel(t){return this._defaultNodeLabelFn=t,typeof t!="function"&&(this._defaultNodeLabelFn=()=>t),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var t=this;return this.nodes().filter(o=>Object.keys(t._in[o]).length===0)}sinks(){var t=this;return this.nodes().filter(o=>Object.keys(t._out[o]).length===0)}setNodes(t,o){var r=arguments,i=this;return t.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(t,o){return Object.hasOwn(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=o),this):(this._nodes[t]=arguments.length>1?o:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=hn,this._children[t]={},this._children[hn][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)}node(t){return this._nodes[t]}hasNode(t){return Object.hasOwn(this._nodes,t)}removeNode(t){var o=this;if(Object.hasOwn(this._nodes,t)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],this.children(t).forEach(function(i){o.setParent(i)}),delete this._children[t]),Object.keys(this._in[t]).forEach(r),delete this._in[t],delete this._preds[t],Object.keys(this._out[t]).forEach(r),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this}setParent(t,o){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(o===void 0)o=hn;else{o+="";for(var r=o;r!==void 0;r=this.parent(r))if(r===t)throw new Error("Setting "+o+" as parent of "+t+" would create a cycle");this.setNode(o)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=o,this._children[o][t]=!0,this}_removeFromParentsChildList(t){delete this._children[this._parent[t]][t]}parent(t){if(this._isCompound){var o=this._parent[t];if(o!==hn)return o}}children(t=hn){if(this._isCompound){var o=this._children[t];if(o)return Object.keys(o)}else{if(t===hn)return this.nodes();if(this.hasNode(t))return[]}}predecessors(t){var o=this._preds[t];if(o)return Object.keys(o)}successors(t){var o=this._sucs[t];if(o)return Object.keys(o)}neighbors(t){var o=this.predecessors(t);if(o){const i=new Set(o);for(var r of this.successors(t))i.add(r);return Array.from(i.values())}}isLeaf(t){var o;return this.isDirected()?o=this.successors(t):o=this.neighbors(t),o.length===0}filterNodes(t){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});o.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([l,s]){t(l)&&o.setNode(l,s)}),Object.values(this._edgeObjs).forEach(function(l){o.hasNode(l.v)&&o.hasNode(l.w)&&o.setEdge(l,r.edge(l))});var i={};function a(l){var s=r.parent(l);return s===void 0||o.hasNode(s)?(i[l]=s,s):s in i?i[s]:a(s)}return this._isCompound&&o.nodes().forEach(l=>o.setParent(l,a(l))),o}setDefaultEdgeLabel(t){return this._defaultEdgeLabelFn=t,typeof t!="function"&&(this._defaultEdgeLabelFn=()=>t),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(t,o){var r=this,i=arguments;return t.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var t,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(t=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(t=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),t=""+t,o=""+o,r!==void 0&&(r=""+r);var s=Oo(this._isDirected,t,o,r);if(Object.hasOwn(this._edgeLabels,s))return a&&(this._edgeLabels[s]=i),this;if(r!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(t,o,r);var c=Rx(this._isDirected,t,o,r);return t=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Yu(this._preds[o],t),Yu(this._sucs[t],o),this._in[o][s]=c,this._out[t][s]=c,this._edgeCount++,this}edge(t,o,r){var i=arguments.length===1?tl(this._isDirected,arguments[0]):Oo(this._isDirected,t,o,r);return this._edgeLabels[i]}edgeAsObj(){const t=this.edge(...arguments);return typeof t!="object"?{label:t}:t}hasEdge(t,o,r){var i=arguments.length===1?tl(this._isDirected,arguments[0]):Oo(this._isDirected,t,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(t,o,r){var i=arguments.length===1?tl(this._isDirected,arguments[0]):Oo(this._isDirected,t,o,r),a=this._edgeObjs[i];return a&&(t=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],Wu(this._preds[o],t),Wu(this._sucs[t],o),delete this._in[o][i],delete this._out[t][i],this._edgeCount--),this}inEdges(t,o){var r=this._in[t];if(r){var i=Object.values(r);return o?i.filter(a=>a.v===o):i}}outEdges(t,o){var r=this._out[t];if(r){var i=Object.values(r);return o?i.filter(a=>a.w===o):i}}nodeEdges(t,o){var r=this.inEdges(t,o);if(r)return r.concat(this.outEdges(t,o))}};function Yu(e,t){e[t]?e[t]++:e[t]=1}function Wu(e,t){--e[t]||delete e[t]}function Oo(e,t,o,r){var i=""+t,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Hu+a+Hu+(r===void 0?Dx:r)}function Rx(e,t,o,r){var i=""+t,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}var s={v:i,w:a};return r&&(s.name=r),s}function tl(e,t){return Oo(e,t.v,t.w,t.name)}var nl=Vx,Mx="2.2.4",Fx={Graph:nl,version:Mx},Lx=nl,Ux={write:Kx,read:jx};function Kx(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:qx(e),edges:Gx(e)};return e.graph()!==void 0&&(t.value=structuredClone(e.graph())),t}function qx(e){return e.nodes().map(function(t){var o=e.node(t),r=e.parent(t),i={v:t};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function Gx(e){return e.edges().map(function(t){var o=e.edge(t),r={v:t.v,w:t.w};return t.name!==void 0&&(r.name=t.name),o!==void 0&&(r.value=o),r})}function jx(e){var t=new Lx(e.options).setGraph(e.value);return e.nodes.forEach(function(o){t.setNode(o.v,o.value),o.parent&&t.setParent(o.v,o.parent)}),e.edges.forEach(function(o){t.setEdge({v:o.v,w:o.w,name:o.name},o.value)}),t}var zx=Hx;function Hx(e){var t={},o=[],r;function i(a){Object.hasOwn(t,a)||(t[a]=!0,r.push(a),e.successors(a).forEach(i),e.predecessors(a).forEach(i))}return e.nodes().forEach(function(a){r=[],i(a),r.length&&o.push(r)}),o}var Zu=class{constructor(){Le(this,"_arr",[]);Le(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(t){return t.key})}has(t){return Object.hasOwn(this._keyIndices,t)}priority(t){var o=this._keyIndices[t];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(t,o){var r=this._keyIndices;if(t=String(t),!Object.hasOwn(r,t)){var i=this._arr,a=i.length;return r[t]=a,i.push({key:t,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key}decrease(t,o){var r=this._keyIndices[t];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(t){var o=this._arr,r=2*t,i=r+1,a=t;r<o.length&&(a=o[r].priority<o[a].priority?r:a,i<o.length&&(a=o[i].priority<o[a].priority?i:a),a!==t&&(this._swap(t,a),this._heapify(a)))}_decrease(t){for(var o=this._arr,r=o[t].priority,i;t!==0&&(i=t>>1,!(o[i].priority<r));)this._swap(t,i),t=i}_swap(t,o){var r=this._arr,i=this._keyIndices,a=r[t],l=r[o];r[t]=l,r[o]=a,i[l.key]=t,i[a.key]=o}},Yx=Zu,Xu=Zx,Wx=()=>1;function Zx(e,t,o,r){return Xx(e,String(t),o||Wx,r||function(i){return e.outEdges(i)})}function Xx(e,t,o,r){var i={},a=new Yx,l,s,c=function(d){var f=d.v!==l?d.v:d.w,u=i[f],p=o(d),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+d+" Weight: "+p);m<u.distance&&(u.distance=m,u.predecessor=l,a.decrease(f,m))};for(e.nodes().forEach(function(d){var f=d===t?0:Number.POSITIVE_INFINITY;i[d]={distance:f},a.add(d,f)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var Jx=Xu,Qx=eA;function eA(e,t,o){return e.nodes().reduce(function(r,i){return r[i]=Jx(e,i,t,o),r},{})}var Ju=tA;function tA(e){var t=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:t,index:t++};if(o.push(l),e.successors(l).forEach(function(f){Object.hasOwn(r,f)?r[f].onStack&&(s.lowlink=Math.min(s.lowlink,r[f].index)):(a(f),s.lowlink=Math.min(s.lowlink,r[f].lowlink))}),s.lowlink===s.index){var c=[],d;do d=o.pop(),r[d].onStack=!1,c.push(d);while(l!==d);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var nA=Ju,oA=rA;function rA(e){return nA(e).filter(function(t){return t.length>1||t.length===1&&e.hasEdge(t[0],t[0])})}var iA=lA,aA=()=>1;function lA(e,t,o){return sA(e,t||aA,o||function(r){return e.outEdges(r)})}function sA(e,t,o){var r={},i=e.nodes();return i.forEach(function(a){r[a]={},r[a][a]={distance:0},i.forEach(function(l){a!==l&&(r[a][l]={distance:Number.POSITIVE_INFINITY})}),o(a).forEach(function(l){var s=l.v===a?l.w:l.v,c=t(l);r[a][s]={distance:c,predecessor:a}})}),i.forEach(function(a){var l=r[a];i.forEach(function(s){var c=r[s];i.forEach(function(d){var f=c[a],u=l[d],p=c[d],m=f.distance+u.distance;m<p.distance&&(p.distance=m,p.predecessor=u.predecessor)})})}),r}function Qu(e){var t={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new ol;Object.hasOwn(t,a)||(o[a]=!0,t[a]=!0,e.predecessors(a).forEach(i),delete o[a],r.push(a))}if(e.sinks().forEach(i),Object.keys(t).length!==e.nodeCount())throw new ol;return r}class ol extends Error{constructor(){super(...arguments)}}var ef=Qu;Qu.CycleException=ol;var tf=ef,cA=dA;function dA(e){try{tf(e)}catch(t){if(t instanceof tf.CycleException)return!1;throw t}return!0}var nf=uA;function uA(e,t,o){Array.isArray(t)||(t=[t]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?fA:pA,a=[],l={};return t.forEach(s=>{if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,r,l,a)}),a}function fA(e,t,o,r){for(var i=[[e,!1]];i.length>0;){var a=i.pop();a[1]?r.push(a[0]):Object.hasOwn(o,a[0])||(o[a[0]]=!0,i.push([a[0],!0]),of(t(a[0]),l=>i.push([l,!1])))}}function pA(e,t,o,r){for(var i=[e];i.length>0;){var a=i.pop();Object.hasOwn(o,a)||(o[a]=!0,r.push(a),of(t(a),l=>i.push(l)))}}function of(e,t){for(var o=e.length;o--;)t(e[o],o,e);return e}var mA=nf,gA=hA;function hA(e,t){return mA(e,t,"post")}var yA=nf,_A=bA;function bA(e,t){return yA(e,t,"pre")}var wA=nl,EA=Zu,kA=CA;function CA(e,t){var o=new wA,r={},i=new EA,a;function l(c){var d=c.v===a?c.w:c.v,f=i.priority(d);if(f!==void 0){var u=t(c);u<f&&(r[d]=a,i.decrease(d,u))}}if(e.nodeCount()===0)return o;e.nodes().forEach(function(c){i.add(c,Number.POSITIVE_INFINITY),o.setNode(c)}),i.decrease(e.nodes()[0],0);for(var s=!1;i.size()>0;){if(a=i.removeMin(),Object.hasOwn(r,a))o.setEdge(a,r[a]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(a).forEach(l)}return o}var vA={components:zx,dijkstra:Xu,dijkstraAll:Qx,findCycles:oA,floydWarshall:iA,isAcyclic:cA,postorder:gA,preorder:_A,prim:kA,tarjan:Ju,topsort:ef},rf=Fx,ht={Graph:rf.Graph,json:Ux,alg:vA,version:rf.version};let NA=class{constructor(){let t={};t._next=t._prev=t,this._sentinel=t}dequeue(){let t=this._sentinel,o=t._prev;if(o!==t)return af(o),o}enqueue(t){let o=this._sentinel;t._prev&&t._next&&af(t),t._next=o._next,o._next._prev=t,o._next=t,t._prev=o}toString(){let t=[],o=this._sentinel,r=o._prev;for(;r!==o;)t.push(JSON.stringify(r,SA)),r=r._prev;return"["+t.join(", ")+"]"}};function af(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function SA(e,t){if(e!=="_next"&&e!=="_prev")return t}var xA=NA;let AA=ht.Graph,TA=xA;var PA=OA;let IA=()=>1;function OA(e,t){if(e.nodeCount()<=1)return[];let o=BA(e,t||IA);return $A(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function $A(e,t,o){let r=[],i=t[t.length-1],a=t[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)rl(e,t,o,l);for(;l=i.dequeue();)rl(e,t,o,l);if(e.nodeCount()){for(let s=t.length-2;s>0;--s)if(l=t[s].dequeue(),l){r=r.concat(rl(e,t,o,l,!0));break}}}return r}function rl(e,t,o,r,i){let a=i?[]:void 0;return e.inEdges(r.v).forEach(l=>{let s=e.edge(l),c=e.node(l.v);i&&a.push({v:l.v,w:l.w}),c.out-=s,il(t,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,il(t,o,d)}),e.removeNode(r.v),a}function BA(e,t){let o=new AA,r=0,i=0;e.nodes().forEach(s=>{o.setNode(s,{v:s,in:0,out:0})}),e.edges().forEach(s=>{let c=o.edge(s.v,s.w)||0,d=t(s),f=c+d;o.setEdge(s.v,s.w,f),i=Math.max(i,o.node(s.v).out+=d),r=Math.max(r,o.node(s.w).in+=d)});let a=DA(i+r+3).map(()=>new TA),l=r+1;return o.nodes().forEach(s=>{il(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function il(e,t,o){o.out?o.in?e[o.out-o.in+t].enqueue(o):e[e.length-1].enqueue(o):e[0].enqueue(o)}function DA(e){const t=[];for(let o=0;o<e;o++)t.push(o);return t}let lf=ht.Graph;var Re={addBorderNode:GA,addDummyNode:sf,applyWithChunking:oi,asNonCompoundGraph:RA,buildLayerMatrix:UA,intersectRect:LA,mapValues:XA,maxRank:df,normalizeRanks:KA,notime:YA,partition:zA,pick:ZA,predecessorWeights:FA,range:ff,removeEmptyRanks:qA,simplify:VA,successorWeights:MA,time:HA,uniqueId:uf,zipObject:al};function sf(e,t,o,r){for(var i=r;e.hasNode(i);)i=uf(r);return o.dummy=t,e.setNode(i,o),i}function VA(e){let t=new lf().setGraph(e.graph());return e.nodes().forEach(o=>t.setNode(o,e.node(o))),e.edges().forEach(o=>{let r=t.edge(o.v,o.w)||{weight:0,minlen:1},i=e.edge(o);t.setEdge(o.v,o.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),t}function RA(e){let t=new lf({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(o=>{e.children(o).length||t.setNode(o,e.node(o))}),e.edges().forEach(o=>{t.setEdge(o,e.edge(o))}),t}function MA(e){let t=e.nodes().map(o=>{let r={};return e.outEdges(o).forEach(i=>{r[i.w]=(r[i.w]||0)+e.edge(i).weight}),r});return al(e.nodes(),t)}function FA(e){let t=e.nodes().map(o=>{let r={};return e.inEdges(o).forEach(i=>{r[i.v]=(r[i.v]||0)+e.edge(i).weight}),r});return al(e.nodes(),t)}function LA(e,t){let o=e.x,r=e.y,i=t.x-o,a=t.y-r,l=e.width/2,s=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");let c,d;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,d=s):(i<0&&(l=-l),c=l,d=l*a/i),{x:o+c,y:r+d}}function UA(e){let t=ff(df(e)+1).map(()=>[]);return e.nodes().forEach(o=>{let r=e.node(o),i=r.rank;i!==void 0&&(t[i][r.order]=o)}),t}function KA(e){let t=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=oi(Math.min,t);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function qA(e){let t=e.nodes().map(l=>e.node(l).rank),o=oi(Math.min,t),r=[];e.nodes().forEach(l=>{let s=e.node(l).rank-o;r[s]||(r[s]=[]),r[s].push(l)});let i=0,a=e.graph().nodeRankFactor;Array.from(r).forEach((l,s)=>{l===void 0&&s%a!==0?--i:l!==void 0&&i&&l.forEach(c=>e.node(c).rank+=i)})}function GA(e,t,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),sf(e,"border",i,t)}function jA(e,t=cf){const o=[];for(let r=0;r<e.length;r+=t){const i=e.slice(r,r+t);o.push(i)}return o}const cf=65535;function oi(e,t){if(t.length>cf){const o=jA(t);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,t)}function df(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return oi(Math.max,o)}function zA(e,t){let o={lhs:[],rhs:[]};return e.forEach(r=>{t(r)?o.lhs.push(r):o.rhs.push(r)}),o}function HA(e,t){let o=Date.now();try{return t()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function YA(e,t){return t()}let WA=0;function uf(e){var t=++WA;return e+(""+t)}function ff(e,t,o=1){t==null&&(t=e,e=0);let r=a=>a<t;o<0&&(r=a=>t<a);const i=[];for(let a=e;r(a);a+=o)i.push(a);return i}function ZA(e,t){const o={};for(const r of t)e[r]!==void 0&&(o[r]=e[r]);return o}function XA(e,t){let o=t;return typeof t=="string"&&(o=r=>r[t]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function al(e,t){return e.reduce((o,r,i)=>(o[r]=t[i],o),{})}let JA=PA,QA=Re.uniqueId;var eT={run:tT,undo:oT};function tT(e){(e.graph().acyclicer==="greedy"?JA(e,o(e)):nT(e)).forEach(r=>{let i=e.edge(r);e.removeEdge(r),i.forwardName=r.name,i.reversed=!0,e.setEdge(r.w,r.v,i,QA("rev"))});function o(r){return i=>r.edge(i).weight}}function nT(e){let t=[],o={},r={};function i(a){Object.hasOwn(r,a)||(r[a]=!0,o[a]=!0,e.outEdges(a).forEach(l=>{Object.hasOwn(o,l.w)?t.push(l):i(l.w)}),delete o[a])}return e.nodes().forEach(i),t}function oT(e){e.edges().forEach(t=>{let o=e.edge(t);if(o.reversed){e.removeEdge(t);let r=o.forwardName;delete o.reversed,delete o.forwardName,e.setEdge(t.w,t.v,o,r)}})}let rT=Re;var iT={run:aT,undo:sT};function aT(e){e.graph().dummyChains=[],e.edges().forEach(t=>lT(e,t))}function lT(e,t){let o=t.v,r=e.node(o).rank,i=t.w,a=e.node(i).rank,l=t.name,s=e.edge(t),c=s.labelRank;if(a===r+1)return;e.removeEdge(t);let d,f,u;for(u=0,++r;r<a;++u,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:t,rank:r},d=rT.addDummyNode(e,"edge",f,"_d"),r===c&&(f.width=s.width,f.height=s.height,f.dummy="edge-label",f.labelpos=s.labelpos),e.setEdge(o,d,{weight:s.weight},l),u===0&&e.graph().dummyChains.push(d),o=d;e.setEdge(o,i,{weight:s.weight},l)}function sT(e){e.graph().dummyChains.forEach(t=>{let o=e.node(t),r=o.edgeLabel,i;for(e.setEdge(o.edgeObj,r);o.dummy;)i=e.successors(t)[0],e.removeNode(t),r.points.push({x:o.x,y:o.y}),o.dummy==="edge-label"&&(r.x=o.x,r.y=o.y,r.width=o.width,r.height=o.height),t=i,o=e.node(t)})}const{applyWithChunking:cT}=Re;var ri={longestPath:dT,slack:uT};function dT(e){var t={};function o(r){var i=e.node(r);if(Object.hasOwn(t,r))return i.rank;t[r]=!0;let a=e.outEdges(r).map(s=>s==null?Number.POSITIVE_INFINITY:o(s.w)-e.edge(s).minlen);var l=cT(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function uT(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var fT=ht.Graph,ii=ri.slack,pf=pT;function pT(e){var t=new fT({directed:!1}),o=e.nodes()[0],r=e.nodeCount();t.setNode(o,{});for(var i,a;mT(t,e)<r;)i=gT(t,e),a=t.hasNode(i.v)?ii(e,i):-ii(e,i),hT(t,e,a);return t}function mT(e,t){function o(r){t.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!ii(t,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function gT(e,t){return t.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=ii(t,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function hT(e,t,o){e.nodes().forEach(r=>t.node(r).rank+=o)}var yT=pf,mf=ri.slack,_T=ri.longestPath,bT=ht.alg.preorder,wT=ht.alg.postorder,ET=Re.simplify,kT=yn;yn.initLowLimValues=sl,yn.initCutValues=ll,yn.calcCutValue=gf,yn.leaveEdge=yf,yn.enterEdge=_f,yn.exchangeEdges=bf;function yn(e){e=ET(e),_T(e);var t=yT(e);sl(t),ll(t,e);for(var o,r;o=yf(t);)r=_f(t,e,o),bf(t,e,o,r)}function ll(e,t){var o=wT(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>CT(e,t,r))}function CT(e,t,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=gf(e,t,o)}function gf(e,t,o){var r=e.node(o),i=r.parent,a=!0,l=t.edge(o,i),s=0;return l||(a=!1,l=t.edge(i,o)),s=l.weight,t.nodeEdges(o).forEach(c=>{var d=c.v===o,f=d?c.w:c.v;if(f!==i){var u=d===a,p=t.edge(c).weight;if(s+=u?p:-p,NT(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function sl(e,t){arguments.length<2&&(t=e.nodes()[0]),hf(e,{},1,t)}function hf(e,t,o,r,i){var a=o,l=e.node(r);return t[r]=!0,e.neighbors(r).forEach(s=>{Object.hasOwn(t,s)||(o=hf(e,t,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function yf(e){return e.edges().find(t=>e.edge(t).cutvalue<0)}function _f(e,t,o){var r=o.v,i=o.w;t.hasEdge(r,i)||(r=o.w,i=o.v);var a=e.node(r),l=e.node(i),s=a,c=!1;a.lim>l.lim&&(s=l,c=!0);var d=t.edges().filter(f=>c===wf(e,e.node(f.v),s)&&c!==wf(e,e.node(f.w),s));return d.reduce((f,u)=>mf(t,u)<mf(t,f)?u:f)}function bf(e,t,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),sl(e),ll(e,t),vT(e,t)}function vT(e,t){var o=e.nodes().find(i=>!t.node(i).parent),r=bT(e,o);r=r.slice(1),r.forEach(i=>{var a=e.node(i).parent,l=t.edge(i,a),s=!1;l||(l=t.edge(a,i),s=!0),t.node(i).rank=t.node(a).rank+(s?l.minlen:-l.minlen)})}function NT(e,t,o){return e.hasEdge(t,o)}function wf(e,t,o){return o.low<=t.lim&&t.lim<=o.lim}var ST=ri,Ef=ST.longestPath,xT=pf,AT=kT,TT=PT;function PT(e){var t=e.graph().ranker;if(t instanceof Function)return t(e);switch(e.graph().ranker){case"network-simplex":kf(e);break;case"tight-tree":OT(e);break;case"longest-path":IT(e);break;case"none":break;default:kf(e)}}var IT=Ef;function OT(e){Ef(e),xT(e)}function kf(e){AT(e)}var $T=BT;function BT(e){let t=VT(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=DT(e,t,i.v,i.w),l=a.path,s=a.lca,c=0,d=l[c],f=!0;for(;o!==i.w;){if(r=e.node(o),f){for(;(d=l[c])!==s&&e.node(d).maxRank<r.rank;)c++;d===s&&(f=!1)}if(!f){for(;c<l.length-1&&e.node(d=l[c+1]).minRank<=r.rank;)c++;d=l[c]}e.setParent(o,d),o=e.successors(o)[0]}})}function DT(e,t,o,r){let i=[],a=[],l=Math.min(t[o].low,t[r].low),s=Math.max(t[o].lim,t[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(t[c].low>l||s>t[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function VT(e){let t={},o=0;function r(i){let a=o;e.children(i).forEach(r),t[i]={low:a,lim:o++}}return e.children().forEach(r),t}let ai=Re;var RT={run:MT,cleanup:UT};function MT(e){let t=ai.addDummyNode(e,"root",{},"_root"),o=FT(e),r=Object.values(o),i=ai.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=t,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=LT(e)+1;e.children().forEach(s=>Cf(e,t,a,l,i,o,s)),e.graph().nodeRankFactor=a}function Cf(e,t,o,r,i,a,l){let s=e.children(l);if(!s.length){l!==t&&e.setEdge(t,l,{weight:0,minlen:o});return}let c=ai.addBorderNode(e,"_bt"),d=ai.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{Cf(e,t,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,w=p.borderTop?r:2*r,g=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:w,minlen:g,nestingEdge:!0}),e.setEdge(h,d,{weight:w,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(t,c,{weight:0,minlen:i+a[l]})}function FT(e){var t={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),t[r]=i}return e.children().forEach(r=>o(r,1)),t}function LT(e){return e.edges().reduce((t,o)=>t+e.edge(o).weight,0)}function UT(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,e.edges().forEach(o=>{var r=e.edge(o);r.nestingEdge&&e.removeEdge(o)})}let KT=Re;var qT=GT;function GT(e){function t(o){let r=e.children(o),i=e.node(o);if(r.length&&r.forEach(t),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,l=i.maxRank+1;a<l;++a)vf(e,"borderLeft","_bl",o,i,a),vf(e,"borderRight","_br",o,i,a)}}e.children().forEach(t)}function vf(e,t,o,r,i,a){let l={width:0,height:0,rank:a,borderType:t},s=i[t][a-1],c=KT.addDummyNode(e,"border",l,o);i[t][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var jT={adjust:zT,undo:HT};function zT(e){let t=e.graph().rankdir.toLowerCase();(t==="lr"||t==="rl")&&Nf(e)}function HT(e){let t=e.graph().rankdir.toLowerCase();(t==="bt"||t==="rl")&&YT(e),(t==="lr"||t==="rl")&&(WT(e),Nf(e))}function Nf(e){e.nodes().forEach(t=>Sf(e.node(t))),e.edges().forEach(t=>Sf(e.edge(t)))}function Sf(e){let t=e.width;e.width=e.height,e.height=t}function YT(e){e.nodes().forEach(t=>cl(e.node(t))),e.edges().forEach(t=>{let o=e.edge(t);o.points.forEach(cl),Object.hasOwn(o,"y")&&cl(o)})}function cl(e){e.y=-e.y}function WT(e){e.nodes().forEach(t=>dl(e.node(t))),e.edges().forEach(t=>{let o=e.edge(t);o.points.forEach(dl),Object.hasOwn(o,"x")&&dl(o)})}function dl(e){let t=e.x;e.x=e.y,e.y=t}let xf=Re;var ZT=XT;function XT(e){let t={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=xf.applyWithChunking(Math.max,r),a=xf.range(i+1).map(()=>[]);function l(c){if(t[c])return;t[c]=!0;let d=e.node(c);a[d.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,d)=>e.node(c).rank-e.node(d).rank).forEach(l),a}let JT=Re.zipObject;var QT=eP;function eP(e,t){let o=0;for(let r=1;r<t.length;++r)o+=tP(e,t[r-1],t[r]);return o}function tP(e,t,o){let r=JT(o,o.map((d,f)=>f)),i=t.flatMap(d=>e.outEdges(d).map(f=>({pos:r[f.w],weight:e.edge(f).weight})).sort((f,u)=>f.pos-u.pos)),a=1;for(;a<o.length;)a<<=1;let l=2*a-1;a-=1;let s=new Array(l).fill(0),c=0;return i.forEach(d=>{let f=d.pos+a;s[f]+=d.weight;let u=0;for(;f>0;)f%2&&(u+=s[f+1]),f=f-1>>1,s[f]+=d.weight;c+=d.weight*u}),c}var nP=oP;function oP(e,t=[]){return t.map(o=>{let r=e.inEdges(o);if(r.length){let i=r.reduce((a,l)=>{let s=e.edge(l),c=e.node(l.v);return{sum:a.sum+s.weight*c.order,weight:a.weight+s.weight}},{sum:0,weight:0});return{v:o,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:o}})}let rP=Re;var iP=aP;function aP(e,t){let o={};e.forEach((i,a)=>{let l=o[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};i.barycenter!==void 0&&(l.barycenter=i.barycenter,l.weight=i.weight)}),t.edges().forEach(i=>{let a=o[i.v],l=o[i.w];a!==void 0&&l!==void 0&&(l.indegree++,a.out.push(o[i.w]))});let r=Object.values(o).filter(i=>!i.indegree);return lP(r)}function lP(e){let t=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&sP(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();t.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return t.filter(i=>!i.merged).map(i=>rP.pick(i,["vs","i","barycenter","weight"]))}function sP(e,t){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),t.weight&&(o+=t.barycenter*t.weight,r+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}let cP=Re;var dP=uP;function uP(e,t){let o=cP.partition(e,f=>Object.hasOwn(f,"barycenter")),r=o.lhs,i=o.rhs.sort((f,u)=>u.i-f.i),a=[],l=0,s=0,c=0;r.sort(fP(!!t)),c=Af(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Af(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Af(e,t,o){let r;for(;t.length&&(r=t[t.length-1]).i<=o;)t.pop(),e.push(r.vs),o++;return o}function fP(e){return(t,o)=>t.barycenter<o.barycenter?-1:t.barycenter>o.barycenter?1:e?o.i-t.i:t.i-o.i}let pP=nP,mP=iP,gP=dP;var hP=Tf;function Tf(e,t,o,r){let i=e.children(t),a=e.node(t),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=pP(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Tf(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&_P(p,m)}});let f=mP(d,o);yP(f,c);let u=gP(f,r);if(l&&(u.vs=[l,u.vs,s].flat(!0),e.predecessors(l).length)){let p=e.node(e.predecessors(l)[0]),m=e.node(e.predecessors(s)[0]);Object.hasOwn(u,"barycenter")||(u.barycenter=0,u.weight=0),u.barycenter=(u.barycenter*u.weight+p.order+m.order)/(u.weight+2),u.weight+=2}return u}function yP(e,t){e.forEach(o=>{o.vs=o.vs.flatMap(r=>t[r]?t[r].vs:r)})}function _P(e,t){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight):(e.barycenter=t.barycenter,e.weight=t.weight)}let bP=ht.Graph,wP=Re;var EP=kP;function kP(e,t,o){let r=CP(e),i=new bP({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(a=>e.node(a));return e.nodes().forEach(a=>{let l=e.node(a),s=e.parent(a);(l.rank===t||l.minRank<=t&&t<=l.maxRank)&&(i.setNode(a),i.setParent(a,s||r),e[o](a).forEach(c=>{let d=c.v===a?c.w:c.v,f=i.edge(d,a),u=f!==void 0?f.weight:0;i.setEdge(d,a,{weight:e.edge(c).weight+u})}),Object.hasOwn(l,"minRank")&&i.setNode(a,{borderLeft:l.borderLeft[t],borderRight:l.borderRight[t]}))}),i}function CP(e){for(var t;e.hasNode(t=wP.uniqueId("_root")););return t}var vP=NP;function NP(e,t,o){let r={},i;o.forEach(a=>{let l=e.parent(a),s,c;for(;l;){if(s=e.parent(l),s?(c=r[s],r[s]=l):(c=i,i=l),c&&c!==l){t.setEdge(c,l);return}l=s}})}let SP=ZT,xP=QT,AP=hP,TP=EP,PP=vP,IP=ht.Graph,li=Re;var OP=Pf;function Pf(e,t){if(t&&typeof t.customOrder=="function"){t.customOrder(e,Pf);return}let o=li.maxRank(e),r=If(e,li.range(1,o+1),"inEdges"),i=If(e,li.range(o-1,-1,-1),"outEdges"),a=SP(e);if(Of(e,a),t&&t.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){$P(c%2?r:i,c%4>=2),a=li.buildLayerMatrix(e);let f=xP(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Of(e,s)}function If(e,t,o){return t.map(function(r){return TP(e,r,o)})}function $P(e,t){let o=new IP;e.forEach(function(r){let i=r.graph().root,a=AP(r,i,o,t);a.vs.forEach((l,s)=>r.node(l).order=s),PP(r,o,a.vs)})}function Of(e,t){Object.values(t).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let BP=ht.Graph,Ft=Re;var DP={positionX:zP};function VP(e,t){let o={};function r(i,a){let l=0,s=0,c=i.length,d=a[a.length-1];return a.forEach((f,u)=>{let p=MP(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(w=>{let g=e.node(w),_=g.order;(_<l||m<_)&&!(g.dummy&&e.node(h).dummy)&&$f(o,w,h)})}),s=u+1,l=m)}),a}return t.length&&t.reduce(r),o}function RP(e,t){let o={};function r(a,l,s,c,d){let f;Ft.range(l,s).forEach(u=>{f=a[u],e.node(f).dummy&&e.predecessors(f).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>d)&&$f(o,p,f)})})}function i(a,l){let s=-1,c,d=0;return l.forEach((f,u)=>{if(e.node(f).dummy==="border"){let p=e.predecessors(f);p.length&&(c=e.node(p[0]).order,r(l,d,u,s,c),d=u,s=c)}r(l,d,l.length,c,a.length)}),l}return t.length&&t.reduce(i),o}function MP(e,t){if(e.node(t).dummy)return e.predecessors(t).find(o=>e.node(o).dummy)}function $f(e,t,o){if(t>o){let i=t;t=o,o=i}let r=e[t];r||(e[t]=r={}),r[o]=!0}function FP(e,t,o){if(t>o){let r=t;t=o,o=r}return!!e[t]&&Object.hasOwn(e[t],o)}function LP(e,t,o,r){let i={},a={},l={};return t.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),t.forEach(s=>{let c=-1;s.forEach(d=>{let f=r(d);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let u=(f.length-1)/2;for(let p=Math.floor(u),m=Math.ceil(u);p<=m;++p){let h=f[p];a[d]===d&&c<l[h]&&!FP(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function UP(e,t,o,r,i){let a={},l=KP(e,t,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),w={};for(;h;)w[h]?u(h):(w[h]=!0,m.push(h),m=m.concat(p(h))),h=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((h,w)=>Math.min(h,a[w.w]-l.edge(w)),Number.POSITIVE_INFINITY),m=e.node(u);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[u]=Math.max(a[u],p))}return c(d,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(u=>a[u]=a[o[u]]),a}function KP(e,t,o,r){let i=new BP,a=e.graph(),l=HP(a.nodesep,a.edgesep,r);return t.forEach(s=>{let c;s.forEach(d=>{let f=o[d];if(i.setNode(f),c){var u=o[c],p=i.edge(u,f);i.setEdge(u,f,Math.max(l(e,d,c),p||0))}c=d})}),i}function qP(e,t){return Object.values(t).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=YP(e,s)/2;i=Math.max(c+d,i),a=Math.min(c-d,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function GP(e,t){let o=Object.values(t),r=Ft.applyWithChunking(Math.min,o),i=Ft.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===t)return;let d=Object.values(c),f=r-Ft.applyWithChunking(Math.min,d);l!=="l"&&(f=i-Ft.applyWithChunking(Math.max,d)),f&&(e[s]=Ft.mapValues(c,u=>u+f))})})}function jP(e,t){return Ft.mapValues(e.ul,(o,r)=>{if(t)return e[t.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function zP(e){let t=Ft.buildLayerMatrix(e),o=Object.assign(VP(e,t),RP(e,t)),r={},i;["u","d"].forEach(l=>{i=l==="u"?t:Object.values(t).reverse(),["l","r"].forEach(s=>{s==="r"&&(i=i.map(u=>Object.values(u).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),d=LP(e,i,o,c),f=UP(e,i,d.root,d.align,s==="r");s==="r"&&(f=Ft.mapValues(f,u=>-u)),r[l+s]=f})});let a=qP(e,r);return GP(r,a),jP(r,e.graph().align)}function HP(e,t,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,d;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":d=-l.width/2;break;case"r":d=l.width/2;break}if(d&&(c+=o?d:-d),d=0,c+=(l.dummy?t:e)/2,c+=(s.dummy?t:e)/2,c+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":d=s.width/2;break;case"r":d=-s.width/2;break}return d&&(c+=o?d:-d),d=0,c}}function YP(e,t){return e.node(t).width}let Bf=Re,WP=DP.positionX;var ZP=XP;function XP(e){e=Bf.asNonCompoundGraph(e),JP(e),Object.entries(WP(e)).forEach(([t,o])=>e.node(t).x=o)}function JP(e){let t=Bf.buildLayerMatrix(e),o=e.graph().ranksep,r=0;t.forEach(i=>{const a=i.reduce((l,s)=>{const c=e.node(s).height;return l>c?l:c},0);i.forEach(l=>e.node(l).y=r+a/2),r+=a+o})}let Df=eT,Vf=iT,QP=TT,eI=Re.normalizeRanks,tI=$T,nI=Re.removeEmptyRanks,Rf=RT,oI=qT,Mf=jT,rI=OP,iI=ZP,st=Re,aI=ht.Graph;var lI=sI;function sI(e,t){let o=t&&t.debugTiming?st.time:st.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>_I(e));o(" runLayout",()=>cI(r,o,t)),o(" updateInputGraph",()=>dI(e,r))})}function cI(e,t,o){t(" makeSpaceForEdgeLabels",()=>bI(e)),t(" removeSelfEdges",()=>AI(e)),t(" acyclic",()=>Df.run(e)),t(" nestingGraph.run",()=>Rf.run(e)),t(" rank",()=>QP(st.asNonCompoundGraph(e))),t(" injectEdgeLabelProxies",()=>wI(e)),t(" removeEmptyRanks",()=>nI(e)),t(" nestingGraph.cleanup",()=>Rf.cleanup(e)),t(" normalizeRanks",()=>eI(e)),t(" assignRankMinMax",()=>EI(e)),t(" removeEdgeLabelProxies",()=>kI(e)),t(" normalize.run",()=>Vf.run(e)),t(" parentDummyChains",()=>tI(e)),t(" addBorderSegments",()=>oI(e)),t(" order",()=>rI(e,o)),t(" insertSelfEdges",()=>TI(e)),t(" adjustCoordinateSystem",()=>Mf.adjust(e)),t(" position",()=>iI(e)),t(" positionSelfEdges",()=>PI(e)),t(" removeBorderNodes",()=>xI(e)),t(" normalize.undo",()=>Vf.undo(e)),t(" fixupEdgeLabelCoords",()=>NI(e)),t(" undoCoordinateSystem",()=>Mf.undo(e)),t(" translateGraph",()=>CI(e)),t(" assignNodeIntersects",()=>vI(e)),t(" reversePoints",()=>SI(e)),t(" acyclic.undo",()=>Df.undo(e))}function dI(e,t){e.nodes().forEach(o=>{let r=e.node(o),i=t.node(o);r&&(r.x=i.x,r.y=i.y,r.rank=i.rank,t.children(o).length&&(r.width=i.width,r.height=i.height))}),e.edges().forEach(o=>{let r=e.edge(o),i=t.edge(o);r.points=i.points,Object.hasOwn(i,"x")&&(r.x=i.x,r.y=i.y)}),e.graph().width=t.graph().width,e.graph().height=t.graph().height}let uI=["nodesep","edgesep","ranksep","marginx","marginy"],fI={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},pI=["acyclicer","ranker","rankdir","align"],mI=["width","height","rank"],Ff={width:0,height:0},gI=["minlen","weight","width","height","labeloffset"],hI={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},yI=["labelpos"];function _I(e){let t=new aI({multigraph:!0,compound:!0}),o=fl(e.graph());return t.setGraph(Object.assign({},fI,ul(o,uI),st.pick(o,pI))),e.nodes().forEach(r=>{let i=fl(e.node(r));const a=ul(i,mI);Object.keys(Ff).forEach(l=>{a[l]===void 0&&(a[l]=Ff[l])}),t.setNode(r,a),t.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=fl(e.edge(r));t.setEdge(r,Object.assign({},hI,ul(i,gI),st.pick(i,yI)))}),t}function bI(e){let t=e.graph();t.ranksep/=2,e.edges().forEach(o=>{let r=e.edge(o);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(t.rankdir==="TB"||t.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function wI(e){e.edges().forEach(t=>{let o=e.edge(t);if(o.width&&o.height){let r=e.node(t.v),a={rank:(e.node(t.w).rank-r.rank)/2+r.rank,e:t};st.addDummyNode(e,"edge-proxy",a,"_ep")}})}function EI(e){let t=0;e.nodes().forEach(o=>{let r=e.node(o);r.borderTop&&(r.minRank=e.node(r.borderTop).rank,r.maxRank=e.node(r.borderBottom).rank,t=Math.max(t,r.maxRank))}),e.graph().maxRank=t}function kI(e){e.nodes().forEach(t=>{let o=e.node(t);o.dummy==="edge-proxy"&&(e.edge(o.e).labelRank=o.rank,e.removeNode(t))})}function CI(e){let t=Number.POSITIVE_INFINITY,o=0,r=Number.POSITIVE_INFINITY,i=0,a=e.graph(),l=a.marginx||0,s=a.marginy||0;function c(d){let f=d.x,u=d.y,p=d.width,m=d.height;t=Math.min(t,f-p/2),o=Math.max(o,f+p/2),r=Math.min(r,u-m/2),i=Math.max(i,u+m/2)}e.nodes().forEach(d=>c(e.node(d))),e.edges().forEach(d=>{let f=e.edge(d);Object.hasOwn(f,"x")&&c(f)}),t-=l,r-=s,e.nodes().forEach(d=>{let f=e.node(d);f.x-=t,f.y-=r}),e.edges().forEach(d=>{let f=e.edge(d);f.points.forEach(u=>{u.x-=t,u.y-=r}),Object.hasOwn(f,"x")&&(f.x-=t),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-t+l,a.height=i-r+s}function vI(e){e.edges().forEach(t=>{let o=e.edge(t),r=e.node(t.v),i=e.node(t.w),a,l;o.points?(a=o.points[0],l=o.points[o.points.length-1]):(o.points=[],a=i,l=r),o.points.unshift(st.intersectRect(r,a)),o.points.push(st.intersectRect(i,l))})}function NI(e){e.edges().forEach(t=>{let o=e.edge(t);if(Object.hasOwn(o,"x"))switch((o.labelpos==="l"||o.labelpos==="r")&&(o.width-=o.labeloffset),o.labelpos){case"l":o.x-=o.width/2+o.labeloffset;break;case"r":o.x+=o.width/2+o.labeloffset;break}})}function SI(e){e.edges().forEach(t=>{let o=e.edge(t);o.reversed&&o.points.reverse()})}function xI(e){e.nodes().forEach(t=>{if(e.children(t).length){let o=e.node(t),r=e.node(o.borderTop),i=e.node(o.borderBottom),a=e.node(o.borderLeft[o.borderLeft.length-1]),l=e.node(o.borderRight[o.borderRight.length-1]);o.width=Math.abs(l.x-a.x),o.height=Math.abs(i.y-r.y),o.x=a.x+o.width/2,o.y=r.y+o.height/2}}),e.nodes().forEach(t=>{e.node(t).dummy==="border"&&e.removeNode(t)})}function AI(e){e.edges().forEach(t=>{if(t.v===t.w){var o=e.node(t.v);o.selfEdges||(o.selfEdges=[]),o.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}})}function TI(e){var t=st.buildLayerMatrix(e);t.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{st.addDummyNode(e,"selfedge",{width:s.label.width,height:s.label.height,rank:l.rank,order:a+ ++r,e:s.e,label:s.label},"_se")}),delete l.selfEdges})})}function PI(e){e.nodes().forEach(t=>{var o=e.node(t);if(o.dummy==="selfedge"){var r=e.node(o.e.v),i=r.x+r.width/2,a=r.y,l=o.x-i,s=r.height/2;e.setEdge(o.e,o.label),e.removeNode(t),o.label.points=[{x:i+2*l/3,y:a-s},{x:i+5*l/6,y:a-s},{x:i+l,y:a},{x:i+5*l/6,y:a+s},{x:i+2*l/3,y:a+s}],o.label.x=o.x,o.label.y=o.y}})}function ul(e,t){return st.mapValues(st.pick(e,t),Number)}function fl(e){var t={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),t[o]=r}),t}let II=Re,OI=ht.Graph;var $I={debugOrdering:BI};function BI(e){let t=II.buildLayerMatrix(e),o=new OI({compound:!0,multigraph:!0}).setGraph({});return e.nodes().forEach(r=>{o.setNode(r,{label:r}),o.setParent(r,"layer"+e.node(r).rank)}),e.edges().forEach(r=>o.setEdge(r.v,r.w,{},r.name)),t.forEach((r,i)=>{let a="layer"+i;o.setNode(a,{rank:"same"}),r.reduce((l,s)=>(o.setEdge(l,s,{style:"invis"}),s))}),o}var DI="1.1.5",VI={graphlib:ht,layout:lI,debug:$I,util:{time:Re.time,notime:Re.notime},version:DI};const Lf=Bx(VI),si={padding:80,nodeGap:40,edgeGap:80,rankGap:80},Uf=e=>{const t=e.match(/^(input|output)s@(.*)$/);if(t)return{io:t[1],field:t[2]}};function RI(e,t){const o=xe(t),r=Et(),{findNode:i,fitView:a,onNodeClick:l,onNodeDragStop:s,onEdgeClick:c,onConnect:d,onNodesChange:f,onEdgesChange:u}=o,{state:p,commit:m,moveNode:h,removeNode:w,getNodeById:g,connectEdge:_,disconnectEdge:b}=r;function y(P,I){const B=g(P.source),W=g(P.target);return!!(B&&W&&B.phase===I&&W.phase===I)}const C=n.computed(()=>p.value.nodes.filter(P=>P.phase===e).map(P=>({id:P.id,type:"flow",position:P.position,data:P}))),x=n.computed(()=>p.value.edges.filter(P=>y(P,e)).map(P=>{const I=g(P.source),B=g(P.target);if(I){if(!B)throw new Error(`Missing target node "${P.target}" for edge "${P.id}" in phase "${e}"`)}else throw new Error(`Missing source node "${P.source}" for edge "${P.id}" in phase "${e}"`);return{id:P.id,source:P.source,target:P.target,sourceHandle:P.sourceField?`outputs@${P.sourceField}`:"output",targetHandle:P.targetField?`inputs@${P.targetField}`:"input",markerEnd:Ur.ArrowClosed,data:P}}));l(({node:P})=>{console.debug("[useFlow] onNodeClick",n.toRaw(P))}),c(({edge:P})=>{console.debug("[useFlow] onEdgeClick",n.toRaw(P))}),d(({source:P,sourceHandle:I,target:B,targetHandle:W})=>{if(console.debug("[useFlow] onConnect",{source:P,sourceHandle:I,target:B,targetHandle:W}),!I||!W)return;const M=Uf(I),v=Uf(W);(M==null?void 0:M.io)==="input"||(v==null?void 0:v.io)==="output"||_({source:P,sourceField:M==null?void 0:M.field,target:B,targetField:v==null?void 0:v.field})}),f(P=>{for(const I of P)switch(I.type){case"remove":w(I.id,!0);break}}),s(({node:P})=>{P&&h(P.id,P.position)}),u(P=>{for(const I of P)switch(I.type){case"remove":b(I.id,!0);break}});function k(P){const{boundingRect:I,padding:B=si.padding,nodeGap:W=si.nodeGap,edgeGap:M=si.edgeGap,rankGap:v=si.rankGap}=P;let N,E;const R=[],O=V=>{switch(V.data.name){case"request":{if(e!=="request")throw new Error(`Unexpected request node in ${e} phase`);if(N)throw new Error("Duplicated request node in request phase");return N=V,!0}case"service_request":{if(e!=="request")throw new Error(`Unexpected service_request node in ${e} phase`);if(E)throw new Error("Duplicated service_request node in request phase");return E=V,!0}case"service_response":{if(e!=="response")throw new Error(`Unexpected service_response node in ${e} phase`);if(E)throw new Error("Duplicated service_response node in response phase");return E=V,!0}case"response":{if(e!=="response")throw new Error(`Unexpected response node in ${e} phase`);if(N)throw new Error("Duplicated response node in response phase");return N=V,!0}default:return R.push(V),!1}},j=new Lf.graphlib.Graph({multigraph:!0});j.setGraph({rankdir:e==="request"?"LR":"RL",nodesep:W,edgesep:M,ranksep:v});for(const V of C.value){if(O(V))continue;const U=i(V.id);if(!U)throw new Error(`Node ${V.id} is missing from the graph in ${e} phase`);j.setNode(V.id,{width:U.dimensions.width,height:U.dimensions.height})}if(!N||!E)throw new Error(`One or more implicit nodes are missing from ${e} phase`);const G=i(N.id),F=i(E.id);if(!G||!F)throw new Error(`One or more implicit nodes are missing from the graph in ${e} phase`);if(R.length===0){const V=I.height/2;h(N.data.id,{x:B,y:V-G.dimensions.height/2},!1),h(E.data.id,{x:I.width-B-F.dimensions.width,y:V-F.dimensions.height/2},!1)}else{const V=new Set([N.id,E.id]);for(const $ of x.value)!V.has($.source)&&!V.has($.target)&&j.setEdge($.source,$.target,{points:[]});Lf.layout(j);const U={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY},re=$=>{U.x1=Math.min(U.x1,$.x),U.y1=Math.min(U.y1,$.y),U.x2=Math.max(U.x2,$.x+$.width),U.y2=Math.max(U.y2,$.y+$.height)},de=$=>({x:$.x-$.width/2,y:$.y-$.height/2,width:$.width,height:$.height});for(const $ of R){const z=j.node($.id),Z=de(z);re(Z),h($.data.id,{x:Z.x,y:Z.y},!1)}const ee=i(N.id),oe=i(E.id);if(!ee||!oe)throw new Error(`One or more implicit nodes are missing from the graph in ${e} phase`);const Y=U.y1+(U.y2-U.y1)/2;h(N.data.id,{x:U.x1-(ee.dimensions.width+W),y:Y-ee.dimensions.height/2},!1),h(E.data.id,{x:U.x2+W,y:Y-oe.dimensions.height/2},!1)}m(),n.nextTick(()=>{a()})}return{vueFlowStore:o,editorStore:r,nodes:C,edges:x,autoLayout:k}}const ci=_e(n.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ge.Left},size:{default:()=>Number.parseFloat(Bw)},type:{}},setup(e){n.useCssVars(o=>({"753622c4":o.color}));const t=n.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["handle-twig",[o.type,o.position===n.unref(ge).Left?"left":"right"]]),style:n.normalizeStyle(t.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Kn="{key}",_n={"kong.client.consumer":{dataType:"object",writable:!1,readable:!0},"kong.client.consumer_groups":{dataType:"array",writable:!1,readable:!0},"kong.client.credential":{dataType:"object",writable:!1,readable:!0},"kong.client.get_identity_realm_source":{dataType:"object",writable:!1,readable:!0},"kong.client.forwarded_ip":{dataType:"string",writable:!1,readable:!0},"kong.client.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.client.ip":{dataType:"string",writable:!1,readable:!0},"kong.client.port":{dataType:"number",writable:!1,readable:!0},"kong.client.protocol":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_host":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.request.forwarded_scheme":{dataType:"string",writable:!1,readable:!0},"kong.request.port":{dataType:"number",writable:!1,readable:!0},"kong.response.source":{dataType:"string",writable:!1,readable:!0},"kong.router.route":{dataType:"object",writable:!1,readable:!0},"kong.route_id":{dataType:"string",writable:!1,readable:!0},"kong.route_name":{dataType:"string",writable:!1,readable:!0},"kong.router.service":{dataType:"object",writable:!1,readable:!0},"kong.service_name":{dataType:"string",writable:!1,readable:!0},"kong.service_id":{dataType:"string",writable:!1,readable:!0},"kong.service.response.status":{dataType:"number",writable:!1,readable:!0},"kong.version":{dataType:"string",writable:!1,readable:!0},"kong.node.id":{dataType:"string",writable:!1,readable:!0},"kong.configuration.{key}":{dataType:"any",writable:!1,readable:!0},"kong.service.target":{dataType:"string ({host}:{port})",writable:!0,readable:!1},"kong.service.request_scheme":{dataType:"string ({scheme})",writable:!0,readable:!1},"kong.ctx.plugin.{key}":{dataType:"any",writable:!0,readable:!0},"kong.ctx.shared.{key}":{dataType:"any",writable:!0,readable:!0}},di=Object.keys(_n).filter(e=>e.includes(Kn)).map(e=>e.replace(Kn,""));function Kf(e){if(!e||!ui(e))return;const t=di.find(o=>e.startsWith(o));if(t)return e.slice(t.length).replace(Kn,"")}function $o(e){if(!e)return null;const t=di.find(o=>e.startsWith(o));return t||e}function ui(e){return e?di.some(t=>e.startsWith(t)):!1}function qf(e){return e?ui(e)?$o(e)+Kn:e:null}function pl(e){var o;if(!e)return!1;const t=qf(e);return t?((o=_n[t])==null?void 0:o.readable)??!1:!1}function ml(e){var o;if(!e)return!1;const t=qf(e);return t?((o=_n[t])==null?void 0:o.writable)??!1:!1}const Gf=n.defineComponent({__name:"NodeBadge",props:{type:{},condensed:{type:Boolean}},setup(e){const t=n.computed(()=>{var i;if(!In(e.type))return((i=ur[e.type])==null?void 0:i.icon)??void 0}),o=n.computed(()=>eE(e.type)),r=n.computed(()=>{switch(e.type){case"call":return"warning";case"jq":return"decorative";case"exit":return"danger";case"property":return"success";case"static":return"info";default:return"neutral"}});return(i,a)=>{const l=n.resolveComponent("KBadge");return n.openBlock(),n.createBlock(l,{appearance:r.value,size:"small"},{icon:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(t.value)))]),default:n.withCtx(()=>[n.createTextVNode(" "+n.toDisplayString(o.value),1)]),_:1},8,["appearance"])}}}),MI={class:"body"},FI={class:"info-line"},LI={class:"name"},UI={class:"input-handles"},KI={class:"handle"},qI={class:"handle-label-wrapper"},GI={class:"handle-label-wrapper"},jI={class:"handle-label text"},zI={class:"output-handles"},HI={class:"handle"},YI={class:"handle-label-wrapper"},WI={class:"handle-label-wrapper"},ZI={class:"handle-label"},jf=_e(n.defineComponent({__name:"FlowNode",props:{data:{}},setup(e){const{t}=Ue.createI18n("en-us",Ge),{getInEdgesByNodeId:o,getOutEdgesByNodeId:r,toggleExpanded:i}=Et(),a=n.computed(()=>da(e.data.type)),l=n.computed(()=>o(e.data.id).every(y=>y.targetField===void 0)),s=n.computed(()=>r(e.data.id).every(y=>y.sourceField===void 0)),c=n.computed(()=>e.data.expanded.input??!1),d=n.computed(()=>e.data.expanded.output??!1),f=n.computed(()=>{var y,C;if(e.data.type==="property"){const x=(y=e.data.config)==null?void 0:y.property;return ml(x)}return(C=a.value.io)==null?void 0:C.input}),u=n.computed(()=>{var y,C;if(e.data.type==="property"){const x=(y=e.data.config)==null?void 0:y.property;return pl(x)}return(C=a.value.io)==null?void 0:C.output}),p=n.computed(()=>tE(e.data)),m=n.computed(()=>e.data.phase==="response"),h=n.computed(()=>e.data.phase==="request"?ge.Left:ge.Right),w=n.computed(()=>e.data.phase==="request"?ge.Right:ge.Left),g=n.computed(()=>p.value?t(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),_=n.computed(()=>p.value?Tw:Pw);function b(y){i(e.data.id,y)}return n.watch(l,y=>{y||i(e.data.id,"input",!0)},{immediate:!0}),n.watch(s,y=>{y||i(e.data.id,"output",!0)},{immediate:!0}),(y,C)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["flow-node",{reversed:m.value,implicit:p.value}])},[n.createElementVNode("div",MI,[n.createElementVNode("div",FI,[n.createElementVNode("div",LI,n.toDisplayString(g.value),1),p.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(Gf,{key:0,condensed:"",type:y.data.type},null,8,["type"]))]),n.renderSlot(y.$slots,"default",{},void 0,!0)]),n.createElementVNode("div",{class:n.normalizeClass(["handles",{reversed:m.value}])},[n.createElementVNode("div",UI,[f.value?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.createElementVNode("div",KI,[n.createVNode(n.unref(zt),{id:"input",position:h.value,type:"target"},null,8,["position"]),n.createElementVNode("div",qI,[n.createElementVNode("div",{class:n.normalizeClass(["handle-label",{"has-fields":y.data.fields.input.length>0,collapsible:l.value}])},[C[2]||(C[2]=n.createElementVNode("div",{class:"text"}," inputs ",-1)),y.data.fields.input.length>0?(n.openBlock(),n.createElementBlock("div",{key:0,class:"icon",onClick:C[0]||(C[0]=n.withModifiers(x=>!l.value||b("input"),["stop"]))},[c.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldMoreIcon),{key:0,size:n.unref(co)},null,8,["size"])),c.value?(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldLessIcon),{key:1,color:l.value?void 0:n.unref(xc),size:n.unref(co)},null,8,["color","size"])):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],2),c.value?(n.openBlock(),n.createBlock(ci,{key:0,color:_.value,position:h.value,type:"bar"},null,8,["color","position"])):n.createCommentVNode("",!0)])]),c.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(y.data.fields.input,(x,k)=>(n.openBlock(),n.createElementBlock("div",{key:`inputs-${x.id}`,class:"handle indented"},[n.createVNode(n.unref(zt),{id:`inputs@${x.id}`,position:h.value,type:"target"},null,8,["id","position"]),n.createElementVNode("div",GI,[n.createElementVNode("div",jI,n.toDisplayString(x.name),1),n.createVNode(ci,{color:_.value,position:h.value,type:k<y.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):n.createCommentVNode("",!0)],64)):n.createCommentVNode("",!0)]),n.createElementVNode("div",zI,[u.value?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.createElementVNode("div",HI,[n.createElementVNode("div",YI,[n.createElementVNode("div",{class:n.normalizeClass(["handle-label text",{"has-fields":y.data.fields.output.length>0,collapsible:s.value}])},[C[3]||(C[3]=n.createElementVNode("div",{class:"text"}," outputs ",-1)),y.data.fields.output.length>0?(n.openBlock(),n.createElementBlock("div",{key:0,class:"icon",onClick:C[1]||(C[1]=n.withModifiers(x=>!s.value||b("output"),["stop"]))},[d.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldMoreIcon),{key:0,size:n.unref(co)},null,8,["size"])),d.value?(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldLessIcon),{key:1,color:s.value?void 0:n.unref(xc),size:n.unref(co)},null,8,["color","size"])):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],2),d.value?(n.openBlock(),n.createBlock(ci,{key:0,color:_.value,position:w.value,type:"bar"},null,8,["color","position"])):n.createCommentVNode("",!0)]),n.createVNode(n.unref(zt),{id:"output",position:w.value,type:"source"},null,8,["position"])]),d.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(y.data.fields.output,(x,k)=>(n.openBlock(),n.createElementBlock("div",{key:`outputs-${x.id}`,class:"handle indented"},[n.createElementVNode("div",WI,[n.createElementVNode("div",ZI,n.toDisplayString(x.name),1),n.createVNode(ci,{color:_.value,position:w.value,type:k<y.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),n.createVNode(n.unref(zt),{id:`outputs@${x.id}`,position:w.value,type:"source"},null,8,["id","position"])]))),128)):n.createCommentVNode("",!0)],64)):n.createCommentVNode("",!0)])],2)],2))}}),[["__scopeId","data-v-31e95f55"]]),XI={ref:"flow-wrapper",class:"flow-wrapper"},zf=_e(n.defineComponent({__name:"EditorCanvasFlow",props:{phase:{}},emits:["click:node","click:backdrop"],setup(e,{emit:t}){const o=e,r=n.useTemplateRef("flow-wrapper"),i=n.ref(!1),l=`${n.useId()}-${o.phase}`,{vueFlowStore:s,editorStore:c,nodes:d,edges:f,autoLayout:u}=RI(o.phase,l),{addNode:p,clear:m}=c,{project:h,vueFlowRef:w}=s,g=t,_=k=>{var R,O;const P=(R=k.dataTransfer)==null?void 0:R.getData(Xc);if(!P)return;k.preventDefault();const I=JSON.parse(P);if(I.action!=="create-node")return;const{top:B=0,left:W=0}=((O=w.value)==null?void 0:O.getBoundingClientRect())||{},M=h({x:k.clientX-W,y:k.clientY-B}),{type:v,anchor:N}=I.data,E={type:v,phase:o.phase,position:{x:M.x-N.offsetX,y:M.y-N.offsetY}};p(E)};function b({event:k,node:P}){k.stopPropagation(),g("click:node",P.data)}function y(k){k.target instanceof Element&&k.target.closest(".vue-flow__controls")||g("click:backdrop")}function C(){i.value||(i.value=!0,x(),m())}function x(){u({boundingRect:r.value.getBoundingClientRect()})}return(k,P)=>(n.openBlock(),n.createElementBlock("div",XI,[n.createVNode(n.unref(Gu),{id:l,class:"flow",edges:n.unref(f),"fit-view-on-init":"",nodes:n.unref(d),onClickCapture:y,onDragover:P[0]||(P[0]=n.withModifiers(()=>{},["prevent"])),onDrop:P[1]||(P[1]=I=>_(I)),onNodeClick:b,onNodesInitialized:C},{"node-flow":n.withCtx(I=>[n.createVNode(jf,{data:I.data},null,8,["data"])]),default:n.withCtx(()=>[n.createVNode(n.unref(lx)),n.createVNode(n.unref($x),{position:"bottom-left"},{default:n.withCtx(()=>[n.createElementVNode("button",{class:"vue-flow__controls-button vue-flow__controls-interactive custom",onClick:x},[n.createVNode(n.unref(Ee.SparklesIcon),{size:18})])]),_:1})]),_:1},8,["edges","nodes"])],512))}}),[["__scopeId","data-v-a848e5c8"]]),JI={class:"dk-editor-main"},QI={class:"header"},eO={class:"actions"},tO={ref:"canvasContainer",class:"body"},nO=_e(n.defineComponent({__name:"EditorMain",emits:["click:node","click:backdrop"],setup(e,{emit:t}){const{t:o}=Ue.createI18n("en-us",Ge),r=t;return(i,a)=>(n.openBlock(),n.createElementBlock("div",JI,[n.createElementVNode("header",QI,[n.createElementVNode("div",eO,[n.createVNode(n.unref(Pe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.view_docs"))+" ",1),n.createVNode(n.unref(Ee.ExternalLinkIcon))]),_:1}),n.createVNode(n.unref(Pe.KButton),null,{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.save")),1)]),_:1})])]),n.createElementVNode("div",tO,[n.createVNode(nk,null,{request:n.withCtx(()=>[n.createVNode(zf,{phase:"request","onClick:backdrop":a[0]||(a[0]=l=>r("click:backdrop")),"onClick:node":a[1]||(a[1]=l=>r("click:node",l))})]),response:n.withCtx(()=>[n.createVNode(zf,{phase:"response","onClick:backdrop":a[2]||(a[2]=l=>r("click:backdrop")),"onClick:node":a[3]||(a[3]=l=>r("click:node",l))})]),_:1})],512)]))}}),[["__scopeId","data-v-dd73cf8c"]]),oO={class:"icon"},rO={class:"content"},iO={class:"title"},aO={class:"description"},lO=_e(n.defineComponent({__name:"NodePanelItem",props:{type:{}},setup(e){const{summary:t,icon:o}=ur[e.type];return(r,i)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["dk-node-panel-item",{[`node-type-${r.type}`]:!0}])},[n.createElementVNode("div",oO,[n.createVNode(n.unref(o),{size:16})]),n.createElementVNode("div",rO,[n.createElementVNode("div",iO,n.toDisplayString(r.type),1),n.createElementVNode("div",aO,n.toDisplayString(n.unref(t)),1)])],2))}}),[["__scopeId","data-v-e75cecee"]]),sO={class:"dk-node-panel"},cO={class:"title"},dO={class:"node-list"},uO={"aria-hidden":"true",class:"preview",inert:""},fO=_e(n.defineComponent({__name:"NodePanel",setup(e){const{t}=Ue.createI18n("en-us",Ge),{createNode:o}=Et(),r=`dk-drag-preview-${n.useId()}`,i=n.shallowRef(),a=n.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var I,B;const d=s.currentTarget,{left:f,top:u,width:p,height:m}=d.getBoundingClientRect(),h=s.clientX-f,w=s.clientY-u;i.value=o({type:c}),await n.nextTick();const g=document.querySelector(`#${r}`)||d,_=g.cloneNode(!0),{offsetWidth:b,offsetHeight:y}=g;Object.assign(_.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${b}px`,height:`${y}px`,boxSizing:"border-box"}),document.body.appendChild(_);const C=h/p,x=w/m,k={ratioX:C,ratioY:x,offsetX:b*C,offsetY:y*x},P={action:"create-node",data:{type:c,anchor:k}};(I=s.dataTransfer)==null||I.setData(Xc,JSON.stringify(P)),(B=s.dataTransfer)==null||B.setDragImage(_,k.offsetX,k.offsetY),requestAnimationFrame(()=>{_.remove(),i.value=void 0})};return(s,c)=>{const d=n.resolveComponent("KLabel");return n.openBlock(),n.createElementBlock("div",sO,[n.createElementVNode("h3",cO,[n.createVNode(d,{class:"label",info:n.unref(t)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])]),n.createElementVNode("div",dO,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Object.keys(n.unref(ur)),f=>(n.openBlock(),n.createBlock(lO,{key:f,draggable:"true",type:f,onDragstart:u=>l(u,f)},null,8,["type","onDragstart"]))),128))]),n.createElementVNode("div",uO,[n.createVNode(n.unref(Gu),{nodes:a.value},{"node-flow":n.withCtx(f=>[n.createVNode(jf,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-8e8421d3"]]),pO=n.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(t,o)=>(n.openBlock(),n.createBlock(_t,{items:n.unref(Zi)([...n.unref(XE)]),name:t.name},null,8,["items","name"]))}}),mO=_e(n.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:t}=Be(),{i18n:o}=je(),r=n.computed(()=>{const i=t("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(n.openBlock(),n.createBlock(ft,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:n.withCtx(()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(r.value,l=>(n.openBlock(),n.createBlock(_t,{key:l,class:"dk-inputs-field-indent",clearable:"",items:i.items,name:l,placeholder:n.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},null,8,["items","name","placeholder","onChange"]))),128))]),_:1},8,["name"]))}}),[["__scopeId","data-v-ec584243"]]),gO=["data-testid"],hO={class:"dk-inputs-map-field-entry-body"},yO={class:"dk-inputs-map-field-entry-content"},_O={class:"dk-inputs-map-field-indent"},bO=_e(n.defineComponent({__name:"InputsMapField",props:{items:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(e,{emit:t}){const o=e,r=t,{entries:i,addEntry:a,removeEntry:l,field:s}=ra(o,r),{i18n:c}=je(),d=n.useTemplateRef("root"),f=n.ref(null);let u;async function p(b,y="key"){var C;d.value&&(await n.nextTick(),(C=d.value.querySelector(`[data-${y}-input="${b}"]`))==null||C.focus())}function m(){const{id:b}=a(),y=i.value.findIndex(({key:C})=>!C);p(y===-1?i.value.length-1:y),f.value=b}function h(b){l(b.id),b.id===f.value&&(f.value=null),b.key.trim()!==""&&r("remove:field",b.key)}function w(b){u=b.key}function g(b){if(b.id===f.value){if(b.key.trim()==="")return;r("add:field",b.key,b.value),f.value=null}else r("rename:field",u,b.key)}function _(b,y){b.id!==f.value&&r("change:inputs",b.key,y)}return(b,y)=>{const C=n.resolveComponent("KAlert"),x=n.resolveComponent("KLabel"),k=n.resolveComponent("KInput"),P=n.resolveComponent("KSelect"),I=n.resolveComponent("KButton");return n.unref(s).error?(n.openBlock(),n.createBlock(C,{key:0,appearance:"danger",message:n.unref(s).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(i),(B,W)=>(n.openBlock(),n.createElementBlock("div",{key:B.id,class:"dk-inputs-map-field-entry dk-inputs-map-field-indent","data-testid":`ff-kv-container-${n.unref(s).path.value}.${W}`},[n.createVNode(x,{for:`ff-kv-entry-key-${n.unref(s).path.value}.${W}`},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),n.createElementVNode("div",hO,[n.createElementVNode("div",yO,[n.createVNode(k,{id:`ff-kv-entry-key-${n.unref(s).path.value}.${W}`,modelValue:B.key,"onUpdate:modelValue":M=>B.key=M,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":W,"data-testid":`ff-key-${n.unref(s).path.value}.${W}`,placeholder:n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onChange:M=>g(B),onFocus:M=>w(B)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onChange","onFocus"]),n.createVNode(P,{modelValue:B.value,"onUpdate:modelValue":M=>B.value=M,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${n.unref(s).path.value}.${W}`,items:b.items,placeholder:n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:M=>_(B,(M==null?void 0:M.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","placeholder","onChange"])]),n.createVNode(I,{appearance:"none","data-testid":`ff-kv-remove-btn-${n.unref(s).path.value}.${W}`,icon:"",onClick:M=>h(B)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,gO))),128)),n.createElementVNode("div",_O,[n.createVNode(I,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(s).path.value}`,disabled:!!f.value,onClick:m},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])])],512))}}}),[["__scopeId","data-v-946b99c8"]]),qn=n.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:t}){const o=t,{getSchema:r}=Be(),{i18n:i}=je(),a=n.computed(()=>r("inputs")),l=n.computed(()=>a.value?a.value.type==="record"?mO:bO:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function d(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function u(p,m){o("rename:field",p,m)}return(p,m)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.unref(r)("input")?(n.openBlock(),n.createBlock(_t,{key:0,clearable:"","enable-filtering":"",items:p.items,label:"Inputs",name:"input",placeholder:n.unref(i).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},null,8,["items","placeholder"])):n.createCommentVNode("",!0),l.value?(n.openBlock(),n.createBlock(n.unref(l),{key:1,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},null,8,["items","key-order"])):n.createCommentVNode("",!0)],64))}}),wO={fields:[{name:{type:"string",required:!0}},{method:{default:"GET",description:"A string representing an HTTP method, such as GET, POST, PUT, or DELETE. The string must contain only uppercase letters.",len_max:32,len_min:1,match:"^%u+$",type:"string"}},{ssl_server_name:{description:"A string representing an SNI (server name indication) value for TLS.",type:"string"}},{timeout:{between:[0,2147483646],description:"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.",type:"integer"}},{url:{description:"A string representing a URL, such as https://example.com/path/to/resource?q=search.",required:!0,type:"string"}},{input:{description:"call node input",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{query:{description:"HTTP request query",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}},{output:{description:"call node output",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{outputs:{description:"call node outputs",fields:[{body:{description:"HTTP response body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP response headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{status:{description:"HTTP response status code",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},EO={fields:[{name:{type:"string",required:!0}},{status:{between:[200,599],default:200,description:"HTTP status code",required:!1,type:"integer"}},{warn_headers_sent:{required:!1,type:"boolean"}},{input:{description:"exit node input",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"exit node inputs",fields:[{body:{description:"HTTP response body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP response headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},kO={fields:[{name:{type:"string",required:!0}},{jq:{description:"The jq filter text. Refer to https://jqlang.org/manual/ for full documentation.",len_max:10240,len_min:1,required:!0,type:"string"}},{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"filter input(s)",keys:{len_max:255,len_min:1,type:"string"},required:!1,type:"map",values:{len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},type:"string"}}},{output:{description:"filter output(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],type:"record"},CO={fields:[{name:{type:"string",required:!0}},{content_type:{description:"The expected mime type of the property value. When set to `application/json`, SET operations will JSON-encode input data before writing it, and GET operations will JSON-decode output data after reading it. Otherwise, this setting has no effect.",one_of:["application/json","text/plain","application/octet-stream"],required:!1,type:"string"}},{property:{description:"The property name to get/set",len_max:255,len_min:1,required:!0,type:"string"}},{input:{description:"Property input source. When connected, this node operates in SET mode and writes input data to the property. Otherwise, the node operates in GET mode and reads the property.",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{output:{description:"Property output. This can be connected regardless of whether the node is operating in GET mode or SET mode.",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],type:"record"},vO={fields:[{name:{type:"string",required:!0}},{values:{description:"An object with string keys and freeform values",json_schema:{inline:{type:"object"}},required:!0,type:"json"}},{output:{description:"The entire `.values` map",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{outputs:{description:"Individual items from `.values`, referenced by key",keys:{len_max:255,len_min:1,type:"string"},required:!1,type:"map",values:{len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},type:"string"}}}],type:"record"},NO={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{query:{description:"HTTP request query",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},SO={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"};function Hf(){const{selectedNode:e,state:t}=Et(),{i18n:{t:o}}=je();function r(i){return i?/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?t.value.nodes.some(a=>a.name===i&&a.id!==e.value.id)?o("plugins.free-form.datakit.flow_editor.node_properties.errors.name_duplicate",{name:i}):!0:o("plugins.free-form.datakit.flow_editor.node_properties.errors.name_format"):o("plugins.free-form.datakit.flow_editor.node_properties.errors.name_empty")}return r}function Gn(e){const{selectedNode:t,state:o,renameNode:r,getNodeById:i,addField:a,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:d,connectEdge:f}=Et(),u=n.computed(()=>t.value.id);let p=!1;n.watch(o,async()=>{p=!0,await n.nextTick(),p=!1},{immediate:!0,deep:!0}),console.log("state",o.value),window.store=Et();const m=n.computed(()=>{var N;const v=o.value.edges.filter(E=>E.target===u.value).reduce((E,R)=>{var V,U;const O=i(R.source),j=(V=rn(O,"output",R.sourceField))==null?void 0:V.id,G=(U=rn(t.value,"input",R.targetField))==null?void 0:U.name,F=O.id+(j?`.${j}`:"");return G?E.inputs={...E.inputs,[G]:F}:E.input=F,E},{});return(N=t.value)==null||N.fields.input.forEach(E=>{v.inputs||(v.inputs={}),v.inputs[E.name]||(v.inputs[E.name]=null)}),{...t.value.config,...v,name:t.value.name}}),h=M=>{r(u.value,M??"")},w=(M=!0)=>{if(p)return;const{name:v,input:N,inputs:E,...R}=e();c(u.value,R,M)},g=(M,v)=>{const N=po(t.value,M,v);if(!N)throw new Error(`Field with name "${v}" not found in node "${t.value.name}"`);return N},_=(M,v,N)=>{const E=!!N;a(u.value,M,v,!E),E&&k(v,N)},b=(M,v,N)=>{if(p)return;const E=g(M,v).id;l(u.value,E,N)},y=(M,v)=>{const N=g(M,v).id;s(u.value,N)},C=n.computed(()=>o.value.edges.filter(M=>M.target===u.value&&!M.targetField)[0]),x=n.computed(()=>o.value.edges.filter(M=>M.target===u.value&&M.targetField)),k=(M,v)=>{if(p)return;const N=v==null,E=g("input",M).id;if(N){const F=x.value.find(V=>V.targetField===E);F&&d(F.id,!0);return}C.value&&d(C.value.id,!1);const R=x.value.find(F=>F.targetField===E);R&&d(R.id,!1);const{nodeId:O,fieldId:j}=$c(v),G=g("input",M).id;f({source:O,sourceField:j,target:u.value,targetField:G})},P=(M,v=!0)=>{if(p)return;const N=M==null;for(const O of[...x.value,C.value].filter(Boolean))d(O.id,v&&N);if(N)return;const{nodeId:E,fieldId:R}=$c(M);f({source:E,sourceField:R,target:u.value,targetField:void 0},v)},I=M=>{const v=[...o.value.edges,{source:M,target:u.value}];return fa(pr(v))},B=n.computed(()=>{var v,N;const M=[];for(const E of o.value.nodes)if((v=da(E.type).io)!=null&&v.output&&E.fields.output&&E.id!==u.value&&!(E.type==="property"&&!pl((N=E.config)==null?void 0:N.property))&&!I(E.id)){M.push({value:E.id,label:E.name});for(const O of E.fields.output)M.push({value:`${E.id}.${O.id}`,label:`${E.name}.${O.name}`})}return M}),W=n.computed(()=>{var M;return((M=t.value)==null?void 0:M.fields.input.map(v=>v.name))||[]});return{formData:m,inputOptions:B,inputEdge:C,inputsEdges:x,inputsFieldNames:W,setName:h,setConfig:w,addField:_,renameFieldByName:b,removeFieldByName:y,setInputs:k,setInput:P,nameValidator:Hf()}}const fi=n.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:t}){const o=e,r=t,{i18n:{t:i}}=je(),a=n.ref(o.name),l=n.computed(()=>{const f=o.validate(a.value.trim());return f===!0?"":f});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function d(){s=a.value.trim()}return n.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=n.resolveComponent("KInput");return n.openBlock(),n.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:n.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),xO=n.defineComponent({__name:"NodeFormCall",setup(e){const{i18n:t}=je(),o=n.useTemplateRef("form"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f}=Gn(()=>o.value.getInnerData());return(u,p)=>{const m=n.resolveComponent("KLabel");return n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(r),schema:n.unref(wO)},{default:n.withCtx(()=>[n.createVNode(fi,{name:n.unref(r).name,validate:n.unref(f),onUpdate:n.unref(i)},null,8,["name","validate","onUpdate"]),n.createVNode(m,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t).t("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),n.createVNode(Tn,{name:"url","onUpdate:modelValue":p[0]||(p[0]=h=>n.unref(a)())}),n.createVNode(pO,{name:"method","onUpdate:modelValue":p[1]||(p[1]=h=>n.unref(a)())}),n.createVNode(Pn,{label:n.unref(t).t("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout","onUpdate:modelValue":p[2]||(p[2]=h=>n.unref(a)())},null,8,["label"]),n.createVNode(Tn,{name:"ssl_server_name","onUpdate:modelValue":p[3]||(p[3]=h=>n.unref(a)())}),n.createVNode(qn,{"field-names":n.unref(d),items:n.unref(l),"onChange:input":n.unref(c),"onChange:inputs":n.unref(s)},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),AO=n.defineComponent({__name:"NodeFormServiceRequest",setup(e){const t=n.useTemplateRef("form"),{formData:o,inputOptions:r,setInputs:i,setInput:a,inputsFieldNames:l}=Gn(()=>t.value.getInnerData());return(s,c)=>(n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(o),schema:n.unref(NO)},{default:n.withCtx(()=>[n.createVNode(qn,{"field-names":n.unref(l),items:n.unref(r),"onChange:input":n.unref(a),"onChange:inputs":n.unref(i)},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),TO=n.defineComponent({__name:"NodeFormResponse",setup(e){const t=n.useTemplateRef("form"),{formData:o,inputOptions:r,setInputs:i,setInput:a,inputsFieldNames:l}=Gn(()=>t.value.getInnerData());return(s,c)=>(n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(o),schema:n.unref(SO)},{default:n.withCtx(()=>[n.createVNode(qn,{"field-names":n.unref(l),items:n.unref(r),"onChange:input":n.unref(a),"onChange:inputs":n.unref(i)},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),PO=n.defineComponent({__name:"NodeFormJq",setup(e){const{i18n:t}=je(),o=n.useTemplateRef("form"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,addField:d,removeFieldByName:f,renameFieldByName:u,inputsFieldNames:p,nameValidator:m}=Gn(()=>o.value.getInnerData());function h(_,b){d("input",_,b)}function w(_){f("input",_)}function g(_,b){u("input",_,b)}return(_,b)=>{const y=n.resolveComponent("KLabel");return n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(r),schema:n.unref(kO)},{default:n.withCtx(()=>[n.createVNode(fi,{name:n.unref(r).name,validate:n.unref(m),onUpdate:n.unref(i)},null,8,["name","validate","onUpdate"]),n.createVNode(y,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t).t("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),n.createVNode(Tn,{label:n.unref(t).t("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),multiline:"",name:"jq",resizable:"",rows:"2","onUpdate:modelValue":b[0]||(b[0]=C=>n.unref(a)())},null,8,["label"]),n.createVNode(qn,{"field-names":n.unref(p),items:n.unref(l),"onAdd:field":h,"onChange:input":n.unref(c),"onChange:inputs":n.unref(s),"onRemove:field":w,"onRename:field":g},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),IO=_e(n.defineComponent({__name:"OutputValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(e,{emit:t}){const o=e,r=t,{entries:i,addEntry:a,removeEntry:l,field:s}=ra(o,r,!1),{i18n:c}=je(),d=n.useTemplateRef("root"),f=n.ref(null);let u;async function p(b,y="key"){var C;d.value&&(await n.nextTick(),(C=d.value.querySelector(`[data-${y}-input="${b}"]`))==null||C.focus())}function m(){const{id:b}=a(),y=i.value.findIndex(({key:C})=>!C);p(y===-1?i.value.length-1:y),f.value=b}function h(b){b.id===f.value&&(f.value=null),l(b.id),b.key.trim()!==""&&r("remove:field",b.key)}function w(b){u=b.key}function g(b){if(b.id===f.value){if(b.key.trim()==="")return;f.value=null,r("add:field",b.key,b.value)}else r("rename:field",u,b.key)}function _(b,y){if(y.id===f.value)return;const C=b.target.value.trim();r("change:value",y.key,C)}return(b,y)=>{const C=n.resolveComponent("KAlert"),x=n.resolveComponent("KLabel"),k=n.resolveComponent("KButton"),P=n.resolveComponent("KInput"),I=n.resolveComponent("KCard");return n.unref(s).error?(n.openBlock(),n.createBlock(C,{key:0,appearance:"danger",message:n.unref(s).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-output-value-field"},[n.createVNode(x,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(i),(B,W)=>(n.openBlock(),n.createBlock(I,{key:B.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${n.unref(s).path.value}.${W}`},{actions:n.withCtx(()=>[n.createVNode(k,{appearance:"none","data-testid":`ff-kv-remove-btn-${n.unref(s).path.value}.${W}`,icon:"",onClick:M=>h(B)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:n.withCtx(()=>[n.createVNode(P,{id:`ff-kv-entry-key-${n.unref(s).path.value}.${W}`,modelValue:B.key,"onUpdate:modelValue":M=>B.key=M,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":W,"data-testid":`ff-key-${n.unref(s).path.value}.${W}`,label:n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),onChange:M=>g(B),onFocus:M=>w(B)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","label","onChange","onFocus"]),n.createVNode(P,{modelValue:B.value,"onUpdate:modelValue":M=>B.value=M,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${n.unref(s).path.value}.${W}`,label:n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:M=>_(M,B)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),n.createVNode(k,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(s).path.value}`,disabled:!!f.value,onClick:m},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-993261de"]]);function OO(e){const t={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?t[o]=JSON.stringify(r):t[o]=String(r);return t}function pi(e){const t={};for(const[o,r]of Object.entries(e))if(r!=null){t[o]=r;try{r==="null"?t[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(t[o]=JSON.parse(r))}catch{}}return t}function $O(e,t,o){const r={};for(const i of Object.keys(e))i===t?r[o]=e[t]:r[i]=e[i];return r}const BO=n.defineComponent({__name:"NodeFormStatic",setup(e){const{renameNode:t,selectedNode:o,getOutEdgesByNodeId:r,addField:i,renameField:a,removeField:l,replaceConfig:s}=Et(),c=Hf(),d=n.computed(()=>{var g;return((g=o.value)==null?void 0:g.fields.output.map(_=>_.name))||[]});function f(g){if(!o.value)throw new Error("No selected node");t(o.value.id,g??"")}const u=n.computed(()=>{var x;if(!o.value)return{};const g=((x=o.value.config)==null?void 0:x.values)??{},_={},b=r(o.value.id).map(k=>k.sourceField).filter(Boolean).map(k=>rn(o.value,"output",k)).map(k=>k==null?void 0:k.name).filter(Boolean),y=o.value.fields.output.map(k=>k.name);return new Set([...b,...y]).forEach(k=>{if(k in g){_[k]=g[k];return}_[k]=""}),{name:o.value.name,values:OO(_)}});function p(g,_){if(!o.value)throw new Error("No selected node");if(i(o.value.id,"output",g,!_),_){const b={values:pi({...u.value.values,[g]:_})};s(o.value.id,b)}}function m(g,_){if(!o.value)throw new Error("No selected node");const b=po(o.value,"output",g);if(!b)throw new Error("No field found to rename");const y={values:pi($O(u.value.values??{},g,_))};s(o.value.id,y,!1),a(o.value.id,b.id,_)}function h(g){var y;if(!o.value)throw new Error("No selected node");const _=po(o.value,"output",g);if(!_)throw new Error("No field found to delete");l((y=o.value)==null?void 0:y.id,_.id,!0,!1);const b={values:pi({...u.value.values})};delete b.values[g],s(o.value.id,b)}function w(g,_){if(!o.value)throw new Error("No selected node");const b={...u.value.values};b[g]=_;const y={values:pi(b)};s(o.value.id,y)}return(g,_)=>{const b=n.resolveComponent("NameField");return n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:u.value,schema:n.unref(vO)},{default:n.withCtx(()=>{var y;return[n.createVNode(b,{name:((y=n.unref(o))==null?void 0:y.name)??"",validate:n.unref(c),onUpdate:f},null,8,["name","validate"]),n.createVNode(IO,{"key-order":d.value,name:"values","onAdd:field":p,"onChange:value":w,"onRemove:field":h,"onRename:field":m},null,8,["key-order"])]}),_:1},8,["data","schema"])}}}),DO={class:"dk-kong-property-item"},VO={class:"property-type"},RO={class:"property-badges"},MO=_e(n.defineComponent({__name:"PropertiesField",emits:["update:model-value"],setup(e,{emit:t}){const{i18n:{t:o}}=je(),r=t,{formData:i}=Be(),a=n.ref($o(i.property)),l=n.computed(()=>ui(i.property)),s=n.ref(Kf(i.property)),c=n.computed(()=>Object.entries(_n).map(([u])=>{var h;const p=ui(u)?(h=i.property)==null?void 0:h.startsWith(u.replace(Kn,"")):i.property===u;return{label:p&&s.value?u.replace(Kn,s.value):u,value:u,selected:p}}));function d(u){const p=di.find(h=>{var w;return(w=i.property)==null?void 0:w.startsWith(h)});if(!p)return;const m=u.target.value;i.property=p+m,r("update:model-value",i.property)}function f(u){a.value!==$o(u==null?void 0:u.value)&&(i.property=(u==null?void 0:u.value)||null,a.value=$o(i.property),r("update:model-value",i.property))}return n.watch(()=>i.property,u=>{s.value=Kf(u),a.value=$o(u)}),(u,p)=>{const m=n.resolveComponent("KBadge"),h=n.resolveComponent("KSelect"),w=n.resolveComponent("KInput");return n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(h,{"enable-filtering":"",items:c.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onChange:f},{"item-template":n.withCtx(({item:g})=>[n.createElementVNode("div",DO,[n.createElementVNode("div",null,[n.createElementVNode("div",null,n.toDisplayString(g.label),1),n.createElementVNode("div",VO,n.toDisplayString(n.unref(_n)[g.value].dataType),1)]),n.createElementVNode("div",RO,[n.unref(_n)[g.value].readable?(n.openBlock(),n.createBlock(m,{key:0,appearance:"info"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):n.createCommentVNode("",!0),n.unref(_n)[g.value].writable?(n.openBlock(),n.createBlock(m,{key:1,appearance:"warning"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):n.createCommentVNode("",!0)])])]),_:1},8,["items"]),l.value?(n.openBlock(),n.createBlock(w,{key:0,modelValue:s.value,"onUpdate:modelValue":p[0]||(p[0]=g=>s.value=g),label:"key",required:"",onChange:d},null,8,["modelValue"])):n.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-82875520"]]),FO=n.defineComponent({__name:"NodeFormProperty",setup(e){const t=n.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=Et(),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,inputsFieldNames:u,nameValidator:p}=Gn(()=>t.value.getInnerData()),m=n.computed(()=>ml(a.value.property));function h(w){var _;const g=(_=o.value)==null?void 0:_.id;if(!g)throw new Error("Expected selectedNode to be defined");pl(w)||i(g,!1),ml(w)||r(g,!1),s()}return(w,g)=>(n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(a),schema:n.unref(CO)},{default:n.withCtx(()=>[n.createVNode(fi,{name:n.unref(a).name,validate:n.unref(p),onUpdate:n.unref(l)},null,8,["name","validate","onUpdate"]),n.createVNode(_t,{name:"content_type","onUpdate:modelValue":n.unref(s)},null,8,["onUpdate:modelValue"]),n.createVNode(MO,{"onUpdate:modelValue":h}),m.value?(n.openBlock(),n.createBlock(qn,{key:0,"field-names":n.unref(u),items:n.unref(c),"onChange:input":n.unref(f),"onChange:inputs":n.unref(d)},null,8,["field-names","items","onChange:input","onChange:inputs"])):n.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),LO=n.defineComponent({__name:"NodeFormExit",setup(e){const t=n.useTemplateRef("form"),{formData:o,setName:r,setConfig:i,inputOptions:a,setInputs:l,setInput:s,inputsFieldNames:c,nameValidator:d}=Gn(()=>t.value.getInnerData());return(f,u)=>(n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(o),schema:n.unref(EO)},{default:n.withCtx(()=>[n.createVNode(fi,{name:n.unref(o).name,validate:n.unref(d),onUpdate:n.unref(r)},null,8,["name","validate","onUpdate"]),n.createVNode(Pn,{name:"status","onUpdate:modelValue":u[0]||(u[0]=p=>n.unref(i)())}),n.createVNode(Ec,{name:"warn_headers_sent","onUpdate:modelValue":u[1]||(u[1]=p=>n.unref(i)())}),n.createVNode(qn,{"field-names":n.unref(c),items:n.unref(a),"onChange:input":n.unref(s),"onChange:inputs":n.unref(l)},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),UO=["innerHTML"],KO=_e(n.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:()=>WE},offsetTop:{default:()=>ZE},visible:{type:Boolean}},emits:["close"],setup(e){const{selectedNode:t}=Et(),o=n.computed(()=>{var r;switch((r=t.value)==null?void 0:r.type){case"call":return xO;case"service_request":return AO;case"response":return TO;case"jq":return PO;case"static":return BO;case"property":return FO;case"exit":return LO;default:return null}});return(r,i)=>(n.openBlock(),n.createBlock(n.unref(Pe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":r.maxWidth,"offset-top":r.offsetTop,visible:r.visible,onClose:i[0]||(i[0]=a=>r.$emit("close"))},n.createSlots({default:n.withCtx(()=>{var a;return[n.unref(t)?(n.openBlock(),n.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:n.unref(wt)(n.unref(t).type)},null,8,UO)):n.createCommentVNode("",!0),o.value?(n.openBlock(),n.createBlock(n.unref(o),{key:(a=n.unref(t))==null?void 0:a.id,class:"dk-node-properties-panel-form"})):n.createCommentVNode("",!0)]}),_:2},[n.unref(t)?{name:"title",fn:n.withCtx(()=>[n.createVNode(Gf,{type:n.unref(t).type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible"]))}}),[["__scopeId","data-v-ed3a7db2"]]),qO={class:"dk-editor-content"},GO={class:"header"},jO={class:"title"},zO={class:"body"},HO={class:"node-selection-panel"},YO={class:"main"},WO=_e(n.defineComponent({__name:"EditorContent",setup(e){const{t}=Ue.createI18n("en-us",Ge),{sidePanelExpanded:o}=pa(),{selectNode:r,selectedNode:i}=Et(),a=n.ref(!1);let l=!1;const s=f=>{a.value=f},c=f=>{l=!0,setTimeout(()=>{l=!1},10),r(f.id),s(!0)},d=()=>{setTimeout(()=>{l||s(!1)},0)};return n.watch(i,f=>{f||s(!1)}),(f,u)=>(n.openBlock(),n.createElementBlock("div",qO,[n.createElementVNode("aside",{class:n.normalizeClass(["side-panel",{expanded:n.unref(o)}])},[n.createElementVNode("header",GO,[n.createElementVNode("h2",jO,n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.name")),1)]),n.createElementVNode("div",zO,[n.createElementVNode("div",HO,[n.createVNode(fO)])])],2),n.createElementVNode("div",YO,[n.createVNode(nO,{"onClick:backdrop":d,"onClick:node":c})]),n.createVNode(KO,{visible:a.value,onClose:d},null,8,["visible"])]))}}),[["__scopeId","data-v-05771600"]]),ZO=_e(n.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:n.mergeModels(["close"],["update:open"]),setup(e,{emit:t}){n.useCssVars(f=>({"4da009a8":n.unref(YE),"363e5834":n.unref(HE)}));const o=n.useTemplateRef("modal"),r=n.useModel(e,"open"),i=t,a=n.useTemplateRef("content"),l=Je.useScrollLock(document),{activate:s,deactivate:c}=zE(o,{returnFocusOnDeactivate:!0,initialFocus:()=>{var f;return(f=a.value)==null?void 0:f.$el}});n.watch(r,async f=>{l.value=!!f,await n.nextTick(),f?s():c()},{immediate:!0});function d(){r.value=!1,i("close")}return(f,u)=>r.value?(n.openBlock(),n.createElementBlock("div",{key:0,ref_key:"modal",ref:o,class:"dk-editor-modal"},[n.createVNode(tk,{class:"nav",onBack:d}),n.createVNode(WO,{ref_key:"content",ref:a,class:"content",tabindex:"0"},null,512)],512)):n.createCommentVNode("",!0)}}),[["__scopeId","data-v-a5d8043d"]]),XO={class:"dk-flow-editor"},JO=n.defineComponent({__name:"FlowEditor",props:{editing:{type:Boolean},config:{}},setup(e){const{t}=Ue.createI18n("en-us",Ge),o=n.ref(!1);return fE([{name:"CAT_FACT",type:"call",url:"https://catfact.ninja/fact",input:"request.body"},{name:"DOG_FACT",type:"call",url:"https://dogapi.dog/api/v1/facts"},{name:"JOIN",type:"jq",inputs:{cat:"CAT_FACT.body",dog:"DOG_FACT.body"},jq:`{
|
|
45
|
+
Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will be removed in the next major version. Please use the id parameter instead"};class Ke extends Error{constructor(t,...o){var r;super((r=bu[t])==null?void 0:r.call(bu,...o)),this.name="VueFlowError",this.code=t,this.args=o}}function za(e){return"clientX"in e}function yN(e){return"sourceEvent"in e}function St(e,t){const o=za(e);let r,i;return o?(r=e.clientX,i=e.clientY):"touches"in e&&e.touches.length>0?(r=e.touches[0].clientX,i=e.touches[0].clientY):"changedTouches"in e&&e.changedTouches.length>0?(r=e.changedTouches[0].clientX,i=e.changedTouches[0].clientY):(r=0,i=0),{x:r-((t==null?void 0:t.left)??0),y:i-((t==null?void 0:t.top)??0)}}const Hr=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function _N(e){var t,o;return{width:((t=e.dimensions)==null?void 0:t.width)??e.width??0,height:((o=e.dimensions)==null?void 0:o.height)??e.height??0}}function Yr(e,t=[1,1]){return{x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}}const bN=()=>!0;function Ha(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function wN(e,t,o){const r=[],i={x:e.x-o,y:e.y-o,width:o*2,height:o*2};for(const a of t.values())jr(i,Gr(a))>0&&r.push(a);return r}const EN=250;function kN(e,t,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=wN(e,o,t+EN);for(const d of c){const u=[...((i=d.handleBounds)==null?void 0:i.source)??[],...((a=d.handleBounds)==null?void 0:a.target)??[]];for(const f of u){if(r.nodeId===f.nodeId&&r.type===f.type&&r.id===f.id)continue;const{x:p,y:m}=Kn(d,f,f.position,!0),h=Math.sqrt((p-e.x)**2+(m-e.y)**2);h>t||(h<s?(l=[{...f,x:p,y:m}],s=h):h===s&&l.push({...f,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(u=>u.type===d)??l[0]}return l[0]}function wu(e,{handle:t,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=bN},u,f,p){const m=a==="target",h=t?l.querySelector(`.${s}-flow__handle[data-id="${c}-${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`):null,{x:w,y:g}=St(e),_=l.elementFromPoint(w,g),b=_!=null&&_.classList.contains(`${s}-flow__handle`)?_:h,y={handleDomNode:b,isValid:!1,connection:null,toHandle:null};if(b){const C=Eu(void 0,b),T=b.getAttribute("data-nodeid"),k=b.getAttribute("data-handleid"),S=b.classList.contains("connectable"),I=b.classList.contains("connectableend");if(!T||!C)return y;const B={source:m?T:r,sourceHandle:m?k:i,target:m?r:T,targetHandle:m?i:k};y.connection=B;const M=S&&I&&(o===Ut.Strict?m&&C==="source"||!m&&C==="target":T!==r||k!==i);y.isValid=M&&d(B,{nodes:f,edges:u,sourceNode:p(r),targetNode:p(T)}),y.toHandle=t}return y}function Eu(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function CN(e,t){let o=null;return t?o="valid":e&&!t&&(o="invalid"),o}function vN(e,t){let o=null;return t?o=!0:e&&!t&&(o=!1),o}function NN(e,t,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const u=i===Ut.Strict?(l=d.handleBounds)==null?void 0:l[t]:[...((s=d.handleBounds)==null?void 0:s.source)??[],...((c=d.handleBounds)==null?void 0:c.target)??[]],f=(o?u==null?void 0:u.find(p=>p.id===o):u==null?void 0:u[0])??null;return f&&a?{...f,...Kn(d,f,f.position,!0)}:f}const Ya={[ge.Left]:ge.Right,[ge.Right]:ge.Left,[ge.Top]:ge.Bottom,[ge.Bottom]:ge.Top},SN=["production","prod"];function Wr(e,...t){ku()&&console.warn(`[Vue Flow]: ${e}`,...t)}function ku(){return!SN.includes(process.env.NODE_ENV||"")}function Cu(e,t,o,r,i){const a=t.querySelectorAll(`.vue-flow__handle.${e}`);return a!=null&&a.length?Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-o.left)/r,y:(s.top-o.top)/r,...qr(l)}}):null}function Wa(e,t,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&t)&&(r([e]),n.nextTick(()=>{l.blur()})):o([e])}function Re(e){return typeof n.unref(e)<"u"}function xN(e,t,o,r){if(!e||!e.source||!e.target)return o(new Ke(Ve.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return Kt(e)?i=e:i={...e,id:ou(e)},i=tu(i,void 0,r),lN(i,t)?!1:i}function AN(e,t,o,r,i){if(!t.source||!t.target)return i(new Ke(Ve.EDGE_INVALID,e.id)),!1;if(!o)return i(new Ke(Ve.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?ou(t):a,source:t.source,target:t.target,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle}}function vu(e,t,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!gn(l)){o(new Ke(Ve.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=rN(l,t(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=t(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new Ke(Ve.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function Nu(e,t,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,t)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,t)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,t))}}function Xa(e,t,o){e.clear();for(const r of o){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=r,c={edgeId:r.id,source:i,target:a,sourceHandle:l,targetHandle:s},d=`${i}-${l}--${a}-${s}`,u=`${a}-${s}--${i}-${l}`;Nu("source",c,u,e,i,l),Nu("target",c,d,e,a,s)}}function Su(e,t){if(e.size!==t.size)return!1;for(const o of e)if(!t.has(o))return!1;return!0}function Za(e,t,o,r,i,a,l,s){const c=[];for(const d of e){const u=Kt(d)?d:xN(d,s,i,a);if(!u)continue;const f=o(u.source),p=o(u.target);if(!f||!p){i(new Ke(Ve.EDGE_SOURCE_TARGET_MISSING,u.id,u.source,u.target));continue}if(!f){i(new Ke(Ve.EDGE_SOURCE_MISSING,u.id,u.source));continue}if(!p){i(new Ke(Ve.EDGE_TARGET_MISSING,u.id,u.target));continue}if(t&&!t(u,{edges:s,nodes:l,sourceNode:f,targetNode:p})){i(new Ke(Ve.EDGE_INVALID,u.id));continue}const m=r(u.id);c.push({...tu(u,m,a),sourceNode:f,targetNode:p})}return c}const xu=Symbol("vueFlow"),Au=Symbol("nodeId"),Tu=Symbol("nodeRef"),TN=Symbol("edgeId"),PN=Symbol("edgeRef"),Xr=Symbol("slots");function Pu(e){const{vueFlowRef:t,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:u,nodesDraggable:f,panBy:p,findNode:m,multiSelectionActive:h,nodesSelectionActive:w,selectNodesOnDrag:g,removeSelectedElements:_,addSelectedNodes:b,updateNodePositions:y,emits:C}=xe(),{onStart:T,onDrag:k,onStop:S,onClick:I,el:B,disabled:W,id:M,selectable:v,dragHandle:N}=e,E=n.shallowRef(!1);let D=[],O,q=null,j={x:void 0,y:void 0},F={x:0,y:0},R=null,U=!1,re=0,de=!1;const ee=$N(),oe=({x:ne,y:ue})=>{j={x:ne,y:ue};let me=!1;if(D=D.map(P=>{const x={x:ne-P.distance.x,y:ue-P.distance.y},{computedPosition:A}=qa(P,o.value?Yr(x,r.value):x,C.error,l.value,P.parentNode?m(P.parentNode):void 0);return me=me||P.position.x!==A.x||P.position.y!==A.y,P.position=A,P}),!!me&&(y(D,!0,!0),E.value=!0,R)){const[P,x]=ja({id:M,dragItems:D,findNode:m});k({event:R,node:P,nodes:x})}},Y=()=>{if(!q)return;const[ne,ue]=uu(F,q,u.value);if(ne!==0||ue!==0){const me={x:(j.x??0)-ne/c.value.zoom,y:(j.y??0)-ue/c.value.zoom};p({x:ne,y:ue})&&oe(me)}re=requestAnimationFrame(Y)},$=(ne,ue)=>{U=!0;const me=m(M);!g.value&&!h.value&&me&&(me.selected||_()),me&&n.toValue(v)&&g.value&&Wa(me,h.value,b,_,w,!1,ue);const P=ee(ne.sourceEvent);if(j=P,D=uN(a.value,f.value,P,m,M),D.length){const[x,A]=ja({id:M,dragItems:D,findNode:m});T({event:ne.sourceEvent,node:x,nodes:A})}},z=(ne,ue)=>{var me;ne.sourceEvent.type==="touchmove"&&ne.sourceEvent.touches.length>1||(s.value===0&&$(ne,ue),j=ee(ne.sourceEvent),q=((me=t.value)==null?void 0:me.getBoundingClientRect())||null,F=St(ne.sourceEvent,q))},X=(ne,ue)=>{const me=ee(ne.sourceEvent);if(!de&&U&&d.value&&(de=!0,Y()),!U){const P=me.xSnapped-(j.x??0),x=me.ySnapped-(j.y??0);Math.sqrt(P*P+x*x)>s.value&&$(ne,ue)}(j.x!==me.xSnapped||j.y!==me.ySnapped)&&D.length&&U&&(R=ne.sourceEvent,F=St(ne.sourceEvent,q),oe(me))},Q=ne=>{let ue=!1;if(!U&&!E.value&&!h.value){const me=ne.sourceEvent,P=ee(me),x=P.xSnapped-(j.x??0),A=P.ySnapped-(j.y??0),V=Math.sqrt(x*x+A*A);V!==0&&V<=s.value&&(I==null||I(me),ue=!0)}if(D.length&&!ue){y(D,!1,!1);const[me,P]=ja({id:M,dragItems:D,findNode:m});S({event:ne.sourceEvent,node:me,nodes:P})}D=[],E.value=!1,de=!1,U=!1,j={x:void 0,y:void 0},cancelAnimationFrame(re)};return n.watch([()=>n.toValue(W),B],([ne,ue],me,P)=>{if(ue){const x=pt(ue);ne||(O=ov().on("start",A=>z(A,ue)).on("drag",A=>X(A,ue)).on("end",A=>Q(A)).filter(A=>{const V=A.target,L=n.toValue(N);return!A.button&&(!i.value||!hu(V,`.${i.value}`,ue)&&(!L||hu(V,L,ue)))}),x.call(O)),P(()=>{x.on(".drag",null),O&&(O.on("start",null),O.on("drag",null),O.on("end",null))})}}),E}function IN(){return{doubleClick:pe(),click:pe(),mouseEnter:pe(),mouseMove:pe(),mouseLeave:pe(),contextMenu:pe(),updateStart:pe(),update:pe(),updateEnd:pe()}}function ON(e,t){const o=IN();return o.doubleClick.on(r=>{var i,a;t.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;t.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;t.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;t.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;t.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;t.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;t.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;t.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;t.edgeUpdateEnd(r),(a=(i=e.events)==null?void 0:i.updateEnd)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function $N(){const{viewport:e,snapGrid:t,snapToGrid:o,vueFlowRef:r}=xe();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=yN(i)?i.sourceEvent:i,{x:c,y:d}=St(s,l),u=Io({x:c,y:d},e.value),{x:f,y:p}=o.value?Yr(u,t.value):u;return{xSnapped:f,ySnapped:p,...u}}}function Zr(){return!0}function Iu({handleId:e,nodeId:t,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:u,connectOnClick:f,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:h,autoPanSpeed:w,findNode:g,panBy:_,startConnection:b,updateConnection:y,endConnection:C,emits:T,viewport:k,edges:S,nodes:I,isValidConnection:B,nodeLookup:W}=xe();let M=null,v=!1,N=null;function E(O){var q;const j=n.toValue(o)==="target",F=za(O),R=eu(O.target);if(F&&O.button===0||!F){let U=function(J){P=St(J,ne),oe=kN(Io(P,k.value,!1,[1,1]),u.value,W.value,V),x||(A(),x=!0);const G=wu(J,{handle:oe,connectionMode:d.value,fromNodeId:n.toValue(t),fromHandleId:n.toValue(e),fromType:j?"target":"source",isValidConnection:ee,doc:R,lib:"vue",flowId:s,nodeLookup:W.value},S.value,I.value,g);N=G.handleDomNode,M=G.connection,v=vN(!!oe,G.isValid);const ie={...K,isValid:v,to:G.toHandle&&v?Ka({x:G.toHandle.x,y:G.toHandle.y},k.value):P,toHandle:G.toHandle,toPosition:v&&G.toHandle?G.toHandle.position:Ya[V.position],toNode:G.toHandle?W.value.get(G.toHandle.nodeId):null};if(!(v&&oe&&(K!=null&&K.toHandle)&&ie.toHandle&&K.toHandle.type===ie.toHandle.type&&K.toHandle.nodeId===ie.toHandle.nodeId&&K.toHandle.id===ie.toHandle.id&&K.to.x===ie.to.x&&K.to.y===ie.to.y)){if(y(oe&&v?Ka({x:oe.x,y:oe.y},k.value):P,G.toHandle,CN(!!oe,v)),K=ie,!oe&&!v&&!N)return Ha(me);M&&M.source!==M.target&&N&&(Ha(me),me=N,N.classList.add("connecting","vue-flow__handle-connecting"),N.classList.toggle("valid",!!v),N.classList.toggle("vue-flow__handle-valid",!!v))}},re=function(J){(oe||N)&&M&&v&&(a?a(J,M):T.connect(M)),T.connectEnd(J),i&&(l==null||l(J)),Ha(me),cancelAnimationFrame(Y),C(J),x=!1,v=!1,M=null,N=null,R.removeEventListener("mousemove",U),R.removeEventListener("mouseup",re),R.removeEventListener("touchmove",U),R.removeEventListener("touchend",re)};const de=g(n.toValue(t));let ee=n.toValue(r)||B.value||Zr;!ee&&de&&(ee=(j?de.isValidSourcePos:de.isValidTargetPos)||Zr);let oe,Y=0;const{x:$,y:z}=St(O),X=R==null?void 0:R.elementFromPoint($,z),Q=Eu(n.toValue(i),X),ne=(q=c.value)==null?void 0:q.getBoundingClientRect();if(!ne||!Q)return;const ue=NN(n.toValue(t),Q,n.toValue(e),W.value,d.value);if(!ue)return;let me,P=St(O,ne),x=!1;const A=()=>{if(!h.value)return;const[J,G]=uu(P,ne,w.value);_({x:J,y:G}),Y=requestAnimationFrame(A)},V={...ue,nodeId:n.toValue(t),type:Q,position:ue.position},L=W.value.get(n.toValue(t)),te={inProgress:!0,isValid:null,from:Kn(L,V,ge.Left,!0),fromHandle:V,fromPosition:V.position,fromNode:L,to:P,toHandle:null,toPosition:Ya[V.position],toNode:null};b({nodeId:n.toValue(t),id:n.toValue(e),type:Q,position:(X==null?void 0:X.getAttribute("data-handlepos"))||ge.Top,...P},{x:$-ne.left,y:z-ne.top}),T.connectStart({event:O,nodeId:n.toValue(t),handleId:n.toValue(e),handleType:Q});let K=te;R.addEventListener("mousemove",U),R.addEventListener("mouseup",re),R.addEventListener("touchmove",U),R.addEventListener("touchend",re)}}function D(O){var q,j;if(!f.value)return;const F=n.toValue(o)==="target";if(!p.value){T.clickConnectStart({event:O,nodeId:n.toValue(t),handleId:n.toValue(e)}),b({nodeId:n.toValue(t),type:n.toValue(o),id:n.toValue(e),position:ge.Top,...St(O)},void 0,!0);return}let R=n.toValue(r)||B.value||Zr;const U=g(n.toValue(t));if(!R&&U&&(R=(F?U.isValidSourcePos:U.isValidTargetPos)||Zr),U&&(typeof U.connectable>"u"?m.value:U.connectable)===!1)return;const re=eu(O.target),de=wu(O,{handle:{nodeId:n.toValue(t),id:n.toValue(e),type:n.toValue(o),position:ge.Top,...St(O)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:R,doc:re,lib:"vue",flowId:s,nodeLookup:W.value},S.value,I.value,g),ee=((q=de.connection)==null?void 0:q.source)===((j=de.connection)==null?void 0:j.target);de.isValid&&de.connection&&!ee&&T.connect(de.connection),T.clickConnectEnd(O),C(O,!0)}return{handlePointerDown:E,handleClick:D}}function BN(){return n.inject(Au,"")}function Ou(e){const t=e??BN()??"",o=n.inject(Tu,n.ref(null)),{findNode:r,edges:i,emits:a}=xe(),l=r(t);return l||a.error(new Ke(Ve.NODE_NOT_FOUND,t)),{id:t,nodeEl:o,node:l,parentNode:n.computed(()=>r(l.parentNode)),connectedEdges:n.computed(()=>lu([l],i.value))}}function VN(){return{doubleClick:pe(),click:pe(),mouseEnter:pe(),mouseMove:pe(),mouseLeave:pe(),contextMenu:pe(),dragStart:pe(),drag:pe(),dragStop:pe()}}function RN(e,t){const o=VN();return o.doubleClick.on(r=>{var i,a;t.nodeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;t.nodeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;t.nodeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;t.nodeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;t.nodeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;t.nodeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.dragStart.on(r=>{var i,a;t.nodeDragStart(r),(a=(i=e.events)==null?void 0:i.dragStart)==null||a.call(i,r)}),o.drag.on(r=>{var i,a;t.nodeDrag(r),(a=(i=e.events)==null?void 0:i.drag)==null||a.call(i,r)}),o.dragStop.on(r=>{var i,a;t.nodeDragStop(r),(a=(i=e.events)==null?void 0:i.dragStop)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function $u(){const{getSelectedNodes:e,nodeExtent:t,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=xe();return(c,d=!1)=>{const u=a.value?i.value[0]:5,f=a.value?i.value[1]:5,p=d?4:1,m=c.x*u*p,h=c.y*f*p,w=[];for(const g of e.value)if(g.draggable||l&&typeof g.draggable>"u"){const _={x:g.computedPosition.x+m,y:g.computedPosition.y+h},{computedPosition:b}=qa(g,_,s.error,t.value,g.parentNode?r(g.parentNode):void 0);w.push({id:g.id,position:b,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(w,!0,!1)}}const Ja=.1,DN=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function qt(){return Wr("Viewport not initialized yet."),Promise.resolve(!1)}const MN={zoomIn:qt,zoomOut:qt,zoomTo:qt,fitView:qt,setCenter:qt,fitBounds:qt,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:qt,setTransform:qt,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function FN(e){function t(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?ko:Or).scaleBy(Qa(e.d3Selection,i==null?void 0:i.duration,i==null?void 0:i.ease,()=>{a(!0)}),r):a(!1)})}function o(r,i,a,l){return new Promise(s=>{var c;const{x:d,y:u}=Qd({x:-r,y:-i},e.translateExtent),f=Ln.translate(-d,-u).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?ko:Or).transform(Qa(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),f):s(!1)})}return n.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>t(1.2,i),zoomOut:i=>t(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?ko:Or).scaleTo(Qa(e.d3Selection,a==null?void 0:a.duration,a==null?void 0:a.ease,()=>{l(!0)}),i):l(!1)}),setViewport:(i,a)=>o(i.x,i.y,i.zoom,a),setTransform:(i,a)=>o(i.x,i.y,i.zoom,a),getViewport:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),getTransform:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),fitView:(i={padding:Ja,includeHiddenNodes:!1,duration:0})=>{var a,l;const s=[];for(const p of e.nodes)p.dimensions.width&&p.dimensions.height&&((i==null?void 0:i.includeHiddenNodes)||!p.hidden)&&(!((a=i.nodes)!=null&&a.length)||(l=i.nodes)!=null&&l.length&&i.nodes.includes(p.id))&&s.push(p);if(!s.length)return Promise.resolve(!1);const c=iu(s),{x:d,y:u,zoom:f}=su(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Ja,i.offset);return o(d,u,f,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,d=e.dimensions.height/2-a*s;return o(c,d,s,l)},fitBounds:(i,a={padding:Ja})=>{const{x:l,y:s,zoom:c}=su(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>Io(i,e.viewport,e.snapToGrid,e.snapGrid),screenToFlowCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x-a,y:i.y-l};return Io(s,e.viewport,e.snapToGrid,e.snapGrid)}return{x:0,y:0}},flowToScreenCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x+a,y:i.y+l};return Ka(s,e.viewport)}return{x:0,y:0}}}:MN)}function Qa(e,t=0,o=DN,r=()=>{}){const i=typeof t=="number"&&t>0;return i||r(),i?e.transition().duration(t).ease(o).on("end",r):e}function LN(e,t,o){const r=n.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let w,g,_=!!(o.nodes.value.length||o.edges.value.length);w=Vn([e.modelValue,()=>{var b,y;return(y=(b=e.modelValue)==null?void 0:b.value)==null?void 0:y.length}],([b])=>{b&&Array.isArray(b)&&(g==null||g.pause(),o.setElements(b),!g&&!_&&b.length?_=!0:g==null||g.resume())}),g=Vn([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([b,y])=>{var C;(C=e.modelValue)!=null&&C.value&&Array.isArray(e.modelValue.value)&&(w==null||w.pause(),e.modelValue.value=[...b,...y],n.nextTick(()=>{w==null||w.resume()}))},{immediate:_}),n.onScopeDispose(()=>{w==null||w.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let w,g,_=!!o.nodes.value.length;w=Vn([e.nodes,()=>{var b,y;return(y=(b=e.nodes)==null?void 0:b.value)==null?void 0:y.length}],([b])=>{b&&Array.isArray(b)&&(g==null||g.pause(),o.setNodes(b),!g&&!_&&b.length?_=!0:g==null||g.resume())}),g=Vn([o.nodes,()=>o.nodes.value.length],([b])=>{var y;(y=e.nodes)!=null&&y.value&&Array.isArray(e.nodes.value)&&(w==null||w.pause(),e.nodes.value=[...b],n.nextTick(()=>{w==null||w.resume()}))},{immediate:_}),n.onScopeDispose(()=>{w==null||w.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let w,g,_=!!o.edges.value.length;w=Vn([e.edges,()=>{var b,y;return(y=(b=e.edges)==null?void 0:b.value)==null?void 0:y.length}],([b])=>{b&&Array.isArray(b)&&(g==null||g.pause(),o.setEdges(b),!g&&!_&&b.length?_=!0:g==null||g.resume())}),g=Vn([o.edges,()=>o.edges.value.length],([b])=>{var y;(y=e.edges)!=null&&y.value&&Array.isArray(e.edges.value)&&(w==null||w.pause(),e.edges.value=[...b],n.nextTick(()=>{w==null||w.resume()}))},{immediate:_}),n.onScopeDispose(()=>{w==null||w.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{n.watch(()=>t.maxZoom,()=>{t.maxZoom&&Re(t.maxZoom)&&o.setMaxZoom(t.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{n.watch(()=>t.minZoom,()=>{t.minZoom&&Re(t.minZoom)&&o.setMinZoom(t.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{n.watch(()=>t.translateExtent,()=>{t.translateExtent&&Re(t.translateExtent)&&o.setTranslateExtent(t.translateExtent)},{immediate:!0})})},u=()=>{r.run(()=>{n.watch(()=>t.nodeExtent,()=>{t.nodeExtent&&Re(t.nodeExtent)&&o.setNodeExtent(t.nodeExtent)},{immediate:!0})})},f=()=>{r.run(()=>{n.watch(()=>t.applyDefault,()=>{Re(t.applyDefault)&&(o.applyDefault.value=t.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const w=async g=>{let _=g;typeof t.autoConnect=="function"&&(_=await t.autoConnect(g)),_!==!1&&o.addEdges([_])};n.watch(()=>t.autoConnect,()=>{Re(t.autoConnect)&&(o.autoConnect.value=t.autoConnect)},{immediate:!0}),n.watch(o.autoConnect,(g,_,b)=>{g?o.onConnect(w):o.hooks.value.connect.off(w),b(()=>{o.hooks.value.connect.off(w)})},{immediate:!0})})},m=()=>{const w=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const g of Object.keys(t)){const _=g;if(!w.includes(_)){const b=n.toRef(()=>t[_]),y=o[_];n.isRef(y)&&r.run(()=>{n.watch(b,C=>{Re(C)&&(y.value=C)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),u(),f(),p(),m()})()}),()=>r.stop()}function UN(){return{edgesChange:pe(),nodesChange:pe(),nodeDoubleClick:pe(),nodeClick:pe(),nodeMouseEnter:pe(),nodeMouseMove:pe(),nodeMouseLeave:pe(),nodeContextMenu:pe(),nodeDragStart:pe(),nodeDrag:pe(),nodeDragStop:pe(),nodesInitialized:pe(),miniMapNodeClick:pe(),miniMapNodeDoubleClick:pe(),miniMapNodeMouseEnter:pe(),miniMapNodeMouseMove:pe(),miniMapNodeMouseLeave:pe(),connect:pe(),connectStart:pe(),connectEnd:pe(),clickConnectStart:pe(),clickConnectEnd:pe(),paneReady:pe(),init:pe(),move:pe(),moveStart:pe(),moveEnd:pe(),selectionDragStart:pe(),selectionDrag:pe(),selectionDragStop:pe(),selectionContextMenu:pe(),selectionStart:pe(),selectionEnd:pe(),viewportChangeStart:pe(),viewportChange:pe(),viewportChangeEnd:pe(),paneScroll:pe(),paneClick:pe(),paneContextMenu:pe(),paneMouseEnter:pe(),paneMouseMove:pe(),paneMouseLeave:pe(),edgeContextMenu:pe(),edgeMouseEnter:pe(),edgeMouseMove:pe(),edgeMouseLeave:pe(),edgeDoubleClick:pe(),edgeClick:pe(),edgeUpdateStart:pe(),edgeUpdate:pe(),edgeUpdateEnd:pe(),updateNodeInternals:pe(),error:pe(e=>Wr(e.message))}}function KN(e,t){n.onBeforeMount(()=>{for(const[o,r]of Object.entries(t.value)){const i=a=>{e(o,a)};r.fns.add(i),wr(()=>{r.off(i)})}})}function Bu(){return{vueFlowRef:null,viewportRef:null,nodes:[],edges:[],connectionLookup:new Map,nodeTypes:{},edgeTypes:{},initialized:!1,dimensions:{width:0,height:0},viewport:{x:0,y:0,zoom:1},d3Zoom:null,d3Selection:null,d3ZoomHandler:null,minZoom:.5,maxZoom:2,translateExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],nodeExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],selectionMode:La.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:Ao.Free,paneClickDistance:0,panOnDrag:!0,edgeUpdaterRadius:10,onlyRenderVisibleElements:!1,defaultViewport:{x:0,y:0,zoom:1},nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,defaultMarkerColor:"#b1b1b7",connectionLineStyle:{},connectionLineType:null,connectionLineOptions:{type:pn.Bezier,style:{}},connectionMode:Ut.Loose,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectionPosition:{x:Number.NaN,y:Number.NaN},connectionRadius:20,connectOnClick:!0,connectionStatus:null,isValidConnection:null,snapGrid:[15,15],snapToGrid:!1,edgesUpdatable:!1,edgesFocusable:!0,nodesFocusable:!0,nodesConnectable:!0,nodesDraggable:!0,nodeDragThreshold:1,elementsSelectable:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,selectionKeyCode:"Shift",multiSelectionKeyCode:Hr()?"Meta":"Control",zoomActivationKeyCode:Hr()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:UN(),applyDefault:!0,autoConnect:!1,fitViewOnInit:!1,fitViewOnInitDone:!1,noDragClassName:"nodrag",noWheelClassName:"nowheel",noPanClassName:"nopan",defaultEdgeOptions:void 0,elevateEdgesOnSelect:!1,elevateNodesOnSelect:!0,autoPanOnNodeDrag:!0,autoPanOnConnect:!0,autoPanSpeed:15,disableKeyboardA11y:!1,ariaLiveMessage:""}}const GN=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function jN(e,t,o){const r=FN(e),i=P=>{const x=P??[];e.hooks.updateNodeInternals.trigger(x)},a=P=>aN(P,e.nodes,e.edges),l=P=>iN(P,e.nodes,e.edges),s=P=>lu(P,e.edges),c=({id:P,type:x,nodeId:A})=>{var V;return Array.from(((V=e.connectionLookup.get(`${A}-${x}-${P??null}`))==null?void 0:V.values())??[])},d=P=>{if(P)return t.value.get(P)},u=P=>{if(P)return o.value.get(P)},f=(P,x,A)=>{var V,L;const Z=[];for(const te of P){const K={id:te.id,type:"position",dragging:A,from:te.from};if(x&&(K.position=te.position,te.parentNode)){const J=d(te.parentNode);K.position={x:K.position.x-(((V=J==null?void 0:J.computedPosition)==null?void 0:V.x)??0),y:K.position.y-(((L=J==null?void 0:J.computedPosition)==null?void 0:L.y)??0)}}Z.push(K)}Z!=null&&Z.length&&e.hooks.nodesChange.trigger(Z)},p=P=>{if(!e.vueFlowRef)return;const x=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!x)return;const A=window.getComputedStyle(x),{m22:V}=new window.DOMMatrixReadOnly(A.transform),L=[];for(const Z of P){const te=Z,K=d(te.id);if(K){const J=qr(te.nodeElement);if(!!(J.width&&J.height&&(K.dimensions.width!==J.width||K.dimensions.height!==J.height||te.forceUpdate))){const ie=te.nodeElement.getBoundingClientRect();K.dimensions=J,K.handleBounds.source=Cu("source",te.nodeElement,ie,V,K.id),K.handleBounds.target=Cu("target",te.nodeElement,ie,V,K.id),L.push({id:K.id,type:"dimensions",dimensions:J})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),L.length&&e.hooks.nodesChange.trigger(L)},m=(P,x)=>{const A=new Set,V=new Set;for(const te of P)gn(te)?A.add(te.id):Kt(te)&&V.add(te.id);const L=jt(t.value,A,!0),Z=jt(o.value,V);if(e.multiSelectionActive){for(const te of A)L.push(Gt(te,x));for(const te of V)Z.push(Gt(te,x))}L.length&&e.hooks.nodesChange.trigger(L),Z.length&&e.hooks.edgesChange.trigger(Z)},h=P=>{if(e.multiSelectionActive){const x=P.map(A=>Gt(A.id,!0));e.hooks.nodesChange.trigger(x);return}e.hooks.nodesChange.trigger(jt(t.value,new Set(P.map(x=>x.id)),!0)),e.hooks.edgesChange.trigger(jt(o.value))},w=P=>{if(e.multiSelectionActive){const x=P.map(A=>Gt(A.id,!0));e.hooks.edgesChange.trigger(x);return}e.hooks.edgesChange.trigger(jt(o.value,new Set(P.map(x=>x.id)))),e.hooks.nodesChange.trigger(jt(t.value,new Set,!0))},g=P=>{m(P,!0)},_=P=>{const A=(P||e.nodes).map(V=>(V.selected=!1,Gt(V.id,!1)));e.hooks.nodesChange.trigger(A)},b=P=>{const A=(P||e.edges).map(V=>(V.selected=!1,Gt(V.id,!1)));e.hooks.edgesChange.trigger(A)},y=P=>{if(!P||!P.length)return m([],!1);const x=P.reduce((A,V)=>{const L=Gt(V.id,!1);return gn(V)?A.nodes.push(L):A.edges.push(L),A},{nodes:[],edges:[]});x.nodes.length&&e.hooks.nodesChange.trigger(x.nodes),x.edges.length&&e.hooks.edgesChange.trigger(x.edges)},C=P=>{var x;(x=e.d3Zoom)==null||x.scaleExtent([P,e.maxZoom]),e.minZoom=P},T=P=>{var x;(x=e.d3Zoom)==null||x.scaleExtent([e.minZoom,P]),e.maxZoom=P},k=P=>{var x;(x=e.d3Zoom)==null||x.translateExtent(P),e.translateExtent=P},S=P=>{e.nodeExtent=P,i()},I=P=>{var x;(x=e.d3Zoom)==null||x.clickDistance(P)},B=P=>{e.nodesDraggable=P,e.nodesConnectable=P,e.elementsSelectable=P},W=P=>{const x=P instanceof Function?P(e.nodes):P;!e.initialized&&!x.length||(e.nodes=vu(x,d,e.hooks.error.trigger))},M=P=>{const x=P instanceof Function?P(e.edges):P;if(!e.initialized&&!x.length)return;const A=Za(x,e.isValidConnection,d,u,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);Xa(e.connectionLookup,o.value,A),e.edges=A},v=P=>{const x=P instanceof Function?P([...e.nodes,...e.edges]):P;!e.initialized&&!x.length||(W(x.filter(gn)),M(x.filter(Kt)))},N=P=>{let x=P instanceof Function?P(e.nodes):P;x=Array.isArray(x)?x:[x];const A=vu(x,d,e.hooks.error.trigger),V=[];for(const L of A)V.push(pu(L));V.length&&e.hooks.nodesChange.trigger(V)},E=P=>{let x=P instanceof Function?P(e.edges):P;x=Array.isArray(x)?x:[x];const A=Za(x,e.isValidConnection,d,u,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),V=[];for(const L of A)V.push(pu(L));V.length&&e.hooks.edgesChange.trigger(V)},D=(P,x=!0,A=!1)=>{const V=P instanceof Function?P(e.nodes):P,L=Array.isArray(V)?V:[V],Z=[],te=[];function K(G){const ie=s(G);for(const le of ie)(!Re(le.deletable)||le.deletable)&&te.push(gu(le.id,le.source,le.target,le.sourceHandle,le.targetHandle))}function J(G){const ie=[];for(const le of e.nodes)le.parentNode===G&&ie.push(le);if(ie.length){for(const le of ie)Z.push(mu(le.id));x&&K(ie);for(const le of ie)J(le.id)}}for(const G of L){const ie=typeof G=="string"?d(G):G;ie&&(Re(ie.deletable)&&!ie.deletable||(Z.push(mu(ie.id)),x&&K([ie]),A&&J(ie.id)))}te.length&&e.hooks.edgesChange.trigger(te),Z.length&&e.hooks.nodesChange.trigger(Z)},O=P=>{const x=P instanceof Function?P(e.edges):P,A=Array.isArray(x)?x:[x],V=[];for(const L of A){const Z=typeof L=="string"?u(L):L;Z&&(Re(Z.deletable)&&!Z.deletable||V.push(gu(typeof L=="string"?L:L.id,Z.source,Z.target,Z.sourceHandle,Z.targetHandle)))}e.hooks.edgesChange.trigger(V)},q=(P,x,A=!0)=>{const V=u(P.id);if(!V)return!1;const L=e.edges.indexOf(V),Z=AN(P,x,V,A,e.hooks.error.trigger);if(Z){const[te]=Za([Z],e.isValidConnection,d,u,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((K,J)=>J===L?te:K),Xa(e.connectionLookup,o.value,[te]),te}return!1},j=(P,x,A={replace:!1})=>{const V=u(P);if(!V)return;const L=typeof x=="function"?x(V):x;V.data=A.replace?L:{...V.data,...L}},F=P=>fu(P,e.nodes),R=P=>{const x=fu(P,e.edges);return Xa(e.connectionLookup,o.value,x),x},U=(P,x,A={replace:!1})=>{const V=d(P);if(!V)return;const L=typeof x=="function"?x(V):x;A.replace?e.nodes.splice(e.nodes.indexOf(V),1,L):Object.assign(V,L)},re=(P,x,A={replace:!1})=>{const V=d(P);if(!V)return;const L=typeof x=="function"?x(V):x;V.data=A.replace?L:{...V.data,...L}},de=(P,x,A=!1)=>{A?e.connectionClickStartHandle=P:e.connectionStartHandle=P,e.connectionEndHandle=null,e.connectionStatus=null,x&&(e.connectionPosition=x)},ee=(P,x=null,A=null)=>{e.connectionStartHandle&&(e.connectionPosition=P,e.connectionEndHandle=x,e.connectionStatus=A)},oe=(P,x)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,x?e.connectionClickStartHandle=null:e.connectionStartHandle=null},Y=P=>{const x=oN(P),A=x?null:Po(P)?P:d(P.id);return!x&&!A?[null,null,x]:[x?P:Gr(A),A,x]},$=(P,x=!0,A=e.nodes)=>{const[V,L,Z]=Y(P);if(!V)return[];const te=[];for(const K of A||e.nodes){if(!Z&&(K.id===L.id||!K.computedPosition))continue;const J=Gr(K),G=jr(J,V);(x&&G>0||G>=Number(V.width)*Number(V.height))&&te.push(K)}return te},z=(P,x,A=!0)=>{const[V]=Y(P);if(!V)return!1;const L=jr(V,x);return A&&L>0||L>=Number(V.width)*Number(V.height)},X=P=>{const{viewport:x,dimensions:A,d3Zoom:V,d3Selection:L,translateExtent:Z}=e;if(!V||!L||!P.x&&!P.y)return!1;const te=Ln.translate(x.x+P.x,x.y+P.y).scale(x.zoom),K=[[0,0],[A.width,A.height]],J=V.constrain()(te,K,Z),G=e.viewport.x!==J.x||e.viewport.y!==J.y||e.viewport.zoom!==J.k;return V.transform(L,J),G},Q=P=>{const x=P instanceof Function?P(e):P,A=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];Re(x.defaultEdgeOptions)&&(e.defaultEdgeOptions=x.defaultEdgeOptions);const V=x.modelValue||x.nodes||x.edges?[]:void 0;V&&(x.modelValue&&V.push(...x.modelValue),x.nodes&&V.push(...x.nodes),x.edges&&V.push(...x.edges),v(V));const L=()=>{Re(x.maxZoom)&&T(x.maxZoom),Re(x.minZoom)&&C(x.minZoom),Re(x.translateExtent)&&k(x.translateExtent)};for(const Z of Object.keys(x)){const te=Z,K=x[te];![...GN,...A].includes(te)&&Re(K)&&(e[te]=K)}ba(()=>e.d3Zoom).not.toBeNull().then(L),e.initialized||(e.initialized=!0)};return{updateNodePositions:f,updateNodeDimensions:p,setElements:v,setNodes:W,setEdges:M,addNodes:N,addEdges:E,removeNodes:D,removeEdges:O,findNode:d,findEdge:u,updateEdge:q,updateEdgeData:j,updateNode:U,updateNodeData:re,applyEdgeChanges:R,applyNodeChanges:F,addSelectedElements:g,addSelectedNodes:h,addSelectedEdges:w,setMinZoom:C,setMaxZoom:T,setTranslateExtent:k,setNodeExtent:S,setPaneClickDistance:I,removeSelectedElements:y,removeSelectedNodes:_,removeSelectedEdges:b,startConnection:de,updateConnection:ee,endConnection:oe,setInteractive:B,setState:Q,getIntersectingNodes:$,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:z,panBy:X,fitView:P=>r.value.fitView(P),zoomIn:P=>r.value.zoomIn(P),zoomOut:P=>r.value.zoomOut(P),zoomTo:(P,x)=>r.value.zoomTo(P,x),setViewport:(P,x)=>r.value.setViewport(P,x),setTransform:(P,x)=>r.value.setTransform(P,x),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(P,x,A)=>r.value.setCenter(P,x,A),fitBounds:(P,x)=>r.value.fitBounds(P,x),project:P=>r.value.project(P),screenToFlowCoordinate:P=>r.value.screenToFlowCoordinate(P),flowToScreenCoordinate:P=>r.value.flowToScreenCoordinate(P),toObject:()=>{const P=[],x=[];for(const A of e.nodes){const{computedPosition:V,handleBounds:L,selected:Z,dimensions:te,isParent:K,resizing:J,dragging:G,events:ie,...le}=A;P.push(le)}for(const A of e.edges){const{selected:V,sourceNode:L,targetNode:Z,events:te,...K}=A;x.push(K)}return JSON.parse(JSON.stringify({nodes:P,edges:x,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:P=>new Promise(x=>{const{nodes:A,edges:V,position:L,zoom:Z,viewport:te}=P;if(A&&W(A),V&&M(V),te!=null&&te.x&&(te!=null&&te.y)||L){const K=(te==null?void 0:te.x)||L[0],J=(te==null?void 0:te.y)||L[1],G=(te==null?void 0:te.zoom)||Z||e.viewport.zoom;return ba(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:K,y:J,zoom:G}).then(()=>{x(!0)})})}else x(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const P=Bu();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const x=Ln.translate(P.defaultViewport.x??0,P.defaultViewport.y??0).scale(mn(P.defaultViewport.zoom??1,P.minZoom,P.maxZoom)),A=e.viewportRef.getBoundingClientRect(),V=[[0,0],[A.width,A.height]],L=e.d3Zoom.constrain()(x,V,P.translateExtent);e.d3Zoom.transform(e.d3Selection,L)}Q(P)},$destroy:()=>{}}}const qN=["data-id","data-handleid","data-nodeid","data-handlepos"],zN={name:"Handle",compatConfig:{MODE:3}},zt=n.defineComponent({...zN,props:{id:{default:null},type:{},position:{default:()=>ge.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:t}){const o=n.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=n.toRef(()=>o.type??"source"),i=n.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:u,noDragClassName:f,noPanClassName:p}=xe(),{id:m,node:h,nodeEl:w,connectedEdges:g}=Ou(),_=n.ref(),b=n.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),y=n.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),C=n.toRef(()=>{var M,v,N,E,D,O;return((M=l.value)==null?void 0:M.nodeId)===m&&((v=l.value)==null?void 0:v.id)===e.id&&((N=l.value)==null?void 0:N.type)===r.value||((E=c.value)==null?void 0:E.nodeId)===m&&((D=c.value)==null?void 0:D.id)===e.id&&((O=c.value)==null?void 0:O.type)===r.value}),T=n.toRef(()=>{var M,v,N;return((M=s.value)==null?void 0:M.nodeId)===m&&((v=s.value)==null?void 0:v.id)===e.id&&((N=s.value)==null?void 0:N.type)===r.value}),{handlePointerDown:k,handleClick:S}=Iu({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),I=n.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(M=>{const v=M[`${r.value}Handle`];return M[r.value]!==m?!1:v?v===e.id:!0}):typeof e.connectable=="number"?g.value.filter(M=>{const v=M[`${r.value}Handle`];return M[r.value]!==m?!1:v?v===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,g.value):Re(e.connectable)?e.connectable:u.value);n.onMounted(()=>{var M;if(!h.dimensions.width||!h.dimensions.height)return;const v=(M=h.handleBounds[r.value])==null?void 0:M.find(F=>F.id===e.id);if(!d.value||v)return;const N=d.value.querySelector(".vue-flow__transformationpane");if(!w.value||!_.value||!N||!e.id)return;const E=w.value.getBoundingClientRect(),D=_.value.getBoundingClientRect(),O=window.getComputedStyle(N),{m22:q}=new window.DOMMatrixReadOnly(O.transform),j={id:e.id,position:e.position,x:(D.left-E.left)/q,y:(D.top-E.top)/q,type:r.value,nodeId:m,...qr(_.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],j]});function B(M){const v=za(M);I.value&&b.value&&(v&&M.button===0||!v)&&k(M)}function W(M){!m||!s.value&&!b.value||I.value&&S(M)}return t({handleClick:S,handlePointerDown:k,onClick:W,onPointerDown:B}),(M,v)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"handle",ref:_,"data-id":`${n.unref(a)}-${n.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":n.unref(m),"data-handlepos":M.position,class:n.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${M.position}`,`vue-flow__handle-${e.id}`,n.unref(f),n.unref(p),r.value,{connectable:I.value,connecting:T.value,connectablestart:b.value,connectableend:y.value,connectionindicator:I.value&&(b.value&&!C.value||y.value&&C.value)}]]),onMousedown:B,onTouchstartPassive:B,onClick:W},[n.renderSlot(M.$slots,"default",{id:M.id})],42,qN))}}),Jr=function({sourcePosition:e=ge.Bottom,targetPosition:t=ge.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[n.h(zt,{type:"target",position:t,connectable:r,isValidConnection:i}),typeof s!="string"&&s?n.h(s):n.h(n.Fragment,[s]),n.h(zt,{type:"source",position:e,connectable:r,isValidConnection:a})]};Jr.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Jr.inheritAttrs=!1,Jr.compatConfig={MODE:3};const HN=Jr,Qr=function({targetPosition:e=ge.Top,label:t,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??t;return[n.h(zt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?n.h(a):n.h(n.Fragment,[a])]};Qr.props=["targetPosition","label","isValidTargetPos","connectable","data"],Qr.inheritAttrs=!1,Qr.compatConfig={MODE:3};const YN=Qr,ei=function({sourcePosition:e=ge.Bottom,label:t,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??t;return[typeof a!="string"&&a?n.h(a):n.h(n.Fragment,[a]),n.h(zt,{type:"source",position:e,connectable:o,isValidConnection:r})]};ei.props=["sourcePosition","label","isValidSourcePos","connectable","data"],ei.inheritAttrs=!1,ei.compatConfig={MODE:3};const WN=ei,XN=["transform"],ZN=["width","height","x","y","rx","ry"],JN=["y"],QN={name:"EdgeText",compatConfig:{MODE:3}},eS=n.defineComponent({...QN,props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(e){const t=n.ref({x:0,y:0,width:0,height:0}),o=n.ref(null),r=n.computed(()=>`translate(${e.x-t.value.width/2} ${e.y-t.value.height/2})`);n.onMounted(i),n.watch([()=>e.x,()=>e.y,o,()=>e.label],i);function i(){if(!o.value)return;const a=o.value.getBBox();(a.width!==t.value.width||a.height!==t.value.height)&&(t.value=a)}return(a,l)=>(n.openBlock(),n.createElementBlock("g",{transform:r.value,class:"vue-flow__edge-textwrapper"},[a.labelShowBg?(n.openBlock(),n.createElementBlock("rect",{key:0,class:"vue-flow__edge-textbg",width:`${t.value.width+2*a.labelBgPadding[0]}px`,height:`${t.value.height+2*a.labelBgPadding[1]}px`,x:-a.labelBgPadding[0],y:-a.labelBgPadding[1],style:n.normalizeStyle(a.labelBgStyle),rx:a.labelBgBorderRadius,ry:a.labelBgBorderRadius},null,12,ZN)):n.createCommentVNode("",!0),n.createElementVNode("text",n.mergeProps(a.$attrs,{ref_key:"el",ref:o,class:"vue-flow__edge-text",y:t.value.height/2,dy:"0.3em",style:a.labelStyle}),[n.renderSlot(a.$slots,"default",{},()=>[typeof a.label!="string"?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(a.label),{key:0})):(n.openBlock(),n.createElementBlock(n.Fragment,{key:1},[n.createTextVNode(n.toDisplayString(a.label),1)],64))])],16,JN)],8,XN))}}),tS=["id","d","marker-end","marker-start"],nS=["d","stroke-width"],oS={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},ti=n.defineComponent({...oS,props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(e,{expose:t}){const o=n.ref(null),r=n.ref(null),i=n.ref(null),a=n.useAttrs();return t({pathEl:o,interactionEl:r,labelEl:i}),(l,s)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("path",n.mergeProps(n.unref(a),{id:l.id,ref_key:"pathEl",ref:o,d:l.path,class:"vue-flow__edge-path","marker-end":l.markerEnd,"marker-start":l.markerStart}),null,16,tS),l.interactionWidth?(n.openBlock(),n.createElementBlock("path",{key:0,ref_key:"interactionEl",ref:r,fill:"none",d:l.path,"stroke-width":l.interactionWidth,"stroke-opacity":0,class:"vue-flow__edge-interaction"},null,8,nS)):n.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(n.openBlock(),n.createBlock(eS,{key:1,ref_key:"labelEl",ref:i,x:l.labelX,y:l.labelY,label:l.label,"label-show-bg":l.labelShowBg,"label-bg-style":l.labelBgStyle,"label-bg-padding":l.labelBgPadding,"label-bg-border-radius":l.labelBgBorderRadius,"label-style":l.labelStyle},null,8,["x","y","label","label-show-bg","label-bg-style","label-bg-padding","label-bg-border-radius","label-style"])):n.createCommentVNode("",!0)],64))}});function Vu({sourceX:e,sourceY:t,targetX:o,targetY:r}){const i=Math.abs(o-e)/2,a=o<e?o+i:o-i,l=Math.abs(r-t)/2,s=r<t?r+l:r-l;return[a,s,i,l]}function Ru({sourceX:e,sourceY:t,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=t*.125+a*.375+s*.375+r*.125,u=Math.abs(c-e),f=Math.abs(d-t);return[c,d,u,f]}function ni(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function Du({pos:e,x1:t,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ge.Left:l=t-ni(t-r,a),s=o;break;case ge.Right:l=t+ni(r-t,a),s=o;break;case ge.Top:l=t,s=o-ni(o-i,a);break;case ge.Bottom:l=t,s=o+ni(i-o,a);break}return[l,s]}function Mu(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,curvature:s=.25}=e,[c,d]=Du({pos:r,x1:t,y1:o,x2:i,y2:a,c:s}),[u,f]=Du({pos:l,x1:i,y1:a,x2:t,y2:o,c:s}),[p,m,h,w]=Ru({sourceX:t,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:u,targetControlY:f});return[`M${t},${o} C${c},${d} ${u},${f} ${i},${a}`,p,m,h,w]}function Fu({pos:e,x1:t,y1:o,x2:r,y2:i}){let a,l;switch(e){case ge.Left:case ge.Right:a=.5*(t+r),l=o;break;case ge.Top:case ge.Bottom:a=t,l=.5*(o+i);break}return[a,l]}function Lu(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top}=e,[s,c]=Fu({pos:r,x1:t,y1:o,x2:i,y2:a}),[d,u]=Fu({pos:l,x1:i,y1:a,x2:t,y2:o}),[f,p,m,h]=Ru({sourceX:t,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:u});return[`M${t},${o} C${s},${c} ${d},${u} ${i},${a}`,f,p,m,h]}const Uu={[ge.Left]:{x:-1,y:0},[ge.Right]:{x:1,y:0},[ge.Top]:{x:0,y:-1},[ge.Bottom]:{x:0,y:1}};function rS({source:e,sourcePosition:t=ge.Bottom,target:o}){return t===ge.Left||t===ge.Right?e.x<o.x?{x:1,y:0}:{x:-1,y:0}:e.y<o.y?{x:0,y:1}:{x:0,y:-1}}function Ku(e,t){return Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2)}function iS({source:e,sourcePosition:t=ge.Bottom,target:o,targetPosition:r=ge.Top,center:i,offset:a}){const l=Uu[t],s=Uu[r],c={x:e.x+l.x*a,y:e.y+l.y*a},d={x:o.x+s.x*a,y:o.y+s.y*a},u=rS({source:c,sourcePosition:t,target:d}),f=u.x!==0?"x":"y",p=u[f];let m,h,w;const g={x:0,y:0},_={x:0,y:0},[b,y,C,T]=Vu({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[f]*s[f]===-1){h=i.x??b,w=i.y??y;const S=[{x:h,y:c.y},{x:h,y:d.y}],I=[{x:c.x,y:w},{x:d.x,y:w}];l[f]===p?m=f==="x"?S:I:m=f==="x"?I:S}else{const S=[{x:c.x,y:d.y}],I=[{x:d.x,y:c.y}];if(f==="x"?m=l.x===p?I:S:m=l.y===p?S:I,t===r){const N=Math.abs(e[f]-o[f]);if(N<=a){const E=Math.min(a-1,a-N);l[f]===p?g[f]=(c[f]>e[f]?-1:1)*E:_[f]=(d[f]>o[f]?-1:1)*E}}if(t!==r){const N=f==="x"?"y":"x",E=l[f]===s[N],D=c[N]>d[N],O=c[N]<d[N];(l[f]===1&&(!E&&D||E&&O)||l[f]!==1&&(!E&&O||E&&D))&&(m=f==="x"?S:I)}const B={x:c.x+g.x,y:c.y+g.y},W={x:d.x+_.x,y:d.y+_.y},M=Math.max(Math.abs(B.x-m[0].x),Math.abs(W.x-m[0].x)),v=Math.max(Math.abs(B.y-m[0].y),Math.abs(W.y-m[0].y));M>=v?(h=(B.x+W.x)/2,w=m[0].y):(h=m[0].x,w=(B.y+W.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...m,{x:d.x+_.x,y:d.y+_.y},o],h,w,C,T]}function aS(e,t,o,r){const i=Math.min(Ku(e,t)/2,Ku(t,o)/2,r),{x:a,y:l}=t;if(e.x===a&&a===o.x||e.y===l&&l===o.y)return`L${a} ${l}`;if(e.y===l){const d=e.x<o.x?-1:1,u=e.y<o.y?1:-1;return`L ${a+i*d},${l}Q ${a},${l} ${a},${l+i*u}`}const s=e.x<o.x?1:-1,c=e.y<o.y?-1:1;return`L ${a},${l+i*c}Q ${a},${l} ${a+i*s},${l}`}function el(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,borderRadius:s=5,centerX:c,centerY:d,offset:u=20}=e,[f,p,m,h,w]=iS({source:{x:t,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:u});return[f.reduce((_,b,y)=>{let C;return y>0&&y<f.length-1?C=aS(f[y-1],b,f[y+1],s):C=`${y===0?"M":"L"}${b.x} ${b.y}`,_+=C,_},""),p,m,h,w]}function lS(e){const{sourceX:t,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Vu({sourceX:t,sourceY:o,targetX:r,targetY:i});return[`M ${t},${o}L ${r},${i}`,a,l,s,c]}const sS=n.defineComponent({name:"StraightEdge",props:["label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=lS(e);return n.h(ti,{path:o,labelX:r,labelY:i,...t,...e})}}}),Gu=n.defineComponent({name:"SmoothStepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","borderRadius","markerEnd","markerStart","interactionWidth","offset"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=el({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(ti,{path:o,labelX:r,labelY:i,...t,...e})}}}),cS=n.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:t}){return()=>n.h(Gu,{...e,...t,borderRadius:0})}}),dS=n.defineComponent({name:"BezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","curvature","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=Mu({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(ti,{path:o,labelX:r,labelY:i,...t,...e})}}}),uS=n.defineComponent({name:"SimpleBezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=Lu({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(ti,{path:o,labelX:r,labelY:i,...t,...e})}}}),fS={input:WN,default:HN,output:YN},pS={default:dS,straight:sS,step:cS,smoothstep:Gu,simplebezier:uS};function mS(e,t,o){const r=n.computed(()=>w=>t.value.get(w)),i=n.computed(()=>w=>o.value.get(w)),a=n.computed(()=>{const w={...pS,...e.edgeTypes},g=Object.keys(w);for(const _ of e.edges)_.type&&!g.includes(_.type)&&(w[_.type]=_.type);return w}),l=n.computed(()=>{const w={...fS,...e.nodeTypes},g=Object.keys(w);for(const _ of e.nodes)_.type&&!g.includes(_.type)&&(w[_.type]=_.type);return w}),s=n.computed(()=>e.onlyRenderVisibleElements?au(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=n.computed(()=>{if(e.onlyRenderVisibleElements){const w=[];for(const g of e.edges){const _=t.value.get(g.source),b=t.value.get(g.target);gN({sourcePos:_.computedPosition||{x:0,y:0},targetPos:b.computedPosition||{x:0,y:0},sourceWidth:_.dimensions.width,sourceHeight:_.dimensions.height,targetWidth:b.dimensions.width,targetHeight:b.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&w.push(g)}return w}return e.edges}),d=n.computed(()=>[...s.value,...c.value]),u=n.computed(()=>{const w=[];for(const g of e.nodes)g.selected&&w.push(g);return w}),f=n.computed(()=>{const w=[];for(const g of e.edges)g.selected&&w.push(g);return w}),p=n.computed(()=>[...u.value,...f.value]),m=n.computed(()=>{const w=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&w.push(g);return w}),h=n.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:u,getSelectedEdges:f,getNodesInitialized:m,areNodesInitialized:h}}class hn{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){var t;const o=(t=n.getCurrentInstance())==null?void 0:t.appContext.app,r=(o==null?void 0:o.config.globalProperties.$vueFlowStorage)??hn.instance;return hn.instance=r??new hn,o&&(o.config.globalProperties.$vueFlowStorage=hn.instance),hn.instance}set(t,o){return this.flows.set(t,o)}get(t){return this.flows.get(t)}remove(t){return this.flows.delete(t)}create(t,o){const r=Bu(),i=n.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const h=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[h]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=n.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=n.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=mS(i,s,c),u=jN(i,s,c);u.setState({...i,...o});const f={...a,...d,...u,...fk(i),nodeLookup:s,edgeLookup:c,emits:l,id:t,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(t)}};return this.set(t,f),f}getId(){return`vue-flow-${this.currentId++}`}}function xe(e){const t=hn.getInstance(),o=n.getCurrentScope(),r=typeof e=="object",i=r?e:{id:e},a=i.id,l=a??(o==null?void 0:o.vueFlowId);let s;if(o){const c=n.inject(xu,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=t.get(l)),!s||l&&s.id!==l){const c=a??t.getId(),d=t.create(c,i);s=d,(o??n.effectScope(!0)).run(()=>{n.watch(d.applyDefault,(f,p,m)=>{const h=g=>{d.applyNodeChanges(g)},w=g=>{d.applyEdgeChanges(g)};f?(d.onNodesChange(h),d.onEdgesChange(w)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(w)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(w)})},{immediate:!0}),wr(()=>{if(s){const f=t.get(s.id);f?f.$destroy():Wr(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(n.provide(xu,s),o.vueFlowId=s.id),r){const c=n.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new Ke(Ve.USEVUEFLOW_OPTIONS))}return s}function gS(e){const{emits:t,dimensions:o}=xe();let r;n.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=qr(i);(l.width===0||l.height===0)&&t.error(new Ke(Ve.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:l.width||500,height:l.height||500}};a(),window.addEventListener("resize",a),i&&(r=new ResizeObserver(()=>a()),r.observe(i)),n.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const hS={name:"UserSelection",compatConfig:{MODE:3}},yS=n.defineComponent({...hS,props:{userSelectionRect:{}},setup(e){return(t,o)=>(n.openBlock(),n.createElementBlock("div",{class:"vue-flow__selection vue-flow__container",style:n.normalizeStyle({width:`${t.userSelectionRect.width}px`,height:`${t.userSelectionRect.height}px`,transform:`translate(${t.userSelectionRect.x}px, ${t.userSelectionRect.y}px)`})},null,4))}}),_S=["tabIndex"],bS={name:"NodesSelection",compatConfig:{MODE:3}},wS=n.defineComponent({...bS,setup(e){const{emits:t,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=xe(),s=$u(),c=n.ref(null),d=Pu({el:c,onStart(h){t.selectionDragStart(h)},onDrag(h){t.selectionDrag(h)},onStop(h){t.selectionDragStop(h)}});n.onMounted(()=>{var h;a.value||(h=c.value)==null||h.focus({preventScroll:!0})});const u=n.computed(()=>iu(r.value)),f=n.computed(()=>({width:`${u.value.width}px`,height:`${u.value.height}px`,top:`${u.value.y}px`,left:`${u.value.x}px`}));function p(h){t.selectionContextMenu({event:h,nodes:r.value})}function m(h){a||Un[h.key]&&(h.preventDefault(),s({x:Un[h.key].x,y:Un[h.key].y},h.shiftKey))}return(h,w)=>!n.unref(l)&&u.value.width&&u.value.height?(n.openBlock(),n.createElementBlock("div",{key:0,class:n.normalizeClass(["vue-flow__nodesselection vue-flow__container",n.unref(i)]),style:n.normalizeStyle({transform:`translate(${n.unref(o).x}px,${n.unref(o).y}px) scale(${n.unref(o).zoom})`})},[n.createElementVNode("div",{ref_key:"el",ref:c,class:n.normalizeClass([{dragging:n.unref(d)},"vue-flow__nodesselection-rect"]),style:n.normalizeStyle(f.value),tabIndex:n.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,_S)],6)):n.createCommentVNode("",!0)}});function ES(e,t){return{x:e.clientX-t.left,y:e.clientY-t.top}}const kS={name:"Pane",compatConfig:{MODE:3}},CS=n.defineComponent({...kS,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:t,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:u,getSelectedNodes:f,removeNodes:p,removeEdges:m,selectionMode:h,deleteKeyCode:w,multiSelectionKeyCode:g,multiSelectionActive:_,edgeLookup:b,nodeLookup:y,connectionLookup:C,defaultEdgeOptions:T,connectionStartHandle:k}=xe(),S=n.ref(null),I=n.ref(new Set),B=n.ref(new Set),W=n.ref(),M=n.toRef(()=>c.value&&(e.isSelecting||a.value)),v=n.toRef(()=>k.value!==null);let N=!1,E=!1;const D=To(w,{actInsideInputWithModifier:!1}),O=To(g);n.watch(D,ee=>{ee&&(p(f.value),m(u.value),d.value=!1)}),n.watch(O,ee=>{_.value=ee});function q(ee,oe){return Y=>{Y.target===oe&&(ee==null||ee(Y))}}function j(ee){if(N||v.value){N=!1;return}i.paneClick(ee),l(),d.value=!1}function F(ee){ee.preventDefault(),ee.stopPropagation(),i.paneContextMenu(ee)}function R(ee){i.paneScroll(ee)}function U(ee){var oe,Y,$;if(W.value=(oe=t.value)==null?void 0:oe.getBoundingClientRect(),!c.value||!e.isSelecting||ee.button!==0||ee.target!==S.value||!W.value)return;($=(Y=ee.target)==null?void 0:Y.setPointerCapture)==null||$.call(Y,ee.pointerId);const{x:z,y:X}=ES(ee,W.value);E=!0,N=!1,l(),s.value={width:0,height:0,startX:z,startY:X,x:z,y:X},i.selectionStart(ee)}function re(ee){var oe;if(!W.value||!s.value)return;N=!0;const{x:Y,y:$}=St(ee,W.value),{startX:z=0,startY:X=0}=s.value,Q={startX:z,startY:X,x:Y<z?Y:z,y:$<X?$:X,width:Math.abs(Y-z),height:Math.abs($-X)},ne=I.value,ue=B.value;I.value=new Set(au(o.value,Q,r.value,h.value===La.Partial,!0).map(P=>P.id)),B.value=new Set;const me=((oe=T.value)==null?void 0:oe.selectable)??!0;for(const P of I.value){const x=C.value.get(P);if(x)for(const{edgeId:A}of x.values()){const V=b.value.get(A);V&&(V.selectable??me)&&B.value.add(A)}}if(!Su(ne,I.value)){const P=jt(y.value,I.value,!0);i.nodesChange(P)}if(!Su(ue,B.value)){const P=jt(b.value,B.value);i.edgesChange(P)}s.value=Q,a.value=!0,d.value=!1}function de(ee){var oe;ee.button!==0||!E||((oe=ee.target)==null||oe.releasePointerCapture(ee.pointerId),!a.value&&s.value&&ee.target===S.value&&j(ee),a.value=!1,s.value=null,d.value=I.value.size>0,i.selectionEnd(ee),e.selectionKeyPressed&&(N=!1),E=!1)}return(ee,oe)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"container",ref:S,class:n.normalizeClass(["vue-flow__pane vue-flow__container",{selection:ee.isSelecting}]),onClick:oe[0]||(oe[0]=Y=>M.value?void 0:q(j,S.value)(Y)),onContextmenu:oe[1]||(oe[1]=Y=>q(F,S.value)(Y)),onWheelPassive:oe[2]||(oe[2]=Y=>q(R,S.value)(Y)),onPointerenter:oe[3]||(oe[3]=Y=>M.value?void 0:n.unref(i).paneMouseEnter(Y)),onPointerdown:oe[4]||(oe[4]=Y=>M.value?U(Y):n.unref(i).paneMouseMove(Y)),onPointermove:oe[5]||(oe[5]=Y=>M.value?re(Y):n.unref(i).paneMouseMove(Y)),onPointerup:oe[6]||(oe[6]=Y=>M.value?de(Y):void 0),onPointerleave:oe[7]||(oe[7]=Y=>n.unref(i).paneMouseLeave(Y))},[n.renderSlot(ee.$slots,"default"),n.unref(a)&&n.unref(s)?(n.openBlock(),n.createBlock(yS,{key:0,"user-selection-rect":n.unref(s)},null,8,["user-selection-rect"])):n.createCommentVNode("",!0),n.unref(d)&&n.unref(f).length?(n.openBlock(),n.createBlock(wS,{key:1})):n.createCommentVNode("",!0)],34))}}),vS={name:"Transform",compatConfig:{MODE:3}},NS=n.defineComponent({...vS,setup(e){const{viewport:t,fitViewOnInit:o,fitViewOnInitDone:r}=xe(),i=n.computed(()=>o.value?!r.value:!1),a=n.computed(()=>`translate(${t.value.x}px,${t.value.y}px) scale(${t.value.zoom})`);return(l,s)=>(n.openBlock(),n.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:n.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[n.renderSlot(l.$slots,"default")],4))}}),SS={name:"Viewport",compatConfig:{MODE:3}},xS=n.defineComponent({...SS,setup(e){const{minZoom:t,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:u,panOnDrag:f,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:h,preventScrolling:w,noWheelClassName:g,noPanClassName:_,emits:b,connectionStartHandle:y,userSelectionActive:C,paneDragging:T,d3Zoom:k,d3Selection:S,d3ZoomHandler:I,viewport:B,viewportRef:W,paneClickDistance:M}=xe();gS(W);const v=n.shallowRef(!1),N=n.shallowRef(!1);let E=null,D=!1,O=0,q={x:0,y:0,zoom:0};const j=To(s),F=To(l),R=To(a),U=n.toRef(()=>(!F.value||F.value&&l.value===!0)&&(j.value||f.value)),re=n.toRef(()=>j.value||c.value),de=n.toRef(()=>F.value||l.value===!0&&U.value!==!0);n.onMounted(()=>{if(!W.value){Wr("Viewport element is missing");return}const X=W.value,Q=X.getBoundingClientRect(),ne=X1().clickDistance(M.value).scaleExtent([t.value,o.value]).translateExtent(i.value),ue=pt(X).call(ne),me=ue.on("wheel.zoom"),P=Ln.translate(r.value.x??0,r.value.y??0).scale(mn(r.value.zoom??1,t.value,o.value)),x=[[0,0],[Q.width,Q.height]],A=ne.constrain()(P,x,i.value);ne.transform(ue,A),ne.wheelDelta(oe),k.value=ne,S.value=ue,I.value=me,B.value={x:A.x,y:A.y,zoom:A.k},ne.on("start",V=>{var L;if(!V.sourceEvent)return null;O=V.sourceEvent.button,v.value=!0;const Z=$(V.transform);((L=V.sourceEvent)==null?void 0:L.type)==="mousedown"&&(T.value=!0),q=Z,b.viewportChangeStart(Z),b.moveStart({event:V,flowTransform:Z})}),ne.on("end",V=>{if(!V.sourceEvent)return null;if(v.value=!1,T.value=!1,ee(U.value,O??0)&&!D&&b.paneContextMenu(V.sourceEvent),D=!1,Y(q,V.transform)){const L=$(V.transform);q=L,b.viewportChangeEnd(L),b.moveEnd({event:V,flowTransform:L})}}),ne.filter(V=>{var L;const Z=R.value||h.value,te=m.value&&V.ctrlKey,K=V.button;if(K===1&&V.type==="mousedown"&&(z(V,"vue-flow__node")||z(V,"vue-flow__edge")))return!0;if(!U.value&&!Z&&!re.value&&!p.value&&!m.value||C.value||!p.value&&V.type==="dblclick"||z(V,g.value)&&V.type==="wheel"||z(V,_.value)&&(V.type!=="wheel"||re.value&&V.type==="wheel"&&!R.value)||!m.value&&V.ctrlKey&&V.type==="wheel"||!Z&&!re.value&&!te&&V.type==="wheel")return!1;if(!m&&V.type==="touchstart"&&((L=V.touches)==null?void 0:L.length)>1)return V.preventDefault(),!1;if(!U.value&&(V.type==="mousedown"||V.type==="touchstart")||l.value===!0&&Array.isArray(f.value)&&f.value.includes(0)&&K===0||Array.isArray(f.value)&&!f.value.includes(K)&&(V.type==="mousedown"||V.type==="touchstart"))return!1;const J=Array.isArray(f.value)&&f.value.includes(K)||l.value===!0&&Array.isArray(f.value)&&!f.value.includes(0)||!K||K<=1;return(!V.ctrlKey||j.value||V.type==="wheel")&&J}),n.watch([C,U],()=>{C.value&&!v.value?ne.on("zoom",null):C.value||ne.on("zoom",V=>{B.value={x:V.transform.x,y:V.transform.y,zoom:V.transform.k};const L=$(V.transform);D=ee(U.value,O??0),b.viewportChange(L),b.move({event:V,flowTransform:L})})},{immediate:!0}),n.watch([C,re,d,R,m,w,g],()=>{re.value&&!R.value&&!C.value?ue.on("wheel.zoom",V=>{if(z(V,g.value))return!1;const L=R.value||h.value,Z=m.value&&V.ctrlKey;if(!(!w.value||re.value||L||Z))return!1;V.preventDefault(),V.stopImmediatePropagation();const K=ue.property("__zoom").k||1,J=Hr();if(!j.value&&V.ctrlKey&&m.value&&J){const we=kt(V),be=oe(V),Ne=K*2**be;ne.scaleTo(ue,Ne,we,V);return}const G=V.deltaMode===1?20:1;let ie=d.value===Ao.Vertical?0:V.deltaX*G,le=d.value===Ao.Horizontal?0:V.deltaY*G;!J&&V.shiftKey&&d.value!==Ao.Vertical&&!ie&&le&&(ie=le,le=0),ne.translateBy(ue,-(ie/K)*u.value,-(le/K)*u.value);const se=$(ue.property("__zoom"));E&&clearTimeout(E),N.value?(b.move({event:V,flowTransform:se}),b.viewportChange(se),E=setTimeout(()=>{b.moveEnd({event:V,flowTransform:se}),b.viewportChangeEnd(se),N.value=!1},150)):(N.value=!0,b.moveStart({event:V,flowTransform:se}),b.viewportChangeStart(se))},{passive:!1}):typeof me<"u"&&ue.on("wheel.zoom",function(V,L){const Z=!w.value&&V.type==="wheel"&&!V.ctrlKey,te=R.value||h.value,K=m.value&&V.ctrlKey;if(!te&&!c.value&&!K&&V.type==="wheel"||Z||z(V,g.value))return null;V.preventDefault(),me.call(this,V,L)},{passive:!1})},{immediate:!0})});function ee(X,Q){return Q===2&&Array.isArray(X)&&X.includes(2)}function oe(X){const Q=X.ctrlKey&&Hr()?10:1;return-X.deltaY*(X.deltaMode===1?.05:X.deltaMode?1:.002)*Q}function Y(X,Q){return X.x!==Q.x&&!Number.isNaN(Q.x)||X.y!==Q.y&&!Number.isNaN(Q.y)||X.zoom!==Q.k&&!Number.isNaN(Q.k)}function $(X){return{x:X.x,y:X.y,zoom:X.k}}function z(X,Q){return X.target.closest(`.${Q}`)}return(X,Q)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"viewportRef",ref:W,class:"vue-flow__viewport vue-flow__container"},[n.createVNode(CS,{"is-selecting":de.value,"selection-key-pressed":n.unref(F),class:n.normalizeClass({connecting:!!n.unref(y),dragging:n.unref(T),draggable:n.unref(f)===!0||Array.isArray(n.unref(f))&&n.unref(f).includes(0)})},{default:n.withCtx(()=>[n.createVNode(NS,null,{default:n.withCtx(()=>[n.renderSlot(X.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),AS=["id"],TS=["id"],PS=["id"],IS={name:"A11yDescriptions",compatConfig:{MODE:3}},OS=n.defineComponent({...IS,setup(e){const{id:t,disableKeyboardA11y:o,ariaLiveMessage:r}=xe();return(i,a)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",{id:`${n.unref(Xd)}-${n.unref(t)}`,style:{display:"none"}}," Press enter or space to select a node. "+n.toDisplayString(n.unref(o)?"":"You can then use the arrow keys to move the node around.")+" You can then use the arrow keys to move the node around, press delete to remove it and press escape to cancel. ",9,AS),n.createElementVNode("div",{id:`${n.unref(Zd)}-${n.unref(t)}`,style:{display:"none"}}," Press enter or space to select an edge. You can then press delete to remove it or press escape to cancel. ",8,TS),n.unref(o)?n.createCommentVNode("",!0):(n.openBlock(),n.createElementBlock("div",{key:0,id:`${n.unref(nN)}-${n.unref(t)}`,"aria-live":"assertive","aria-atomic":"true",style:{position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(100%)"}},n.toDisplayString(n.unref(r)),9,PS))],64))}});function $S(){const e=xe();n.watch(()=>e.viewportHelper.value.viewportInitialized,t=>{t&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function BS(e,t,o){return o===ge.Left?e-t:o===ge.Right?e+t:e}function VS(e,t,o){return o===ge.Top?e-t:o===ge.Bottom?e+t:e}const tl=function({radius:e=10,centerX:t=0,centerY:o=0,position:r=ge.Top,type:i}){return n.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:BS(t,e,r),cy:VS(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};tl.props=["radius","centerX","centerY","position","type"],tl.compatConfig={MODE:3};const ju=tl,RS=n.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:t,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:u,findNode:f,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:h,elementsSelectable:w,edgesUpdatable:g,edgesFocusable:_,hooks:b}=xe(),y=n.computed(()=>u(e.id)),{emit:C,on:T}=ON(y.value,a),k=n.inject(Xr),S=n.getCurrentInstance(),I=n.ref(!1),B=n.ref(!1),W=n.ref(""),M=n.ref(null),v=n.ref("source"),N=n.ref(null),E=n.toRef(()=>typeof y.value.selectable>"u"?w.value:y.value.selectable),D=n.toRef(()=>typeof y.value.updatable>"u"?g.value:y.value.updatable),O=n.toRef(()=>typeof y.value.focusable>"u"?_.value:y.value.focusable);n.provide(TN,e.id),n.provide(PN,N);const q=n.computed(()=>y.value.class instanceof Function?y.value.class(y.value):y.value.class),j=n.computed(()=>y.value.style instanceof Function?y.value.style(y.value):y.value.style),F=n.computed(()=>{const x=y.value.type||"default",A=k==null?void 0:k[`edge-${x}`];if(A)return A;let V=y.value.template??c.value[x];if(typeof V=="string"&&S){const L=Object.keys(S.appContext.components);L&&L.includes(x)&&(V=n.resolveComponent(x,!1))}return V&&typeof V!="string"?V:(a.error(new Ke(Ve.EDGE_TYPE_MISSING,V)),!1)}),{handlePointerDown:R}=Iu({nodeId:W,handleId:M,type:v,isValidConnection:p,edgeUpdaterType:v,onEdgeUpdate:de,onEdgeUpdateEnd:ee});return()=>{const x=f(y.value.source),A=f(y.value.target),V="pathOptions"in y.value?y.value.pathOptions:{};if(!x&&!A)return a.error(new Ke(Ve.EDGE_SOURCE_TARGET_MISSING,y.value.id,y.value.source,y.value.target)),null;if(!x)return a.error(new Ke(Ve.EDGE_SOURCE_MISSING,y.value.id,y.value.source)),null;if(!A)return a.error(new Ke(Ve.EDGE_TARGET_MISSING,y.value.id,y.value.target)),null;if(!y.value||y.value.hidden||x.hidden||A.hidden)return null;let L;r.value===Ut.Strict?L=x.handleBounds.source:L=[...x.handleBounds.source||[],...x.handleBounds.target||[]];const Z=_u(L,y.value.sourceHandle);let te;r.value===Ut.Strict?te=A.handleBounds.target:te=[...A.handleBounds.target||[],...A.handleBounds.source||[]];const K=_u(te,y.value.targetHandle),J=(Z==null?void 0:Z.position)||ge.Bottom,G=(K==null?void 0:K.position)||ge.Top,{x:ie,y:le}=Kn(x,Z,J),{x:se,y:we}=Kn(A,K,G);return y.value.sourceX=ie,y.value.sourceY=le,y.value.targetX=se,y.value.targetY=we,n.h("g",{ref:N,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${F.value===!1?"default":y.value.type||"default"}`,s.value,q.value,{updating:I.value,selected:y.value.selected,animated:y.value.animated,inactive:!E.value&&!b.value.edgeClick.hasListeners()}],tabIndex:O.value?0:void 0,"aria-label":y.value.ariaLabel===null?void 0:y.value.ariaLabel??`Edge from ${y.value.source} to ${y.value.target}`,"aria-describedby":O.value?`${Zd}-${t}`:void 0,"aria-roledescription":"edge",role:O.value?"group":"img",...y.value.domAttributes,onClick:Y,onContextmenu:$,onDblclick:z,onMouseenter:X,onMousemove:Q,onMouseleave:ne,onKeyDown:O.value?P:void 0},[B.value?null:n.h(F.value===!1?c.value.default:F.value,{id:e.id,sourceNode:x,targetNode:A,source:y.value.source,target:y.value.target,type:y.value.type,updatable:D.value,selected:y.value.selected,animated:y.value.animated,label:y.value.label,labelStyle:y.value.labelStyle,labelShowBg:y.value.labelShowBg,labelBgStyle:y.value.labelBgStyle,labelBgPadding:y.value.labelBgPadding,labelBgBorderRadius:y.value.labelBgBorderRadius,data:y.value.data,events:{...y.value.events,...T},style:j.value,markerStart:`url('#${Oo(y.value.markerStart,t)}')`,markerEnd:`url('#${Oo(y.value.markerEnd,t)}')`,sourcePosition:J,targetPosition:G,sourceX:ie,sourceY:le,targetX:se,targetY:we,sourceHandleId:y.value.sourceHandle,targetHandleId:y.value.targetHandle,interactionWidth:y.value.interactionWidth,...V}),[D.value==="source"||D.value===!0?[n.h("g",{onMousedown:ue,onMouseenter:U,onMouseout:re},n.h(ju,{position:J,centerX:ie,centerY:le,radius:i.value,type:"source","data-type":"source"}))]:null,D.value==="target"||D.value===!0?[n.h("g",{onMousedown:me,onMouseenter:U,onMouseout:re},n.h(ju,{position:G,centerX:se,centerY:we,radius:i.value,type:"target","data-type":"target"}))]:null]])};function U(){I.value=!0}function re(){I.value=!1}function de(x,A){C.update({event:x,edge:y.value,connection:A})}function ee(x){C.updateEnd({event:x,edge:y.value}),B.value=!1}function oe(x,A){x.button===0&&(B.value=!0,W.value=A?y.value.target:y.value.source,M.value=(A?y.value.targetHandle:y.value.sourceHandle)??null,v.value=A?"target":"source",C.updateStart({event:x,edge:y.value}),R(x))}function Y(x){var A;const V={event:x,edge:y.value};E.value&&(l.value=!1,y.value.selected&&m.value?(d([y.value]),(A=N.value)==null||A.blur()):o([y.value])),C.click(V)}function $(x){C.contextMenu({event:x,edge:y.value})}function z(x){C.doubleClick({event:x,edge:y.value})}function X(x){C.mouseEnter({event:x,edge:y.value})}function Q(x){C.mouseMove({event:x,edge:y.value})}function ne(x){C.mouseLeave({event:x,edge:y.value})}function ue(x){oe(x,!0)}function me(x){oe(x,!1)}function P(x){var A;!h.value&&Jd.includes(x.key)&&E.value&&(x.key==="Escape"?((A=N.value)==null||A.blur(),d([u(e.id)])):o([u(e.id)]))}}}),DS=n.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:t,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:u,findNode:f}=xe(),p=(e=n.inject(Xr))==null?void 0:e["connection-line"],m=n.computed(()=>{var b;return f((b=r.value)==null?void 0:b.nodeId)}),h=n.computed(()=>{var b;return f((b=i.value)==null?void 0:b.nodeId)??null}),w=n.computed(()=>({x:(a.value.x-u.value.x)/u.value.zoom,y:(a.value.y-u.value.y)/u.value.zoom})),g=n.computed(()=>c.value.markerStart?`url(#${Oo(c.value.markerStart,t)})`:""),_=n.computed(()=>c.value.markerEnd?`url(#${Oo(c.value.markerEnd,t)})`:"");return()=>{var b,y,C;if(!m.value||!r.value)return null;const T=r.value.id,k=r.value.type,S=m.value.handleBounds;let I=(S==null?void 0:S[k])??[];if(o.value===Ut.Loose){const j=(S==null?void 0:S[k==="source"?"target":"source"])??[];I=[...I,...j]}if(!I)return null;const B=(T?I.find(j=>j.id===T):I[0])??null,W=(B==null?void 0:B.position)??ge.Top,{x:M,y:v}=Kn(m.value,B,W);let N=null;h.value&&(o.value===Ut.Strict?N=((b=h.value.handleBounds[k==="source"?"target":"source"])==null?void 0:b.find(j=>{var F;return j.id===((F=i.value)==null?void 0:F.id)}))||null:N=((y=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:y.find(j=>{var F;return j.id===((F=i.value)==null?void 0:F.id)}))||null);const E=((C=i.value)==null?void 0:C.position)??(W?Ya[W]:null);if(!W||!E)return null;const D=l.value??c.value.type??pn.Bezier;let O="";const q={sourceX:M,sourceY:v,sourcePosition:W,targetX:w.value.x,targetY:w.value.y,targetPosition:E};return D===pn.Bezier?[O]=Mu(q):D===pn.Step?[O]=el({...q,borderRadius:0}):D===pn.SmoothStep?[O]=el(q):D===pn.SimpleBezier?[O]=Lu(q):O=`M${M},${v} ${w.value.x},${w.value.y}`,n.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},n.h("g",{class:"vue-flow__connection"},p?n.h(p,{sourceX:M,sourceY:v,sourcePosition:W,targetX:w.value.x,targetY:w.value.y,targetPosition:E,sourceNode:m.value,sourceHandle:B,targetNode:h.value,targetHandle:N,markerEnd:_.value,markerStart:g.value,connectionStatus:d.value}):n.h("path",{d:O,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":_.value,"marker-start":g.value})))}}}),MS=["id","markerWidth","markerHeight","markerUnits","orient"],FS={name:"MarkerType",compatConfig:{MODE:3}},LS=n.defineComponent({...FS,props:{id:{},type:{},color:{default:"none"},width:{default:12.5},height:{default:12.5},markerUnits:{default:"strokeWidth"},orient:{default:"auto-start-reverse"},strokeWidth:{default:1}},setup(e){return(t,o)=>(n.openBlock(),n.createElementBlock("marker",{id:t.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${t.width}`,markerHeight:`${t.height}`,markerUnits:t.markerUnits,orient:t.orient},[t.type===n.unref(Kr).ArrowClosed?(n.openBlock(),n.createElementBlock("polyline",{key:0,style:n.normalizeStyle({stroke:t.color,fill:t.color,strokeWidth:t.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):n.createCommentVNode("",!0),t.type===n.unref(Kr).Arrow?(n.openBlock(),n.createElementBlock("polyline",{key:1,style:n.normalizeStyle({stroke:t.color,strokeWidth:t.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):n.createCommentVNode("",!0)],8,MS))}}),US={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},KS={name:"MarkerDefinitions",compatConfig:{MODE:3}},GS=n.defineComponent({...KS,setup(e){const{id:t,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=xe(),a=n.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const u=Oo(d,t);l.has(u)||(typeof d=="object"?s.push({...d,id:u,color:d.color||i.value}):s.push({id:u,color:i.value,type:d}),l.add(u))}};for(const d of[r.value.markerEnd,r.value.markerStart])c(d);for(const d of o.value)for(const u of[d.markerStart,d.markerEnd])c(u);return s.sort((d,u)=>d.id.localeCompare(u.id))});return(l,s)=>(n.openBlock(),n.createElementBlock("svg",US,[n.createElementVNode("defs",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(a.value,c=>(n.openBlock(),n.createBlock(LS,{id:c.id,key:c.id,type:c.type,color:c.color,width:c.width,height:c.height,markerUnits:c.markerUnits,"stroke-width":c.strokeWidth,orient:c.orient},null,8,["id","type","color","width","height","markerUnits","stroke-width","orient"]))),128))])]))}}),jS={name:"Edges",compatConfig:{MODE:3}},qS=n.defineComponent({...jS,setup(e){const{findNode:t,getEdges:o,elevateEdgesOnSelect:r}=xe();return(i,a)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(GS),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(o),l=>(n.openBlock(),n.createElementBlock("svg",{key:l.id,class:"vue-flow__edges vue-flow__container",style:n.normalizeStyle({zIndex:n.unref(hN)(l,n.unref(t),n.unref(r))})},[n.createVNode(n.unref(RS),{id:l.id},null,8,["id"])],4))),128)),n.createVNode(n.unref(DS))],64))}}),zS=n.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:t,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:u,getNodeTypes:f,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:h,ariaLiveMessage:w,snapToGrid:g,snapGrid:_,nodeDragThreshold:b,nodesDraggable:y,elementsSelectable:C,nodesConnectable:T,nodesFocusable:k,hooks:S}=xe(),I=n.ref(null);n.provide(Tu,I),n.provide(Au,e.id);const B=n.inject(Xr),W=n.getCurrentInstance(),M=$u(),{node:v,parentNode:N}=Ou(e.id),{emit:E,on:D}=RN(v,l),O=n.toRef(()=>typeof v.draggable>"u"?y.value:v.draggable),q=n.toRef(()=>typeof v.selectable>"u"?C.value:v.selectable),j=n.toRef(()=>typeof v.connectable>"u"?T.value:v.connectable),F=n.toRef(()=>typeof v.focusable>"u"?k.value:v.focusable),R=n.computed(()=>q.value||O.value||S.value.nodeClick.hasListeners()||S.value.nodeDoubleClick.hasListeners()||S.value.nodeMouseEnter.hasListeners()||S.value.nodeMouseMove.hasListeners()||S.value.nodeMouseLeave.hasListeners()),U=n.toRef(()=>!!v.dimensions.width&&!!v.dimensions.height),re=n.computed(()=>{const A=v.type||"default",V=B==null?void 0:B[`node-${A}`];if(V)return V;let L=v.template||f.value[A];if(typeof L=="string"&&W){const Z=Object.keys(W.appContext.components);Z&&Z.includes(A)&&(L=n.resolveComponent(A,!1))}return L&&typeof L!="string"?L:(l.error(new Ke(Ve.NODE_TYPE_MISSING,L)),!1)}),de=Pu({id:e.id,el:I,disabled:()=>!O.value,selectable:q,dragHandle:()=>v.dragHandle,onStart(A){E.dragStart(A)},onDrag(A){E.drag(A)},onStop(A){E.dragStop(A)},onClick(A){P(A)}}),ee=n.computed(()=>v.class instanceof Function?v.class(v):v.class),oe=n.computed(()=>{const A=(v.style instanceof Function?v.style(v):v.style)||{},V=v.width instanceof Function?v.width(v):v.width,L=v.height instanceof Function?v.height(v):v.height;return!A.width&&V&&(A.width=typeof V=="string"?V:`${V}px`),!A.height&&L&&(A.height=typeof L=="string"?L:`${L}px`),A}),Y=n.toRef(()=>Number(v.zIndex??oe.value.zIndex??0));return u(A=>{(A.includes(e.id)||!A.length)&&z()}),n.onMounted(()=>{n.watch(()=>v.hidden,(A=!1,V,L)=>{!A&&I.value&&(e.resizeObserver.observe(I.value),L(()=>{I.value&&e.resizeObserver.unobserve(I.value)}))},{immediate:!0,flush:"post"})}),n.watch([()=>v.type,()=>v.sourcePosition,()=>v.targetPosition],()=>{n.nextTick(()=>{d([{id:e.id,nodeElement:I.value,forceUpdate:!0}])})}),n.watch([()=>v.position.x,()=>v.position.y,()=>{var A;return(A=N.value)==null?void 0:A.computedPosition.x},()=>{var A;return(A=N.value)==null?void 0:A.computedPosition.y},()=>{var A;return(A=N.value)==null?void 0:A.computedPosition.z},Y,()=>v.selected,()=>v.dimensions.height,()=>v.dimensions.width,()=>{var A;return(A=N.value)==null?void 0:A.dimensions.height},()=>{var A;return(A=N.value)==null?void 0:A.dimensions.width}],([A,V,L,Z,te,K])=>{const J={x:A,y:V,z:K+(m.value&&v.selected?1e3:0)};typeof L<"u"&&typeof Z<"u"?v.computedPosition=dN({x:L,y:Z,z:te},J):v.computedPosition=J},{flush:"post",immediate:!0}),n.watch([()=>v.extent,p],([A,V],[L,Z])=>{(A!==L||V!==Z)&&$()}),v.extent==="parent"||typeof v.extent=="object"&&"range"in v.extent&&v.extent.range==="parent"?ba(()=>U).toBe(!0).then($):$(),()=>v.hidden?null:n.h("div",{ref:I,"data-id":v.id,class:["vue-flow__node",`vue-flow__node-${re.value===!1?"default":v.type||"default"}`,{[o.value]:O.value,dragging:de==null?void 0:de.value,draggable:O.value,selected:v.selected,selectable:q.value,parent:v.isParent},ee.value],style:{visibility:U.value?"visible":"hidden",zIndex:v.computedPosition.z??Y.value,transform:`translate(${v.computedPosition.x}px,${v.computedPosition.y}px)`,pointerEvents:R.value?"all":"none",...oe.value},tabIndex:F.value?0:void 0,role:F.value?"group":void 0,"aria-describedby":h.value?void 0:`${Xd}-${t}`,"aria-label":v.ariaLabel,"aria-roledescription":"node",...v.domAttributes,onMouseenter:X,onMousemove:Q,onMouseleave:ne,onContextmenu:ue,onClick:P,onDblclick:me,onKeydown:x},[n.h(re.value===!1?f.value.default:re.value,{id:v.id,type:v.type,data:v.data,events:{...v.events,...D},selected:v.selected,resizing:v.resizing,dragging:de.value,connectable:j.value,position:v.computedPosition,dimensions:v.dimensions,isValidTargetPos:v.isValidTargetPos,isValidSourcePos:v.isValidSourcePos,parent:v.parentNode,parentNodeId:v.parentNode,zIndex:v.computedPosition.z??Y.value,targetPosition:v.targetPosition,sourcePosition:v.sourcePosition,label:v.label,dragHandle:v.dragHandle,onUpdateNodeInternals:z})]);function $(){const A=v.computedPosition,{computedPosition:V,position:L}=qa(v,g.value?Yr(A,_.value):A,l.error,p.value,N.value);(v.computedPosition.x!==V.x||v.computedPosition.y!==V.y)&&(v.computedPosition={...v.computedPosition,...V}),(v.position.x!==L.x||v.position.y!==L.y)&&(v.position=L)}function z(){I.value&&d([{id:e.id,nodeElement:I.value,forceUpdate:!0}])}function X(A){de!=null&&de.value||E.mouseEnter({event:A,node:v})}function Q(A){de!=null&&de.value||E.mouseMove({event:A,node:v})}function ne(A){de!=null&&de.value||E.mouseLeave({event:A,node:v})}function ue(A){return E.contextMenu({event:A,node:v})}function me(A){return E.doubleClick({event:A,node:v})}function P(A){q.value&&(!r.value||!O.value||b.value>0)&&Wa(v,a.value,c,s,i,!1,I.value),E.click({event:A,node:v})}function x(A){if(!(Ua(A)||h.value))if(Jd.includes(A.key)&&q.value){const V=A.key==="Escape";Wa(v,a.value,c,s,i,V,I.value)}else O.value&&v.selected&&Un[A.key]&&(A.preventDefault(),w.value=`Moved selected node ${A.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~v.position.x}, y: ${~~v.position.y}`,M({x:Un[A.key].x,y:Un[A.key].y},A.shiftKey))}}});function HS(e={includeHiddenNodes:!1}){const{nodes:t}=xe();return n.computed(()=>{if(t.value.length===0)return!1;for(const o of t.value)if((e.includeHiddenNodes||!o.hidden)&&((o==null?void 0:o.handleBounds)===void 0||o.dimensions.width===0||o.dimensions.height===0))return!1;return!0})}const YS={class:"vue-flow__nodes vue-flow__container"},WS={name:"Nodes",compatConfig:{MODE:3}},XS=n.defineComponent({...WS,setup(e){const{getNodes:t,updateNodeDimensions:o,emits:r}=xe(),i=HS(),a=n.ref();return n.watch(i,l=>{l&&n.nextTick(()=>{r.nodesInitialized(t.value)})},{immediate:!0}),n.onMounted(()=>{a.value=new ResizeObserver(l=>{const s=l.map(c=>({id:c.target.getAttribute("data-id"),nodeElement:c.target,forceUpdate:!0}));n.nextTick(()=>o(s))})}),n.onBeforeUnmount(()=>{var l;return(l=a.value)==null?void 0:l.disconnect()}),(l,s)=>(n.openBlock(),n.createElementBlock("div",YS,[a.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(n.unref(t),(c,d,u,f)=>{const p=[c.id];if(f&&f.key===c.id&&n.isMemoSame(f,p))return f;const m=(n.openBlock(),n.createBlock(n.unref(zS),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):n.createCommentVNode("",!0)]))}});function ZS(){const{emits:e}=xe();n.onMounted(()=>{if(ku()){const t=document.querySelector(".vue-flow__pane");t&&window.getComputedStyle(t).zIndex!=="1"&&e.error(new Ke(Ve.MISSING_STYLES))}})}const JS=n.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),QS={name:"VueFlow",compatConfig:{MODE:3}},qu=n.defineComponent({...QS,props:{id:{},modelValue:{},nodes:{},edges:{},edgeTypes:{},nodeTypes:{},connectionMode:{},connectionLineType:{},connectionLineStyle:{default:void 0},connectionLineOptions:{default:void 0},connectionRadius:{},isValidConnection:{type:[Function,null],default:void 0},deleteKeyCode:{default:void 0},selectionKeyCode:{type:[Boolean,null],default:void 0},multiSelectionKeyCode:{default:void 0},zoomActivationKeyCode:{default:void 0},panActivationKeyCode:{default:void 0},snapToGrid:{type:Boolean,default:void 0},snapGrid:{},onlyRenderVisibleElements:{type:Boolean,default:void 0},edgesUpdatable:{type:[Boolean,String],default:void 0},nodesDraggable:{type:Boolean,default:void 0},nodesConnectable:{type:Boolean,default:void 0},nodeDragThreshold:{},elementsSelectable:{type:Boolean,default:void 0},selectNodesOnDrag:{type:Boolean,default:void 0},panOnDrag:{type:[Boolean,Array],default:void 0},minZoom:{},maxZoom:{},defaultViewport:{},translateExtent:{},nodeExtent:{},defaultMarkerColor:{},zoomOnScroll:{type:Boolean,default:void 0},zoomOnPinch:{type:Boolean,default:void 0},panOnScroll:{type:Boolean,default:void 0},panOnScrollSpeed:{},panOnScrollMode:{},paneClickDistance:{},zoomOnDoubleClick:{type:Boolean,default:void 0},preventScrolling:{type:Boolean,default:void 0},selectionMode:{},edgeUpdaterRadius:{},fitViewOnInit:{type:Boolean,default:void 0},connectOnClick:{type:Boolean,default:void 0},applyDefault:{type:Boolean,default:void 0},autoConnect:{type:[Boolean,Function],default:void 0},noDragClassName:{},noWheelClassName:{},noPanClassName:{},defaultEdgeOptions:{},elevateEdgesOnSelect:{type:Boolean,default:void 0},elevateNodesOnSelect:{type:Boolean,default:void 0},disableKeyboardA11y:{type:Boolean,default:void 0},edgesFocusable:{type:Boolean,default:void 0},nodesFocusable:{type:Boolean,default:void 0},autoPanOnConnect:{type:Boolean,default:void 0},autoPanOnNodeDrag:{type:Boolean,default:void 0},autoPanSpeed:{}},emits:["nodesChange","edgesChange","nodesInitialized","paneReady","init","updateNodeInternals","error","connect","connectStart","connectEnd","clickConnectStart","clickConnectEnd","moveStart","move","moveEnd","selectionDragStart","selectionDrag","selectionDragStop","selectionContextMenu","selectionStart","selectionEnd","viewportChangeStart","viewportChange","viewportChangeEnd","paneScroll","paneClick","paneContextMenu","paneMouseEnter","paneMouseMove","paneMouseLeave","edgeUpdate","edgeContextMenu","edgeMouseEnter","edgeMouseMove","edgeMouseLeave","edgeDoubleClick","edgeClick","edgeUpdateStart","edgeUpdateEnd","nodeContextMenu","nodeMouseEnter","nodeMouseMove","nodeMouseLeave","nodeDoubleClick","nodeClick","nodeDragStart","nodeDrag","nodeDragStop","miniMapNodeClick","miniMapNodeDoubleClick","miniMapNodeMouseEnter","miniMapNodeMouseMove","miniMapNodeMouseLeave","update:modelValue","update:nodes","update:edges"],setup(e,{expose:t,emit:o}){const r=e,i=n.useSlots(),a=wa(r,"modelValue",o),l=wa(r,"nodes",o),s=wa(r,"edges",o),c=xe(r),d=LN({modelValue:a,nodes:l,edges:s},r,c);return KN(o,c.hooks),$S(),ZS(),n.provide(Xr,i),n.onUnmounted(()=>{d()}),t(c),(u,f)=>(n.openBlock(),n.createElementBlock("div",{ref:n.unref(c).vueFlowRef,class:"vue-flow"},[n.createVNode(xS,null,{default:n.withCtx(()=>[n.createVNode(qS),JS,n.createVNode(XS),n.renderSlot(u.$slots,"zoom-pane")]),_:3}),n.renderSlot(u.$slots,"default"),n.createVNode(OS)],512))}}),ex={name:"Panel",compatConfig:{MODE:3}},tx=n.defineComponent({...ex,props:{position:{}},setup(e){const t=e,{userSelectionActive:o}=xe(),r=n.computed(()=>`${t.position}`.split("-"));return(i,a)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["vue-flow__panel",r.value]),style:n.normalizeStyle({pointerEvents:n.unref(o)?"none":"all"})},[n.renderSlot(i.$slots,"default")],6))}});var Mt=(e=>(e.Lines="lines",e.Dots="dots",e))(Mt||{});const zu=function({dimensions:e,size:t,color:o}){return n.h("path",{stroke:o,"stroke-width":t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},Hu=function({radius:e,color:t}){return n.h("circle",{cx:e,cy:e,r:e,fill:t})};Mt.Lines+"",Mt.Dots+"";const nx={[Mt.Dots]:"#81818a",[Mt.Lines]:"#eee"},ox=["id","x","y","width","height","patternTransform"],rx={key:2,height:"100",width:"100"},ix=["fill"],ax=["x","y","fill"],lx={name:"Background",compatConfig:{MODE:3}},sx=n.defineComponent({...lx,props:{id:{},variant:{default:()=>Mt.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:t,viewport:o}=xe(),r=n.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],d=[s*l||1,c*l||1],u=e.size*l,[f,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[f*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:u}}),i=n.toRef(()=>`pattern-${t}${e.id?`-${e.id}`:""}`),a=n.toRef(()=>e.color||e.patternColor||nx[e.variant||Mt.Dots]);return(l,s)=>(n.openBlock(),n.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:n.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[n.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[n.createElementVNode("pattern",{id:i.value,x:n.unref(o).x%r.value.scaledGap[0],y:n.unref(o).y%r.value.scaledGap[1],width:r.value.scaledGap[0],height:r.value.scaledGap[1],patternTransform:`translate(-${r.value.offset[0]},-${r.value.offset[1]})`,patternUnits:"userSpaceOnUse"},[n.renderSlot(l.$slots,"pattern",{},()=>[l.variant===n.unref(Mt).Lines?(n.openBlock(),n.createBlock(n.unref(zu),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===n.unref(Mt).Dots?(n.openBlock(),n.createBlock(n.unref(Hu),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):n.createCommentVNode("",!0),l.bgColor?(n.openBlock(),n.createElementBlock("svg",rx,[n.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,ix)])):n.createCommentVNode("",!0)])],8,ox)]),n.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,ax),n.renderSlot(l.$slots,"default",{id:i.value})],4))}}),cx={name:"ControlButton",compatConfig:{MODE:3}},dx=(e,t)=>{const o=e.__vccOpts||e;for(const[r,i]of t)o[r]=i;return o},ux={class:"vue-flow__controls-button"};function fx(e,t,o,r,i,a){return n.openBlock(),n.createElementBlock("button",ux,[n.renderSlot(e.$slots,"default")])}const oi=dx(cx,[["render",fx]]),px={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},mx=[n.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function gx(e,t){return n.openBlock(),n.createElementBlock("svg",px,mx)}const hx={render:gx},yx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},_x=[n.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function bx(e,t){return n.openBlock(),n.createElementBlock("svg",yx,_x)}const wx={render:bx},Ex={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},kx=[n.createElementVNode("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"},null,-1)];function Cx(e,t){return n.openBlock(),n.createElementBlock("svg",Ex,kx)}const vx={render:Cx},Nx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},Sx=[n.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"},null,-1)];function xx(e,t){return n.openBlock(),n.createElementBlock("svg",Nx,Sx)}const Ax={render:xx},Tx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},Px=[n.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z"},null,-1)];function Ix(e,t){return n.openBlock(),n.createElementBlock("svg",Tx,Px)}const Ox={render:Ix},$x={name:"Controls",compatConfig:{MODE:3}},Bx=n.defineComponent({...$x,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Yd.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:t}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:u,maxZoom:f}=xe(),p=n.toRef(()=>o.value||r.value||i.value),m=n.toRef(()=>d.value.zoom<=u.value),h=n.toRef(()=>d.value.zoom>=f.value);function w(){l(),t("zoomIn")}function g(){s(),t("zoomOut")}function _(){c(e.fitViewParams),t("fitView")}function b(){a(!p.value),t("interactionChange",!p.value)}return(y,C)=>(n.openBlock(),n.createBlock(n.unref(tx),{class:"vue-flow__controls",position:y.position},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"top"),y.showZoom?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.renderSlot(y.$slots,"control-zoom-in",{},()=>[n.createVNode(oi,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:w},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-zoom-in",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(hx))))])]),_:3},8,["disabled"])]),n.renderSlot(y.$slots,"control-zoom-out",{},()=>[n.createVNode(oi,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-zoom-out",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(wx))))])]),_:3},8,["disabled"])])],64)):n.createCommentVNode("",!0),y.showFitView?n.renderSlot(y.$slots,"control-fit-view",{key:1},()=>[n.createVNode(oi,{class:"vue-flow__controls-fitview",onClick:_},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-fit-view",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(vx))))])]),_:3})]):n.createCommentVNode("",!0),y.showInteractive?n.renderSlot(y.$slots,"control-interactive",{key:2},()=>[y.showInteractive?(n.openBlock(),n.createBlock(oi,{key:0,class:"vue-flow__controls-interactive",onClick:b},{default:n.withCtx(()=>[p.value?n.renderSlot(y.$slots,"icon-unlock",{key:0},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Ox))))]):n.createCommentVNode("",!0),p.value?n.createCommentVNode("",!0):n.renderSlot(y.$slots,"icon-lock",{key:1},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Ax))))])]),_:3})):n.createCommentVNode("",!0)]):n.createCommentVNode("",!0),n.renderSlot(y.$slots,"default")]),_:3},8,["position"]))}});function Vx(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Rx="\0",yn="\0",Yu="";let Dx=class{constructor(t){Le(this,"_isDirected",!0);Le(this,"_isMultigraph",!1);Le(this,"_isCompound",!1);Le(this,"_label");Le(this,"_defaultNodeLabelFn",()=>{});Le(this,"_defaultEdgeLabelFn",()=>{});Le(this,"_nodes",{});Le(this,"_in",{});Le(this,"_preds",{});Le(this,"_out",{});Le(this,"_sucs",{});Le(this,"_edgeObjs",{});Le(this,"_edgeLabels",{});Le(this,"_nodeCount",0);Le(this,"_edgeCount",0);Le(this,"_parent");Le(this,"_children");t&&(this._isDirected=Object.hasOwn(t,"directed")?t.directed:!0,this._isMultigraph=Object.hasOwn(t,"multigraph")?t.multigraph:!1,this._isCompound=Object.hasOwn(t,"compound")?t.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[yn]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(t){return this._label=t,this}graph(){return this._label}setDefaultNodeLabel(t){return this._defaultNodeLabelFn=t,typeof t!="function"&&(this._defaultNodeLabelFn=()=>t),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var t=this;return this.nodes().filter(o=>Object.keys(t._in[o]).length===0)}sinks(){var t=this;return this.nodes().filter(o=>Object.keys(t._out[o]).length===0)}setNodes(t,o){var r=arguments,i=this;return t.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(t,o){return Object.hasOwn(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=o),this):(this._nodes[t]=arguments.length>1?o:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=yn,this._children[t]={},this._children[yn][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)}node(t){return this._nodes[t]}hasNode(t){return Object.hasOwn(this._nodes,t)}removeNode(t){var o=this;if(Object.hasOwn(this._nodes,t)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],this.children(t).forEach(function(i){o.setParent(i)}),delete this._children[t]),Object.keys(this._in[t]).forEach(r),delete this._in[t],delete this._preds[t],Object.keys(this._out[t]).forEach(r),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this}setParent(t,o){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(o===void 0)o=yn;else{o+="";for(var r=o;r!==void 0;r=this.parent(r))if(r===t)throw new Error("Setting "+o+" as parent of "+t+" would create a cycle");this.setNode(o)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=o,this._children[o][t]=!0,this}_removeFromParentsChildList(t){delete this._children[this._parent[t]][t]}parent(t){if(this._isCompound){var o=this._parent[t];if(o!==yn)return o}}children(t=yn){if(this._isCompound){var o=this._children[t];if(o)return Object.keys(o)}else{if(t===yn)return this.nodes();if(this.hasNode(t))return[]}}predecessors(t){var o=this._preds[t];if(o)return Object.keys(o)}successors(t){var o=this._sucs[t];if(o)return Object.keys(o)}neighbors(t){var o=this.predecessors(t);if(o){const i=new Set(o);for(var r of this.successors(t))i.add(r);return Array.from(i.values())}}isLeaf(t){var o;return this.isDirected()?o=this.successors(t):o=this.neighbors(t),o.length===0}filterNodes(t){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});o.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([l,s]){t(l)&&o.setNode(l,s)}),Object.values(this._edgeObjs).forEach(function(l){o.hasNode(l.v)&&o.hasNode(l.w)&&o.setEdge(l,r.edge(l))});var i={};function a(l){var s=r.parent(l);return s===void 0||o.hasNode(s)?(i[l]=s,s):s in i?i[s]:a(s)}return this._isCompound&&o.nodes().forEach(l=>o.setParent(l,a(l))),o}setDefaultEdgeLabel(t){return this._defaultEdgeLabelFn=t,typeof t!="function"&&(this._defaultEdgeLabelFn=()=>t),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(t,o){var r=this,i=arguments;return t.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var t,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(t=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(t=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),t=""+t,o=""+o,r!==void 0&&(r=""+r);var s=$o(this._isDirected,t,o,r);if(Object.hasOwn(this._edgeLabels,s))return a&&(this._edgeLabels[s]=i),this;if(r!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(t,o,r);var c=Mx(this._isDirected,t,o,r);return t=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Wu(this._preds[o],t),Wu(this._sucs[t],o),this._in[o][s]=c,this._out[t][s]=c,this._edgeCount++,this}edge(t,o,r){var i=arguments.length===1?nl(this._isDirected,arguments[0]):$o(this._isDirected,t,o,r);return this._edgeLabels[i]}edgeAsObj(){const t=this.edge(...arguments);return typeof t!="object"?{label:t}:t}hasEdge(t,o,r){var i=arguments.length===1?nl(this._isDirected,arguments[0]):$o(this._isDirected,t,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(t,o,r){var i=arguments.length===1?nl(this._isDirected,arguments[0]):$o(this._isDirected,t,o,r),a=this._edgeObjs[i];return a&&(t=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],Xu(this._preds[o],t),Xu(this._sucs[t],o),delete this._in[o][i],delete this._out[t][i],this._edgeCount--),this}inEdges(t,o){var r=this._in[t];if(r){var i=Object.values(r);return o?i.filter(a=>a.v===o):i}}outEdges(t,o){var r=this._out[t];if(r){var i=Object.values(r);return o?i.filter(a=>a.w===o):i}}nodeEdges(t,o){var r=this.inEdges(t,o);if(r)return r.concat(this.outEdges(t,o))}};function Wu(e,t){e[t]?e[t]++:e[t]=1}function Xu(e,t){--e[t]||delete e[t]}function $o(e,t,o,r){var i=""+t,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Yu+a+Yu+(r===void 0?Rx:r)}function Mx(e,t,o,r){var i=""+t,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}var s={v:i,w:a};return r&&(s.name=r),s}function nl(e,t){return $o(e,t.v,t.w,t.name)}var ol=Dx,Fx="2.2.4",Lx={Graph:ol,version:Fx},Ux=ol,Kx={write:Gx,read:zx};function Gx(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:jx(e),edges:qx(e)};return e.graph()!==void 0&&(t.value=structuredClone(e.graph())),t}function jx(e){return e.nodes().map(function(t){var o=e.node(t),r=e.parent(t),i={v:t};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function qx(e){return e.edges().map(function(t){var o=e.edge(t),r={v:t.v,w:t.w};return t.name!==void 0&&(r.name=t.name),o!==void 0&&(r.value=o),r})}function zx(e){var t=new Ux(e.options).setGraph(e.value);return e.nodes.forEach(function(o){t.setNode(o.v,o.value),o.parent&&t.setParent(o.v,o.parent)}),e.edges.forEach(function(o){t.setEdge({v:o.v,w:o.w,name:o.name},o.value)}),t}var Hx=Yx;function Yx(e){var t={},o=[],r;function i(a){Object.hasOwn(t,a)||(t[a]=!0,r.push(a),e.successors(a).forEach(i),e.predecessors(a).forEach(i))}return e.nodes().forEach(function(a){r=[],i(a),r.length&&o.push(r)}),o}var Zu=class{constructor(){Le(this,"_arr",[]);Le(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(t){return t.key})}has(t){return Object.hasOwn(this._keyIndices,t)}priority(t){var o=this._keyIndices[t];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(t,o){var r=this._keyIndices;if(t=String(t),!Object.hasOwn(r,t)){var i=this._arr,a=i.length;return r[t]=a,i.push({key:t,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key}decrease(t,o){var r=this._keyIndices[t];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(t){var o=this._arr,r=2*t,i=r+1,a=t;r<o.length&&(a=o[r].priority<o[a].priority?r:a,i<o.length&&(a=o[i].priority<o[a].priority?i:a),a!==t&&(this._swap(t,a),this._heapify(a)))}_decrease(t){for(var o=this._arr,r=o[t].priority,i;t!==0&&(i=t>>1,!(o[i].priority<r));)this._swap(t,i),t=i}_swap(t,o){var r=this._arr,i=this._keyIndices,a=r[t],l=r[o];r[t]=l,r[o]=a,i[l.key]=t,i[a.key]=o}},Wx=Zu,Ju=Zx,Xx=()=>1;function Zx(e,t,o,r){return Jx(e,String(t),o||Xx,r||function(i){return e.outEdges(i)})}function Jx(e,t,o,r){var i={},a=new Wx,l,s,c=function(d){var u=d.v!==l?d.v:d.w,f=i[u],p=o(d),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+d+" Weight: "+p);m<f.distance&&(f.distance=m,f.predecessor=l,a.decrease(u,m))};for(e.nodes().forEach(function(d){var u=d===t?0:Number.POSITIVE_INFINITY;i[d]={distance:u},a.add(d,u)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var Qx=Ju,eA=tA;function tA(e,t,o){return e.nodes().reduce(function(r,i){return r[i]=Qx(e,i,t,o),r},{})}var Qu=nA;function nA(e){var t=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:t,index:t++};if(o.push(l),e.successors(l).forEach(function(u){Object.hasOwn(r,u)?r[u].onStack&&(s.lowlink=Math.min(s.lowlink,r[u].index)):(a(u),s.lowlink=Math.min(s.lowlink,r[u].lowlink))}),s.lowlink===s.index){var c=[],d;do d=o.pop(),r[d].onStack=!1,c.push(d);while(l!==d);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var oA=Qu,rA=iA;function iA(e){return oA(e).filter(function(t){return t.length>1||t.length===1&&e.hasEdge(t[0],t[0])})}var aA=sA,lA=()=>1;function sA(e,t,o){return cA(e,t||lA,o||function(r){return e.outEdges(r)})}function cA(e,t,o){var r={},i=e.nodes();return i.forEach(function(a){r[a]={},r[a][a]={distance:0},i.forEach(function(l){a!==l&&(r[a][l]={distance:Number.POSITIVE_INFINITY})}),o(a).forEach(function(l){var s=l.v===a?l.w:l.v,c=t(l);r[a][s]={distance:c,predecessor:a}})}),i.forEach(function(a){var l=r[a];i.forEach(function(s){var c=r[s];i.forEach(function(d){var u=c[a],f=l[d],p=c[d],m=u.distance+f.distance;m<p.distance&&(p.distance=m,p.predecessor=f.predecessor)})})}),r}function ef(e){var t={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new rl;Object.hasOwn(t,a)||(o[a]=!0,t[a]=!0,e.predecessors(a).forEach(i),delete o[a],r.push(a))}if(e.sinks().forEach(i),Object.keys(t).length!==e.nodeCount())throw new rl;return r}class rl extends Error{constructor(){super(...arguments)}}var tf=ef;ef.CycleException=rl;var nf=tf,dA=uA;function uA(e){try{nf(e)}catch(t){if(t instanceof nf.CycleException)return!1;throw t}return!0}var of=fA;function fA(e,t,o){Array.isArray(t)||(t=[t]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?pA:mA,a=[],l={};return t.forEach(s=>{if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,r,l,a)}),a}function pA(e,t,o,r){for(var i=[[e,!1]];i.length>0;){var a=i.pop();a[1]?r.push(a[0]):Object.hasOwn(o,a[0])||(o[a[0]]=!0,i.push([a[0],!0]),rf(t(a[0]),l=>i.push([l,!1])))}}function mA(e,t,o,r){for(var i=[e];i.length>0;){var a=i.pop();Object.hasOwn(o,a)||(o[a]=!0,r.push(a),rf(t(a),l=>i.push(l)))}}function rf(e,t){for(var o=e.length;o--;)t(e[o],o,e);return e}var gA=of,hA=yA;function yA(e,t){return gA(e,t,"post")}var _A=of,bA=wA;function wA(e,t){return _A(e,t,"pre")}var EA=ol,kA=Zu,CA=vA;function vA(e,t){var o=new EA,r={},i=new kA,a;function l(c){var d=c.v===a?c.w:c.v,u=i.priority(d);if(u!==void 0){var f=t(c);f<u&&(r[d]=a,i.decrease(d,f))}}if(e.nodeCount()===0)return o;e.nodes().forEach(function(c){i.add(c,Number.POSITIVE_INFINITY),o.setNode(c)}),i.decrease(e.nodes()[0],0);for(var s=!1;i.size()>0;){if(a=i.removeMin(),Object.hasOwn(r,a))o.setEdge(a,r[a]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(a).forEach(l)}return o}var NA={components:Hx,dijkstra:Ju,dijkstraAll:eA,findCycles:rA,floydWarshall:aA,isAcyclic:dA,postorder:hA,preorder:bA,prim:CA,tarjan:Qu,topsort:tf},af=Lx,ht={Graph:af.Graph,json:Kx,alg:NA,version:af.version};let SA=class{constructor(){let t={};t._next=t._prev=t,this._sentinel=t}dequeue(){let t=this._sentinel,o=t._prev;if(o!==t)return lf(o),o}enqueue(t){let o=this._sentinel;t._prev&&t._next&&lf(t),t._next=o._next,o._next._prev=t,o._next=t,t._prev=o}toString(){let t=[],o=this._sentinel,r=o._prev;for(;r!==o;)t.push(JSON.stringify(r,xA)),r=r._prev;return"["+t.join(", ")+"]"}};function lf(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function xA(e,t){if(e!=="_next"&&e!=="_prev")return t}var AA=SA;let TA=ht.Graph,PA=AA;var IA=$A;let OA=()=>1;function $A(e,t){if(e.nodeCount()<=1)return[];let o=VA(e,t||OA);return BA(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function BA(e,t,o){let r=[],i=t[t.length-1],a=t[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)il(e,t,o,l);for(;l=i.dequeue();)il(e,t,o,l);if(e.nodeCount()){for(let s=t.length-2;s>0;--s)if(l=t[s].dequeue(),l){r=r.concat(il(e,t,o,l,!0));break}}}return r}function il(e,t,o,r,i){let a=i?[]:void 0;return e.inEdges(r.v).forEach(l=>{let s=e.edge(l),c=e.node(l.v);i&&a.push({v:l.v,w:l.w}),c.out-=s,al(t,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,al(t,o,d)}),e.removeNode(r.v),a}function VA(e,t){let o=new TA,r=0,i=0;e.nodes().forEach(s=>{o.setNode(s,{v:s,in:0,out:0})}),e.edges().forEach(s=>{let c=o.edge(s.v,s.w)||0,d=t(s),u=c+d;o.setEdge(s.v,s.w,u),i=Math.max(i,o.node(s.v).out+=d),r=Math.max(r,o.node(s.w).in+=d)});let a=RA(i+r+3).map(()=>new PA),l=r+1;return o.nodes().forEach(s=>{al(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function al(e,t,o){o.out?o.in?e[o.out-o.in+t].enqueue(o):e[e.length-1].enqueue(o):e[0].enqueue(o)}function RA(e){const t=[];for(let o=0;o<e;o++)t.push(o);return t}let sf=ht.Graph;var De={addBorderNode:qA,addDummyNode:cf,applyWithChunking:ri,asNonCompoundGraph:MA,buildLayerMatrix:KA,intersectRect:UA,mapValues:JA,maxRank:uf,normalizeRanks:GA,notime:WA,partition:HA,pick:ZA,predecessorWeights:LA,range:pf,removeEmptyRanks:jA,simplify:DA,successorWeights:FA,time:YA,uniqueId:ff,zipObject:ll};function cf(e,t,o,r){for(var i=r;e.hasNode(i);)i=ff(r);return o.dummy=t,e.setNode(i,o),i}function DA(e){let t=new sf().setGraph(e.graph());return e.nodes().forEach(o=>t.setNode(o,e.node(o))),e.edges().forEach(o=>{let r=t.edge(o.v,o.w)||{weight:0,minlen:1},i=e.edge(o);t.setEdge(o.v,o.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),t}function MA(e){let t=new sf({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(o=>{e.children(o).length||t.setNode(o,e.node(o))}),e.edges().forEach(o=>{t.setEdge(o,e.edge(o))}),t}function FA(e){let t=e.nodes().map(o=>{let r={};return e.outEdges(o).forEach(i=>{r[i.w]=(r[i.w]||0)+e.edge(i).weight}),r});return ll(e.nodes(),t)}function LA(e){let t=e.nodes().map(o=>{let r={};return e.inEdges(o).forEach(i=>{r[i.v]=(r[i.v]||0)+e.edge(i).weight}),r});return ll(e.nodes(),t)}function UA(e,t){let o=e.x,r=e.y,i=t.x-o,a=t.y-r,l=e.width/2,s=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");let c,d;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,d=s):(i<0&&(l=-l),c=l,d=l*a/i),{x:o+c,y:r+d}}function KA(e){let t=pf(uf(e)+1).map(()=>[]);return e.nodes().forEach(o=>{let r=e.node(o),i=r.rank;i!==void 0&&(t[i][r.order]=o)}),t}function GA(e){let t=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=ri(Math.min,t);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function jA(e){let t=e.nodes().map(l=>e.node(l).rank),o=ri(Math.min,t),r=[];e.nodes().forEach(l=>{let s=e.node(l).rank-o;r[s]||(r[s]=[]),r[s].push(l)});let i=0,a=e.graph().nodeRankFactor;Array.from(r).forEach((l,s)=>{l===void 0&&s%a!==0?--i:l!==void 0&&i&&l.forEach(c=>e.node(c).rank+=i)})}function qA(e,t,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),cf(e,"border",i,t)}function zA(e,t=df){const o=[];for(let r=0;r<e.length;r+=t){const i=e.slice(r,r+t);o.push(i)}return o}const df=65535;function ri(e,t){if(t.length>df){const o=zA(t);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,t)}function uf(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return ri(Math.max,o)}function HA(e,t){let o={lhs:[],rhs:[]};return e.forEach(r=>{t(r)?o.lhs.push(r):o.rhs.push(r)}),o}function YA(e,t){let o=Date.now();try{return t()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function WA(e,t){return t()}let XA=0;function ff(e){var t=++XA;return e+(""+t)}function pf(e,t,o=1){t==null&&(t=e,e=0);let r=a=>a<t;o<0&&(r=a=>t<a);const i=[];for(let a=e;r(a);a+=o)i.push(a);return i}function ZA(e,t){const o={};for(const r of t)e[r]!==void 0&&(o[r]=e[r]);return o}function JA(e,t){let o=t;return typeof t=="string"&&(o=r=>r[t]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function ll(e,t){return e.reduce((o,r,i)=>(o[r]=t[i],o),{})}let QA=IA,eT=De.uniqueId;var tT={run:nT,undo:rT};function nT(e){(e.graph().acyclicer==="greedy"?QA(e,o(e)):oT(e)).forEach(r=>{let i=e.edge(r);e.removeEdge(r),i.forwardName=r.name,i.reversed=!0,e.setEdge(r.w,r.v,i,eT("rev"))});function o(r){return i=>r.edge(i).weight}}function oT(e){let t=[],o={},r={};function i(a){Object.hasOwn(r,a)||(r[a]=!0,o[a]=!0,e.outEdges(a).forEach(l=>{Object.hasOwn(o,l.w)?t.push(l):i(l.w)}),delete o[a])}return e.nodes().forEach(i),t}function rT(e){e.edges().forEach(t=>{let o=e.edge(t);if(o.reversed){e.removeEdge(t);let r=o.forwardName;delete o.reversed,delete o.forwardName,e.setEdge(t.w,t.v,o,r)}})}let iT=De;var aT={run:lT,undo:cT};function lT(e){e.graph().dummyChains=[],e.edges().forEach(t=>sT(e,t))}function sT(e,t){let o=t.v,r=e.node(o).rank,i=t.w,a=e.node(i).rank,l=t.name,s=e.edge(t),c=s.labelRank;if(a===r+1)return;e.removeEdge(t);let d,u,f;for(f=0,++r;r<a;++f,++r)s.points=[],u={width:0,height:0,edgeLabel:s,edgeObj:t,rank:r},d=iT.addDummyNode(e,"edge",u,"_d"),r===c&&(u.width=s.width,u.height=s.height,u.dummy="edge-label",u.labelpos=s.labelpos),e.setEdge(o,d,{weight:s.weight},l),f===0&&e.graph().dummyChains.push(d),o=d;e.setEdge(o,i,{weight:s.weight},l)}function cT(e){e.graph().dummyChains.forEach(t=>{let o=e.node(t),r=o.edgeLabel,i;for(e.setEdge(o.edgeObj,r);o.dummy;)i=e.successors(t)[0],e.removeNode(t),r.points.push({x:o.x,y:o.y}),o.dummy==="edge-label"&&(r.x=o.x,r.y=o.y,r.width=o.width,r.height=o.height),t=i,o=e.node(t)})}const{applyWithChunking:dT}=De;var ii={longestPath:uT,slack:fT};function uT(e){var t={};function o(r){var i=e.node(r);if(Object.hasOwn(t,r))return i.rank;t[r]=!0;let a=e.outEdges(r).map(s=>s==null?Number.POSITIVE_INFINITY:o(s.w)-e.edge(s).minlen);var l=dT(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function fT(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var pT=ht.Graph,ai=ii.slack,mf=mT;function mT(e){var t=new pT({directed:!1}),o=e.nodes()[0],r=e.nodeCount();t.setNode(o,{});for(var i,a;gT(t,e)<r;)i=hT(t,e),a=t.hasNode(i.v)?ai(e,i):-ai(e,i),yT(t,e,a);return t}function gT(e,t){function o(r){t.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!ai(t,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function hT(e,t){return t.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=ai(t,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function yT(e,t,o){e.nodes().forEach(r=>t.node(r).rank+=o)}var _T=mf,gf=ii.slack,bT=ii.longestPath,wT=ht.alg.preorder,ET=ht.alg.postorder,kT=De.simplify,CT=_n;_n.initLowLimValues=cl,_n.initCutValues=sl,_n.calcCutValue=hf,_n.leaveEdge=_f,_n.enterEdge=bf,_n.exchangeEdges=wf;function _n(e){e=kT(e),bT(e);var t=_T(e);cl(t),sl(t,e);for(var o,r;o=_f(t);)r=bf(t,e,o),wf(t,e,o,r)}function sl(e,t){var o=ET(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>vT(e,t,r))}function vT(e,t,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=hf(e,t,o)}function hf(e,t,o){var r=e.node(o),i=r.parent,a=!0,l=t.edge(o,i),s=0;return l||(a=!1,l=t.edge(i,o)),s=l.weight,t.nodeEdges(o).forEach(c=>{var d=c.v===o,u=d?c.w:c.v;if(u!==i){var f=d===a,p=t.edge(c).weight;if(s+=f?p:-p,ST(e,o,u)){var m=e.edge(o,u).cutvalue;s+=f?-m:m}}}),s}function cl(e,t){arguments.length<2&&(t=e.nodes()[0]),yf(e,{},1,t)}function yf(e,t,o,r,i){var a=o,l=e.node(r);return t[r]=!0,e.neighbors(r).forEach(s=>{Object.hasOwn(t,s)||(o=yf(e,t,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function _f(e){return e.edges().find(t=>e.edge(t).cutvalue<0)}function bf(e,t,o){var r=o.v,i=o.w;t.hasEdge(r,i)||(r=o.w,i=o.v);var a=e.node(r),l=e.node(i),s=a,c=!1;a.lim>l.lim&&(s=l,c=!0);var d=t.edges().filter(u=>c===Ef(e,e.node(u.v),s)&&c!==Ef(e,e.node(u.w),s));return d.reduce((u,f)=>gf(t,f)<gf(t,u)?f:u)}function wf(e,t,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),cl(e),sl(e,t),NT(e,t)}function NT(e,t){var o=e.nodes().find(i=>!t.node(i).parent),r=wT(e,o);r=r.slice(1),r.forEach(i=>{var a=e.node(i).parent,l=t.edge(i,a),s=!1;l||(l=t.edge(a,i),s=!0),t.node(i).rank=t.node(a).rank+(s?l.minlen:-l.minlen)})}function ST(e,t,o){return e.hasEdge(t,o)}function Ef(e,t,o){return o.low<=t.lim&&t.lim<=o.lim}var xT=ii,kf=xT.longestPath,AT=mf,TT=CT,PT=IT;function IT(e){var t=e.graph().ranker;if(t instanceof Function)return t(e);switch(e.graph().ranker){case"network-simplex":Cf(e);break;case"tight-tree":$T(e);break;case"longest-path":OT(e);break;case"none":break;default:Cf(e)}}var OT=kf;function $T(e){kf(e),AT(e)}function Cf(e){TT(e)}var BT=VT;function VT(e){let t=DT(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=RT(e,t,i.v,i.w),l=a.path,s=a.lca,c=0,d=l[c],u=!0;for(;o!==i.w;){if(r=e.node(o),u){for(;(d=l[c])!==s&&e.node(d).maxRank<r.rank;)c++;d===s&&(u=!1)}if(!u){for(;c<l.length-1&&e.node(d=l[c+1]).minRank<=r.rank;)c++;d=l[c]}e.setParent(o,d),o=e.successors(o)[0]}})}function RT(e,t,o,r){let i=[],a=[],l=Math.min(t[o].low,t[r].low),s=Math.max(t[o].lim,t[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(t[c].low>l||s>t[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function DT(e){let t={},o=0;function r(i){let a=o;e.children(i).forEach(r),t[i]={low:a,lim:o++}}return e.children().forEach(r),t}let li=De;var MT={run:FT,cleanup:KT};function FT(e){let t=li.addDummyNode(e,"root",{},"_root"),o=LT(e),r=Object.values(o),i=li.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=t,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=UT(e)+1;e.children().forEach(s=>vf(e,t,a,l,i,o,s)),e.graph().nodeRankFactor=a}function vf(e,t,o,r,i,a,l){let s=e.children(l);if(!s.length){l!==t&&e.setEdge(t,l,{weight:0,minlen:o});return}let c=li.addBorderNode(e,"_bt"),d=li.addBorderNode(e,"_bb"),u=e.node(l);e.setParent(c,l),u.borderTop=c,e.setParent(d,l),u.borderBottom=d,s.forEach(f=>{vf(e,t,o,r,i,a,f);let p=e.node(f),m=p.borderTop?p.borderTop:f,h=p.borderBottom?p.borderBottom:f,w=p.borderTop?r:2*r,g=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:w,minlen:g,nestingEdge:!0}),e.setEdge(h,d,{weight:w,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(t,c,{weight:0,minlen:i+a[l]})}function LT(e){var t={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),t[r]=i}return e.children().forEach(r=>o(r,1)),t}function UT(e){return e.edges().reduce((t,o)=>t+e.edge(o).weight,0)}function KT(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,e.edges().forEach(o=>{var r=e.edge(o);r.nestingEdge&&e.removeEdge(o)})}let GT=De;var jT=qT;function qT(e){function t(o){let r=e.children(o),i=e.node(o);if(r.length&&r.forEach(t),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,l=i.maxRank+1;a<l;++a)Nf(e,"borderLeft","_bl",o,i,a),Nf(e,"borderRight","_br",o,i,a)}}e.children().forEach(t)}function Nf(e,t,o,r,i,a){let l={width:0,height:0,rank:a,borderType:t},s=i[t][a-1],c=GT.addDummyNode(e,"border",l,o);i[t][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var zT={adjust:HT,undo:YT};function HT(e){let t=e.graph().rankdir.toLowerCase();(t==="lr"||t==="rl")&&Sf(e)}function YT(e){let t=e.graph().rankdir.toLowerCase();(t==="bt"||t==="rl")&&WT(e),(t==="lr"||t==="rl")&&(XT(e),Sf(e))}function Sf(e){e.nodes().forEach(t=>xf(e.node(t))),e.edges().forEach(t=>xf(e.edge(t)))}function xf(e){let t=e.width;e.width=e.height,e.height=t}function WT(e){e.nodes().forEach(t=>dl(e.node(t))),e.edges().forEach(t=>{let o=e.edge(t);o.points.forEach(dl),Object.hasOwn(o,"y")&&dl(o)})}function dl(e){e.y=-e.y}function XT(e){e.nodes().forEach(t=>ul(e.node(t))),e.edges().forEach(t=>{let o=e.edge(t);o.points.forEach(ul),Object.hasOwn(o,"x")&&ul(o)})}function ul(e){let t=e.x;e.x=e.y,e.y=t}let Af=De;var ZT=JT;function JT(e){let t={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=Af.applyWithChunking(Math.max,r),a=Af.range(i+1).map(()=>[]);function l(c){if(t[c])return;t[c]=!0;let d=e.node(c);a[d.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,d)=>e.node(c).rank-e.node(d).rank).forEach(l),a}let QT=De.zipObject;var eP=tP;function tP(e,t){let o=0;for(let r=1;r<t.length;++r)o+=nP(e,t[r-1],t[r]);return o}function nP(e,t,o){let r=QT(o,o.map((d,u)=>u)),i=t.flatMap(d=>e.outEdges(d).map(u=>({pos:r[u.w],weight:e.edge(u).weight})).sort((u,f)=>u.pos-f.pos)),a=1;for(;a<o.length;)a<<=1;let l=2*a-1;a-=1;let s=new Array(l).fill(0),c=0;return i.forEach(d=>{let u=d.pos+a;s[u]+=d.weight;let f=0;for(;u>0;)u%2&&(f+=s[u+1]),u=u-1>>1,s[u]+=d.weight;c+=d.weight*f}),c}var oP=rP;function rP(e,t=[]){return t.map(o=>{let r=e.inEdges(o);if(r.length){let i=r.reduce((a,l)=>{let s=e.edge(l),c=e.node(l.v);return{sum:a.sum+s.weight*c.order,weight:a.weight+s.weight}},{sum:0,weight:0});return{v:o,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:o}})}let iP=De;var aP=lP;function lP(e,t){let o={};e.forEach((i,a)=>{let l=o[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};i.barycenter!==void 0&&(l.barycenter=i.barycenter,l.weight=i.weight)}),t.edges().forEach(i=>{let a=o[i.v],l=o[i.w];a!==void 0&&l!==void 0&&(l.indegree++,a.out.push(o[i.w]))});let r=Object.values(o).filter(i=>!i.indegree);return sP(r)}function sP(e){let t=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&cP(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();t.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return t.filter(i=>!i.merged).map(i=>iP.pick(i,["vs","i","barycenter","weight"]))}function cP(e,t){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),t.weight&&(o+=t.barycenter*t.weight,r+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}let dP=De;var uP=fP;function fP(e,t){let o=dP.partition(e,u=>Object.hasOwn(u,"barycenter")),r=o.lhs,i=o.rhs.sort((u,f)=>f.i-u.i),a=[],l=0,s=0,c=0;r.sort(pP(!!t)),c=Tf(a,i,c),r.forEach(u=>{c+=u.vs.length,a.push(u.vs),l+=u.barycenter*u.weight,s+=u.weight,c=Tf(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Tf(e,t,o){let r;for(;t.length&&(r=t[t.length-1]).i<=o;)t.pop(),e.push(r.vs),o++;return o}function pP(e){return(t,o)=>t.barycenter<o.barycenter?-1:t.barycenter>o.barycenter?1:e?o.i-t.i:t.i-o.i}let mP=oP,gP=aP,hP=uP;var yP=Pf;function Pf(e,t,o,r){let i=e.children(t),a=e.node(t),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=mP(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Pf(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&bP(p,m)}});let u=gP(d,o);_P(u,c);let f=hP(u,r);if(l&&(f.vs=[l,f.vs,s].flat(!0),e.predecessors(l).length)){let p=e.node(e.predecessors(l)[0]),m=e.node(e.predecessors(s)[0]);Object.hasOwn(f,"barycenter")||(f.barycenter=0,f.weight=0),f.barycenter=(f.barycenter*f.weight+p.order+m.order)/(f.weight+2),f.weight+=2}return f}function _P(e,t){e.forEach(o=>{o.vs=o.vs.flatMap(r=>t[r]?t[r].vs:r)})}function bP(e,t){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight):(e.barycenter=t.barycenter,e.weight=t.weight)}let wP=ht.Graph,EP=De;var kP=CP;function CP(e,t,o){let r=vP(e),i=new wP({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(a=>e.node(a));return e.nodes().forEach(a=>{let l=e.node(a),s=e.parent(a);(l.rank===t||l.minRank<=t&&t<=l.maxRank)&&(i.setNode(a),i.setParent(a,s||r),e[o](a).forEach(c=>{let d=c.v===a?c.w:c.v,u=i.edge(d,a),f=u!==void 0?u.weight:0;i.setEdge(d,a,{weight:e.edge(c).weight+f})}),Object.hasOwn(l,"minRank")&&i.setNode(a,{borderLeft:l.borderLeft[t],borderRight:l.borderRight[t]}))}),i}function vP(e){for(var t;e.hasNode(t=EP.uniqueId("_root")););return t}var NP=SP;function SP(e,t,o){let r={},i;o.forEach(a=>{let l=e.parent(a),s,c;for(;l;){if(s=e.parent(l),s?(c=r[s],r[s]=l):(c=i,i=l),c&&c!==l){t.setEdge(c,l);return}l=s}})}let xP=ZT,AP=eP,TP=yP,PP=kP,IP=NP,OP=ht.Graph,si=De;var $P=If;function If(e,t){if(t&&typeof t.customOrder=="function"){t.customOrder(e,If);return}let o=si.maxRank(e),r=Of(e,si.range(1,o+1),"inEdges"),i=Of(e,si.range(o-1,-1,-1),"outEdges"),a=xP(e);if($f(e,a),t&&t.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){BP(c%2?r:i,c%4>=2),a=si.buildLayerMatrix(e);let u=AP(e,a);u<l&&(d=0,s=Object.assign({},a),l=u)}$f(e,s)}function Of(e,t,o){return t.map(function(r){return PP(e,r,o)})}function BP(e,t){let o=new OP;e.forEach(function(r){let i=r.graph().root,a=TP(r,i,o,t);a.vs.forEach((l,s)=>r.node(l).order=s),IP(r,o,a.vs)})}function $f(e,t){Object.values(t).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let VP=ht.Graph,Ft=De;var RP={positionX:HP};function DP(e,t){let o={};function r(i,a){let l=0,s=0,c=i.length,d=a[a.length-1];return a.forEach((u,f)=>{let p=FP(e,u),m=p?e.node(p).order:c;(p||u===d)&&(a.slice(s,f+1).forEach(h=>{e.predecessors(h).forEach(w=>{let g=e.node(w),_=g.order;(_<l||m<_)&&!(g.dummy&&e.node(h).dummy)&&Bf(o,w,h)})}),s=f+1,l=m)}),a}return t.length&&t.reduce(r),o}function MP(e,t){let o={};function r(a,l,s,c,d){let u;Ft.range(l,s).forEach(f=>{u=a[f],e.node(u).dummy&&e.predecessors(u).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>d)&&Bf(o,p,u)})})}function i(a,l){let s=-1,c,d=0;return l.forEach((u,f)=>{if(e.node(u).dummy==="border"){let p=e.predecessors(u);p.length&&(c=e.node(p[0]).order,r(l,d,f,s,c),d=f,s=c)}r(l,d,l.length,c,a.length)}),l}return t.length&&t.reduce(i),o}function FP(e,t){if(e.node(t).dummy)return e.predecessors(t).find(o=>e.node(o).dummy)}function Bf(e,t,o){if(t>o){let i=t;t=o,o=i}let r=e[t];r||(e[t]=r={}),r[o]=!0}function LP(e,t,o){if(t>o){let r=t;t=o,o=r}return!!e[t]&&Object.hasOwn(e[t],o)}function UP(e,t,o,r){let i={},a={},l={};return t.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),t.forEach(s=>{let c=-1;s.forEach(d=>{let u=r(d);if(u.length){u=u.sort((p,m)=>l[p]-l[m]);let f=(u.length-1)/2;for(let p=Math.floor(f),m=Math.ceil(f);p<=m;++p){let h=u[p];a[d]===d&&c<l[h]&&!LP(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function KP(e,t,o,r,i){let a={},l=GP(e,t,o,i),s=i?"borderLeft":"borderRight";function c(f,p){let m=l.nodes(),h=m.pop(),w={};for(;h;)w[h]?f(h):(w[h]=!0,m.push(h),m=m.concat(p(h))),h=m.pop()}function d(f){a[f]=l.inEdges(f).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function u(f){let p=l.outEdges(f).reduce((h,w)=>Math.min(h,a[w.w]-l.edge(w)),Number.POSITIVE_INFINITY),m=e.node(f);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[f]=Math.max(a[f],p))}return c(d,l.predecessors.bind(l)),c(u,l.successors.bind(l)),Object.keys(r).forEach(f=>a[f]=a[o[f]]),a}function GP(e,t,o,r){let i=new VP,a=e.graph(),l=YP(a.nodesep,a.edgesep,r);return t.forEach(s=>{let c;s.forEach(d=>{let u=o[d];if(i.setNode(u),c){var f=o[c],p=i.edge(f,u);i.setEdge(f,u,Math.max(l(e,d,c),p||0))}c=d})}),i}function jP(e,t){return Object.values(t).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=WP(e,s)/2;i=Math.max(c+d,i),a=Math.min(c-d,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function qP(e,t){let o=Object.values(t),r=Ft.applyWithChunking(Math.min,o),i=Ft.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===t)return;let d=Object.values(c),u=r-Ft.applyWithChunking(Math.min,d);l!=="l"&&(u=i-Ft.applyWithChunking(Math.max,d)),u&&(e[s]=Ft.mapValues(c,f=>f+u))})})}function zP(e,t){return Ft.mapValues(e.ul,(o,r)=>{if(t)return e[t.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function HP(e){let t=Ft.buildLayerMatrix(e),o=Object.assign(DP(e,t),MP(e,t)),r={},i;["u","d"].forEach(l=>{i=l==="u"?t:Object.values(t).reverse(),["l","r"].forEach(s=>{s==="r"&&(i=i.map(f=>Object.values(f).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),d=UP(e,i,o,c),u=KP(e,i,d.root,d.align,s==="r");s==="r"&&(u=Ft.mapValues(u,f=>-f)),r[l+s]=u})});let a=jP(e,r);return qP(r,a),zP(r,e.graph().align)}function YP(e,t,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,d;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":d=-l.width/2;break;case"r":d=l.width/2;break}if(d&&(c+=o?d:-d),d=0,c+=(l.dummy?t:e)/2,c+=(s.dummy?t:e)/2,c+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":d=s.width/2;break;case"r":d=-s.width/2;break}return d&&(c+=o?d:-d),d=0,c}}function WP(e,t){return e.node(t).width}let Vf=De,XP=RP.positionX;var ZP=JP;function JP(e){e=Vf.asNonCompoundGraph(e),QP(e),Object.entries(XP(e)).forEach(([t,o])=>e.node(t).x=o)}function QP(e){let t=Vf.buildLayerMatrix(e),o=e.graph().ranksep,r=0;t.forEach(i=>{const a=i.reduce((l,s)=>{const c=e.node(s).height;return l>c?l:c},0);i.forEach(l=>e.node(l).y=r+a/2),r+=a+o})}let Rf=tT,Df=aT,eI=PT,tI=De.normalizeRanks,nI=BT,oI=De.removeEmptyRanks,Mf=MT,rI=jT,Ff=zT,iI=$P,aI=ZP,st=De,lI=ht.Graph;var sI=cI;function cI(e,t){let o=t&&t.debugTiming?st.time:st.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>bI(e));o(" runLayout",()=>dI(r,o,t)),o(" updateInputGraph",()=>uI(e,r))})}function dI(e,t,o){t(" makeSpaceForEdgeLabels",()=>wI(e)),t(" removeSelfEdges",()=>TI(e)),t(" acyclic",()=>Rf.run(e)),t(" nestingGraph.run",()=>Mf.run(e)),t(" rank",()=>eI(st.asNonCompoundGraph(e))),t(" injectEdgeLabelProxies",()=>EI(e)),t(" removeEmptyRanks",()=>oI(e)),t(" nestingGraph.cleanup",()=>Mf.cleanup(e)),t(" normalizeRanks",()=>tI(e)),t(" assignRankMinMax",()=>kI(e)),t(" removeEdgeLabelProxies",()=>CI(e)),t(" normalize.run",()=>Df.run(e)),t(" parentDummyChains",()=>nI(e)),t(" addBorderSegments",()=>rI(e)),t(" order",()=>iI(e,o)),t(" insertSelfEdges",()=>PI(e)),t(" adjustCoordinateSystem",()=>Ff.adjust(e)),t(" position",()=>aI(e)),t(" positionSelfEdges",()=>II(e)),t(" removeBorderNodes",()=>AI(e)),t(" normalize.undo",()=>Df.undo(e)),t(" fixupEdgeLabelCoords",()=>SI(e)),t(" undoCoordinateSystem",()=>Ff.undo(e)),t(" translateGraph",()=>vI(e)),t(" assignNodeIntersects",()=>NI(e)),t(" reversePoints",()=>xI(e)),t(" acyclic.undo",()=>Rf.undo(e))}function uI(e,t){e.nodes().forEach(o=>{let r=e.node(o),i=t.node(o);r&&(r.x=i.x,r.y=i.y,r.rank=i.rank,t.children(o).length&&(r.width=i.width,r.height=i.height))}),e.edges().forEach(o=>{let r=e.edge(o),i=t.edge(o);r.points=i.points,Object.hasOwn(i,"x")&&(r.x=i.x,r.y=i.y)}),e.graph().width=t.graph().width,e.graph().height=t.graph().height}let fI=["nodesep","edgesep","ranksep","marginx","marginy"],pI={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},mI=["acyclicer","ranker","rankdir","align"],gI=["width","height","rank"],Lf={width:0,height:0},hI=["minlen","weight","width","height","labeloffset"],yI={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},_I=["labelpos"];function bI(e){let t=new lI({multigraph:!0,compound:!0}),o=pl(e.graph());return t.setGraph(Object.assign({},pI,fl(o,fI),st.pick(o,mI))),e.nodes().forEach(r=>{let i=pl(e.node(r));const a=fl(i,gI);Object.keys(Lf).forEach(l=>{a[l]===void 0&&(a[l]=Lf[l])}),t.setNode(r,a),t.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=pl(e.edge(r));t.setEdge(r,Object.assign({},yI,fl(i,hI),st.pick(i,_I)))}),t}function wI(e){let t=e.graph();t.ranksep/=2,e.edges().forEach(o=>{let r=e.edge(o);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(t.rankdir==="TB"||t.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function EI(e){e.edges().forEach(t=>{let o=e.edge(t);if(o.width&&o.height){let r=e.node(t.v),a={rank:(e.node(t.w).rank-r.rank)/2+r.rank,e:t};st.addDummyNode(e,"edge-proxy",a,"_ep")}})}function kI(e){let t=0;e.nodes().forEach(o=>{let r=e.node(o);r.borderTop&&(r.minRank=e.node(r.borderTop).rank,r.maxRank=e.node(r.borderBottom).rank,t=Math.max(t,r.maxRank))}),e.graph().maxRank=t}function CI(e){e.nodes().forEach(t=>{let o=e.node(t);o.dummy==="edge-proxy"&&(e.edge(o.e).labelRank=o.rank,e.removeNode(t))})}function vI(e){let t=Number.POSITIVE_INFINITY,o=0,r=Number.POSITIVE_INFINITY,i=0,a=e.graph(),l=a.marginx||0,s=a.marginy||0;function c(d){let u=d.x,f=d.y,p=d.width,m=d.height;t=Math.min(t,u-p/2),o=Math.max(o,u+p/2),r=Math.min(r,f-m/2),i=Math.max(i,f+m/2)}e.nodes().forEach(d=>c(e.node(d))),e.edges().forEach(d=>{let u=e.edge(d);Object.hasOwn(u,"x")&&c(u)}),t-=l,r-=s,e.nodes().forEach(d=>{let u=e.node(d);u.x-=t,u.y-=r}),e.edges().forEach(d=>{let u=e.edge(d);u.points.forEach(f=>{f.x-=t,f.y-=r}),Object.hasOwn(u,"x")&&(u.x-=t),Object.hasOwn(u,"y")&&(u.y-=r)}),a.width=o-t+l,a.height=i-r+s}function NI(e){e.edges().forEach(t=>{let o=e.edge(t),r=e.node(t.v),i=e.node(t.w),a,l;o.points?(a=o.points[0],l=o.points[o.points.length-1]):(o.points=[],a=i,l=r),o.points.unshift(st.intersectRect(r,a)),o.points.push(st.intersectRect(i,l))})}function SI(e){e.edges().forEach(t=>{let o=e.edge(t);if(Object.hasOwn(o,"x"))switch((o.labelpos==="l"||o.labelpos==="r")&&(o.width-=o.labeloffset),o.labelpos){case"l":o.x-=o.width/2+o.labeloffset;break;case"r":o.x+=o.width/2+o.labeloffset;break}})}function xI(e){e.edges().forEach(t=>{let o=e.edge(t);o.reversed&&o.points.reverse()})}function AI(e){e.nodes().forEach(t=>{if(e.children(t).length){let o=e.node(t),r=e.node(o.borderTop),i=e.node(o.borderBottom),a=e.node(o.borderLeft[o.borderLeft.length-1]),l=e.node(o.borderRight[o.borderRight.length-1]);o.width=Math.abs(l.x-a.x),o.height=Math.abs(i.y-r.y),o.x=a.x+o.width/2,o.y=r.y+o.height/2}}),e.nodes().forEach(t=>{e.node(t).dummy==="border"&&e.removeNode(t)})}function TI(e){e.edges().forEach(t=>{if(t.v===t.w){var o=e.node(t.v);o.selfEdges||(o.selfEdges=[]),o.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}})}function PI(e){var t=st.buildLayerMatrix(e);t.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{st.addDummyNode(e,"selfedge",{width:s.label.width,height:s.label.height,rank:l.rank,order:a+ ++r,e:s.e,label:s.label},"_se")}),delete l.selfEdges})})}function II(e){e.nodes().forEach(t=>{var o=e.node(t);if(o.dummy==="selfedge"){var r=e.node(o.e.v),i=r.x+r.width/2,a=r.y,l=o.x-i,s=r.height/2;e.setEdge(o.e,o.label),e.removeNode(t),o.label.points=[{x:i+2*l/3,y:a-s},{x:i+5*l/6,y:a-s},{x:i+l,y:a},{x:i+5*l/6,y:a+s},{x:i+2*l/3,y:a+s}],o.label.x=o.x,o.label.y=o.y}})}function fl(e,t){return st.mapValues(st.pick(e,t),Number)}function pl(e){var t={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),t[o]=r}),t}let OI=De,$I=ht.Graph;var BI={debugOrdering:VI};function VI(e){let t=OI.buildLayerMatrix(e),o=new $I({compound:!0,multigraph:!0}).setGraph({});return e.nodes().forEach(r=>{o.setNode(r,{label:r}),o.setParent(r,"layer"+e.node(r).rank)}),e.edges().forEach(r=>o.setEdge(r.v,r.w,{},r.name)),t.forEach((r,i)=>{let a="layer"+i;o.setNode(a,{rank:"same"}),r.reduce((l,s)=>(o.setEdge(l,s,{style:"invis"}),s))}),o}var RI="1.1.5",DI={graphlib:ht,layout:sI,debug:BI,util:{time:De.time,notime:De.notime},version:RI};const Uf=Vx(DI),ci={padding:80,nodeGap:40,edgeGap:80,rankGap:80},Kf=e=>{const t=e.match(/^(input|output)s@(.*)$/);if(t)return{io:t[1],field:t[2]}};function MI(e,t){const o=xe(t),r=Et(),{findNode:i,fitView:a,onNodeClick:l,onNodeDragStop:s,onEdgeClick:c,onConnect:d,onNodesChange:u,onEdgesChange:f}=o,{state:p,commit:m,moveNode:h,removeNode:w,getNodeById:g,connectEdge:_,disconnectEdge:b}=r;function y(S,I){const B=g(S.source),W=g(S.target);return!!(B&&W&&B.phase===I&&W.phase===I)}const C=n.computed(()=>p.value.nodes.filter(S=>S.phase===e).map(S=>({id:S.id,type:"flow",position:S.position,data:S}))),T=n.computed(()=>p.value.edges.filter(S=>y(S,e)).map(S=>{const I=g(S.source),B=g(S.target);if(I){if(!B)throw new Error(`Missing target node "${S.target}" for edge "${S.id}" in phase "${e}"`)}else throw new Error(`Missing source node "${S.source}" for edge "${S.id}" in phase "${e}"`);return{id:S.id,source:S.source,target:S.target,sourceHandle:S.sourceField?`outputs@${S.sourceField}`:"output",targetHandle:S.targetField?`inputs@${S.targetField}`:"input",markerEnd:Kr.ArrowClosed,data:S}}));l(({node:S})=>{console.debug("[useFlow] onNodeClick",n.toRaw(S))}),c(({edge:S})=>{console.debug("[useFlow] onEdgeClick",n.toRaw(S))}),d(({source:S,sourceHandle:I,target:B,targetHandle:W})=>{if(console.debug("[useFlow] onConnect",{source:S,sourceHandle:I,target:B,targetHandle:W}),!I||!W)return;const M=Kf(I),v=Kf(W);(M==null?void 0:M.io)==="input"||(v==null?void 0:v.io)==="output"||_({source:S,sourceField:M==null?void 0:M.field,target:B,targetField:v==null?void 0:v.field})}),u(S=>{for(const I of S)switch(I.type){case"remove":w(I.id,!0);break}}),s(({node:S})=>{S&&h(S.id,S.position)}),f(S=>{for(const I of S)switch(I.type){case"remove":b(I.id,!0);break}});function k(S){const{boundingRect:I,padding:B=ci.padding,nodeGap:W=ci.nodeGap,edgeGap:M=ci.edgeGap,rankGap:v=ci.rankGap}=S;let N,E;const D=[],O=R=>{switch(R.data.name){case"request":{if(e!=="request")throw new Error(`Unexpected request node in ${e} phase`);if(N)throw new Error("Duplicated request node in request phase");return N=R,!0}case"service_request":{if(e!=="request")throw new Error(`Unexpected service_request node in ${e} phase`);if(E)throw new Error("Duplicated service_request node in request phase");return E=R,!0}case"service_response":{if(e!=="response")throw new Error(`Unexpected service_response node in ${e} phase`);if(E)throw new Error("Duplicated service_response node in response phase");return E=R,!0}case"response":{if(e!=="response")throw new Error(`Unexpected response node in ${e} phase`);if(N)throw new Error("Duplicated response node in response phase");return N=R,!0}default:return D.push(R),!1}},q=new Uf.graphlib.Graph({multigraph:!0});q.setGraph({rankdir:e==="request"?"LR":"RL",nodesep:W,edgesep:M,ranksep:v});for(const R of C.value){if(O(R))continue;const U=i(R.id);if(!U)throw new Error(`Node ${R.id} is missing from the graph in ${e} phase`);q.setNode(R.id,{width:U.dimensions.width,height:U.dimensions.height})}if(!N||!E)throw new Error(`One or more implicit nodes are missing from ${e} phase`);const j=i(N.id),F=i(E.id);if(!j||!F)throw new Error(`One or more implicit nodes are missing from the graph in ${e} phase`);if(D.length===0){const R=I.height/2;h(N.data.id,{x:B,y:R-j.dimensions.height/2},!1),h(E.data.id,{x:I.width-B-F.dimensions.width,y:R-F.dimensions.height/2},!1)}else{const R=new Set([N.id,E.id]);for(const $ of T.value)!R.has($.source)&&!R.has($.target)&&q.setEdge($.source,$.target,{points:[]});Uf.layout(q);const U={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY},re=$=>{U.x1=Math.min(U.x1,$.x),U.y1=Math.min(U.y1,$.y),U.x2=Math.max(U.x2,$.x+$.width),U.y2=Math.max(U.y2,$.y+$.height)},de=$=>({x:$.x-$.width/2,y:$.y-$.height/2,width:$.width,height:$.height});for(const $ of D){const z=q.node($.id),X=de(z);re(X),h($.data.id,{x:X.x,y:X.y},!1)}const ee=i(N.id),oe=i(E.id);if(!ee||!oe)throw new Error(`One or more implicit nodes are missing from the graph in ${e} phase`);const Y=U.y1+(U.y2-U.y1)/2;h(N.data.id,{x:U.x1-(ee.dimensions.width+W),y:Y-ee.dimensions.height/2},!1),h(E.data.id,{x:U.x2+W,y:Y-oe.dimensions.height/2},!1)}m(),n.nextTick(()=>{a()})}return{vueFlowStore:o,editorStore:r,nodes:C,edges:T,autoLayout:k}}const di=_e(n.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ge.Left},size:{default:()=>Number.parseFloat(Vw)},type:{}},setup(e){n.useCssVars(o=>({"753622c4":o.color}));const t=n.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["handle-twig",[o.type,o.position===n.unref(ge).Left?"left":"right"]]),style:n.normalizeStyle(t.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Gn="{key}",bn={"kong.client.consumer":{dataType:"object",writable:!1,readable:!0},"kong.client.consumer_groups":{dataType:"array",writable:!1,readable:!0},"kong.client.credential":{dataType:"object",writable:!1,readable:!0},"kong.client.get_identity_realm_source":{dataType:"object",writable:!1,readable:!0},"kong.client.forwarded_ip":{dataType:"string",writable:!1,readable:!0},"kong.client.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.client.ip":{dataType:"string",writable:!1,readable:!0},"kong.client.port":{dataType:"number",writable:!1,readable:!0},"kong.client.protocol":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_host":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.request.forwarded_scheme":{dataType:"string",writable:!1,readable:!0},"kong.request.port":{dataType:"number",writable:!1,readable:!0},"kong.response.source":{dataType:"string",writable:!1,readable:!0},"kong.router.route":{dataType:"object",writable:!1,readable:!0},"kong.route_id":{dataType:"string",writable:!1,readable:!0},"kong.route_name":{dataType:"string",writable:!1,readable:!0},"kong.router.service":{dataType:"object",writable:!1,readable:!0},"kong.service_name":{dataType:"string",writable:!1,readable:!0},"kong.service_id":{dataType:"string",writable:!1,readable:!0},"kong.service.response.status":{dataType:"number",writable:!1,readable:!0},"kong.version":{dataType:"string",writable:!1,readable:!0},"kong.node.id":{dataType:"string",writable:!1,readable:!0},"kong.configuration.{key}":{dataType:"any",writable:!1,readable:!0},"kong.service.target":{dataType:"string ({host}:{port})",writable:!0,readable:!1},"kong.service.request_scheme":{dataType:"string ({scheme})",writable:!0,readable:!1},"kong.ctx.plugin.{key}":{dataType:"any",writable:!0,readable:!0},"kong.ctx.shared.{key}":{dataType:"any",writable:!0,readable:!0}},ui=Object.keys(bn).filter(e=>e.includes(Gn)).map(e=>e.replace(Gn,""));function Gf(e){if(!e||!fi(e))return;const t=ui.find(o=>e.startsWith(o));if(t)return e.slice(t.length).replace(Gn,"")}function Bo(e){if(!e)return null;const t=ui.find(o=>e.startsWith(o));return t||e}function fi(e){return e?ui.some(t=>e.startsWith(t)):!1}function jf(e){return e?fi(e)?Bo(e)+Gn:e:null}function ml(e){var o;if(!e)return!1;const t=jf(e);return t?((o=bn[t])==null?void 0:o.readable)??!1:!1}function gl(e){var o;if(!e)return!1;const t=jf(e);return t?((o=bn[t])==null?void 0:o.writable)??!1:!1}const qf=n.defineComponent({__name:"NodeBadge",props:{type:{},condensed:{type:Boolean}},setup(e){const t=n.computed(()=>{var i;if(!rn(e.type))return((i=fr[e.type])==null?void 0:i.icon)??void 0}),o=n.computed(()=>tE(e.type)),r=n.computed(()=>{switch(e.type){case"call":return"warning";case"jq":return"decorative";case"exit":return"danger";case"property":return"success";case"static":return"info";default:return"neutral"}});return(i,a)=>{const l=n.resolveComponent("KBadge");return n.openBlock(),n.createBlock(l,{appearance:r.value,size:"small"},{icon:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(t.value)))]),default:n.withCtx(()=>[n.createTextVNode(" "+n.toDisplayString(o.value),1)]),_:1},8,["appearance"])}}}),FI={class:"body"},LI={class:"info-line"},UI={class:"name"},KI={class:"input-handles"},GI={class:"handle"},jI={class:"handle-label-wrapper"},qI={class:"handle-label-wrapper"},zI={class:"handle-label text"},HI={class:"output-handles"},YI={class:"handle"},WI={class:"handle-label-wrapper"},XI={class:"handle-label-wrapper"},ZI={class:"handle-label"},zf=_e(n.defineComponent({__name:"FlowNode",props:{data:{}},setup(e){const{t}=Ue.createI18n("en-us",je),{getInEdgesByNodeId:o,getOutEdgesByNodeId:r,toggleExpanded:i}=Et(),a=n.computed(()=>ua(e.data.type)),l=n.computed(()=>o(e.data.id).every(y=>y.targetField===void 0)),s=n.computed(()=>r(e.data.id).every(y=>y.sourceField===void 0)),c=n.computed(()=>e.data.expanded.input??!1),d=n.computed(()=>e.data.expanded.output??!1),u=n.computed(()=>{var y,C;if(e.data.type==="property"){const T=(y=e.data.config)==null?void 0:y.property;return gl(T)}return(C=a.value.io)==null?void 0:C.input}),f=n.computed(()=>{var y,C;if(e.data.type==="property"){const T=(y=e.data.config)==null?void 0:y.property;return ml(T)}return(C=a.value.io)==null?void 0:C.output}),p=n.computed(()=>nE(e.data)),m=n.computed(()=>e.data.phase==="response"),h=n.computed(()=>e.data.phase==="request"?ge.Left:ge.Right),w=n.computed(()=>e.data.phase==="request"?ge.Right:ge.Left),g=n.computed(()=>p.value?t(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),_=n.computed(()=>p.value?Pw:Iw);function b(y){i(e.data.id,y)}return n.watch(l,y=>{y||i(e.data.id,"input",!0)},{immediate:!0}),n.watch(s,y=>{y||i(e.data.id,"output",!0)},{immediate:!0}),(y,C)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["flow-node",{reversed:m.value,implicit:p.value}])},[n.createElementVNode("div",FI,[n.createElementVNode("div",LI,[n.createElementVNode("div",UI,n.toDisplayString(g.value),1),p.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(qf,{key:0,condensed:"",type:y.data.type},null,8,["type"]))]),n.renderSlot(y.$slots,"default",{},void 0,!0)]),n.createElementVNode("div",{class:n.normalizeClass(["handles",{reversed:m.value}])},[n.createElementVNode("div",KI,[u.value?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.createElementVNode("div",GI,[n.createVNode(n.unref(zt),{id:"input",position:h.value,type:"target"},null,8,["position"]),n.createElementVNode("div",jI,[n.createElementVNode("div",{class:n.normalizeClass(["handle-label",{"has-fields":y.data.fields.input.length>0,collapsible:l.value}])},[C[2]||(C[2]=n.createElementVNode("div",{class:"text"}," inputs ",-1)),y.data.fields.input.length>0?(n.openBlock(),n.createElementBlock("div",{key:0,class:"icon",onClick:C[0]||(C[0]=n.withModifiers(T=>!l.value||b("input"),["stop"]))},[c.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldMoreIcon),{key:0,size:n.unref(uo)},null,8,["size"])),c.value?(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldLessIcon),{key:1,color:l.value?void 0:n.unref(Ac),size:n.unref(uo)},null,8,["color","size"])):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],2),c.value?(n.openBlock(),n.createBlock(di,{key:0,color:_.value,position:h.value,type:"bar"},null,8,["color","position"])):n.createCommentVNode("",!0)])]),c.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(y.data.fields.input,(T,k)=>(n.openBlock(),n.createElementBlock("div",{key:`inputs-${T.id}`,class:"handle indented"},[n.createVNode(n.unref(zt),{id:`inputs@${T.id}`,position:h.value,type:"target"},null,8,["id","position"]),n.createElementVNode("div",qI,[n.createElementVNode("div",zI,n.toDisplayString(T.name),1),n.createVNode(di,{color:_.value,position:h.value,type:k<y.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):n.createCommentVNode("",!0)],64)):n.createCommentVNode("",!0)]),n.createElementVNode("div",HI,[f.value?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.createElementVNode("div",YI,[n.createElementVNode("div",WI,[n.createElementVNode("div",{class:n.normalizeClass(["handle-label text",{"has-fields":y.data.fields.output.length>0,collapsible:s.value}])},[C[3]||(C[3]=n.createElementVNode("div",{class:"text"}," outputs ",-1)),y.data.fields.output.length>0?(n.openBlock(),n.createElementBlock("div",{key:0,class:"icon",onClick:C[1]||(C[1]=n.withModifiers(T=>!s.value||b("output"),["stop"]))},[d.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldMoreIcon),{key:0,size:n.unref(uo)},null,8,["size"])),d.value?(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldLessIcon),{key:1,color:s.value?void 0:n.unref(Ac),size:n.unref(uo)},null,8,["color","size"])):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],2),d.value?(n.openBlock(),n.createBlock(di,{key:0,color:_.value,position:w.value,type:"bar"},null,8,["color","position"])):n.createCommentVNode("",!0)]),n.createVNode(n.unref(zt),{id:"output",position:w.value,type:"source"},null,8,["position"])]),d.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(y.data.fields.output,(T,k)=>(n.openBlock(),n.createElementBlock("div",{key:`outputs-${T.id}`,class:"handle indented"},[n.createElementVNode("div",XI,[n.createElementVNode("div",ZI,n.toDisplayString(T.name),1),n.createVNode(di,{color:_.value,position:w.value,type:k<y.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),n.createVNode(n.unref(zt),{id:`outputs@${T.id}`,position:w.value,type:"source"},null,8,["id","position"])]))),128)):n.createCommentVNode("",!0)],64)):n.createCommentVNode("",!0)])],2)],2))}}),[["__scopeId","data-v-31e95f55"]]),JI={ref:"flow-wrapper",class:"flow-wrapper"},Hf=_e(n.defineComponent({__name:"EditorCanvasFlow",props:{phase:{}},emits:["click:node","click:backdrop"],setup(e,{emit:t}){const o=e,r=n.useTemplateRef("flow-wrapper"),i=n.ref(!1),l=`${n.useId()}-${o.phase}`,{vueFlowStore:s,editorStore:c,nodes:d,edges:u,autoLayout:f}=MI(o.phase,l),{addNode:p,clear:m}=c,{project:h,vueFlowRef:w}=s,g=t,_=k=>{var D,O;const S=(D=k.dataTransfer)==null?void 0:D.getData(Jc);if(!S)return;k.preventDefault();const I=JSON.parse(S);if(I.action!=="create-node")return;const{top:B=0,left:W=0}=((O=w.value)==null?void 0:O.getBoundingClientRect())||{},M=h({x:k.clientX-W,y:k.clientY-B}),{type:v,anchor:N}=I.data,E={type:v,phase:o.phase,position:{x:M.x-N.offsetX,y:M.y-N.offsetY}};p(E)};function b({event:k,node:S}){k.stopPropagation(),g("click:node",S.data)}function y(k){k.target instanceof Element&&k.target.closest(".vue-flow__controls")||g("click:backdrop")}function C(){i.value||(i.value=!0,T(),m())}function T(){f({boundingRect:r.value.getBoundingClientRect()})}return(k,S)=>(n.openBlock(),n.createElementBlock("div",JI,[n.createVNode(n.unref(qu),{id:l,class:"flow",edges:n.unref(u),"fit-view-on-init":"",nodes:n.unref(d),onClickCapture:y,onDragover:S[0]||(S[0]=n.withModifiers(()=>{},["prevent"])),onDrop:S[1]||(S[1]=I=>_(I)),onNodeClick:b,onNodesInitialized:C},{"node-flow":n.withCtx(I=>[n.createVNode(zf,{data:I.data},null,8,["data"])]),default:n.withCtx(()=>[n.createVNode(n.unref(sx)),n.createVNode(n.unref(Bx),{position:"bottom-left"},{default:n.withCtx(()=>[n.createElementVNode("button",{class:"vue-flow__controls-button vue-flow__controls-interactive custom",onClick:T},[n.createVNode(n.unref(Ee.SparklesIcon),{size:18})])]),_:1})]),_:1},8,["edges","nodes"])],512))}}),[["__scopeId","data-v-a848e5c8"]]),QI={class:"dk-editor-main"},eO={class:"header"},tO={class:"actions"},nO={ref:"canvasContainer",class:"body"},oO=_e(n.defineComponent({__name:"EditorMain",emits:["click:node","click:backdrop"],setup(e,{emit:t}){const{t:o}=Ue.createI18n("en-us",je),r=t;return(i,a)=>(n.openBlock(),n.createElementBlock("div",QI,[n.createElementVNode("header",eO,[n.createElementVNode("div",tO,[n.createVNode(n.unref(Pe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.view_docs"))+" ",1),n.createVNode(n.unref(Ee.ExternalLinkIcon))]),_:1}),n.createVNode(n.unref(Pe.KButton),null,{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.save")),1)]),_:1})])]),n.createElementVNode("div",nO,[n.createVNode(ok,null,{request:n.withCtx(()=>[n.createVNode(Hf,{phase:"request","onClick:backdrop":a[0]||(a[0]=l=>r("click:backdrop")),"onClick:node":a[1]||(a[1]=l=>r("click:node",l))})]),response:n.withCtx(()=>[n.createVNode(Hf,{phase:"response","onClick:backdrop":a[2]||(a[2]=l=>r("click:backdrop")),"onClick:node":a[3]||(a[3]=l=>r("click:node",l))})]),_:1})],512)]))}}),[["__scopeId","data-v-dd73cf8c"]]),rO={class:"icon"},iO={class:"content"},aO={class:"title"},lO={class:"description"},sO=_e(n.defineComponent({__name:"NodePanelItem",props:{type:{}},setup(e){const{summary:t,icon:o}=fr[e.type];return(r,i)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["dk-node-panel-item",{[`node-type-${r.type}`]:!0}])},[n.createElementVNode("div",rO,[n.createVNode(n.unref(o),{size:16})]),n.createElementVNode("div",iO,[n.createElementVNode("div",aO,n.toDisplayString(r.type),1),n.createElementVNode("div",lO,n.toDisplayString(n.unref(t)),1)])],2))}}),[["__scopeId","data-v-e75cecee"]]),cO={class:"dk-node-panel"},dO={class:"title"},uO={class:"node-list"},fO={"aria-hidden":"true",class:"preview",inert:""},pO=_e(n.defineComponent({__name:"NodePanel",setup(e){const{t}=Ue.createI18n("en-us",je),{createNode:o}=Et(),r=`dk-drag-preview-${n.useId()}`,i=n.shallowRef(),a=n.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var I,B;const d=s.currentTarget,{left:u,top:f,width:p,height:m}=d.getBoundingClientRect(),h=s.clientX-u,w=s.clientY-f;i.value=o({type:c}),await n.nextTick();const g=document.querySelector(`#${r}`)||d,_=g.cloneNode(!0),{offsetWidth:b,offsetHeight:y}=g;Object.assign(_.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${b}px`,height:`${y}px`,boxSizing:"border-box"}),document.body.appendChild(_);const C=h/p,T=w/m,k={ratioX:C,ratioY:T,offsetX:b*C,offsetY:y*T},S={action:"create-node",data:{type:c,anchor:k}};(I=s.dataTransfer)==null||I.setData(Jc,JSON.stringify(S)),(B=s.dataTransfer)==null||B.setDragImage(_,k.offsetX,k.offsetY),requestAnimationFrame(()=>{_.remove(),i.value=void 0})};return(s,c)=>{const d=n.resolveComponent("KLabel");return n.openBlock(),n.createElementBlock("div",cO,[n.createElementVNode("h3",dO,[n.createVNode(d,{class:"label",info:n.unref(t)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])]),n.createElementVNode("div",uO,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Object.keys(n.unref(fr)),u=>(n.openBlock(),n.createBlock(sO,{key:u,draggable:"true",type:u,onDragstart:f=>l(f,u)},null,8,["type","onDragstart"]))),128))]),n.createElementVNode("div",fO,[n.createVNode(n.unref(qu),{nodes:a.value},{"node-flow":n.withCtx(u=>[n.createVNode(zf,{id:r,data:u.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-8e8421d3"]]),mO=n.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(t,o)=>(n.openBlock(),n.createBlock(_t,{items:n.unref(Zi)([...n.unref(JE)]),name:t.name},null,8,["items","name"]))}}),gO=_e(n.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:t}=$e(),{i18n:o}=qe(),r=n.computed(()=>{const i=t("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(n.openBlock(),n.createBlock(ft,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:n.withCtx(()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(r.value,l=>(n.openBlock(),n.createBlock(_t,{key:l,class:"dk-inputs-field-indent",clearable:"",items:i.items,name:l,placeholder:n.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},null,8,["items","name","placeholder","onChange"]))),128))]),_:1},8,["name"]))}}),[["__scopeId","data-v-ec584243"]]),hO=["data-testid"],yO={class:"dk-inputs-map-field-entry-body"},_O={class:"dk-inputs-map-field-entry-content"},bO={class:"dk-inputs-map-field-indent"},wO=_e(n.defineComponent({__name:"InputsMapField",props:{items:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(e,{emit:t}){const o=e,r=t,{entries:i,addEntry:a,removeEntry:l,field:s}=ia(o,r),{i18n:c}=qe(),d=n.useTemplateRef("root"),u=n.ref(null);let f;async function p(b,y="key"){var C;d.value&&(await n.nextTick(),(C=d.value.querySelector(`[data-${y}-input="${b}"]`))==null||C.focus())}function m(){const{id:b}=a(),y=i.value.findIndex(({key:C})=>!C);p(y===-1?i.value.length-1:y),u.value=b}function h(b){l(b.id),b.id===u.value&&(u.value=null),b.key.trim()!==""&&r("remove:field",b.key)}function w(b){f=b.key}function g(b){if(b.id===u.value){if(b.key.trim()==="")return;r("add:field",b.key,b.value),u.value=null}else r("rename:field",f,b.key)}function _(b,y){b.id!==u.value&&r("change:inputs",b.key,y)}return(b,y)=>{const C=n.resolveComponent("KAlert"),T=n.resolveComponent("KLabel"),k=n.resolveComponent("KInput"),S=n.resolveComponent("KSelect"),I=n.resolveComponent("KButton");return n.unref(s).error?(n.openBlock(),n.createBlock(C,{key:0,appearance:"danger",message:n.unref(s).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(i),(B,W)=>(n.openBlock(),n.createElementBlock("div",{key:B.id,class:"dk-inputs-map-field-entry dk-inputs-map-field-indent","data-testid":`ff-kv-container-${n.unref(s).path.value}.${W}`},[n.createVNode(T,{for:`ff-kv-entry-key-${n.unref(s).path.value}.${W}`},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),n.createElementVNode("div",yO,[n.createElementVNode("div",_O,[n.createVNode(k,{id:`ff-kv-entry-key-${n.unref(s).path.value}.${W}`,modelValue:B.key,"onUpdate:modelValue":M=>B.key=M,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":W,"data-testid":`ff-key-${n.unref(s).path.value}.${W}`,placeholder:n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onChange:M=>g(B),onFocus:M=>w(B)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onChange","onFocus"]),n.createVNode(S,{modelValue:B.value,"onUpdate:modelValue":M=>B.value=M,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${n.unref(s).path.value}.${W}`,items:b.items,placeholder:n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:M=>_(B,(M==null?void 0:M.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","placeholder","onChange"])]),n.createVNode(I,{appearance:"none","data-testid":`ff-kv-remove-btn-${n.unref(s).path.value}.${W}`,icon:"",onClick:M=>h(B)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,hO))),128)),n.createElementVNode("div",bO,[n.createVNode(I,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(s).path.value}`,disabled:!!u.value,onClick:m},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])])],512))}}}),[["__scopeId","data-v-946b99c8"]]),jn=n.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:t}){const o=t,{getSchema:r}=$e(),{i18n:i}=qe(),a=n.computed(()=>r("inputs")),l=n.computed(()=>a.value?a.value.type==="record"?gO:wO:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function d(p,m){o("change:inputs",p,m)}function u(p){o("remove:field",p)}function f(p,m){o("rename:field",p,m)}return(p,m)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.unref(r)("input")?(n.openBlock(),n.createBlock(_t,{key:0,clearable:"","enable-filtering":"",items:p.items,label:"Inputs",name:"input",placeholder:n.unref(i).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},null,8,["items","placeholder"])):n.createCommentVNode("",!0),l.value?(n.openBlock(),n.createBlock(n.unref(l),{key:1,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":u,"onRename:field":f},null,8,["items","key-order"])):n.createCommentVNode("",!0)],64))}}),EO={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{query:{description:"HTTP request query",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},kO={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"};function Yf(){const{selectedNode:e,state:t}=Et(),{i18n:{t:o}}=qe();function r(i){return i?/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?t.value.nodes.some(a=>a.name===i&&a.id!==e.value.id)?o("plugins.free-form.datakit.flow_editor.node_properties.errors.name_duplicate",{name:i}):!0:o("plugins.free-form.datakit.flow_editor.node_properties.errors.name_format"):o("plugins.free-form.datakit.flow_editor.node_properties.errors.name_empty")}return r}function qn(e){const{selectedNode:t,state:o,renameNode:r,getNodeById:i,addField:a,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:d,connectEdge:u}=Et(),f=n.computed(()=>t.value.id);let p=!1;n.watch(o,async()=>{p=!0,await n.nextTick(),p=!1},{immediate:!0,deep:!0}),console.log("state",o.value),window.store=Et();const m=n.computed(()=>{var N;const v=o.value.edges.filter(E=>E.target===f.value).reduce((E,D)=>{var R,U;const O=i(D.source),q=(R=an(O,"output",D.sourceField))==null?void 0:R.id,j=(U=an(t.value,"input",D.targetField))==null?void 0:U.name,F=O.id+(q?`.${q}`:"");return j?E.inputs={...E.inputs,[j]:F}:E.input=F,E},{});return(N=t.value)==null||N.fields.input.forEach(E=>{v.inputs||(v.inputs={}),v.inputs[E.name]||(v.inputs[E.name]=null)}),{...t.value.config,...v,name:t.value.name}}),h=M=>{r(f.value,M??"")},w=(M=!0)=>{if(p)return;const{name:v,input:N,inputs:E,...D}=e();c(f.value,D,M)},g=(M,v)=>{const N=mo(t.value,M,v);if(!N)throw new Error(`Field with name "${v}" not found in node "${t.value.name}"`);return N},_=(M,v,N)=>{const E=!!N;a(f.value,M,v,!E),E&&k(v,N)},b=(M,v,N)=>{if(p)return;const E=g(M,v).id;l(f.value,E,N)},y=(M,v)=>{const N=g(M,v).id;s(f.value,N)},C=n.computed(()=>o.value.edges.filter(M=>M.target===f.value&&!M.targetField)[0]),T=n.computed(()=>o.value.edges.filter(M=>M.target===f.value&&M.targetField)),k=(M,v)=>{if(p)return;const N=v==null,E=g("input",M).id;if(N){const F=T.value.find(R=>R.targetField===E);F&&d(F.id,!0);return}C.value&&d(C.value.id,!1);const D=T.value.find(F=>F.targetField===E);D&&d(D.id,!1);const{nodeId:O,fieldId:q}=Bc(v),j=g("input",M).id;u({source:O,sourceField:q,target:f.value,targetField:j})},S=(M,v=!0)=>{if(p)return;const N=M==null;for(const O of[...T.value,C.value].filter(Boolean))d(O.id,v&&N);if(N)return;const{nodeId:E,fieldId:D}=Bc(M);u({source:E,sourceField:D,target:f.value,targetField:void 0},v)},I=M=>{const v=[...o.value.edges,{source:M,target:f.value}];return pa(mr(v))},B=n.computed(()=>{var v,N;const M=[];for(const E of o.value.nodes)if((v=ua(E.type).io)!=null&&v.output&&E.fields.output&&E.id!==f.value&&!(E.type==="property"&&!ml((N=E.config)==null?void 0:N.property))&&!I(E.id)){M.push({value:E.id,label:E.name});for(const O of E.fields.output)M.push({value:`${E.id}.${O.id}`,label:`${E.name}.${O.name}`})}return M}),W=n.computed(()=>{var M;return((M=t.value)==null?void 0:M.fields.input.map(v=>v.name))||[]});return{formData:m,inputOptions:B,inputEdge:C,inputsEdges:T,inputsFieldNames:W,setName:h,setConfig:w,addField:_,renameFieldByName:b,removeFieldByName:y,setInputs:k,setInput:S,nameValidator:Yf()}}function wn(e){const{getSchema:t}=$e();return n.computed(()=>{if(rn(e))switch(e){case"response":return kO;case"service_request":return EO}try{const l=t().fields[0].config.fields[0].nodes.elements.subschema_definitions[e];if(!l)throw new Error(`Subschema "${e}" not found in the schema.`);return l}catch(o){throw new Error(`Failed to get subschema "${e}": ${o.message}`)}})}const pi=n.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:t}){const o=e,r=t,{i18n:{t:i}}=qe(),a=n.ref(o.name),l=n.computed(()=>{const u=o.validate(a.value.trim());return u===!0?"":u});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function d(){s=a.value.trim()}return n.watch(()=>o.name,u=>{u!==a.value&&(a.value=u)}),(u,f)=>{const p=n.resolveComponent("KInput");return n.openBlock(),n.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":f[0]||(f[0]=m=>a.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:n.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),CO=n.defineComponent({__name:"NodeFormCall",setup(e){const{i18n:t}=qe(),o=n.useTemplateRef("form"),r=wn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f}=qn(()=>o.value.getInnerData());return(p,m)=>{const h=n.resolveComponent("KLabel");return n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(i),schema:n.unref(r)},{default:n.withCtx(()=>[n.createVNode(pi,{name:n.unref(i).name,validate:n.unref(f),onUpdate:n.unref(a)},null,8,["name","validate","onUpdate"]),n.createVNode(h,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t).t("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),n.createVNode(In,{name:"url","onUpdate:modelValue":m[0]||(m[0]=w=>n.unref(l)())}),n.createVNode(mO,{name:"method","onUpdate:modelValue":m[1]||(m[1]=w=>n.unref(l)())}),n.createVNode(On,{label:n.unref(t).t("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout","onUpdate:modelValue":m[2]||(m[2]=w=>n.unref(l)())},null,8,["label"]),n.createVNode(In,{name:"ssl_server_name","onUpdate:modelValue":m[3]||(m[3]=w=>n.unref(l)())}),n.createVNode(jn,{"field-names":n.unref(u),items:n.unref(s),"onChange:input":n.unref(d),"onChange:inputs":n.unref(c)},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),vO=n.defineComponent({__name:"NodeFormServiceRequest",setup(e){const t=n.useTemplateRef("form"),o=wn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s}=qn(()=>t.value.getInnerData());return(c,d)=>(n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(r),schema:n.unref(o)},{default:n.withCtx(()=>[n.createVNode(jn,{"field-names":n.unref(s),items:n.unref(i),"onChange:input":n.unref(l),"onChange:inputs":n.unref(a)},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),NO=n.defineComponent({__name:"NodeFormResponse",setup(e){const t=n.useTemplateRef("form"),o=wn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s}=qn(()=>t.value.getInnerData());return(c,d)=>(n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(r),schema:n.unref(o)},{default:n.withCtx(()=>[n.createVNode(jn,{"field-names":n.unref(s),items:n.unref(i),"onChange:input":n.unref(l),"onChange:inputs":n.unref(a)},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),SO=n.defineComponent({__name:"NodeFormJq",setup(e){const{i18n:t}=qe(),o=n.useTemplateRef("form"),r=wn("jq"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,addField:u,removeFieldByName:f,renameFieldByName:p,inputsFieldNames:m,nameValidator:h}=qn(()=>o.value.getInnerData());function w(b,y){u("input",b,y)}function g(b){f("input",b)}function _(b,y){p("input",b,y)}return(b,y)=>{const C=n.resolveComponent("KLabel");return n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(i),schema:n.unref(r)},{default:n.withCtx(()=>[n.createVNode(pi,{name:n.unref(i).name,validate:n.unref(h),onUpdate:n.unref(a)},null,8,["name","validate","onUpdate"]),n.createVNode(C,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t).t("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),n.createVNode(In,{label:n.unref(t).t("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),multiline:"",name:"jq",resizable:"",rows:"2","onUpdate:modelValue":y[0]||(y[0]=T=>n.unref(l)())},null,8,["label"]),n.createVNode(jn,{"field-names":n.unref(m),items:n.unref(s),"onAdd:field":w,"onChange:input":n.unref(d),"onChange:inputs":n.unref(c),"onRemove:field":g,"onRename:field":_},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),xO=_e(n.defineComponent({__name:"OutputValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(e,{emit:t}){const o=e,r=t,{entries:i,addEntry:a,removeEntry:l,field:s}=ia(o,r,!1),{i18n:c}=qe(),d=n.useTemplateRef("root"),u=n.ref(null);let f;async function p(b,y="key"){var C;d.value&&(await n.nextTick(),(C=d.value.querySelector(`[data-${y}-input="${b}"]`))==null||C.focus())}function m(){const{id:b}=a(),y=i.value.findIndex(({key:C})=>!C);p(y===-1?i.value.length-1:y),u.value=b}function h(b){b.id===u.value&&(u.value=null),l(b.id),b.key.trim()!==""&&r("remove:field",b.key)}function w(b){f=b.key}function g(b){if(b.id===u.value){if(b.key.trim()==="")return;u.value=null,r("add:field",b.key,b.value)}else r("rename:field",f,b.key)}function _(b,y){if(y.id===u.value)return;const C=b.target.value.trim();r("change:value",y.key,C)}return(b,y)=>{const C=n.resolveComponent("KAlert"),T=n.resolveComponent("KLabel"),k=n.resolveComponent("KButton"),S=n.resolveComponent("KInput"),I=n.resolveComponent("KCard");return n.unref(s).error?(n.openBlock(),n.createBlock(C,{key:0,appearance:"danger",message:n.unref(s).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-output-value-field"},[n.createVNode(T,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(i),(B,W)=>(n.openBlock(),n.createBlock(I,{key:B.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${n.unref(s).path.value}.${W}`},{actions:n.withCtx(()=>[n.createVNode(k,{appearance:"none","data-testid":`ff-kv-remove-btn-${n.unref(s).path.value}.${W}`,icon:"",onClick:M=>h(B)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:n.withCtx(()=>[n.createVNode(S,{id:`ff-kv-entry-key-${n.unref(s).path.value}.${W}`,modelValue:B.key,"onUpdate:modelValue":M=>B.key=M,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":W,"data-testid":`ff-key-${n.unref(s).path.value}.${W}`,label:n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),onChange:M=>g(B),onFocus:M=>w(B)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","label","onChange","onFocus"]),n.createVNode(S,{modelValue:B.value,"onUpdate:modelValue":M=>B.value=M,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${n.unref(s).path.value}.${W}`,label:n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:M=>_(M,B)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),n.createVNode(k,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(s).path.value}`,disabled:!!u.value,onClick:m},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-993261de"]]);function AO(e){const t={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?t[o]=JSON.stringify(r):t[o]=String(r);return t}function mi(e){const t={};for(const[o,r]of Object.entries(e))if(r!=null){t[o]=r;try{r==="null"?t[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(t[o]=JSON.parse(r))}catch{}}return t}function TO(e,t,o){const r={};for(const i of Object.keys(e))i===t?r[o]=e[t]:r[i]=e[i];return r}const PO=n.defineComponent({__name:"NodeFormStatic",setup(e){const{renameNode:t,selectedNode:o,getOutEdgesByNodeId:r,addField:i,renameField:a,removeField:l,replaceConfig:s}=Et(),c=wn("static"),d=Yf(),u=n.computed(()=>{var _;return((_=o.value)==null?void 0:_.fields.output.map(b=>b.name))||[]});function f(_){if(!o.value)throw new Error("No selected node");t(o.value.id,_??"")}const p=n.computed(()=>{var k;if(!o.value)return{};const _=((k=o.value.config)==null?void 0:k.values)??{},b={},y=r(o.value.id).map(S=>S.sourceField).filter(Boolean).map(S=>an(o.value,"output",S)).map(S=>S==null?void 0:S.name).filter(Boolean),C=o.value.fields.output.map(S=>S.name);return new Set([...y,...C]).forEach(S=>{if(S in _){b[S]=_[S];return}b[S]=""}),{name:o.value.name,values:AO(b)}});function m(_,b){if(!o.value)throw new Error("No selected node");if(i(o.value.id,"output",_,!b),b){const y={values:mi({...p.value.values,[_]:b})};s(o.value.id,y)}}function h(_,b){if(!o.value)throw new Error("No selected node");const y=mo(o.value,"output",_);if(!y)throw new Error("No field found to rename");const C={values:mi(TO(p.value.values??{},_,b))};s(o.value.id,C,!1),a(o.value.id,y.id,b)}function w(_){var C;if(!o.value)throw new Error("No selected node");const b=mo(o.value,"output",_);if(!b)throw new Error("No field found to delete");l((C=o.value)==null?void 0:C.id,b.id,!0,!1);const y={values:mi({...p.value.values})};delete y.values[_],s(o.value.id,y)}function g(_,b){if(!o.value)throw new Error("No selected node");const y={...p.value.values};y[_]=b;const C={values:mi(y)};s(o.value.id,C)}return(_,b)=>{const y=n.resolveComponent("NameField");return n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:p.value,schema:n.unref(c)},{default:n.withCtx(()=>{var C;return[n.createVNode(y,{name:((C=n.unref(o))==null?void 0:C.name)??"",validate:n.unref(d),onUpdate:f},null,8,["name","validate"]),n.createVNode(xO,{"key-order":u.value,name:"values","onAdd:field":m,"onChange:value":g,"onRemove:field":w,"onRename:field":h},null,8,["key-order"])]}),_:1},8,["data","schema"])}}}),IO={class:"dk-kong-property-item"},OO={class:"property-type"},$O={class:"property-badges"},BO=_e(n.defineComponent({__name:"PropertiesField",emits:["update:model-value"],setup(e,{emit:t}){const{i18n:{t:o}}=qe(),r=t,{formData:i}=$e(),a=n.ref(Bo(i.property)),l=n.computed(()=>fi(i.property)),s=n.ref(Gf(i.property)),c=n.computed(()=>Object.entries(bn).map(([f])=>{var h;const p=fi(f)?(h=i.property)==null?void 0:h.startsWith(f.replace(Gn,"")):i.property===f;return{label:p&&s.value?f.replace(Gn,s.value):f,value:f,selected:p}}));function d(f){const p=ui.find(h=>{var w;return(w=i.property)==null?void 0:w.startsWith(h)});if(!p)return;const m=f.target.value;i.property=p+m,r("update:model-value",i.property)}function u(f){a.value!==Bo(f==null?void 0:f.value)&&(i.property=(f==null?void 0:f.value)||null,a.value=Bo(i.property),r("update:model-value",i.property))}return n.watch(()=>i.property,f=>{s.value=Gf(f),a.value=Bo(f)}),(f,p)=>{const m=n.resolveComponent("KBadge"),h=n.resolveComponent("KSelect"),w=n.resolveComponent("KInput");return n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(h,{"enable-filtering":"",items:c.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onChange:u},{"item-template":n.withCtx(({item:g})=>[n.createElementVNode("div",IO,[n.createElementVNode("div",null,[n.createElementVNode("div",null,n.toDisplayString(g.label),1),n.createElementVNode("div",OO,n.toDisplayString(n.unref(bn)[g.value].dataType),1)]),n.createElementVNode("div",$O,[n.unref(bn)[g.value].readable?(n.openBlock(),n.createBlock(m,{key:0,appearance:"info"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):n.createCommentVNode("",!0),n.unref(bn)[g.value].writable?(n.openBlock(),n.createBlock(m,{key:1,appearance:"warning"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):n.createCommentVNode("",!0)])])]),_:1},8,["items"]),l.value?(n.openBlock(),n.createBlock(w,{key:0,modelValue:s.value,"onUpdate:modelValue":p[0]||(p[0]=g=>s.value=g),label:"key",required:"",onChange:d},null,8,["modelValue"])):n.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-82875520"]]),VO=n.defineComponent({__name:"NodeFormProperty",setup(e){const t=n.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=Et(),a=wn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:u,setInput:f,inputsFieldNames:p,nameValidator:m}=qn(()=>t.value.getInnerData()),h=n.computed(()=>gl(l.value.property));function w(g){var b;const _=(b=o.value)==null?void 0:b.id;if(!_)throw new Error("Expected selectedNode to be defined");ml(g)||i(_,!1),gl(g)||r(_,!1),c()}return(g,_)=>(n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(l),schema:n.unref(a)},{default:n.withCtx(()=>[n.createVNode(pi,{name:n.unref(l).name,validate:n.unref(m),onUpdate:n.unref(s)},null,8,["name","validate","onUpdate"]),n.createVNode(_t,{name:"content_type","onUpdate:modelValue":n.unref(c)},null,8,["onUpdate:modelValue"]),n.createVNode(BO,{"onUpdate:modelValue":w}),h.value?(n.openBlock(),n.createBlock(jn,{key:0,"field-names":n.unref(p),items:n.unref(d),"onChange:input":n.unref(f),"onChange:inputs":n.unref(u)},null,8,["field-names","items","onChange:input","onChange:inputs"])):n.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),RO=n.defineComponent({__name:"NodeFormExit",setup(e){const t=n.useTemplateRef("form"),o=wn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:u}=qn(()=>t.value.getInnerData());return(f,p)=>(n.openBlock(),n.createBlock(bt,{ref:"form",config:{updateOnChange:!0},data:n.unref(r),schema:n.unref(o)},{default:n.withCtx(()=>[n.createVNode(pi,{name:n.unref(r).name,validate:n.unref(u),onUpdate:n.unref(i)},null,8,["name","validate","onUpdate"]),n.createVNode(On,{name:"status","onUpdate:modelValue":p[0]||(p[0]=m=>n.unref(a)())}),n.createVNode(kc,{name:"warn_headers_sent","onUpdate:modelValue":p[1]||(p[1]=m=>n.unref(a)())}),n.createVNode(jn,{"field-names":n.unref(d),items:n.unref(l),"onChange:input":n.unref(c),"onChange:inputs":n.unref(s)},null,8,["field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),DO=["innerHTML"],MO=_e(n.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:()=>XE},offsetTop:{default:()=>ZE},visible:{type:Boolean}},emits:["close"],setup(e){const{selectedNode:t}=Et(),o=n.computed(()=>{var r;switch((r=t.value)==null?void 0:r.type){case"call":return CO;case"service_request":return vO;case"response":return NO;case"jq":return SO;case"static":return PO;case"property":return VO;case"exit":return RO;default:return null}});return(r,i)=>(n.openBlock(),n.createBlock(n.unref(Pe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":r.maxWidth,"offset-top":r.offsetTop,visible:r.visible,onClose:i[0]||(i[0]=a=>r.$emit("close"))},n.createSlots({default:n.withCtx(()=>{var a;return[n.unref(t)?(n.openBlock(),n.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:n.unref(wt)(n.unref(t).type)},null,8,DO)):n.createCommentVNode("",!0),o.value?(n.openBlock(),n.createBlock(n.unref(o),{key:(a=n.unref(t))==null?void 0:a.id,class:"dk-node-properties-panel-form"})):n.createCommentVNode("",!0)]}),_:2},[n.unref(t)?{name:"title",fn:n.withCtx(()=>[n.createVNode(qf,{type:n.unref(t).type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible"]))}}),[["__scopeId","data-v-ed3a7db2"]]),FO={class:"dk-editor-content"},LO={class:"header"},UO={class:"title"},KO={class:"body"},GO={class:"node-selection-panel"},jO={class:"main"},qO=_e(n.defineComponent({__name:"EditorContent",setup(e){const{t}=Ue.createI18n("en-us",je),{sidePanelExpanded:o}=ma(),{selectNode:r,selectedNode:i}=Et(),a=n.ref(!1);let l=!1;const s=u=>{a.value=u},c=u=>{l=!0,setTimeout(()=>{l=!1},10),r(u.id),s(!0)},d=()=>{setTimeout(()=>{l||s(!1)},0)};return n.watch(i,u=>{u||s(!1)}),(u,f)=>(n.openBlock(),n.createElementBlock("div",FO,[n.createElementVNode("aside",{class:n.normalizeClass(["side-panel",{expanded:n.unref(o)}])},[n.createElementVNode("header",LO,[n.createElementVNode("h2",UO,n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.name")),1)]),n.createElementVNode("div",KO,[n.createElementVNode("div",GO,[n.createVNode(pO)])])],2),n.createElementVNode("div",jO,[n.createVNode(oO,{"onClick:backdrop":d,"onClick:node":c})]),n.createVNode(MO,{visible:a.value,onClose:d},null,8,["visible"])]))}}),[["__scopeId","data-v-05771600"]]),zO=_e(n.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:n.mergeModels(["close"],["update:open"]),setup(e,{emit:t}){n.useCssVars(u=>({"4da009a8":n.unref(WE),"363e5834":n.unref(YE)}));const o=n.useTemplateRef("modal"),r=n.useModel(e,"open"),i=t,a=n.useTemplateRef("content"),l=Je.useScrollLock(document),{activate:s,deactivate:c}=HE(o,{returnFocusOnDeactivate:!0,initialFocus:()=>{var u;return(u=a.value)==null?void 0:u.$el}});n.watch(r,async u=>{l.value=!!u,await n.nextTick(),u?s():c()},{immediate:!0});function d(){r.value=!1,i("close")}return(u,f)=>r.value?(n.openBlock(),n.createElementBlock("div",{key:0,ref_key:"modal",ref:o,class:"dk-editor-modal"},[n.createVNode(nk,{class:"nav",onBack:d}),n.createVNode(qO,{ref_key:"content",ref:a,class:"content",tabindex:"0"},null,512)],512)):n.createCommentVNode("",!0)}}),[["__scopeId","data-v-a5d8043d"]]),HO={class:"dk-flow-editor"},YO=n.defineComponent({__name:"FlowEditor",props:{editing:{type:Boolean},config:{}},setup(e){const{t}=Ue.createI18n("en-us",je),o=n.ref(!1);return pE([{name:"CAT_FACT",type:"call",url:"https://catfact.ninja/fact",input:"request.body"},{name:"DOG_FACT",type:"call",url:"https://dogapi.dog/api/v1/facts"},{name:"JOIN",type:"jq",inputs:{cat:"CAT_FACT.body",dog:"DOG_FACT.body"},jq:`{
|
|
46
46
|
cat_fact: .cat.fact,
|
|
47
47
|
dog_fact: .dog.facts[0],
|
|
48
48
|
}
|
|
49
|
-
`},{name:"EXIT",type:"exit",inputs:{body:"JOIN"},status:200},{name:"DANGLING_CALL",type:"call",url:"https://dogapi.dog/api/v1/facts"},{name:"READ_UPSTREAM",type:"jq",input:"service_response",jq:"."},{name:"VALUE",type:"static",values:{foo:"bar",baz:null,nested:{key:"value",array:[1,2,3]}},outputs:{foo:"MY_CALL.body",baz:"MY_CALL.headers"}},{name:"MY_CALL",type:"call",url:"https://example.com/api"}],[{name:"VALUE",phase:"response",position:{x:0,y:0},fields:{output:["foo","baz","nested","unknown"]},expanded:{output:!0}}]),(r,i)=>{const a=n.resolveComponent("KButton");return n.openBlock(),n.createElementBlock("div",
|
|
49
|
+
`},{name:"EXIT",type:"exit",inputs:{body:"JOIN"},status:200},{name:"DANGLING_CALL",type:"call",url:"https://dogapi.dog/api/v1/facts"},{name:"READ_UPSTREAM",type:"jq",input:"service_response",jq:"."},{name:"VALUE",type:"static",values:{foo:"bar",baz:null,nested:{key:"value",array:[1,2,3]}},outputs:{foo:"MY_CALL.body",baz:"MY_CALL.headers"}},{name:"MY_CALL",type:"call",url:"https://example.com/api"}],[{name:"VALUE",phase:"response",position:{x:0,y:0},fields:{output:["foo","baz","nested","unknown"]},expanded:{output:!0}}]),(r,i)=>{const a=n.resolveComponent("KButton");return n.openBlock(),n.createElementBlock("div",HO,[i[2]||(i[2]=n.createElementVNode("div",null,"Nothing here yet.",-1)),n.createVNode(a,{appearance:"secondary",onClick:i[0]||(i[0]=l=>o.value=!0)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.cta")),1)]),_:1}),n.createVNode(zO,{open:o.value,"onUpdate:open":i[1]||(i[1]=l=>o.value=l)},null,8,["open"])])}}});/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Wf(e){return typeof e>"u"||e===null}function WO(e){return typeof e=="object"&&e!==null}function XO(e){return Array.isArray(e)?e:Wf(e)?[]:[e]}function ZO(e,t){var o,r,i,a;if(t)for(a=Object.keys(t),o=0,r=a.length;o<r;o+=1)i=a[o],e[i]=t[i];return e}function JO(e,t){var o="",r;for(r=0;r<t;r+=1)o+=e;return o}function QO(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var e$=Wf,t$=WO,n$=XO,o$=JO,r$=QO,i$=ZO,Ge={isNothing:e$,isObject:t$,toArray:n$,repeat:o$,isNegativeZero:r$,extend:i$};function Xf(e,t){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!t&&e.mark.snippet&&(o+=`
|
|
50
50
|
|
|
51
|
-
`+e.mark.snippet),r+" "+o):r}function
|
|
52
|
-
`+s;for(d=
|
|
53
|
-
`,s+=
|
|
54
|
-
`,c=1;c<=t.linesAfter&&!(l+c>=i.length);c++)d=
|
|
55
|
-
`;return s.replace(/\n$/,"")}var
|
|
56
|
-
\r`;function
|
|
57
|
-
`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"
":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function
|
|
58
|
-
`,t-1))}function
|
|
59
|
-
`,a?1+c:c):i===
|
|
60
|
-
`);break}for(r?
|
|
61
|
-
`,a?1+c:c)):d?(d=!1,e.result+=
|
|
62
|
-
`,c+1)):c===0?a&&(e.result+=" "):e.result+=
|
|
63
|
-
`,c):e.result+=
|
|
64
|
-
`,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!xt(
|
|
65
|
-
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new
|
|
51
|
+
`+e.mark.snippet),r+" "+o):r}function Vo(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=Xf(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Vo.prototype=Object.create(Error.prototype),Vo.prototype.constructor=Vo,Vo.prototype.toString=function(t){return this.name+": "+Xf(this,t)};var et=Vo;function hl(e,t,o,r,i){var a="",l="",s=Math.floor(i/2)-1;return r-t>s&&(a=" ... ",t=r-s+a.length),o-r>s&&(l=" ...",o=r+s-l.length),{str:a+e.slice(t,o).replace(/\t/g,"→")+l,pos:r-t+a.length}}function yl(e,t){return Ge.repeat(" ",t-e.length)+e}function a$(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var o=/\r?\n|\r|\0/g,r=[0],i=[],a,l=-1;a=o.exec(e.buffer);)i.push(a.index),r.push(a.index+a[0].length),e.position<=a.index&&l<0&&(l=r.length-2);l<0&&(l=r.length-1);var s="",c,d,u=Math.min(e.line+t.linesAfter,i.length).toString().length,f=t.maxLength-(t.indent+u+3);for(c=1;c<=t.linesBefore&&!(l-c<0);c++)d=hl(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),f),s=Ge.repeat(" ",t.indent)+yl((e.line-c+1).toString(),u)+" | "+d.str+`
|
|
52
|
+
`+s;for(d=hl(e.buffer,r[l],i[l],e.position,f),s+=Ge.repeat(" ",t.indent)+yl((e.line+1).toString(),u)+" | "+d.str+`
|
|
53
|
+
`,s+=Ge.repeat("-",t.indent+u+3+d.pos)+`^
|
|
54
|
+
`,c=1;c<=t.linesAfter&&!(l+c>=i.length);c++)d=hl(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),f),s+=Ge.repeat(" ",t.indent)+yl((e.line+c+1).toString(),u)+" | "+d.str+`
|
|
55
|
+
`;return s.replace(/\n$/,"")}var l$=a$,s$=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],c$=["scalar","sequence","mapping"];function d$(e){var t={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){t[String(r)]=o})}),t}function u$(e,t){if(t=t||{},Object.keys(t).forEach(function(o){if(s$.indexOf(o)===-1)throw new et('Unknown option "'+o+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(o){return o},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=d$(t.styleAliases||null),c$.indexOf(this.kind)===-1)throw new et('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var He=u$;function Zf(e,t){var o=[];return e[t].forEach(function(r){var i=o.length;o.forEach(function(a,l){a.tag===r.tag&&a.kind===r.kind&&a.multi===r.multi&&(i=l)}),o[i]=r}),o}function f$(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,o;function r(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(t=0,o=arguments.length;t<o;t+=1)arguments[t].forEach(r);return e}function _l(e){return this.extend(e)}_l.prototype.extend=function(t){var o=[],r=[];if(t instanceof He)r.push(t);else if(Array.isArray(t))r=r.concat(t);else if(t&&(Array.isArray(t.implicit)||Array.isArray(t.explicit)))t.implicit&&(o=o.concat(t.implicit)),t.explicit&&(r=r.concat(t.explicit));else throw new et("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof He))throw new et("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new et("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new et("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(a){if(!(a instanceof He))throw new et("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(_l.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Zf(i,"implicit"),i.compiledExplicit=Zf(i,"explicit"),i.compiledTypeMap=f$(i.compiledImplicit,i.compiledExplicit),i};var Jf=_l,Qf=new He("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),ep=new He("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),tp=new He("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),np=new Jf({explicit:[Qf,ep,tp]});function p$(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function m$(){return null}function g$(e){return e===null}var op=new He("tag:yaml.org,2002:null",{kind:"scalar",resolve:p$,construct:m$,predicate:g$,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function h$(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function y$(e){return e==="true"||e==="True"||e==="TRUE"}function _$(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var rp=new He("tag:yaml.org,2002:bool",{kind:"scalar",resolve:h$,construct:y$,predicate:_$,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function b$(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function w$(e){return 48<=e&&e<=55}function E$(e){return 48<=e&&e<=57}function k$(e){if(e===null)return!1;var t=e.length,o=0,r=!1,i;if(!t)return!1;if(i=e[o],(i==="-"||i==="+")&&(i=e[++o]),i==="0"){if(o+1===t)return!0;if(i=e[++o],i==="b"){for(o++;o<t;o++)if(i=e[o],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(o++;o<t;o++)if(i=e[o],i!=="_"){if(!b$(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<t;o++)if(i=e[o],i!=="_"){if(!w$(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<t;o++)if(i=e[o],i!=="_"){if(!E$(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function C$(e){var t=e,o=1,r;if(t.indexOf("_")!==-1&&(t=t.replace(/_/g,"")),r=t[0],(r==="-"||r==="+")&&(r==="-"&&(o=-1),t=t.slice(1),r=t[0]),t==="0")return 0;if(r==="0"){if(t[1]==="b")return o*parseInt(t.slice(2),2);if(t[1]==="x")return o*parseInt(t.slice(2),16);if(t[1]==="o")return o*parseInt(t.slice(2),8)}return o*parseInt(t,10)}function v$(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!Ge.isNegativeZero(e)}var ip=new He("tag:yaml.org,2002:int",{kind:"scalar",resolve:k$,construct:C$,predicate:v$,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),N$=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function S$(e){return!(e===null||!N$.test(e)||e[e.length-1]==="_")}function x$(e){var t,o;return t=e.replace(/_/g,"").toLowerCase(),o=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?o===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:o*parseFloat(t,10)}var A$=/^[-+]?[0-9]+e/;function T$(e,t){var o;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Ge.isNegativeZero(e))return"-0.0";return o=e.toString(10),A$.test(o)?o.replace("e",".e"):o}function P$(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||Ge.isNegativeZero(e))}var ap=new He("tag:yaml.org,2002:float",{kind:"scalar",resolve:S$,construct:x$,predicate:P$,represent:T$,defaultStyle:"lowercase"}),lp=np.extend({implicit:[op,rp,ip,ap]}),sp=lp,cp=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),dp=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function I$(e){return e===null?!1:cp.exec(e)!==null||dp.exec(e)!==null}function O$(e){var t,o,r,i,a,l,s,c=0,d=null,u,f,p;if(t=cp.exec(e),t===null&&(t=dp.exec(e)),t===null)throw new Error("Date resolve error");if(o=+t[1],r=+t[2]-1,i=+t[3],!t[4])return new Date(Date.UTC(o,r,i));if(a=+t[4],l=+t[5],s=+t[6],t[7]){for(c=t[7].slice(0,3);c.length<3;)c+="0";c=+c}return t[9]&&(u=+t[10],f=+(t[11]||0),d=(u*60+f)*6e4,t[9]==="-"&&(d=-d)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),d&&p.setTime(p.getTime()-d),p}function $$(e){return e.toISOString()}var up=new He("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:I$,construct:O$,instanceOf:Date,represent:$$});function B$(e){return e==="<<"||e===null}var fp=new He("tag:yaml.org,2002:merge",{kind:"scalar",resolve:B$}),bl=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
|
56
|
+
\r`;function V$(e){if(e===null)return!1;var t,o,r=0,i=e.length,a=bl;for(o=0;o<i;o++)if(t=a.indexOf(e.charAt(o)),!(t>64)){if(t<0)return!1;r+=6}return r%8===0}function R$(e){var t,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=bl,l=0,s=[];for(t=0;t<i;t++)t%4===0&&t&&(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)),l=l<<6|a.indexOf(r.charAt(t));return o=i%4*6,o===0?(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)):o===18?(s.push(l>>10&255),s.push(l>>2&255)):o===12&&s.push(l>>4&255),new Uint8Array(s)}function D$(e){var t="",o=0,r,i,a=e.length,l=bl;for(r=0;r<a;r++)r%3===0&&r&&(t+=l[o>>18&63],t+=l[o>>12&63],t+=l[o>>6&63],t+=l[o&63]),o=(o<<8)+e[r];return i=a%3,i===0?(t+=l[o>>18&63],t+=l[o>>12&63],t+=l[o>>6&63],t+=l[o&63]):i===2?(t+=l[o>>10&63],t+=l[o>>4&63],t+=l[o<<2&63],t+=l[64]):i===1&&(t+=l[o>>2&63],t+=l[o<<4&63],t+=l[64],t+=l[64]),t}function M$(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var pp=new He("tag:yaml.org,2002:binary",{kind:"scalar",resolve:V$,construct:R$,predicate:M$,represent:D$}),F$=Object.prototype.hasOwnProperty,L$=Object.prototype.toString;function U$(e){if(e===null)return!0;var t=[],o,r,i,a,l,s=e;for(o=0,r=s.length;o<r;o+=1){if(i=s[o],l=!1,L$.call(i)!=="[object Object]")return!1;for(a in i)if(F$.call(i,a))if(!l)l=!0;else return!1;if(!l)return!1;if(t.indexOf(a)===-1)t.push(a);else return!1}return!0}function K$(e){return e!==null?e:[]}var mp=new He("tag:yaml.org,2002:omap",{kind:"sequence",resolve:U$,construct:K$}),G$=Object.prototype.toString;function j$(e){if(e===null)return!0;var t,o,r,i,a,l=e;for(a=new Array(l.length),t=0,o=l.length;t<o;t+=1){if(r=l[t],G$.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[t]=[i[0],r[i[0]]]}return!0}function q$(e){if(e===null)return[];var t,o,r,i,a,l=e;for(a=new Array(l.length),t=0,o=l.length;t<o;t+=1)r=l[t],i=Object.keys(r),a[t]=[i[0],r[i[0]]];return a}var gp=new He("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:j$,construct:q$}),z$=Object.prototype.hasOwnProperty;function H$(e){if(e===null)return!0;var t,o=e;for(t in o)if(z$.call(o,t)&&o[t]!==null)return!1;return!0}function Y$(e){return e!==null?e:{}}var hp=new He("tag:yaml.org,2002:set",{kind:"mapping",resolve:H$,construct:Y$}),wl=sp.extend({implicit:[up,fp],explicit:[pp,mp,gp,hp]}),Ht=Object.prototype.hasOwnProperty,gi=1,yp=2,_p=3,hi=4,El=1,W$=2,bp=3,X$=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Z$=/[\x85\u2028\u2029]/,J$=/[,\[\]\{\}]/,wp=/^(?:!|!!|![a-z\-]+!)$/i,Ep=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function kp(e){return Object.prototype.toString.call(e)}function xt(e){return e===10||e===13}function En(e){return e===9||e===32}function nt(e){return e===9||e===32||e===10||e===13}function zn(e){return e===44||e===91||e===93||e===123||e===125}function Q$(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function eB(e){return e===120?2:e===117?4:e===85?8:0}function tB(e){return 48<=e&&e<=57?e-48:-1}function Cp(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
|
|
57
|
+
`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"
":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function nB(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}for(var vp=new Array(256),Np=new Array(256),Hn=0;Hn<256;Hn++)vp[Hn]=Cp(Hn)?1:0,Np[Hn]=Cp(Hn);function oB(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||wl,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Sp(e,t){var o={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return o.snippet=l$(o),new et(t,o)}function ye(e,t){throw Sp(e,t)}function yi(e,t){e.onWarning&&e.onWarning.call(null,Sp(e,t))}var xp={YAML:function(t,o,r){var i,a,l;t.version!==null&&ye(t,"duplication of %YAML directive"),r.length!==1&&ye(t,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&ye(t,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&ye(t,"unacceptable YAML version of the document"),t.version=r[0],t.checkLineBreaks=l<2,l!==1&&l!==2&&yi(t,"unsupported YAML version of the document")},TAG:function(t,o,r){var i,a;r.length!==2&&ye(t,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],wp.test(i)||ye(t,"ill-formed tag handle (first argument) of the TAG directive"),Ht.call(t.tagMap,i)&&ye(t,'there is a previously declared suffix for "'+i+'" tag handle'),Ep.test(a)||ye(t,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{ye(t,"tag prefix is malformed: "+a)}t.tagMap[i]=a}};function Yt(e,t,o,r){var i,a,l,s;if(t<o){if(s=e.input.slice(t,o),r)for(i=0,a=s.length;i<a;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||ye(e,"expected valid JSON character");else X$.test(s)&&ye(e,"the stream contains non-printable characters");e.result+=s}}function Ap(e,t,o,r){var i,a,l,s;for(Ge.isObject(o)||ye(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)a=i[l],Ht.call(t,a)||(t[a]=o[a],r[a]=!0)}function Yn(e,t,o,r,i,a,l,s,c){var d,u;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),d=0,u=i.length;d<u;d+=1)Array.isArray(i[d])&&ye(e,"nested arrays are not supported inside keys"),typeof i=="object"&&kp(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&kp(i)==="[object Object]"&&(i="[object Object]"),i=String(i),t===null&&(t={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(d=0,u=a.length;d<u;d+=1)Ap(e,t,a[d],o);else Ap(e,t,a,o);else!e.json&&!Ht.call(o,i)&&Ht.call(t,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,ye(e,"duplicated mapping key")),i==="__proto__"?Object.defineProperty(t,i,{configurable:!0,enumerable:!0,writable:!0,value:a}):t[i]=a,delete o[i];return t}function kl(e){var t;t=e.input.charCodeAt(e.position),t===10?e.position++:t===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):ye(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Me(e,t,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;En(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(t&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(xt(i))for(kl(e),i=e.input.charCodeAt(e.position),r++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return o!==-1&&r!==0&&e.lineIndent<o&&yi(e,"deficient indentation"),r}function _i(e){var t=e.position,o;return o=e.input.charCodeAt(t),!!((o===45||o===46)&&o===e.input.charCodeAt(t+1)&&o===e.input.charCodeAt(t+2)&&(t+=3,o=e.input.charCodeAt(t),o===0||nt(o)))}function Cl(e,t){t===1?e.result+=" ":t>1&&(e.result+=Ge.repeat(`
|
|
58
|
+
`,t-1))}function rB(e,t,o){var r,i,a,l,s,c,d,u,f=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),nt(m)||zn(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=e.input.charCodeAt(e.position+1),nt(i)||o&&zn(i)))return!1;for(e.kind="scalar",e.result="",a=l=e.position,s=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),nt(i)||o&&zn(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),nt(r))break}else{if(e.position===e.lineStart&&_i(e)||o&&zn(m))break;if(xt(m))if(c=e.line,d=e.lineStart,u=e.lineIndent,Me(e,!1,-1),e.lineIndent>=t){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=d,e.lineIndent=u;break}}s&&(Yt(e,a,l,!1),Cl(e,e.line-c),a=l=e.position,s=!1),En(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return Yt(e,a,l,!1),e.result?!0:(e.kind=f,e.result=p,!1)}function iB(e,t){var o,r,i;if(o=e.input.charCodeAt(e.position),o!==39)return!1;for(e.kind="scalar",e.result="",e.position++,r=i=e.position;(o=e.input.charCodeAt(e.position))!==0;)if(o===39)if(Yt(e,r,e.position,!0),o=e.input.charCodeAt(++e.position),o===39)r=e.position,e.position++,i=e.position;else return!0;else xt(o)?(Yt(e,r,i,!0),Cl(e,Me(e,!1,t)),r=i=e.position):e.position===e.lineStart&&_i(e)?ye(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);ye(e,"unexpected end of the stream within a single quoted scalar")}function aB(e,t){var o,r,i,a,l,s;if(s=e.input.charCodeAt(e.position),s!==34)return!1;for(e.kind="scalar",e.result="",e.position++,o=r=e.position;(s=e.input.charCodeAt(e.position))!==0;){if(s===34)return Yt(e,o,e.position,!0),e.position++,!0;if(s===92){if(Yt(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),xt(s))Me(e,!1,t);else if(s<256&&vp[s])e.result+=Np[s],e.position++;else if((l=eB(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=Q$(s))>=0?a=(a<<4)+l:ye(e,"expected hexadecimal character");e.result+=nB(a),e.position++}else ye(e,"unknown escape sequence");o=r=e.position}else xt(s)?(Yt(e,o,r,!0),Cl(e,Me(e,!1,t)),o=r=e.position):e.position===e.lineStart&&_i(e)?ye(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}ye(e,"unexpected end of the stream within a double quoted scalar")}function lB(e,t){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,u,f,p,m,h=Object.create(null),w,g,_,b;if(b=e.input.charCodeAt(e.position),b===91)u=93,m=!1,s=[];else if(b===123)u=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),b=e.input.charCodeAt(++e.position);b!==0;){if(Me(e,!0,t),b=e.input.charCodeAt(e.position),b===u)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?b===44&&ye(e,"expected the node content, but found ','"):ye(e,"missed comma between flow collection entries"),g=w=_=null,f=p=!1,b===63&&(d=e.input.charCodeAt(e.position+1),nt(d)&&(f=p=!0,e.position++,Me(e,!0,t))),r=e.line,i=e.lineStart,a=e.position,Wn(e,t,gi,!1,!0),g=e.tag,w=e.result,Me(e,!0,t),b=e.input.charCodeAt(e.position),(p||e.line===r)&&b===58&&(f=!0,b=e.input.charCodeAt(++e.position),Me(e,!0,t),Wn(e,t,gi,!1,!0),_=e.result),m?Yn(e,s,h,g,w,_,r,i,a):f?s.push(Yn(e,null,h,g,w,_,r,i,a)):s.push(w),Me(e,!0,t),b=e.input.charCodeAt(e.position),b===44?(o=!0,b=e.input.charCodeAt(++e.position)):o=!1}ye(e,"unexpected end of the stream within a flow collection")}function sB(e,t){var o,r,i=El,a=!1,l=!1,s=t,c=0,d=!1,u,f;if(f=e.input.charCodeAt(e.position),f===124)r=!1;else if(f===62)r=!0;else return!1;for(e.kind="scalar",e.result="";f!==0;)if(f=e.input.charCodeAt(++e.position),f===43||f===45)El===i?i=f===43?bp:W$:ye(e,"repeat of a chomping mode identifier");else if((u=tB(f))>=0)u===0?ye(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?ye(e,"repeat of an indentation width identifier"):(s=t+u-1,l=!0);else break;if(En(f)){do f=e.input.charCodeAt(++e.position);while(En(f));if(f===35)do f=e.input.charCodeAt(++e.position);while(!xt(f)&&f!==0)}for(;f!==0;){for(kl(e),e.lineIndent=0,f=e.input.charCodeAt(e.position);(!l||e.lineIndent<s)&&f===32;)e.lineIndent++,f=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>s&&(s=e.lineIndent),xt(f)){c++;continue}if(e.lineIndent<s){i===bp?e.result+=Ge.repeat(`
|
|
59
|
+
`,a?1+c:c):i===El&&a&&(e.result+=`
|
|
60
|
+
`);break}for(r?En(f)?(d=!0,e.result+=Ge.repeat(`
|
|
61
|
+
`,a?1+c:c)):d?(d=!1,e.result+=Ge.repeat(`
|
|
62
|
+
`,c+1)):c===0?a&&(e.result+=" "):e.result+=Ge.repeat(`
|
|
63
|
+
`,c):e.result+=Ge.repeat(`
|
|
64
|
+
`,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!xt(f)&&f!==0;)f=e.input.charCodeAt(++e.position);Yt(e,o,e.position,!1)}return!0}function Tp(e,t){var o,r=e.tag,i=e.anchor,a=[],l,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,ye(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!nt(l))));){if(s=!0,e.position++,Me(e,!0,-1)&&e.lineIndent<=t){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,Wn(e,t,_p,!1,!0),a.push(e.result),Me(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>t)&&c!==0)ye(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function cB(e,t,o){var r,i,a,l,s,c,d=e.tag,u=e.anchor,f={},p=Object.create(null),m=null,h=null,w=null,g=!1,_=!1,b;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=f),b=e.input.charCodeAt(e.position);b!==0;){if(!g&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,ye(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(b===63||b===58)&&nt(r))b===63?(g&&(Yn(e,f,p,m,h,null,l,s,c),m=h=w=null),_=!0,g=!0,i=!0):g?(g=!1,i=!0):ye(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,b=r;else{if(l=e.line,s=e.lineStart,c=e.position,!Wn(e,o,yp,!1,!0))break;if(e.line===a){for(b=e.input.charCodeAt(e.position);En(b);)b=e.input.charCodeAt(++e.position);if(b===58)b=e.input.charCodeAt(++e.position),nt(b)||ye(e,"a whitespace character is expected after the key-value separator within a block mapping"),g&&(Yn(e,f,p,m,h,null,l,s,c),m=h=w=null),_=!0,g=!1,i=!1,m=e.tag,h=e.result;else if(_)ye(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=u,!0}else if(_)ye(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=d,e.anchor=u,!0}if((e.line===a||e.lineIndent>t)&&(g&&(l=e.line,s=e.lineStart,c=e.position),Wn(e,t,hi,!0,i)&&(g?h=e.result:w=e.result),g||(Yn(e,f,p,m,h,w,l,s,c),m=h=w=null),Me(e,!0,-1),b=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>t)&&b!==0)ye(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return g&&Yn(e,f,p,m,h,null,l,s,c),_&&(e.tag=d,e.anchor=u,e.kind="mapping",e.result=f),_}function dB(e){var t,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&ye(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(o=!0,l=e.input.charCodeAt(++e.position)):l===33?(r=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",t=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(t,e.position),l=e.input.charCodeAt(++e.position)):ye(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!nt(l);)l===33&&(r?ye(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(t-1,e.position+1),wp.test(i)||ye(e,"named tag handle cannot contain such characters"),r=!0,t=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(t,e.position),J$.test(a)&&ye(e,"tag suffix cannot contain flow indicator characters")}a&&!Ep.test(a)&&ye(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{ye(e,"tag name is malformed: "+a)}return o?e.tag=a:Ht.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:ye(e,'undeclared tag handle "'+i+'"'),!0}function uB(e){var t,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&ye(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),t=e.position;o!==0&&!nt(o)&&!zn(o);)o=e.input.charCodeAt(++e.position);return e.position===t&&ye(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function fB(e){var t,o,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),t=e.position;r!==0&&!nt(r)&&!zn(r);)r=e.input.charCodeAt(++e.position);return e.position===t&&ye(e,"name of an alias node must contain at least one character"),o=e.input.slice(t,e.position),Ht.call(e.anchorMap,o)||ye(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Me(e,!0,-1),!0}function Wn(e,t,o,r,i){var a,l,s,c=1,d=!1,u=!1,f,p,m,h,w,g;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=hi===o||_p===o,r&&Me(e,!0,-1)&&(d=!0,e.lineIndent>t?c=1:e.lineIndent===t?c=0:e.lineIndent<t&&(c=-1)),c===1)for(;dB(e)||uB(e);)Me(e,!0,-1)?(d=!0,s=a,e.lineIndent>t?c=1:e.lineIndent===t?c=0:e.lineIndent<t&&(c=-1)):s=!1;if(s&&(s=d||i),(c===1||hi===o)&&(gi===o||yp===o?w=t:w=t+1,g=e.position-e.lineStart,c===1?s&&(Tp(e,g)||cB(e,g,w))||lB(e,w)?u=!0:(l&&sB(e,w)||iB(e,w)||aB(e,w)?u=!0:fB(e)?(u=!0,(e.tag!==null||e.anchor!==null)&&ye(e,"alias node should not have any properties")):rB(e,w,gi===o)&&(u=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(u=s&&Tp(e,g))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&ye(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),f=0,p=e.implicitTypes.length;f<p;f+=1)if(h=e.implicitTypes[f],h.resolve(e.result)){e.result=h.construct(e.result),e.tag=h.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(Ht.call(e.typeMap[e.kind||"fallback"],e.tag))h=e.typeMap[e.kind||"fallback"][e.tag];else for(h=null,m=e.typeMap.multi[e.kind||"fallback"],f=0,p=m.length;f<p;f+=1)if(e.tag.slice(0,m[f].tag.length)===m[f].tag){h=m[f];break}h||ye(e,"unknown tag !<"+e.tag+">"),e.result!==null&&h.kind!==e.kind&&ye(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+h.kind+'", not "'+e.kind+'"'),h.resolve(e.result,e.tag)?(e.result=h.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):ye(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||u}function pB(e){var t=e.position,o,r,i,a=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(Me(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(a=!0,l=e.input.charCodeAt(++e.position),o=e.position;l!==0&&!nt(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&ye(e,"directive name must not be less than one character in length");l!==0;){for(;En(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!xt(l));break}if(xt(l))break;for(o=e.position;l!==0&&!nt(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&kl(e),Ht.call(xp,r)?xp[r](e,r,i):yi(e,'unknown document directive "'+r+'"')}if(Me(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,Me(e,!0,-1)):a&&ye(e,"directives end mark is expected"),Wn(e,e.lineIndent-1,hi,!1,!0),Me(e,!0,-1),e.checkLineBreaks&&Z$.test(e.input.slice(t,e.position))&&yi(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&_i(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Me(e,!0,-1));return}if(e.position<e.length-1)ye(e,"end of the stream or a document separator is expected");else return}function Pp(e,t){e=String(e),t=t||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
|
|
65
|
+
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new oB(e,t),r=e.indexOf("\0");for(r!==-1&&(o.position=r,ye(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)pB(o);return o.documents}function mB(e,t,o){t!==null&&typeof t=="object"&&typeof o>"u"&&(o=t,t=null);var r=Pp(e,o);if(typeof t!="function")return r;for(var i=0,a=r.length;i<a;i+=1)t(r[i])}function gB(e,t){var o=Pp(e,t);if(o.length!==0){if(o.length===1)return o[0];throw new et("expected a single document in the stream, but found more")}}var hB=mB,yB=gB,Ip={loadAll:hB,load:yB},Op=Object.prototype.toString,$p=Object.prototype.hasOwnProperty,vl=65279,_B=9,Ro=10,bB=13,wB=32,EB=33,kB=34,Nl=35,CB=37,vB=38,NB=39,SB=42,Bp=44,xB=45,bi=58,AB=61,TB=62,PB=63,IB=64,Vp=91,Rp=93,OB=96,Dp=123,$B=124,Mp=125,Xe={};Xe[0]="\\0",Xe[7]="\\a",Xe[8]="\\b",Xe[9]="\\t",Xe[10]="\\n",Xe[11]="\\v",Xe[12]="\\f",Xe[13]="\\r",Xe[27]="\\e",Xe[34]='\\"',Xe[92]="\\\\",Xe[133]="\\N",Xe[160]="\\_",Xe[8232]="\\L",Xe[8233]="\\P";var BB=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],VB=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function RB(e,t){var o,r,i,a,l,s,c;if(t===null)return{};for(o={},r=Object.keys(t),i=0,a=r.length;i<a;i+=1)l=r[i],s=String(t[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&$p.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function DB(e){var t,o,r;if(t=e.toString(16).toUpperCase(),e<=255)o="x",r=2;else if(e<=65535)o="u",r=4;else if(e<=4294967295)o="U",r=8;else throw new et("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+Ge.repeat("0",r-t.length)+t}var MB=1,Do=2;function FB(e){this.schema=e.schema||wl,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=Ge.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=RB(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?Do:MB,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function Fp(e,t){for(var o=Ge.repeat(" ",t),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
|
|
66
66
|
`,r),i===-1?(l=e.slice(r),r=s):(l=e.slice(r,i+1),r=i+1),l.length&&l!==`
|
|
67
|
-
`&&(a+=o),a+=l;return a}function
|
|
68
|
-
`+
|
|
67
|
+
`&&(a+=o),a+=l;return a}function Sl(e,t){return`
|
|
68
|
+
`+Ge.repeat(" ",e.indent*t)}function LB(e,t){var o,r,i;for(o=0,r=e.implicitTypes.length;o<r;o+=1)if(i=e.implicitTypes[o],i.resolve(t))return!0;return!1}function wi(e){return e===wB||e===_B}function Mo(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==vl||65536<=e&&e<=1114111}function Lp(e){return Mo(e)&&e!==vl&&e!==bB&&e!==Ro}function Up(e,t,o){var r=Lp(e),i=r&&!wi(e);return(o?r:r&&e!==Bp&&e!==Vp&&e!==Rp&&e!==Dp&&e!==Mp)&&e!==Nl&&!(t===bi&&!i)||Lp(t)&&!wi(t)&&e===Nl||t===bi&&i}function UB(e){return Mo(e)&&e!==vl&&!wi(e)&&e!==xB&&e!==PB&&e!==bi&&e!==Bp&&e!==Vp&&e!==Rp&&e!==Dp&&e!==Mp&&e!==Nl&&e!==vB&&e!==SB&&e!==EB&&e!==$B&&e!==AB&&e!==TB&&e!==NB&&e!==kB&&e!==CB&&e!==IB&&e!==OB}function KB(e){return!wi(e)&&e!==bi}function Fo(e,t){var o=e.charCodeAt(t),r;return o>=55296&&o<=56319&&t+1<e.length&&(r=e.charCodeAt(t+1),r>=56320&&r<=57343)?(o-55296)*1024+r-56320+65536:o}function Kp(e){var t=/^\n* /;return t.test(e)}var Gp=1,xl=2,jp=3,qp=4,Xn=5;function GB(e,t,o,r,i,a,l,s){var c,d=0,u=null,f=!1,p=!1,m=r!==-1,h=-1,w=UB(Fo(e,0))&&KB(Fo(e,e.length-1));if(t||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Fo(e,c),!Mo(d))return Xn;w=w&&Up(d,u,s),u=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Fo(e,c),d===Ro)f=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!Mo(d))return Xn;w=w&&Up(d,u,s),u=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!f&&!p?w&&!l&&!i(e)?Gp:a===Do?Xn:xl:o>9&&Kp(e)?Xn:l?a===Do?Xn:xl:p?qp:jp}function jB(e,t,o,r,i){e.dump=function(){if(t.length===0)return e.quotingType===Do?'""':"''";if(!e.noCompatMode&&(BB.indexOf(t)!==-1||VB.test(t)))return e.quotingType===Do?'"'+t+'"':"'"+t+"'";var a=e.indent*Math.max(1,o),l=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),s=r||e.flowLevel>-1&&o>=e.flowLevel;function c(d){return LB(e,d)}switch(GB(t,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case Gp:return t;case xl:return"'"+t.replace(/'/g,"''")+"'";case jp:return"|"+zp(t,e.indent)+Hp(Fp(t,a));case qp:return">"+zp(t,e.indent)+Hp(Fp(qB(t,l),a));case Xn:return'"'+zB(t)+'"';default:throw new et("impossible error: invalid scalar style")}}()}function zp(e,t){var o=Kp(e)?String(t):"",r=e[e.length-1]===`
|
|
69
69
|
`,i=r&&(e[e.length-2]===`
|
|
70
70
|
`||e===`
|
|
71
71
|
`),a=i?"+":r?"":"-";return o+a+`
|
|
72
|
-
`}function
|
|
73
|
-
`?e.slice(0,-1):e}function
|
|
74
|
-
`);return d=d!==-1?d:e.length,o.lastIndex=d,
|
|
72
|
+
`}function Hp(e){return e[e.length-1]===`
|
|
73
|
+
`?e.slice(0,-1):e}function qB(e,t){for(var o=/(\n+)([^\n]*)/g,r=function(){var d=e.indexOf(`
|
|
74
|
+
`);return d=d!==-1?d:e.length,o.lastIndex=d,Yp(e.slice(0,d),t)}(),i=e[0]===`
|
|
75
75
|
`||e[0]===" ",a,l;l=o.exec(e);){var s=l[1],c=l[2];a=c[0]===" ",r+=s+(!i&&!a&&c!==""?`
|
|
76
|
-
`:"")+
|
|
76
|
+
`:"")+Yp(c,t),i=a}return r}function Yp(e,t){if(e===""||e[0]===" ")return e;for(var o=/ [^ ]/g,r,i=0,a,l=0,s=0,c="";r=o.exec(e);)s=r.index,s-i>t&&(a=l>i?l:s,c+=`
|
|
77
77
|
`+e.slice(i,a),i=a+1),l=s;return c+=`
|
|
78
78
|
`,e.length-i>t&&l>i?c+=e.slice(i,l)+`
|
|
79
|
-
`+e.slice(l+1):c+=e.slice(i),c.slice(1)}function
|
|
80
|
-
`:""}var
|
|
79
|
+
`+e.slice(l+1):c+=e.slice(i),c.slice(1)}function zB(e){for(var t="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=Fo(e,i),r=Xe[o],!r&&Mo(o)?(t+=e[i],o>=65536&&(t+=e[i+1])):t+=r||DB(o);return t}function HB(e,t,o){var r="",i=e.tag,a,l,s;for(a=0,l=o.length;a<l;a+=1)s=o[a],e.replacer&&(s=e.replacer.call(o,String(a),s)),(Lt(e,t,s,!1,!1)||typeof s>"u"&&Lt(e,t,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function Wp(e,t,o,r){var i="",a=e.tag,l,s,c;for(l=0,s=o.length;l<s;l+=1)c=o[l],e.replacer&&(c=e.replacer.call(o,String(l),c)),(Lt(e,t+1,c,!0,!0,!1,!0)||typeof c>"u"&&Lt(e,t+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=Sl(e,t)),e.dump&&Ro===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function YB(e,t,o){var r="",i=e.tag,a=Object.keys(o),l,s,c,d,u;for(l=0,s=a.length;l<s;l+=1)u="",r!==""&&(u+=", "),e.condenseFlow&&(u+='"'),c=a[l],d=o[c],e.replacer&&(d=e.replacer.call(o,c,d)),Lt(e,t,c,!1,!1)&&(e.dump.length>1024&&(u+="? "),u+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Lt(e,t,d,!1,!1)&&(u+=e.dump,r+=u));e.tag=i,e.dump="{"+r+"}"}function WB(e,t,o,r){var i="",a=e.tag,l=Object.keys(o),s,c,d,u,f,p;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new et("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=Sl(e,t)),d=l[s],u=o[d],e.replacer&&(u=e.replacer.call(o,d,u)),Lt(e,t+1,d,!0,!0,!0)&&(f=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,f&&(e.dump&&Ro===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,f&&(p+=Sl(e,t)),Lt(e,t+1,u,!0,f)&&(e.dump&&Ro===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function Xp(e,t,o){var r,i,a,l,s,c;for(i=o?e.explicitTypes:e.implicitTypes,a=0,l=i.length;a<l;a+=1)if(s=i[a],(s.instanceOf||s.predicate)&&(!s.instanceOf||typeof t=="object"&&t instanceof s.instanceOf)&&(!s.predicate||s.predicate(t))){if(o?s.multi&&s.representName?e.tag=s.representName(t):e.tag=s.tag:e.tag="?",s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,Op.call(s.represent)==="[object Function]")r=s.represent(t,c);else if($p.call(s.represent,c))r=s.represent[c](t,c);else throw new et("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function Lt(e,t,o,r,i,a,l){e.tag=null,e.dump=o,Xp(e,o,!1)||Xp(e,o,!0);var s=Op.call(e.dump),c=r,d;r&&(r=e.flowLevel<0||e.flowLevel>t);var u=s==="[object Object]"||s==="[object Array]",f,p;if(u&&(f=e.duplicates.indexOf(o),p=f!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&t>0)&&(i=!1),p&&e.usedDuplicates[f])e.dump="*ref_"+f;else{if(u&&p&&!e.usedDuplicates[f]&&(e.usedDuplicates[f]=!0),s==="[object Object]")r&&Object.keys(e.dump).length!==0?(WB(e,t,e.dump,i),p&&(e.dump="&ref_"+f+e.dump)):(YB(e,t,e.dump),p&&(e.dump="&ref_"+f+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&t>0?Wp(e,t-1,e.dump,i):Wp(e,t,e.dump,i),p&&(e.dump="&ref_"+f+e.dump)):(HB(e,t,e.dump),p&&(e.dump="&ref_"+f+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&jB(e,e.dump,t,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new et("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(d=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?d="!"+d:d.slice(0,18)==="tag:yaml.org,2002:"?d="!!"+d.slice(18):d="!<"+d+">",e.dump=d+" "+e.dump)}return!0}function XB(e,t){var o=[],r=[],i,a;for(Al(e,o,r),i=0,a=r.length;i<a;i+=1)t.duplicates.push(o[r[i]]);t.usedDuplicates=new Array(a)}function Al(e,t,o){var r,i,a;if(e!==null&&typeof e=="object")if(i=t.indexOf(e),i!==-1)o.indexOf(i)===-1&&o.push(i);else if(t.push(e),Array.isArray(e))for(i=0,a=e.length;i<a;i+=1)Al(e[i],t,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)Al(e[r[i]],t,o)}function ZB(e,t){t=t||{};var o=new FB(t);o.noRefs||XB(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),Lt(o,0,r,!0,!0)?o.dump+`
|
|
80
|
+
`:""}var JB=ZB,QB={dump:JB};function Tl(e,t){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+t+" instead, which is now safe by default.")}}var eV=He,tV=Jf,nV=np,Pl=lp,oV=sp,rV=wl,iV=Ip.load,aV=Ip.loadAll,lV=QB.dump,sV=et,cV={binary:pp,float:ap,map:tp,null:op,pairs:gp,set:hp,timestamp:up,bool:rp,int:ip,merge:fp,omap:mp,seq:ep,str:Qf},dV=Tl("safeLoad","load"),uV=Tl("safeLoadAll","loadAll"),fV=Tl("safeDump","dump"),Zp={Type:eV,Schema:tV,FAILSAFE_SCHEMA:nV,JSON_SCHEMA:Pl,CORE_SCHEMA:oV,DEFAULT_SCHEMA:rV,load:iV,loadAll:aV,dump:lV,YAMLException:sV,types:cV,safeLoad:dV,safeLoadAll:uV,safeDump:fV};const Jp=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
|
|
81
81
|
- name: STATIC_INPUTS
|
|
82
82
|
type: static
|
|
83
83
|
values:
|
|
@@ -151,5 +151,5 @@ Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will
|
|
|
151
151
|
type: exit
|
|
152
152
|
input: API
|
|
153
153
|
status: 200
|
|
154
|
-
`},Symbol.toStringTag,{value:"Module"})),
|
|
155
|
-
`)[0],g=[{startLineNumber:m+1,startColumn:h+1,endLineNumber:m+1,endColumn:h+2,message:w,severity:Yo.MarkerSeverity.Error,source:Pl}];Yo.editor.setModelMarkers(c,Pl,g),r("error",w)}})}),n.onBeforeUnmount(()=>{var s;(s=a.value)==null||s.dispose()}),t({setExampleCode:l}),(s,c)=>(n.openBlock(),n.createElementBlock("div",yD,null,512))}}),[["__scopeId","data-v-e5fcb32d"]]),wD={key:0},ED={class:"examples-content"},kD=["innerHTML"],Jp=Object.freeze(Object.defineProperty({__proto__:null,DatakitForm:_e(n.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t}=Ue.createI18n("en-us",Ge),o=e,r=n.inject(Yl.DATAKIT_ENABLE_FLOW_EDITOR,!1),{editorMode:i}=pa(),a=n.computed(()=>r?i.value:"code"),l={flow:Ee.DesignIcon,code:Ee.CodeblockIcon},s=[{label:t("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:t("plugins.free-form.datakit.code_editor.mode"),value:"code"}],c=n.computed(()=>{switch(i.value){case"code":return t("plugins.free-form.datakit.description_code");case"flow":return t("plugins.free-form.datakit.description_flow");default:return""}}),d=n.useTemplateRef("code-editor");function f(m){var h;(h=d.value)==null||h.setExampleCode(m)}function u(m){var h;o.onFormChange({config:m}),(h=o.onValidityChange)==null||h.call(o,{model:"config",valid:!0})}function p(m){var h;(h=o.onValidityChange)==null||h.call(o,{model:"config",valid:!1,error:m})}return(m,h)=>{const w=n.resolveComponent("KButton");return n.openBlock(),n.createBlock(Qw,n.mergeProps(o,{class:"dk-form"}),n.createSlots({default:n.withCtx(g=>[a.value==="flow"?(n.openBlock(),n.createElementBlock("div",wD,[n.createVNode(JO,{config:o.model.config,editing:o.isEditing},null,8,["config","editing"])])):a.value==="code"?(n.openBlock(),n.createBlock(bt,n.mergeProps({key:1},g,{tag:"div"}),{default:n.withCtx(()=>[n.createVNode(n.unref(Pe.KAlert),{class:"examples"},{icon:n.withCtx(()=>[n.createVNode(n.unref(Ee.SparklesIcon))]),default:n.withCtx(()=>[n.createElementVNode("div",ED,[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.description_example"))+" ",1),(n.openBlock(),n.createElementBlock(n.Fragment,null,n.renderList(Xp,(_,b)=>n.createVNode(w,{key:b,appearance:"secondary",size:"small",onClick:y=>f(b)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)(`plugins.free-form.datakit.examples.${b}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),n.createVNode(bD,{ref:"code-editor",class:"code-editor",config:o.model.config,editing:o.isEditing,onChange:u,onError:p},null,8,["config","editing"])]),_:2},1040)):n.createCommentVNode("",!0)]),"plugin-config-description":n.withCtx(()=>[n.createElementVNode("span",{innerHTML:c.value},null,8,kD)]),_:2},[n.unref(r)?{name:"plugin-config-extra",fn:n.withCtx(()=>[n.createVNode(n.unref(Pe.KSegmentedControl),{modelValue:n.unref(i),"onUpdate:modelValue":h[0]||(h[0]=g=>n.isRef(i)?i.value=g:null),options:s},{"option-label":n.withCtx(({option:g})=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(l[g.value]))),n.createTextVNode(" "+n.toDisplayString(g.label),1)]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1040)}}}),[["__scopeId","data-v-ef212f9b"]]),RequestCalloutForm:nw,ServiceProtectionForm:Yw},Symbol.toStringTag,{value:"Module"})),CD={class:"kong-ui-entities-plugin-form"},vD={key:1,class:"entity-form"},ND={class:"plugin-config-empty-state"},SD=_e(n.defineComponent({__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:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:t}){var ee,oe;const o=Object.keys(Ce.sharedForms),r=Object.keys(Jp);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=t,a=e,{axiosInstance:l}=ae.useAxios((ee=a.config)==null?void 0:ee.axiosRequestConfig),{parseSchema:s}=Ie.useSchemas({entityId:((oe=a.entityMap.focusedEntity)==null?void 0:oe.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:d,dismissField:f,isObjectEmpty:u,unsetNullForeignKey:p}=Ie.usePluginHelpers(),m=Ie.useExperimentalFreeForms(),{objectsAreEqual:h}=ae.useHelpers(),{i18n:{t:w}}=je(),g=(Y,$)=>{let z=`${a.config.apiBaseUrl}${Oe.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?z=z.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(z=z.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),z=z.replace(/{entity}/gi,Y),z=z.replace(/{id}/gi,$),z},_=Y=>{let $=`${a.config.apiBaseUrl}${Oe.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),$=$.replace(/{entity}/gi,Y),$},b=(Y,$)=>{const z=g(Y,$);return l.get(z)},y=(Y,$)=>{const z=_(Y);return a.config.app==="konnect"?l.get(z).then(Z=>{const{data:{data:Q}}=Z;if(delete $.size,delete $.offset,Q.length&&Object.keys($).length===1){const ne=Object.keys($)[0],ue=Q.filter(me=>me[ne]?!!me[ne].toLowerCase().includes($[ne].toLowerCase()):!1);Z.data.data=ue}return Z}):l.get(z,{params:$})};n.provide(Ce.FORMS_API_KEY,{getOne:b,getAll:y}),n.provide(Ce.FORMS_CONFIG,a.config);const C=n.ref(""),x=n.ref(""),k=n.ref(null),P=n.ref({}),I=n.reactive({}),B=n.reactive({}),W=n.computed(()=>{var Y;return(Y=k.value)==null?void 0:Y.options}),M=n.ref(!1),v=n.ref(),N=(Y,$)=>{M.value=Y??"",v.value=$},E=Y=>{var $;($=v.value)==null||$.call(v,Y),M.value=!1},R=()=>{var ue,me;const Y={...a.schema},$=B,z=I,Z=Object.keys($),Q={};if(!u(P.value))for(let T=0;T<((me=(ue=P.value)==null?void 0:ue.fields)==null?void 0:me.length);T++)Y[P.value.fields[T].model]=P.value.fields[T];Ce.customFields.forEach(T=>{Y[T]&&(Y[T].fields.forEach(S=>{S.fields&&S.fields.forEach(A=>{Y[A.model]=A}),S.model&&(Y[S.model]=S)}),delete Y[T])}),Z.forEach(T=>{var q;if(!Y[T]){T==="partials"&&(Q[T]=$[T]);return}const S=Y[T];let A=$[T];const D=z[T],L=Array.isArray(A)?"array":typeof A,X=S?S.valueType:null,te=S?S.valueArrayType:null,K=S?S.transform:null;if(A==null&&D==null&&!S.submitWhenNull)return;if(S){if(X&&L!==X)switch(X){case"array":L==="string"&&A.length&&(A=A.split(",").map(ie=>{if(ie=ie.trim(),te==="string")return String(ie);if(te==="number")return Number(ie);if(te==="boolean"){if(typeof ie=="string")return ie.toLowerCase()==="true"||ie==="1";if(typeof ie=="number")return ie===1}return ie})),(!A||!A.length)&&(A=S.submitWhenNull?null:[]);break;case"number":A=Number(A);break;case"boolean":L==="string"&&(A=A.toLowerCase()==="true"||A==="1"),L==="number"&&(A=A===1);break;case"string":A=A==null?"":String(A);break}else X==="array"&&(!A||!A.length?A=S.submitWhenNull?null:[]:((q=S.inputAttributes)==null?void 0:q.type)==="number"&&(A=A.map(ie=>Number(ie))));if(S.type==="array"&&S.nestedFields){const ie=le=>{Object.keys(le).forEach(se=>{le[se]&&typeof le[se]=="object"&&!Array.isArray(le[se])&&le[se]!==null?ie(le[se]):(le[se]===void 0||le[se]===null||typeof le[se]=="number"&&isNaN(le[se])||typeof le[se]=="string"&&le[se].trim().length===0)&&delete le[se]})};A&&typeof A=="object"&&ie(A)}S.type==="object-advanced"&&S.fields&&A!==null&&(Object.entries(A).length===0?A=null:Object.keys(A).forEach(ie=>{Array.isArray(A[ie])||(A[ie]=A[ie].split(","))}))}let J=c(T);if(S.fieldNameHasDashes){const[ie,...le]=J.split(".").reverse();J=[ie.replace(/_/g,"-"),...le].reverse().join(".")}if(X==="object-expand"){let ie;[J,ie]=J.split(".");let le={};Q[J]&&(le=Q[J]),le[ie]=A,A=le}D!==void 0&&A===""&&A!==D?Q[J]=X==="object"?{}:null:S.type==="checklist"&&A===""?Q[J]=[]:A!==""&&(Q[J]=A),Q[J]=K?K(A):Q[J],p(J,Q)});const ne=d(Q);return x.value&&Object.assign(ne,V.value),ne},O=(Y,$={})=>{f(B,$,Y,a.editing),i("model-updated",{model:B,originalModel:I,data:R()})},j=(Y,$)=>{var Q;const z={[$]:Y};typeof((Q=a.schema[$])==null?void 0:Q.modelTransformer)=="function"&&(z[$]=a.schema[$].modelTransformer(Y));const Z=Object.assign({},B,z);Object.assign(B,Z),i("model-updated",{model:B,originalModel:I,data:R()})},G=Y=>{i("validity-change",Y)},F=(Y,$)=>{Object.keys(Y).forEach(z=>{var me,T;let Z=$?`${$}-${z}`:z,Q=a.schema[Z];if(!Q){const S=$?`${$}-${z.replace(/-/g,"_")}`:z.replace(/-/g,"_");(me=a.schema[S])!=null&&me.fieldNameHasDashes&&(Z=S,Q=a.schema[Z]),$&&((T=a.schema[$])==null?void 0:T.keyFromObject)===z&&(Z=$,Q=a.schema[Z])}const ne=Y[z],ue=typeof ne;if(Q&&Q.type==="object-advanced"&&!ne){B[Z]={},I[Z]={};return}if(Array.isArray(ne)){B[Z]=JSON.parse(JSON.stringify(ne)),I[Z]=JSON.parse(JSON.stringify(ne));return}if(ue==="object"&&ne&&!ne.length)return F(ne,Z);if(ue==="object"&&ne&&ne.length&&Q.type==="input"){B[Z]=ne.join(", "),I[Z]=ne.join(", ");return}B[Z]=ne,I[Z]=ne}),i("model-updated",{model:B,originalModel:I,data:R()})},V=n.shallowRef(a.record),U=Y=>{V.value=Y,i("model-updated",{model:{...B,...Y},originalModel:I,data:R()})},re=n.ref(!0),de=()=>{var Y;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}),a.record.partials&&O("redis",{partials:a.record.partials}),x.value?U(a.record):F(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const $={};for(const z in a.entityMap){const Z=a.entityMap[z].id,Q=a.entityMap[z].idField,ne=Q==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(Q).replace("_","-"));Object.prototype.hasOwnProperty.call(B,ne)&&($[ne]=Z)}F($)}if((Y=a.entityMap.consumer)!=null&&Y.id&&a.schema&&a.credential){const $={};Object.prototype.hasOwnProperty.call(B,"consumer")&&($.consumer=a.entityMap.consumer.id),F($)}re.value=!1};return n.watch(re,Y=>{i("loading",Y)}),n.watch(()=>a.schema,(Y,$)=>{var Z,Q;if(h(Y||{},$||{}))return;const z=s(Y);Object.assign(B,z.model),P.value={fields:(Q=(Z=P.value)==null?void 0:Z.fields)==null?void 0:Q.map(ne=>({...ne,disabled:ne.disabled||!1}))},Object.assign(I,JSON.parse(JSON.stringify(z.model))),x.value=Hl(z.model.name,m),C.value=Ce.getSharedFormName(z.model.name),de()},{immediate:!0,deep:!0}),n.onBeforeMount(()=>{var Y,$;k.value=s(a.schema),Object.assign(B,((Y=k.value)==null?void 0:Y.model)||{}),P.value=(($=k.value)==null?void 0:$.schema)||{},de()}),(Y,$)=>{var Z;const z=n.resolveComponent("KSkeleton");return n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",CD,[re.value?(n.openBlock(),n.createBlock(z,{key:0,type:"form"})):B.id&&e.editing||!e.editing?(n.openBlock(),n.createElementBlock("div",vD,[x.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(Jp[x.value]),{key:0,"form-model":B,"form-options":W.value,"form-schema":P.value,"is-editing":e.editing,model:e.record,"on-form-change":U,"on-model-updated":j,"on-validity-change":G,schema:e.rawSchema,onGlobalAction:$[0]||($[0]=(Q,ne)=>Y.$emit("globalAction",Q,ne))},n.createSlots({_:2},[e.enableVaultSecretPicker?{name:n.unref(Ce.AUTOFILL_SLOT_NAME),fn:n.withCtx(Q=>[Q.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Ho.VaultSecretPickerProvider),n.mergeProps({key:0},Q,{onOpen:N}),null,16)):n.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):C.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Ce.sharedForms)[C.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":B,"form-options":W.value,"form-schema":P.value,"is-editing":e.editing,"on-model-updated":j,"on-partial-toggled":O,"show-new-partial-modal":Q=>Y.$emit("showNewPartialModal",Q)},n.createSlots({_:2},[e.enableVaultSecretPicker?{name:n.unref(Ce.AUTOFILL_SLOT_NAME),fn:n.withCtx(Q=>[Q.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Ho.VaultSecretPickerProvider),n.mergeProps({key:0},Q,{onOpen:N}),null,16)):n.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(n.openBlock(),n.createBlock(n.unref(Ce.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:B,options:W.value,schema:P.value,onModelUpdated:j,onPartialToggled:O,onRefreshModel:R,onShowNewPartialModal:$[1]||($[1]=Q=>Y.$emit("showNewPartialModal",Q))},n.createSlots({"plugin-config-empty-state":n.withCtx(()=>[n.createElementVNode("div",ND,n.toDisplayString(n.unref(w)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(Z=n.unref(At)[B.name])!=null&&Z.fieldRules&&(a.config.isNewOtelSchema||B.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:n.withCtx(()=>[n.createVNode(jm,{rules:n.unref(At)[B.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:n.unref(Ce.AUTOFILL_SLOT_NAME),fn:n.withCtx(Q=>[Q.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Ho.VaultSecretPickerProvider),n.mergeProps({key:0},Q,{onOpen:N}),null,16)):n.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):n.createCommentVNode("",!0)]),n.createVNode(n.unref(Ho.VaultSecretPicker),{config:a.config,setup:M.value,onCancel:$[2]||($[2]=()=>M.value=!1),onProceed:E},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-780e65cb"]]),xD={key:1},AD=n.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(t,o)=>e.teleportTarget?(n.openBlock(),n.createBlock(n.Teleport,{key:0,to:e.teleportTarget},[n.renderSlot(t.$slots,"default")],8,["to"])):(n.openBlock(),n.createElementBlock("div",xD,[n.renderSlot(t.$slots,"default")]))}}),TD={class:"kong-ui-entities-plugin-form-container"},PD={key:0},ID={class:"plugin-form-actions"},OD=_e(n.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},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:t}){var te;const o=t,r=e,i=Zn.useRouter(),{i18n:{t:a}}=Ie.useI18n(),{customSchemas:l,typedefs:s}=Ie.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ie.usePluginHelpers(),{getMessageFromError:d}=ae.useErrors(),{capitalize:f}=ae.useStringHelpers(),{objectsAreEqual:u}=ae.useHelpers(),{axiosInstance:p}=ae.useAxios((te=r.config)==null?void 0:te.axiosRequestConfig),m=n.ref(!1),h=n.computed(()=>!!r.pluginId),w=n.computed(()=>r.pluginId?ae.EntityBaseFormType.Edit:ae.EntityBaseFormType.Create),g=n.ref(void 0),_=n.ref(void 0),b=n.computed(()=>!!(r.credential&&r.config.entityId)),y=n.ref(void 0),C=n.ref({}),x=n.ref(),k=n.ref();n.provide(Ac,{redisType:x,redisPath:k,isEditing:h.value});const P=n.ref(!1),I=n.reactive({enabled:!0,protocols:[],tags:[]}),B=n.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),W=n.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&W.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const M=n.ref(""),v=n.computed(()=>{if(b.value){let K=Oe.form[r.config.app].credential[w.value];return K=K.replace(/{resourceEndpoint}/gi,O.value),K}return r.config.entityType&&r.config.entityId?Oe.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):Oe.form[r.config.app].edit.all}),N=()=>{m.value=!m.value},E=n.computed(()=>{var se,we,be,Ne,$e,fe,ce,ot;const K=r.config.entityType==="consumers"&&r.config.entityId||((we=(se=y.value)==null?void 0:se.consumer)==null?void 0:we.id),J=r.config.entityType==="consumer_groups"&&r.config.entityId||((Ne=(be=y.value)==null?void 0:be.consumer_group)==null?void 0:Ne.id),q=r.config.entityType==="services"&&r.config.entityId||((fe=($e=y.value)==null?void 0:$e.service)==null?void 0:fe.id),ie=r.config.entityType==="routes"&&r.config.entityId||((ot=(ce=y.value)==null?void 0:ce.route)==null?void 0:ot.id);if(!(K||J||q||ie))return{global:{entity:H.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const le={};return q&&(le.service={entity:H.PluginScope.SERVICE,entityEndpoint:"services",id:q,idField:Wt.SERVICE}),ie&&(le.route={entity:H.PluginScope.ROUTE,entityEndpoint:"routes",id:ie,idField:Wt.ROUTE}),K&&(le.consumer={entity:H.PluginScope.CONSUMER,entityEndpoint:"consumers",id:K,idField:Wt.CONSUMER}),J&&(le.consumer_group={entity:H.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:J,idField:Wt.CONSUMER_GROUP}),r.config.entityType&&(le.focusedEntity={entity:H.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:Wt[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),le}),R=n.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||w.value===ae.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:a("plugins.form.scoping.global.label"),description:a("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:a("plugins.form.fields.protocols.help"),label:a("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:a("plugins.form.fields.instance_name.label"),inputType:"text",help:a("plugins.form.fields.instance_name.help")},tags:s.tags}),O=n.computed(()=>{var q;const K=r.developer?"developers":"consumers",J=((q=Cn[r.pluginType])==null?void 0:q.endpoint)||"/plugins";return`${K}/${r.config.entityId}${r.developer?"/credentials":""}${J}`}),j=K=>{const J=Array.from(new Set(K.map(q=>typeof q)));return J.length>1?"string":J[0]},G=(K,J,q,ie)=>{var be,Ne;let le=J&&J.fields||[];const se=l[r.pluginType],we=(Ne=(be=Cn[r.pluginType])==null?void 0:be.schema)==null?void 0:Ne.fields;return Array.isArray(le)&&(le=le.reduce(($e,fe)=>{const ce=Object.keys(fe)[0];return ce.match(/-/g)?$e[ce.replace(/-/g,"_")]={...fe[ce],fieldNameHasDashes:!0}:$e[ce]=fe[ce],$e},{})),Object.keys(le).sort().forEach($e=>{var Fo,Lo,Uo,Ko,qo,Go,jo;const fe=le[$e];fe.type==="set"&&(fe.type="array");const ce=K?`${K}-${$e}`:`${$e}`;if((Fo=se==null?void 0:se.fieldsToDelete)!=null&&Fo.includes(ce)){lc(q,ce);return}if(Object.prototype.hasOwnProperty.call(fe,"overwrite")||fe.hidden)return;if(fe.type==="table")return G(ce,fe.schema,q);if(fe.fields)return ie&&fe.type==="record"?(q[ce]={type:"object",model:$e,schema:{fields:Object.values(G(ce,fe,{},!0))}},q):G(ce,fe,q);if(q[ce]={id:ce,model:$e},q[ce].type=fe.type==="boolean"?"checkbox":"input",q[ce].required=fe.required,q[ce].referenceable=fe.referenceable,ce.startsWith("config-"))if(!ie&&fe.type==="array"&&(M.value=ce),ie&&M.value&&ce.startsWith(M.value)){const ke=ce.slice(M.value.length+1);q[ce].label=ke.split("-").map(c).join(".")}else q[ce].label=c(ce);if((K==="config"||K.startsWith("config-"))&&(Lo=le[$e])!=null&&Lo.description&&(q[ce].help=zo.marked.parse(le[$e].description,{mangle:!1,headerIds:!1})),fe.type==="map"){if(q[ce].type="object-advanced",q[ce].values=fe.values,fe.values.type==="array"){const{type:ke}=fe.values.elements||{};q[ce].schema={fields:[{schema:{fields:[{...Ae,model:ce,valueArrayType:ke==="integer"?"number":ke||"string",inputAttributes:{...Ae.inputAttributes,type:ke==="integer"?"number":"text",inputMode:ke==="integer"?"numeric":"text"}}]}}]}}else fe.values.fields&&(q[ce].schema={fields:[{type:"object",model:"object",schema:{fields:fe.values.fields.map(ke=>{const Ye=Object.keys(ke)[0];return{model:Ye,type:"input",label:f(Ye),placeholder:Ye,inputType:ke[Ye].type}})}}]});return q}if(fe.enum&&fe.type==="array"&&(q[ce].type="checklist",q[ce].values=fe.enum,q[ce].multi=!0,q[ce].multiSelect=!0),fe.one_of&&fe.type!=="array"&&(q[ce].type="select",q[ce].values=fe.one_of,q[ce].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),fe.elements&&fe.type==="array"){const ke=fe.elements;if(q[ce].referenceable=ke.referenceable,q[ce].elements=ke,["string","integer","number"].includes(ke.type)&&!ke.one_of){const{id:Ye,help:Fe,label:ve,hint:Xe,values:it,referenceable:wn,model:En}=q[ce],{inputAttributes:wi,...SV}=JSON.parse(JSON.stringify(Ae));wi.type=ke.type==="string"?"text":"number",q[ce]={id:Ye,help:Fe,label:ve,hint:Xe,values:it,referenceable:wn,model:En,inputAttributes:wi,...SV}}}if(fe.hint&&(q[ce].hint=fe.hint),se&&!se.overwriteDefault&&Object.keys(se).forEach(ke=>{if(ke===ce){const{help:Ye,label:Fe,hint:ve,values:Xe,referenceable:it,elements:wn}=q[ce],{help:En,...wi}=se[ke];q[ce]={help:Ye,label:Fe,hint:ve,values:Xe,referenceable:it,elements:wn,...wi},typeof En=="string"&&(q[ce].help=zo.marked.parse(En,{mangle:!1,headerIds:!1}))}}),fe.type==="array"&&((Uo=fe.elements)==null?void 0:Uo.type)==="record"&&Array.isArray(fe.elements.fields)){let ke={};for(const Fe of fe.elements.fields)ke={...ke,...Fe};const Ye=(Go=(qo=(Ko=q[ce])==null?void 0:Ko.items)==null?void 0:qo.schema)==null?void 0:Go.fields;if(Array.isArray(Ye))for(const Fe of q[ce].items.schema.fields){const ve=(jo=ke[Fe.model])==null?void 0:jo.description;Fe.help===void 0&&typeof ve=="string"&&(Fe.help=zo.marked.parse(ve,{mangle:!1,headerIds:!1}))}if(Ye||(q[ce].type="array",q[ce].newElementButtonLabelClasses="kong-form-new-element-button-label",q[ce].fieldClasses="array-card-container-wrapper",q[ce].itemContainerComponent="FieldArrayCardContainer",q[ce].items={type:"object",schema:{fields:Object.values(G(ce,fe.elements,{},!0))}},q[ce].items.schema.fields.forEach(Fe=>{var ve,Xe;for(const it of fe.elements.fields){const wn=Object.keys(it)[0],En=((Xe=(ve=Fe.id)==null?void 0:ve.split)==null?void 0:Xe.call(ve,"-"))??[];if(En[En.length-1]===wn){Fe.model=wn,Fe.label=c(wn);break}}}),fe.elements.type==="record"&&(q[ce].nestedFields=!0)),!q[ce].nestedFields)q[ce].items.default=()=>fe.elements.fields.reduce((Fe,ve)=>{const Xe=Object.keys(ve)[0];return Fe[Xe]=ve[Xe].default,Fe},{});else{const Fe=(ve,Xe)=>{if(ve.type==="object"){ve.model&&(Xe[ve.model]={});for(const it of ve.schema.fields)Fe(it,ve.model?Xe[ve.model]:Xe)}else ve.model&&(Xe[ve.model]=ve.default)};q[ce].items.default=()=>{const ve={};return Fe(q[ce].items,ve),ve}}}if(b.value&&we){for(let ke=0;ke<we.length;ke++)if(we[ke][ce]){q[ce]={...q[ce],...we[ke][ce]};break}}if(fe.required&&fe.type!=="boolean"&&(q[ce].required=!0,q[ce].selectOptions={hideNoneSelectedText:!0}),fe.required&&fe.type==="boolean"&&(q[ce].default=fe.default??!1),fe.default!=null&&typeof fe.default!="object"&&fe.default!=="function"&&(q[ce].default=fe.default),q[ce].type==="input"){["string","number"].includes(typeof q[ce].default)&&r.config.app==="konnect"&&(q[ce].placeholder=`Default: ${q[ce].default===""?"<empty string>":q[ce].default}`);const{type:ke}=fe.elements||{};ke&&(q[ce].valueArrayType=ke==="integer"?"number":ke),q[ce].inputType=fe.type==="array"||fe.type==="string"?fe.encrypted?"password":"text":fe.type}let ot="string";fe.enum?ot=j(fe.enum):fe.type==="boolean"?ot="boolean":fe.type==="number"||fe.type==="integer"?(ot="number",q[ce].inputType="number"):fe.type==="array"?(ot="array",q[ce].default=fe.default,fe.len_min>0&&(q[ce].submitWhenNull=!0)):fe.type==="foreign"?ot="object":fe.default&&Array.isArray(fe.default)?(ot="array",q[ce].valueArrayType=j(fe.default)):fe.default&&(ot=typeof fe.default),q[ce].valueType=ot,fe.fieldNameHasDashes&&(q[ce].fieldNameHasDashes=!0)}),q},F=()=>{var $e,fe,ce,ot,Fo,Lo,Uo,Ko,qo,Go,jo,ke;const K=(($e=At[r.pluginType])==null?void 0:$e.scope.includes(H.PluginScope.SERVICE))??!0,J=((fe=At[r.pluginType])==null?void 0:fe.scope.includes(H.PluginScope.ROUTE))??!0,q=((ce=At[r.pluginType])==null?void 0:ce.scope.includes(H.PluginScope.CONSUMER))??!0,ie=r.config.disableConsumerGroupScope?!1:((ot=At[r.pluginType])==null?void 0:ot.scope.includes(H.PluginScope.CONSUMER_GROUP))??!0,le=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Lo=(Fo=y.value)==null?void 0:Fo.consumer)!=null&&Lo.id),se=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((Ko=(Uo=y.value)==null?void 0:Uo.consumer_group)!=null&&Ko.id),we=r.config.entityType==="services"&&!!r.config.entityId||!!((Go=(qo=y.value)==null?void 0:qo.service)!=null&&Go.id),be=r.config.entityType==="routes"&&!!r.config.entityId||!!((ke=(jo=y.value)==null?void 0:jo.route)!=null&&ke.id),Ne=[];if(K&&Ne.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.gateway_service.placeholder"),type:"AutoSuggest",entity:"services",inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:we&&r.disableScopeSelection}),J&&Ne.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.route.placeholder"),type:"AutoSuggest",entity:"routes",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:be&&r.disableScopeSelection}),q&&Ne.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.consumer.placeholder"),type:"AutoSuggest",entity:"consumers",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:le&&r.disableScopeSelection}),ie&&Ne.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.consumer_group.placeholder"),type:"AutoSuggest",entity:"consumer_groups",entityDataKey:"consumer_group",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:se&&r.disableScopeSelection}),Ne.length){const Ye=[...K?["service"]:[],...J?["route"]:[],...q?["consumer"]:[],...ie?["consumer_group"]:[]],ve=Ye.splice(Ye.length-2,2).map(it=>a(it==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${it}.plural`)).join(`${Ye.length>0?",":""} and/or `),Xe=["Specific",[...Ye.length>0?[Ye.map(it=>a(it==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${it}.plural`)).join(", ")]:[],ve].join(", ")].join(" ");R.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Xe,fields:[]}),R.selectionGroup.fields[1].fields=Ne}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(R,l[r.pluginType].formSchema)},V=n.computed(()=>!u(B.fields,I,!0)),U=n.computed(()=>!L.value&&!P.value&&(w.value===ae.EntityBaseFormType.Create||V.value)),re=n.ref(!1),de=n.ref(),ee=K=>{r.credential&&K.password&&(K.password=""),B.fields.id=(K==null?void 0:K.id)||void 0,de.value=K==null?void 0:K.ordering,Object.assign(I,B.fields),y.value=K,re.value=!0},oe=n.ref({}),Y=K=>{var J;B.fields=K.model,B.fields.id=((J=y.value)==null?void 0:J.id)||void 0,Object.assign(I,K.originalModel),oe.value=K.data,r.isWizardStep&&o("model-updated",{model:B.fields,data:K.data,resourceEndpoint:O.value})},$=n.ref(new Map),z=n.computed(()=>[B.clientErrorMessage,B.serverErrorMessage].filter(Boolean).join("; ")),Z=K=>{K.valid?$.value.delete(K.model):$.value.set(K.model,K.error),B.clientErrorMessage=[...$.value.entries()].map(([J,q])=>`${J}: ${typeof q=="string"?q:d(q)}`).join("; "),B.clientErrorMessage&&(B.serverErrorMessage="")};n.watch([E,re],(K,J)=>{const q=K[0]!==J[0],ie=K[1],le=J[1];if(!b.value&&w.value===ae.EntityBaseFormType.Edit&&(q||ie&&ie!==le)){const se=G("config",C.value,R);me.value&&(se._isCustomPlugin=!0),x.value&&(se._supported_redis_partial_type=x.value),_.value=se}},{deep:!0});const Q=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},ne=n.computed(()=>{let K=`${r.config.apiBaseUrl}${Oe.form[r.config.app].validate}`;return r.config.app==="konnect"?K=K.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),K=K.replace(/{id}/gi,r.pluginId),K}),ue=n.computed(()=>{const K=r.config.entityType&&r.config.entityId&&!r.developer,J=b.value?Oe.form[r.config.app].credential[w.value]:Oe.form[r.config.app][w.value][K?"forEntity":"all"];let q=`${r.config.apiBaseUrl}${J}`;return r.config.app==="konnect"?q=q.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(q=q.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),q=q.replace(/{resourceEndpoint}/gi,O.value),q=q.replace(/{id}/gi,r.pluginId),q=q.replace(/{entityType}/gi,r.config.entityType||""),q=q.replace(/{entityId}/gi,r.config.entityId||""),q}),me=n.computed(()=>!Object.keys(At).includes(r.pluginType)),T=n.computed(()=>{const K=oe.value;if(b.value){for(const J in H.PluginScope){const q=H.PluginScope[J];K[q]&&!K[q].id&&(K[q]={id:r.config.entityId})}delete K.created_at}return oe.value.partials&&k.value&&lc(K,k.value),K}),S=async()=>{if(!B.clientErrorMessage&&!r.isWizardStep)try{B.isReadonly=!0;let K;const J=JSON.parse(JSON.stringify(T.value)),q=l[r.pluginType];typeof(q==null?void 0:q.shamefullyTransformPayload)=="function"&&q.shamefullyTransformPayload({originalModel:I,model:B.fields,payload:J,schema:_.value}),!b.value&&!me.value&&await p.post(ne.value,J),w.value==="create"?K=await p.post(ue.value,J):w.value==="edit"&&(K=r.config.app==="konnect"||x.value&&J.partials?await p.put(ue.value,Object.assign({ordering:de.value},J)):await p.patch(ue.value,J)),Object.assign(I,B.fields),o("update",K==null?void 0:K.data)}catch(K){B.serverErrorMessage=d(K),o("error",K)}finally{B.isReadonly=!1}},A=n.computed(()=>{var ie;const K=b.value?(ie=Cn[r.pluginType])==null?void 0:ie.schemaEndpoint:r.pluginType,J=b.value?Oe.form[r.config.app].credentialSchema:Oe.form[r.config.app].pluginSchema;let q=`${r.config.apiBaseUrl}${J}`;return r.config.app==="konnect"?q=q.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(q=q.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),q=q.replace(/{plugin}/gi,K),q}),D=n.ref(""),L=n.ref(!1),X=n.ref("");return n.onBeforeMount(async()=>{var K,J,q,ie;L.value=!0;try{if(b.value&&r.config.app==="konnect"){const le=(K=Cn[r.pluginType])==null?void 0:K.schemaEndpoint,se=mm[le];D.value=le,_.value=G("",se,{}),L.value=!1}else{const le=r.schema??(await p.get(A.value)).data;if(g.value=le,le)if(b.value)_.value=G("",le,{}),L.value=!1;else{const se=le.fields.find(be=>be.config);C.value=se?se.config:le,le.supported_partials&&(x.value=Object.keys(le.supported_partials).find(be=>[Wo.REDIS_CE,Wo.REDIS_EE].includes(be)),k.value=(J=le.supported_partials[x.value])==null?void 0:J[0]),F();const we=(q=le.fields.find(be=>be.protocols))==null?void 0:q.protocols;if(we){const{default:be=[],elements:Ne={}}=we;R.protocols.default=be,R.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:be.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(ie=Ne.one_of)!=null&&ie.length&&(R.protocols.values=Ne.one_of.map($e=>({label:$e,value:$e})))}if(re.value||w.value===ae.EntityBaseFormType.Create){const be=G("config",C.value,R);x.value&&(be._supported_redis_partial_type=x.value),me.value&&(be._isCustomPlugin=!0),_.value=be}}}}catch(le){console.error(le),X.value=d(le),o("error:fetch-schema",le)}finally{L.value=!1}}),(K,J)=>{const q=n.resolveComponent("KSkeleton"),ie=n.resolveComponent("KEmptyState"),le=n.resolveComponent("KButton"),se=n.resolveComponent("KTabs"),we=n.resolveComponent("KSlideout");return n.openBlock(),n.createElementBlock("div",TD,[L.value?(n.openBlock(),n.createBlock(q,{key:0,type:"form"})):X.value?(n.openBlock(),n.createBlock(ie,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(n.unref(a)("errors.load_schema")),1)]),_:1})):(n.openBlock(),n.createBlock(n.unref(ae.EntityBaseForm),{key:2,"can-submit":U.value,config:e.config,"edit-id":e.pluginId,"entity-type":n.unref(ae.SupportedEntityType).Plugin,"error-message":z.value,"fetch-url":v.value,"form-fields":T.value,"is-readonly":B.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:Q,"onFetch:error":J[4]||(J[4]=be=>K.$emit("error",be)),"onFetch:success":ee,onLoading:J[5]||(J[5]=be=>K.$emit("loading",be))},{"form-actions":n.withCtx(()=>[e.isWizardStep?(n.openBlock(),n.createElementBlock("div",PD)):(n.openBlock(),n.createBlock(AD,{key:1,"teleport-target":e.actionsTeleportTarget},{default:n.withCtx(()=>[n.createElementVNode("div",ID,[e.hideViewConfigAction?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(le,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:J[3]||(J[3]=be=>N())},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),n.createVNode(le,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:B.isReadonly,onClick:Q},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),n.createVNode(le,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!U.value||B.isReadonly,type:"submit",onClick:S},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:n.withCtx(()=>[n.createElementVNode("form",{hidden:"",onSubmit:S},null,32),n.createVNode(SD,{config:e.config,credential:b.value,editing:w.value===n.unref(ae.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,"entity-map":E.value,"raw-schema":g.value,record:y.value,schema:_.value,onGlobalAction:J[0]||(J[0]=(be,Ne)=>K.$emit("globalAction",be,Ne)),onLoading:J[1]||(J[1]=be=>P.value=be),onModelUpdated:Y,onShowNewPartialModal:J[2]||(J[2]=be=>K.$emit("showNewPartialModal",be)),onValidityChange:Z},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),n.createVNode(we,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:n.unref(a)("view_configuration.title"),visible:m.value,onClose:N},{default:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(n.unref(a)("view_configuration.message")),1),n.createVNode(se,{"data-testid":"form-view-configuration-slideout-tabs",tabs:W.value},{json:n.withCtx(()=>[n.createVNode(n.unref(ae.JsonCodeBlock),{config:e.config,"entity-record":T.value,"fetcher-url":ue.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:n.withCtx(()=>[n.createVNode(n.unref(ae.YamlCodeBlock),{"entity-record":T.value},null,8,["entity-record"])]),terraform:n.withCtx(()=>[n.createVNode(n.unref(ae.TerraformCodeBlock),{"credential-type":D.value,"entity-record":T.value,"entity-type":n.unref(ae.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-420ab237"]]),$D={class:"kong-ui-entities-plugins-list"},BD={class:"button-row"},DD={class:"empty-state-icon-gateway"},VD={class:"name-cell-wrapper"},RD={class:"info-wrapper"},MD={key:0,class:"info-name"},FD={key:1,class:"info-name"},LD={key:2,class:"info-type"},UD={key:1},KD=_e(n.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}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:t}){var A,D;const o=Ie.usePluginMetaData(),r=t,i=e,{i18n:{t:a}}=Ie.useI18n(),l=Zn.useRouter(),{axiosInstance:s}=ae.useAxios((A=i.config)==null?void 0:A.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ae.useTableState(()=>y.value),f=n.computed(()=>c.value&&i.config.app==="konnect"),u=n.computed(()=>!!i.config.entityId),p=n.computed(()=>{var L;return((L=i.config)==null?void 0:L.entityType)==="consumers"}),m=n.computed(()=>{var L;return((L=i.config)==null?void 0:L.entityType)==="consumer_groups"}),h=i.config.app==="konnect"||ae.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),w=n.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(D=i.config)!=null&&D.entityId||(g.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),g.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(g.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),g.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const _=g,b=n.computed(()=>{var X,te,K,J;let L=i.config.entityType?`${i.config.apiBaseUrl}${Oe.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Oe.list[i.config.app].all}`;return i.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,((X=i.config)==null?void 0:X.controlPlaneId)||""):i.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,(te=i.config)!=null&&te.workspace?`/${i.config.workspace}`:"")),L.replace(/{entityType}/gi,((K=i.config)==null?void 0:K.entityType)||"").replace(/{entityId}/gi,((J=i.config)==null?void 0:J.entityId)||"")}),y=n.ref(""),C=n.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:g.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...g.enabled,label:a("search.filter.field.enabled")},name:g.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:x,fetcherState:k,fetcherCacheKey:P}=ae.useFetcher(n.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),b),I=()=>{y.value=""},B=()=>{P.value++},W=n.ref(null),M=L=>{var te,K,J,q;const X=[];return((te=L.route)!=null&&te.id||L.route_id)&&X.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((K=L.service)!=null&&K.id||L.service_id)&&X.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((J=L.consumer)!=null&&J.id||L.consumer_id)&&X.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((q=L.consumer_group)!=null&&q.id||L.consumer_group_id)&&X.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),X.length?X:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},v=async(L,X)=>{var te;return L===null?!1:await((te=i.canRetrieveScopedEntity)==null?void 0:te.call(i,L,X.id))},N=(L,X)=>{var K,J,q,ie,le;let te=null;switch(L){case"route":te=(K=X.route)==null?void 0:K.id;break;case"service":te=(J=X.service)==null?void 0:J.id;break;case"consumer":te=(q=X.consumer)==null?void 0:q.id;break;case"consumer_group":te=(ie=X.consumer_group)==null?void 0:ie.id;break}te&&((le=i.config)!=null&&le.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(L,te))},E=n.ref(!1),R=n.ref(null),O=n.computed(()=>{const L={action:"disable",id:"",name:""};if(R.value){const{enabled:X,id:te,name:K}=R.value;L.action=X?"disable":"enable",L.id=te,L.name=o.getDisplayName(K)||te}return L}),j=L=>{E.value=!0,R.value=L},G=()=>{E.value=!1,R.value=null},F=async()=>{var K,J,q,ie,le,se,we,be;if(!await((K=i.canEdit)==null?void 0:K.call(i,R.value))||!R.value)return;let X=`${i.config.apiBaseUrl}${(le=Oe.item[i.config.app])==null?void 0:le[(J=i.config)!=null&&J.entityType?"forEntity":"all"].replace(/{entityType}/gi,((q=i.config)==null?void 0:q.entityType)||"").replace(/{entityId}/gi,((ie=i.config)==null?void 0:ie.entityId)||"")}`.replace(/{id}/gi,R.value.id||"");i.config.app==="konnect"?X=X.replace(/{controlPlaneId}/gi,((se=i.config)==null?void 0:se.controlPlaneId)||""):i.config.app==="kongManager"&&(X=X.replace(/\/{workspace}/gi,(we=i.config)!=null&&we.workspace?`/${i.config.workspace}`:""));const te=!R.value.enabled;try{const{data:Ne}=((be=i.config)==null?void 0:be.app)==="konnect"?await s.put(X,{...R.value,enabled:te},{timeout:12e4}):await s.patch(X,{...R.value,enabled:te},{timeout:12e4});r("toggle-enabled",te,Ne),R.value.enabled=te}catch(Ne){r("error",Ne)}},V=async(L,X)=>{const te=L.id;if(!await X(te)){r("copy:error",{entity:L,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:L,field:"id",message:a("copy.success",{val:te})})},U=async(L,X)=>{const te=JSON.stringify(L);if(!await X(te)){r("copy:error",{entity:L,message:a("errors.copy")});return}r("copy:success",{entity:L,message:a("copy.success_brief")})},re=async L=>{var te;await((te=i.canRetrieve)==null?void 0:te.call(i,L))&&l.push(i.config.getViewRoute(L))},de=L=>({label:a("actions.view"),to:i.config.getViewRoute(L)}),ee=L=>({label:a("actions.edit"),to:i.config.getEditRoute(L)}),oe=L=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(L)}),Y=n.ref(void 0),$=n.ref(!1),z=n.ref(!1),Z=n.ref(""),Q=ae.useDeleteUrlBuilder(i.config,b.value),ne=L=>{Y.value=L,$.value=!0},ue=()=>{$.value=!1},me=async()=>{var L,X,te;if((L=Y.value)!=null&&L.id){z.value=!0;try{await s.delete(Q(Y.value.id)),z.value=!1,$.value=!1,P.value++,r("delete:success",Y.value)}catch(K){Z.value=((te=(X=K.response)==null?void 0:X.data)==null?void 0:te.message)||K.message||a("errors.delete"),r("error",K)}finally{z.value=!1}}},T=()=>{l.push(i.config.createRoute)};n.watch(k,L=>{var X,te,K;if(L.status===ae.FetcherStatus.Error){W.value={title:a("errors.general")},(K=(te=(X=L.error)==null?void 0:X.response)==null?void 0:te.data)!=null&&K.message&&(W.value.message=L.error.response.data.message),r("error",L.error);return}W.value=null});const S=n.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")});return n.onBeforeMount(async()=>{await i.canCreate()&&(S.value.title=a("plugins.list.empty_state.title"),S.value.ctaText=a("actions.create"))}),(L,X)=>{const te=n.resolveComponent("KButton"),K=n.resolveComponent("KBadge"),J=n.resolveComponent("KTruncate"),q=n.resolveComponent("KInputSwitch"),ie=n.resolveComponent("KDropdownItem"),le=n.resolveComponent("KClipboardProvider");return n.openBlock(),n.createElementBlock("div",$D,[n.createVNode(n.unref(ae.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":w.value,"empty-state-options":S.value,"enable-entity-actions":"","error-message":W.value,fetcher:n.unref(x),"fetcher-cache-key":n.unref(P),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:y.value,"table-headers":n.unref(_),title:e.title,"title-tag":e.titleTag,onClearSearchInput:I,"onClick:row":X[4]||(X[4]=se=>re(se)),onSort:B,onState:n.unref(d)},n.createSlots({"toolbar-filter":n.withCtx(()=>[n.createVNode(n.unref(ae.EntityFilter),{modelValue:y.value,"onUpdate:modelValue":X[0]||(X[0]=se=>y.value=se),config:C.value},null,8,["modelValue","config"])]),"toolbar-button":n.withCtx(()=>[(n.openBlock(),n.createBlock(n.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[n.createElementVNode("div",BD,[!u.value&&f.value?(n.openBlock(),n.createBlock(te,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:X[1]||(X[1]=se=>L.$emit("click:learn-more"))},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.BookIcon),{decorative:""})]),_:1})):n.createCommentVNode("",!0),n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:n.withCtx(()=>[n.createVNode(te,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:n.withCtx(({row:se})=>[n.createElementVNode("div",VD,[n.createVNode(n.unref(Jn.PluginIcon),{class:"plugin-icon",name:se.name,size:24},null,8,["name"]),n.createElementVNode("div",RD,[se.instance_name?(n.openBlock(),n.createElementBlock("span",MD,n.toDisplayString(se.instance_name),1)):(n.openBlock(),n.createElementBlock("span",FD,n.toDisplayString(n.unref(o).getDisplayName(se.name)),1)),se.instance_name?(n.openBlock(),n.createElementBlock("span",LD,n.toDisplayString(n.unref(o).getDisplayName(se.name)),1)):n.createCommentVNode("",!0)])])]),appliedTo:n.withCtx(({row:se})=>[M(se).length>0?(n.openBlock(),n.createBlock(J,{key:0},{default:n.withCtx(()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(M(se),we=>(n.openBlock(),n.createBlock(n.unref(ae.PermissionsWrapper),{key:we.badgeText,"auth-function":()=>v(we.type,se),"force-show":""},{default:n.withCtx(({isAllowed:be})=>[n.createVNode(K,{class:n.normalizeClass(be||"disabled"),onClick:n.withModifiers(Ne=>be&&we.type&&N(we.type,se),["stop"])},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(we.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(n.openBlock(),n.createElementBlock("span",UD,"-"))]),enabled:n.withCtx(({row:se})=>[n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(se)&&await e.canToggle(se)),"force-show":""},{default:n.withCtx(({isAllowed:we})=>{var be,Ne;return[n.createElementVNode("div",{onClick:X[3]||(X[3]=n.withModifiers(()=>{},["stop"]))},[n.createVNode(q,{disabled:!we,"disabled-tooltip-text":!we&&((Ne=(be=e.config).getToggleDisabledTooltip)==null?void 0:Ne.call(be,se))||void 0,"model-value":se.enabled,onClick:n.withModifiers($e=>we&&j(se),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:n.withCtx(({rowValue:se})=>[n.createVNode(K,{appearance:n.unref(rc)(se)?"info":"warning"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(rc)(se)?n.unref(a)("plugins.list.table_headers.ordering_badge.static"):n.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:n.withCtx(({rowValue:se})=>[n.createVNode(n.unref(ae.TableTags),{tags:se},null,8,["tags"])]),actions:n.withCtx(({row:se})=>[n.createVNode(le,null,{default:n.withCtx(({copyToClipboard:we})=>[n.createVNode(ie,{"data-testid":"action-entity-copy-id",onClick:be=>V(se,we)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),n.createVNode(le,null,{default:n.withCtx(({copyToClipboard:we})=>[n.createVNode(ie,{"data-testid":"action-entity-copy-json",onClick:be=>U(se,we)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(se)},{default:n.withCtx(()=>[n.createVNode(ie,{"data-testid":"action-entity-view","has-divider":"",item:de(se)},null,8,["item"])]),_:2},1032,["auth-function"]),n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":()=>e.canEdit(se)},{default:n.withCtx(()=>[n.createVNode(ie,{"data-testid":"action-entity-edit",item:ee(se)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&n.unref(h)?(n.openBlock(),n.createBlock(n.unref(ae.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(se)},{default:n.withCtx(()=>[oe(se)?(n.openBlock(),n.createBlock(ie,{key:0,"data-testid":"action-entity-config-dyn-order",item:oe(se)},null,8,["item"])):n.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):n.createCommentVNode("",!0),n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":()=>e.canDelete(se)},{default:n.withCtx(()=>[n.createVNode(ie,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:we=>ne(se)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!y.value&&e.config.app==="konnect"?{name:"empty-state",fn:n.withCtx(()=>{var se;return[n.createVNode(n.unref(ae.EntityEmptyState),{"action-button-text":n.unref(a)("plugins.list.empty_state_v2.create_cta"),appearance:"secondary","can-create":()=>e.canCreate(),"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state",description:n.unref(a)("plugins.list.empty_state_v2.description"),"learn-more":e.config.app==="konnect",title:n.unref(a)("plugins.list.empty_state_v2.title"),"onClick:create":T,"onClick:learnMore":X[2]||(X[2]=we=>L.$emit("click:learn-more"))},n.createSlots({image:n.withCtx(()=>[n.createElementVNode("div",DD,[n.createVNode(n.unref(Ee.PlugIcon),{color:n.unref(Iw),size:n.unref($w)},null,8,["color","size"])])]),_:2},[(se=e.config)!=null&&se.isControlPlaneGroup?{name:"message",fn:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["action-button-text","can-create","data-testid","description","learn-more","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),n.createVNode(n.unref(ae.EntityToggleModal),{action:O.value.action,"entity-id":O.value.id,"entity-name":O.value.name,"entity-type":n.unref(a)("glossary.plugin"),"on-confirm":F,visible:E.value,onCancel:G,onProceed:G},null,8,["action","entity-id","entity-name","entity-type","visible"]),n.createVNode(n.unref(ae.EntityDeleteModal),{"action-pending":z.value,description:n.unref(a)("delete.description"),"entity-name":Y.value&&(Y.value.instance_name||Y.value.name||Y.value.id),"entity-type":n.unref(ae.EntityTypes).Plugin,error:Z.value,title:n.unref(a)("delete.title"),visible:$.value,onCancel:ue,onProceed:me},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-6c66e4a5"]]),qD={class:"plugin-select-card-wrapper"},GD=["data-testid"],jD={class:"plugin-card-header"},zD={class:"plugin-card-title"},HD={key:0,class:"plugin-card-actions"},YD=["data-testid","title"],WD={key:0,class:"plugin-card-text"},ZD={key:0},XD=["title"],Il=_e(n.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:t}){const o=t,r=e,i=Zn.useRouter(),{i18n:{t:a}}=Ie.useI18n(),l=n.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=n.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=n.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?d():u()},u=()=>{o("plugin-clicked",r.plugin)},p=n.computed(()=>r.plugin.id==="custom-plugin-create"),m=n.computed(()=>r.config.app==="konnect"&&r.plugin.group===H.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},w=(_,b)=>{const y=r.config;r.config.app==="konnect"&&typeof y.getCustomEditRoute=="function"&&y.getCustomEditRoute&&i.push(y.getCustomEditRoute(_,b))},g=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;p.value&&_.createCustomRoute?i.push(_.createCustomRoute):m.value&&d()}};return(_,b)=>{const y=n.resolveComponent("KButton"),C=n.resolveComponent("KDropdownItem"),x=n.resolveComponent("KDropdownMenu"),k=n.resolveComponent("KTooltip");return n.openBlock(),n.createElementBlock("div",qD,[n.createVNode(k,{text:e.plugin.disabledMessage},{default:n.withCtx(()=>[n.createElementVNode("a",{class:n.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:b[1]||(b[1]=P=>s.value||m.value?void 0:f())},[n.createElementVNode("div",jD,[n.createElementVNode("div",zD,[n.createElementVNode("span",{class:n.normalizeClass({"non-custom-title":!m.value})},n.toDisplayString(e.plugin.name),3)]),c.value?(n.openBlock(),n.createElementBlock("div",HD,[n.createVNode(x,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:n.withCtx(()=>[n.createVNode(y,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.MoreIcon),{size:n.unref(Ow)},null,8,["size"])]),_:1})]),items:n.withCtx(()=>[e.canDeleteCustomPlugin?(n.openBlock(),n.createBlock(C,{key:0,"data-testid":"edit-plugin-schema",onClick:b[0]||(b[0]=n.withModifiers(P=>w(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.edit")),1)]),_:1})):n.createCommentVNode("",!0),e.canDeleteCustomPlugin?(n.openBlock(),n.createBlock(C,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:n.withModifiers(h,["stop"])},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.delete")),1)]),_:1})):n.createCommentVNode("",!0)]),_:1})])):n.createCommentVNode("",!0)]),n.createElementVNode("div",{class:n.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:n.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[n.createVNode(n.unref(Jn.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||m.value&&!p.value?(n.openBlock(),n.createElementBlock("div",WD,[m.value&&!p.value?(n.openBlock(),n.createElementBlock("p",ZD,n.toDisplayString(n.unref(a)("plugins.select.custom_badge_text")),1)):n.createCommentVNode("",!0),e.plugin.description?(n.openBlock(),n.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},n.toDisplayString(e.plugin.description),9,XD)):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],10,YD),n.createElementVNode("div",{class:"plugin-card-footer",onClick:g},n.toDisplayString(p.value?n.unref(a)("actions.create_custom"):e.plugin.exists?n.unref(a)("actions.enabled"):n.unref(a)("actions.enable")),1)],10,GD)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),JD=_e(n.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:t}){var h;const o=e,r=t,{i18nT:i,i18n:{t:a}}=Ie.useI18n(),{getMessageFromError:l}=ae.useErrors(),{axiosInstance:s}=ae.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=n.computed(()=>{var w;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((w=o.plugin)==null?void 0:w.name)||a("delete.custom_plugin")})}),d=n.ref(!1),f=n.ref(""),u=n.ref(!1),p=n.computed(()=>{if(o.config.app==="konnect"){const w=o.plugin.customPluginType==="streaming"?Oe.select[o.config.app].streamingCustomPluginItem:Oe.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${w}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var w,g,_,b;if(d.value=!0,f.value="",!(!((w=o.plugin)!=null&&w.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(y){const{response:C}=y;(C==null?void 0:C.status)===400&&((b=(_=C.data)==null?void 0:_.message)!=null&&b.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(y)}finally{d.value=!1}};return(w,g)=>{const _=n.resolveComponent("KButton"),b=n.resolveComponent("KModal");return!u.value&&e.plugin?(n.openBlock(),n.createBlock(n.unref(ae.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:n.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":n.unref(ae.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[0]=y=>w.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(n.openBlock(),n.createBlock(b,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:g[2]||(g[2]=y=>w.$emit("closed"))},{default:n.withCtx(()=>[n.createElementVNode("div",null,[n.createVNode(n.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:n.withCtx(()=>[n.createElementVNode("strong",null,n.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":n.withCtx(()=>[n.createElementVNode("div",null,[n.createVNode(_,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[1]=y=>w.$emit("closed"))},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):n.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),QD={class:"custom-plugins-grid"},eV={class:"empty-state-title"},tV={class:"empty-state-description"},Ol=310,nV=_e(n.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:t}){const o=e,r=t,{i18n:{t:i}}=Ie.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ie.usePluginHelpers(),s=n.ref(!0),c=x=>{r("plugin-clicked",x)},d=n.computed(()=>{if(o.config.app==="kongManager")return[];const x=JSON.parse(JSON.stringify(o.pluginList))[H.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:H.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(x):x}),f=n.ref(!1),u=n.ref(null),p=x=>{f.value=!0,u.value={id:x.id,name:x.name,customPluginType:x.customPluginType}},m=x=>{var k;x&&(r("revalidate"),r("delete:success",((k=u.value)==null?void 0:k.name)||"")),f.value=!1,u.value=null},h=n.ref(Ol),w=n.ref(null),g=n.ref(null),_=n.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),b=n.ref(!1),y=()=>{h.value=Math.max(a(g.value),Ol),C()},C=()=>{var x,k;(x=g.value)!=null&&x.length&&(b.value=l(w.value,(k=g.value)==null?void 0:k.length))};return n.onMounted(async()=>{await n.nextTick(),h.value=Math.max(a(g.value),Ol),C(),window==null||window.addEventListener("resize",y)}),n.onUnmounted(()=>{window==null||window.removeEventListener("resize",y)}),(x,k)=>{const P=n.resolveComponent("KEmptyState"),I=n.resolveComponent("KCollapse");return n.openBlock(),n.createElementBlock("div",QD,[d.value.length?(n.openBlock(),n.createBlock(I,{key:1,modelValue:s.value,"onUpdate:modelValue":k[0]||(k[0]=B=>s.value=B),class:"custom-plugins-collapse","data-testid":`${n.unref(H.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:n.unref(H.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?n.unref(i)("plugins.select.view_more"):n.unref(i)("plugins.select.view_less")},n.createSlots({"visible-content":n.withCtx(()=>[n.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:w,class:"plugin-card-container",style:n.normalizeStyle(_.value)},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(d.value,(B,W)=>(n.openBlock(),n.createBlock(Il,{key:`plugin-card-${W}`,ref_for:!0,ref_key:"pluginCardRef",ref:g,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:B,onCustomPluginDelete:M=>p(B),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[b.value?void 0:{name:"trigger",fn:n.withCtx(()=>[k[2]||(k[2]=n.createTextVNode(" "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(n.openBlock(),n.createBlock(P,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:n.withCtx(()=>[n.createElementVNode("span",eV,n.toDisplayString(n.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:n.withCtx(()=>[n.createElementVNode("span",tV,n.toDisplayString(n.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(n.openBlock(),n.createBlock(JD,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:k[1]||(k[1]=B=>m(!0))},null,8,["config","plugin"])):n.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),$l=310,Qp=_e(n.defineComponent({__name:"PluginSelectGroup",props:n.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:n.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:t}){const o=n.useModel(e,"modelValue"),r=e,i=t,{i18n:{t:a}}=Ie.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ie.usePluginHelpers(),c=n.ref($l),d=n.ref(null),f=n.ref(null),u=n.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=n.ref(!1),m=()=>{c.value=Math.max(l(f.value),$l),h()},h=()=>{var w,g;(w=f.value)!=null&&w.length&&(p.value=s(d.value,(g=f.value)==null?void 0:g.length))};return n.onMounted(async()=>{await n.nextTick(),c.value=Math.max(l(f.value),$l),h(),window==null||window.addEventListener("resize",m)}),n.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(w,g)=>{const _=n.resolveComponent("KCollapse");return n.openBlock(),n.createBlock(_,{modelValue:o.value,"onUpdate:modelValue":g[0]||(g[0]=b=>o.value=b),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?n.unref(a)("plugins.select.view_more"):n.unref(a)("plugins.select.view_less")},n.createSlots({"visible-content":n.withCtx(()=>[n.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:n.normalizeStyle(u.value)},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(r.plugins,b=>(n.openBlock(),n.createBlock(Il,{key:`plugin-card-${b.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:b,onPluginClicked:y=>i("plugin-clicked",b)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:n.withCtx(()=>[g[1]||(g[1]=n.createTextVNode(" "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),oV={class:"plugin-select-grid"},rV={class:"empty-state-title"},iV={class:"empty-state-description"},Bl=n.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:t}){const o=e,r=t,{i18n:{t:i}}=Ie.useI18n(),a=n.ref(!1),l=n.ref(Ml),s=d=>{r("plugin-clicked",d)},c=n.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[H.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=n.resolveComponent("KEmptyState");return n.openBlock(),n.createElementBlock("div",oV,[Object.keys(c.value).length?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:n.withCtx(()=>[n.createElementVNode("span",rV,n.toDisplayString(n.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:n.withCtx(()=>[n.createElementVNode("span",iV,n.toDisplayString(n.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(n.openBlock(),n.createBlock(Qp,{key:1,modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=p=>a.value=p),config:e.config,name:o.highlightedPluginsTitle||n.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:o.highlightedPlugins,onPluginClicked:f[1]||(f[1]=p=>s(p))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):n.createCommentVNode("",!0),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(Rl),p=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[c.value[p]?(n.openBlock(),n.createElementBlock("div",{key:p},[n.createVNode(Qp,{modelValue:l.value[p],"onUpdate:modelValue":m=>l.value[p]=m,config:e.config,name:p,"navigate-on-click":e.navigateOnClick,plugins:c.value[p]||[],onPluginClicked:f[2]||(f[2]=m=>s(m))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):n.createCommentVNode("",!0)],64))),256))])}}}),aV={class:"kong-ui-entities-plugin-select-form"},lV={class:"plugins-filter-input-container"},sV={key:0},cV={key:3,"aria-live":"polite",class:"plugins-results-container"},dV={"data-testid":"kong-tab"},uV={class:"tab-description"},fV={"data-testid":"custom-tab"},pV={class:"tab-description"},mV=_e(n.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:t}){var F;const o=e,r=t,i=Zn.useRoute(),a=Zn.useRouter(),{i18n:{t:l}}=Ie.useI18n(),{pluginMetaData:s}=Ie.usePluginMetaData(),{getMessageFromError:c}=ae.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ae.useHelpers(),u=n.ref(""),p=n.ref(!0),m=n.ref(!1),h=n.ref(""),w=n.ref([]),g=n.ref([]),_=n.ref({}),b=n.ref([]),{axiosInstance:y}=ae.useAxios((F=o.config)==null?void 0:F.axiosRequestConfig),C=n.computed(()=>_.value?Object.entries(_.value).filter(([V])=>V!==H.PluginGroup.CUSTOM_PLUGINS).reduce((V,[,U])=>{for(const re of U)V[re.id]=re;return V},{}):{}),x=n.computed(()=>{var re;if(!_.value)return{};const V=u.value.toLowerCase(),U=JSON.parse(JSON.stringify(_.value));for(const de in _.value){const ee=((re=_.value[de])==null?void 0:re.filter(oe=>oe.name.toLowerCase().includes(V)||oe.id.toLowerCase().includes(V)||oe.group.toLowerCase().includes(V)))||[];ee.length?U[de]=ee:delete U[de]}return U}),k=n.computed(()=>o.highlightedPluginIds.reduce((V,U)=>{const re=C.value[U];return re&&V.push(re),V},[])),P=n.computed(()=>Object.keys(x.value).length>0),I=n.computed(()=>Object.keys(_.value).length>0&&!P.value),B=n.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),W=n.computed(()=>{var U;let V=B.value.length&&((i==null?void 0:i.hash)||((U=B.value[0])==null?void 0:U.hash))||"";return V==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(V="#kong"),V}),M=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...w.value])].filter(V=>!o.ignoredPlugins.includes(V)).filter(V=>o.config.entityType&&(o.config.entityType==="services"&&s[V]&&!s[V].scope.includes(H.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[V]&&!s[V].scope.includes(H.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[V]&&!s[V].scope.includes(H.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[V]&&!s[V].scope.includes(H.PluginScope.CONSUMER))?!1:V).reduce((V,U)=>{var Y;const re=s[U]&&s[U].name||U,de={...s[U],id:U,name:re,available:w.value.includes(U),disabledMessage:"",group:((Y=s[U])==null?void 0:Y.group)||H.PluginGroup.CUSTOM_PLUGINS};de.group===H.PluginGroup.CUSTOM_PLUGINS&&(de.customPluginType=g.value.find($=>$.name===U)?"streaming":"schema"),o.disabledPlugins&&(de.disabledMessage=o.disabledPlugins[U]);const ee=de.group||l("plugins.select.misc_plugins");let oe=V[ee];return oe||(oe=[]),oe.push(de),oe.sort(d("name")),V[ee]=oe,V},{}),v=n.computed(()=>{var U;let V=`${o.config.apiBaseUrl}${Oe.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?V=V.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(V=((U=o.config.gatewayInfo)==null?void 0:U.edition)==="community"?`${o.config.apiBaseUrl}${Oe.select[o.config.app].availablePluginsForOss}`:V.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),V}),N=n.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let V=`${o.config.apiBaseUrl}${Oe.select[o.config.app].streamingCustomPlugins}`;return V=V.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),V}return null}),E=n.computed(()=>{if(o.config.entityType&&o.config.entityId){let V=`${o.config.apiBaseUrl}${Oe.list[o.config.app].forEntity}`;return o.config.app==="konnect"?V=V.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(V=V.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),V.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),R=V=>{a.replace({hash:V,query:i.query})};n.watch(()=>o.disabledPlugins,(V,U)=>{!f(V,U)&&!p.value&&(_.value=M())}),n.watch(()=>o.ignoredPlugins,(V,U)=>{!f(V,U)&&!p.value&&(_.value=M())}),n.watch(p,V=>{r("loading",V)});const O=n.ref(!1),j=n.ref(!1),G=n.ref(!1);return n.onBeforeMount(async()=>{O.value=await o.canCreateCustomPlugin(),j.value=await o.canEditCustomPlugin(),G.value=await o.canDeleteCustomPlugin()}),n.onMounted(async()=>{try{const{data:V}=await y.get(v.value);if(o.config.app==="konnect"){const{names:U}=V;if(w.value=U||[],N.value){const{data:re}=await y.get(N.value);g.value=re.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:U}}=V;w.value=U?Object.keys(U):[]}}catch(V){m.value=!0,h.value=c(V)}if(E.value)try{const{data:{data:V}}=await y.get(E.value);if(V!=null&&V.length){const U=V.reduce((re,de)=>(de.name&&re.push(de.name),re),[]);b.value=b.value.concat(U)}}catch{}m.value||(_.value=M()),p.value=!1}),(V,U)=>{const re=n.resolveComponent("KInput"),de=n.resolveComponent("KSkeletonBox"),ee=n.resolveComponent("KSkeleton"),oe=n.resolveComponent("KEmptyState"),Y=n.resolveComponent("KTooltip"),$=n.resolveComponent("KTabs");return n.openBlock(),n.createElementBlock("div",aV,[n.createElementVNode("div",lV,[n.createVNode(re,{modelValue:u.value,"onUpdate:modelValue":U[0]||(U[0]=z=>u.value=z),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:n.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(n.openBlock(),n.createElementBlock("section",sV,[n.createVNode(de,{class:"plugins-skeleton-title",width:"10"}),n.createVNode(ee,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(n.openBlock(),n.createBlock(oe,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(h.value),1)]),_:1})):I.value&&u.value?(n.openBlock(),n.createBlock(oe,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:n.withCtx(()=>[n.createElementVNode("h5",null,n.toDisplayString(n.unref(l)("search.no_results",{filter:u.value})),1)]),_:1})):(n.openBlock(),n.createElementBlock("section",cV,[B.value.length&&e.customPluginSupport!=="none"?(n.openBlock(),n.createBlock($,{key:0,modelValue:W.value,"onUpdate:modelValue":U[5]||(U[5]=z=>W.value=z),"data-testid":"plugins-tabs",tabs:B.value,onChange:R},n.createSlots({kong:n.withCtx(()=>[n.createElementVNode("div",dV,[n.createElementVNode("p",uV,n.toDisplayString(n.unref(l)("plugins.select.tabs.kong.description")),1),n.createVNode(Bl,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":k.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":x.value,onPluginClicked:U[1]||(U[1]=z=>V.$emit("plugin-clicked",z))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:n.withCtx(()=>[n.createElementVNode("div",fV,[n.createElementVNode("p",pV,n.toDisplayString(n.unref(l)("plugins.select.tabs.custom.description")),1),n.createVNode(nV,{"can-create-custom-plugin":O.value,"can-delete-custom-plugin":G.value,"can-edit-custom-plugin":j.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":x.value,"onDelete:success":U[2]||(U[2]=z=>V.$emit("delete-custom:success",z)),onPluginClicked:U[3]||(U[3]=z=>V.$emit("plugin-clicked",z)),onRevalidate:U[4]||(U[4]=()=>_.value=M())},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:n.withCtx(()=>[n.createVNode(Y,{"max-width":"300",text:n.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(n.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(n.openBlock(),n.createBlock(Bl,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":k.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":x.value,onPluginClicked:U[6]||(U[6]=z=>V.$emit("plugin-clicked",z))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-d2065987"]]),gV={class:"kong-ui-entity-plugin-config-card"},hV={class:"name-cell-wrapper"},yV={class:"info-name"},_V={key:0},bV={key:0},wV={key:0},EV={key:0},kV={key:0},Dl="config",CV=_e(n.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:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:t}){var b;const o=t,r=e,{i18n:{t:i}}=Ie.useI18n(),a=Ie.usePluginMetaData(),{setFieldType:l}=Ie.usePluginHelpers(),{getPropValue:s}=ae.useHelpers(),c=n.computed(()=>{var y;return(y=Oe.item[r.config.app])==null?void 0:y[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"")}),d=n.computed(()=>{var x,k;const y={},C=((x=w.value)==null?void 0:x.fields)||[];for(let P=0;P<C.length;P++){const I=w.value.fields[P],B=(k=Object.keys(I))==null?void 0:k[0];l(y,B,I[B])}return{...y,instance_name:{section:ae.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ae.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ae.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ae.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ae.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ae.ConfigurationSchemaType.BadgeTag,section:ae.ConfigurationSchemaSection.Basic,order:7}}}),f=n.computed(()=>{var C,x,k;if(!((C=w.value)!=null&&C.fields))return[];const y=(x=w.value.fields)==null?void 0:x.find(P=>{var B;return((B=Object.keys(P))==null?void 0:B[0])===Dl});return((k=y==null?void 0:y[Dl])==null?void 0:k.fields)||[]}),u=n.computed(()=>{var C,x;const y={};if(!f.value)return y;for(let k=0;k<((C=f.value)==null?void 0:C.length);k++){const P=f.value[k],I=(x=Object.keys(P))==null?void 0:x[0],B=P[I];B.required&&(y[I]={order:1}),l(y,I,B)}return y}),{getMessageFromError:p}=ae.useErrors(),{axiosInstance:m}=ae.useAxios((b=r.config)==null?void 0:b.axiosRequestConfig),h=n.computed(()=>{var C,x;let y=`${r.config.apiBaseUrl}${Oe.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?y=y.replace(/{controlPlaneId}/gi,((C=r.config)==null?void 0:C.controlPlaneId)||""):r.config.app==="kongManager"&&(y=y.replace(/\/{workspace}/gi,(x=r.config)!=null&&x.workspace?`/${r.config.workspace}`:"")),y=y.replace(/{plugin}/gi,r.config.pluginType),y}),w=n.ref({});ae.useSchemaProvider(w);const g=n.ref(!1),_=n.ref("");return n.onBeforeMount(async()=>{g.value=!0;try{const{data:y}=await m.get(h.value);w.value=y}catch(y){_.value=p(y),o("error:fetch-schema",y)}finally{g.value=!1}}),(y,C)=>{const x=n.resolveComponent("KSkeleton"),k=n.resolveComponent("KEmptyState"),P=n.resolveComponent("KCopy");return n.openBlock(),n.createElementBlock("div",gV,[g.value?(n.openBlock(),n.createBlock(x,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):_.value?(n.openBlock(),n.createBlock(k,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(_.value),1)]),_:1})):(n.openBlock(),n.createBlock(n.unref(ae.EntityBaseConfigCard),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":n.unref(ae.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":Dl,"plugin-config-schema":u.value,"onFetch:error":C[0]||(C[0]=I=>y.$emit("fetch:error",I)),"onFetch:success":C[1]||(C[1]=I=>y.$emit("fetch:success",I)),onLoading:C[2]||(C[2]=I=>y.$emit("loading",I))},{name:n.withCtx(I=>[n.createElementVNode("div",hV,[n.createVNode(n.unref(Jn.PluginIcon),{class:"plugin-icon",name:n.unref(s)("rowValue",I),size:24},null,8,["name"]),n.createElementVNode("span",yV,n.toDisplayString(n.unref(a).getDisplayName(n.unref(s)("rowValue",I))),1)])]),consumer:n.withCtx(I=>[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",I).id,value:n.unref(s)("rowValue",I).id,type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",I).id,"consumer")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(P,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"consumer-copy-uuid",text:n.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",_V,"–"))]),route:n.withCtx(I=>[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",I).id,value:n.unref(s)("rowValue",I).id,type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",I).id,"route")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(P,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"route-copy-uuid",text:n.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",bV,"–"))]),service:n.withCtx(I=>[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",I).id,value:n.unref(s)("rowValue",I).id,type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",I).id,"service")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(P,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"service-copy-uuid",text:n.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",wV,"–"))]),consumer_group:n.withCtx(I=>[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",I).id,value:n.unref(s)("rowValue",I).id,type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",I).id,"consumer_group")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(P,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"consumer-group-copy-uuid",text:n.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",EV,"–"))]),partials:n.withCtx(I=>{var B,W,M,v,N,E,R,O,j;return[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:(W=(B=n.unref(s)("rowValue",I))==null?void 0:B[0])==null?void 0:W.id,value:((v=(M=n.unref(s)("rowValue",I))==null?void 0:M[0])==null?void 0:v.id)+((E=(N=n.unref(s)("rowValue",I))==null?void 0:N[0])!=null&&E.name?"/"+((O=(R=n.unref(s)("rowValue",I))==null?void 0:R[0])==null?void 0:O.name):""),type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var G,F;return y.$emit("navigation-click",(F=(G=n.unref(s)("rowValue",I))==null?void 0:G[0])==null?void 0:F.id,"partial")}},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(P,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"partial-copy-uuid",text:(j=n.unref(s)("rowValue",I))==null?void 0:j[0].id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",kV,"–"))]}),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-c314449c"]]),{usePluginMetaData:vV,useProvideExperimentalFreeForms:NV}=Ie;Object.defineProperty(he,"PluginGroup",{enumerable:!0,get:()=>H.PluginGroup}),Object.defineProperty(he,"PluginScope",{enumerable:!0,get:()=>H.PluginScope}),Object.defineProperty(he,"PluginIcon",{enumerable:!0,get:()=>Jn.PluginIcon}),Object.defineProperty(he,"getPluginIconURL",{enumerable:!0,get:()=>Jn.getPluginIconURL}),he.EXPERIMENTAL_FREE_FORM_PROVIDER=Ei,he.EntityTypeIdField=Wt,he.FEATURE_FLAGS=Yl,he.PLUGIN_GROUPS_COLLAPSE_STATUS=Ml,he.PluginConfigCard=CV,he.PluginForm=OD,he.PluginGroupArray=Rl,he.PluginList=KD,he.PluginPartialType=Wo,he.PluginSelect=mV,he.PluginSelectCard=Il,he.PluginSelectGrid=Bl,he.pluginEndpoints=Oe,he.usePluginMetaData=vV,he.useProvideExperimentalFreeForms=NV,Object.defineProperty(he,Symbol.toStringTag,{value:"Module"})});
|
|
154
|
+
`},Symbol.toStringTag,{value:"Module"})),pV={ref:"editor-root",class:"dk-editor"},Il="YAML Syntax",mV="datakit.insert-example",gV=_e(n.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean},config:{}},emits:["change","error"],setup(e,{expose:t,emit:o}){const r=o,i=n.useTemplateRef("editor-root"),a=n.shallowRef(null);function l(s){const c=a.value,d=c==null?void 0:c.getModel();if(!c||!d)return;const u=Jp[s];if(c.getValue()!==u){const f=d.getFullModelRange();c.pushUndoStop(),c.executeEdits(mV,[{range:f,text:u}]),c.pushUndoStop()}c.focus()}return n.onMounted(()=>{const s=Wo.editor.create(i.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});a.value=s,e.editing&&s.setValue(Zp.dump(n.toRaw(e.config),{schema:Pl,noArrayIndent:!0})),s.onDidChangeModelContent(()=>{const c=s.getModel(),d=s.getValue()||"";try{const u=Zp.load(d,{schema:Pl,json:!0});Wo.editor.setModelMarkers(c,Il,[]),r("change",u)}catch(u){const{message:f,mark:p}=u,{line:m,column:h}=p||{line:0,column:0},w=f.split(`
|
|
155
|
+
`)[0],g=[{startLineNumber:m+1,startColumn:h+1,endLineNumber:m+1,endColumn:h+2,message:w,severity:Wo.MarkerSeverity.Error,source:Il}];Wo.editor.setModelMarkers(c,Il,g),r("error",w)}})}),n.onBeforeUnmount(()=>{var s;(s=a.value)==null||s.dispose()}),t({setExampleCode:l}),(s,c)=>(n.openBlock(),n.createElementBlock("div",pV,null,512))}}),[["__scopeId","data-v-e5fcb32d"]]),hV={key:0},yV={key:1},_V={class:"examples-content"},bV=["innerHTML"],Qp=Object.freeze(Object.defineProperty({__proto__:null,DatakitForm:_e(n.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t}=Ue.createI18n("en-us",je),o=e,r=n.inject(Wl.DATAKIT_ENABLE_FLOW_EDITOR,!1),{editorMode:i}=ma(),a=n.computed(()=>r?i.value:"code"),l={flow:Ee.DesignIcon,code:Ee.CodeblockIcon},s=[{label:t("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:t("plugins.free-form.datakit.code_editor.mode"),value:"code"}],c=n.computed(()=>{switch(i.value){case"code":return t("plugins.free-form.datakit.description_code");case"flow":return t("plugins.free-form.datakit.description_flow");default:return""}}),d=n.useTemplateRef("code-editor");function u(m){var h;(h=d.value)==null||h.setExampleCode(m)}function f(m){var h;o.onFormChange({config:m}),(h=o.onValidityChange)==null||h.call(o,{model:"config",valid:!0})}function p(m){var h;(h=o.onValidityChange)==null||h.call(o,{model:"config",valid:!1,error:m})}return(m,h)=>{const w=n.resolveComponent("KButton");return n.openBlock(),n.createBlock(eE,n.mergeProps(o,{class:"dk-form"}),n.createSlots({default:n.withCtx(g=>[n.createVNode(bt,n.mergeProps(g,{tag:"div"}),{default:n.withCtx(()=>[a.value==="flow"?(n.openBlock(),n.createElementBlock("div",hV,[n.createVNode(YO,{config:o.model.config,editing:o.isEditing},null,8,["config","editing"])])):a.value==="code"?(n.openBlock(),n.createElementBlock("div",yV,[n.createVNode(n.unref(Pe.KAlert),{class:"examples"},{icon:n.withCtx(()=>[n.createVNode(n.unref(Ee.SparklesIcon))]),default:n.withCtx(()=>[n.createElementVNode("div",_V,[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.description_example"))+" ",1),(n.openBlock(),n.createElementBlock(n.Fragment,null,n.renderList(Jp,(_,b)=>n.createVNode(w,{key:b,appearance:"secondary",size:"small",onClick:y=>u(b)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)(`plugins.free-form.datakit.examples.${b}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),n.createVNode(gV,{ref:"code-editor",class:"code-editor",config:o.model.config,editing:o.isEditing,onChange:f,onError:p},null,8,["config","editing"])])):n.createCommentVNode("",!0)]),_:2},1040)]),"plugin-config-description":n.withCtx(()=>[n.createElementVNode("span",{innerHTML:c.value},null,8,bV)]),_:2},[n.unref(r)?{name:"plugin-config-extra",fn:n.withCtx(()=>[n.createVNode(n.unref(Pe.KSegmentedControl),{modelValue:n.unref(i),"onUpdate:modelValue":h[0]||(h[0]=g=>n.isRef(i)?i.value=g:null),options:s},{"option-label":n.withCtx(({option:g})=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(l[g.value]))),n.createTextVNode(" "+n.toDisplayString(g.label),1)]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1040)}}}),[["__scopeId","data-v-31048f23"]]),RequestCalloutForm:ow,ServiceProtectionForm:Ww},Symbol.toStringTag,{value:"Module"})),wV={class:"kong-ui-entities-plugin-form"},EV={key:1,class:"entity-form"},kV={class:"plugin-config-empty-state"},CV=_e(n.defineComponent({__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:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:t}){var ee,oe;const o=Object.keys(Ce.sharedForms),r=Object.keys(Qp);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=t,a=e,{axiosInstance:l}=ae.useAxios((ee=a.config)==null?void 0:ee.axiosRequestConfig),{parseSchema:s}=Ie.useSchemas({entityId:((oe=a.entityMap.focusedEntity)==null?void 0:oe.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:d,dismissField:u,isObjectEmpty:f,unsetNullForeignKey:p}=Ie.usePluginHelpers(),m=Ie.useExperimentalFreeForms(),{objectsAreEqual:h}=ae.useHelpers(),{i18n:{t:w}}=qe(),g=(Y,$)=>{let z=`${a.config.apiBaseUrl}${Oe.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?z=z.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(z=z.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),z=z.replace(/{entity}/gi,Y),z=z.replace(/{id}/gi,$),z},_=Y=>{let $=`${a.config.apiBaseUrl}${Oe.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),$=$.replace(/{entity}/gi,Y),$},b=(Y,$)=>{const z=g(Y,$);return l.get(z)},y=(Y,$)=>{const z=_(Y);return a.config.app==="konnect"?l.get(z).then(X=>{const{data:{data:Q}}=X;if(delete $.size,delete $.offset,Q.length&&Object.keys($).length===1){const ne=Object.keys($)[0],ue=Q.filter(me=>me[ne]?!!me[ne].toLowerCase().includes($[ne].toLowerCase()):!1);X.data.data=ue}return X}):l.get(z,{params:$})};n.provide(Ce.FORMS_API_KEY,{getOne:b,getAll:y}),n.provide(Ce.FORMS_CONFIG,a.config);const C=n.ref(""),T=n.ref(""),k=n.ref(null),S=n.ref({}),I=n.reactive({}),B=n.reactive({}),W=n.computed(()=>{var Y;return(Y=k.value)==null?void 0:Y.options}),M=n.ref(!1),v=n.ref(),N=(Y,$)=>{M.value=Y??"",v.value=$},E=Y=>{var $;($=v.value)==null||$.call(v,Y),M.value=!1},D=()=>{var ue,me;const Y={...a.schema},$=B,z=I,X=Object.keys($),Q={};if(!f(S.value))for(let P=0;P<((me=(ue=S.value)==null?void 0:ue.fields)==null?void 0:me.length);P++)Y[S.value.fields[P].model]=S.value.fields[P];Ce.customFields.forEach(P=>{Y[P]&&(Y[P].fields.forEach(x=>{x.fields&&x.fields.forEach(A=>{Y[A.model]=A}),x.model&&(Y[x.model]=x)}),delete Y[P])}),X.forEach(P=>{var G;if(!Y[P]){P==="partials"&&(Q[P]=$[P]);return}const x=Y[P];let A=$[P];const V=z[P],L=Array.isArray(A)?"array":typeof A,Z=x?x.valueType:null,te=x?x.valueArrayType:null,K=x?x.transform:null;if(A==null&&V==null&&!x.submitWhenNull)return;if(x){if(Z&&L!==Z)switch(Z){case"array":L==="string"&&A.length&&(A=A.split(",").map(ie=>{if(ie=ie.trim(),te==="string")return String(ie);if(te==="number")return Number(ie);if(te==="boolean"){if(typeof ie=="string")return ie.toLowerCase()==="true"||ie==="1";if(typeof ie=="number")return ie===1}return ie})),(!A||!A.length)&&(A=x.submitWhenNull?null:[]);break;case"number":A=Number(A);break;case"boolean":L==="string"&&(A=A.toLowerCase()==="true"||A==="1"),L==="number"&&(A=A===1);break;case"string":A=A==null?"":String(A);break}else Z==="array"&&(!A||!A.length?A=x.submitWhenNull?null:[]:((G=x.inputAttributes)==null?void 0:G.type)==="number"&&(A=A.map(ie=>Number(ie))));if(x.type==="array"&&x.nestedFields){const ie=le=>{Object.keys(le).forEach(se=>{le[se]&&typeof le[se]=="object"&&!Array.isArray(le[se])&&le[se]!==null?ie(le[se]):(le[se]===void 0||le[se]===null||typeof le[se]=="number"&&isNaN(le[se])||typeof le[se]=="string"&&le[se].trim().length===0)&&delete le[se]})};A&&typeof A=="object"&&ie(A)}x.type==="object-advanced"&&x.fields&&A!==null&&(Object.entries(A).length===0?A=null:Object.keys(A).forEach(ie=>{Array.isArray(A[ie])||(A[ie]=A[ie].split(","))}))}let J=c(P);if(x.fieldNameHasDashes){const[ie,...le]=J.split(".").reverse();J=[ie.replace(/_/g,"-"),...le].reverse().join(".")}if(Z==="object-expand"){let ie;[J,ie]=J.split(".");let le={};Q[J]&&(le=Q[J]),le[ie]=A,A=le}V!==void 0&&A===""&&A!==V?Q[J]=Z==="object"?{}:null:x.type==="checklist"&&A===""?Q[J]=[]:A!==""&&(Q[J]=A),Q[J]=K?K(A):Q[J],p(J,Q)});const ne=d(Q);return T.value&&Object.assign(ne,R.value),ne},O=(Y,$={})=>{u(B,$,Y,a.editing),i("model-updated",{model:B,originalModel:I,data:D()})},q=(Y,$)=>{var Q;const z={[$]:Y};typeof((Q=a.schema[$])==null?void 0:Q.modelTransformer)=="function"&&(z[$]=a.schema[$].modelTransformer(Y));const X=Object.assign({},B,z);Object.assign(B,X),i("model-updated",{model:B,originalModel:I,data:D()})},j=Y=>{i("validity-change",Y)},F=(Y,$)=>{Object.keys(Y).forEach(z=>{var me,P;let X=$?`${$}-${z}`:z,Q=a.schema[X];if(!Q){const x=$?`${$}-${z.replace(/-/g,"_")}`:z.replace(/-/g,"_");(me=a.schema[x])!=null&&me.fieldNameHasDashes&&(X=x,Q=a.schema[X]),$&&((P=a.schema[$])==null?void 0:P.keyFromObject)===z&&(X=$,Q=a.schema[X])}const ne=Y[z],ue=typeof ne;if(Q&&Q.type==="object-advanced"&&!ne){B[X]={},I[X]={};return}if(Array.isArray(ne)){B[X]=JSON.parse(JSON.stringify(ne)),I[X]=JSON.parse(JSON.stringify(ne));return}if(ue==="object"&&ne&&!ne.length)return F(ne,X);if(ue==="object"&&ne&&ne.length&&Q.type==="input"){B[X]=ne.join(", "),I[X]=ne.join(", ");return}B[X]=ne,I[X]=ne}),i("model-updated",{model:B,originalModel:I,data:D()})},R=n.shallowRef(a.record),U=Y=>{R.value=Y,i("model-updated",{model:{...B,...Y},originalModel:I,data:D()})},re=n.ref(!0),de=()=>{var Y;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}),a.record.partials&&O("redis",{partials:a.record.partials}),T.value?U(a.record):F(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const $={};for(const z in a.entityMap){const X=a.entityMap[z].id,Q=a.entityMap[z].idField,ne=Q==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(Q).replace("_","-"));Object.prototype.hasOwnProperty.call(B,ne)&&($[ne]=X)}F($)}if((Y=a.entityMap.consumer)!=null&&Y.id&&a.schema&&a.credential){const $={};Object.prototype.hasOwnProperty.call(B,"consumer")&&($.consumer=a.entityMap.consumer.id),F($)}re.value=!1};return n.watch(re,Y=>{i("loading",Y)}),n.watch(()=>a.schema,(Y,$)=>{var X,Q;if(h(Y||{},$||{}))return;const z=s(Y);Object.assign(B,z.model),S.value={fields:(Q=(X=S.value)==null?void 0:X.fields)==null?void 0:Q.map(ne=>({...ne,disabled:ne.disabled||!1}))},Object.assign(I,JSON.parse(JSON.stringify(z.model))),T.value=Yl(z.model.name,m),C.value=Ce.getSharedFormName(z.model.name),de()},{immediate:!0,deep:!0}),n.onBeforeMount(()=>{var Y,$;k.value=s(a.schema),Object.assign(B,((Y=k.value)==null?void 0:Y.model)||{}),S.value=(($=k.value)==null?void 0:$.schema)||{},de()}),(Y,$)=>{var X;const z=n.resolveComponent("KSkeleton");return n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",wV,[re.value?(n.openBlock(),n.createBlock(z,{key:0,type:"form"})):B.id&&e.editing||!e.editing?(n.openBlock(),n.createElementBlock("div",EV,[T.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(Qp[T.value]),{key:0,"form-model":B,"form-options":W.value,"form-schema":S.value,"is-editing":e.editing,model:e.record,"on-form-change":U,"on-model-updated":q,"on-validity-change":j,schema:e.rawSchema,onGlobalAction:$[0]||($[0]=(Q,ne)=>Y.$emit("globalAction",Q,ne))},n.createSlots({_:2},[e.enableVaultSecretPicker?{name:n.unref(Ce.AUTOFILL_SLOT_NAME),fn:n.withCtx(Q=>[Q.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Yo.VaultSecretPickerProvider),n.mergeProps({key:0},Q,{onOpen:N}),null,16)):n.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):C.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Ce.sharedForms)[C.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":B,"form-options":W.value,"form-schema":S.value,"is-editing":e.editing,"on-model-updated":q,"on-partial-toggled":O,"show-new-partial-modal":Q=>Y.$emit("showNewPartialModal",Q)},n.createSlots({_:2},[e.enableVaultSecretPicker?{name:n.unref(Ce.AUTOFILL_SLOT_NAME),fn:n.withCtx(Q=>[Q.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Yo.VaultSecretPickerProvider),n.mergeProps({key:0},Q,{onOpen:N}),null,16)):n.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(n.openBlock(),n.createBlock(n.unref(Ce.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:B,options:W.value,schema:S.value,onModelUpdated:q,onPartialToggled:O,onRefreshModel:D,onShowNewPartialModal:$[1]||($[1]=Q=>Y.$emit("showNewPartialModal",Q))},n.createSlots({"plugin-config-empty-state":n.withCtx(()=>[n.createElementVNode("div",kV,n.toDisplayString(n.unref(w)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(X=n.unref(At)[B.name])!=null&&X.fieldRules&&(a.config.isNewOtelSchema||B.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:n.withCtx(()=>[n.createVNode(zm,{rules:n.unref(At)[B.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:n.unref(Ce.AUTOFILL_SLOT_NAME),fn:n.withCtx(Q=>[Q.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Yo.VaultSecretPickerProvider),n.mergeProps({key:0},Q,{onOpen:N}),null,16)):n.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):n.createCommentVNode("",!0)]),n.createVNode(n.unref(Yo.VaultSecretPicker),{config:a.config,setup:M.value,onCancel:$[2]||($[2]=()=>M.value=!1),onProceed:E},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-780e65cb"]]),vV={key:1},NV=n.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(t,o)=>e.teleportTarget?(n.openBlock(),n.createBlock(n.Teleport,{key:0,to:e.teleportTarget},[n.renderSlot(t.$slots,"default")],8,["to"])):(n.openBlock(),n.createElementBlock("div",vV,[n.renderSlot(t.$slots,"default")]))}}),SV={class:"kong-ui-entities-plugin-form-container"},xV={key:0},AV={class:"plugin-form-actions"},TV=_e(n.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},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:t}){var te;const o=t,r=e,i=Zn.useRouter(),{i18n:{t:a}}=Ie.useI18n(),{customSchemas:l,typedefs:s}=Ie.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ie.usePluginHelpers(),{getMessageFromError:d}=ae.useErrors(),{capitalize:u}=ae.useStringHelpers(),{objectsAreEqual:f}=ae.useHelpers(),{axiosInstance:p}=ae.useAxios((te=r.config)==null?void 0:te.axiosRequestConfig),m=n.ref(!1),h=n.computed(()=>!!r.pluginId),w=n.computed(()=>r.pluginId?ae.EntityBaseFormType.Edit:ae.EntityBaseFormType.Create),g=n.ref(void 0),_=n.ref(void 0),b=n.computed(()=>!!(r.credential&&r.config.entityId)),y=n.ref(void 0),C=n.ref({}),T=n.ref(),k=n.ref();n.provide(Tc,{redisType:T,redisPath:k,isEditing:h.value});const S=n.ref(!1),I=n.reactive({enabled:!0,protocols:[],tags:[]}),B=n.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),W=n.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&W.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const M=n.ref(""),v=n.computed(()=>{if(b.value){let K=Oe.form[r.config.app].credential[w.value];return K=K.replace(/{resourceEndpoint}/gi,O.value),K}return r.config.entityType&&r.config.entityId?Oe.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):Oe.form[r.config.app].edit.all}),N=()=>{m.value=!m.value},E=n.computed(()=>{var se,we,be,Ne,Be,fe,ce,ot;const K=r.config.entityType==="consumers"&&r.config.entityId||((we=(se=y.value)==null?void 0:se.consumer)==null?void 0:we.id),J=r.config.entityType==="consumer_groups"&&r.config.entityId||((Ne=(be=y.value)==null?void 0:be.consumer_group)==null?void 0:Ne.id),G=r.config.entityType==="services"&&r.config.entityId||((fe=(Be=y.value)==null?void 0:Be.service)==null?void 0:fe.id),ie=r.config.entityType==="routes"&&r.config.entityId||((ot=(ce=y.value)==null?void 0:ce.route)==null?void 0:ot.id);if(!(K||J||G||ie))return{global:{entity:H.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const le={};return G&&(le.service={entity:H.PluginScope.SERVICE,entityEndpoint:"services",id:G,idField:Wt.SERVICE}),ie&&(le.route={entity:H.PluginScope.ROUTE,entityEndpoint:"routes",id:ie,idField:Wt.ROUTE}),K&&(le.consumer={entity:H.PluginScope.CONSUMER,entityEndpoint:"consumers",id:K,idField:Wt.CONSUMER}),J&&(le.consumer_group={entity:H.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:J,idField:Wt.CONSUMER_GROUP}),r.config.entityType&&(le.focusedEntity={entity:H.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:Wt[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),le}),D=n.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||w.value===ae.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:a("plugins.form.scoping.global.label"),description:a("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:a("plugins.form.fields.protocols.help"),label:a("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:a("plugins.form.fields.instance_name.label"),inputType:"text",help:a("plugins.form.fields.instance_name.help")},tags:s.tags}),O=n.computed(()=>{var G;const K=r.developer?"developers":"consumers",J=((G=Nn[r.pluginType])==null?void 0:G.endpoint)||"/plugins";return`${K}/${r.config.entityId}${r.developer?"/credentials":""}${J}`}),q=K=>{const J=Array.from(new Set(K.map(G=>typeof G)));return J.length>1?"string":J[0]},j=(K,J,G,ie)=>{var be,Ne;let le=J&&J.fields||[];const se=l[r.pluginType],we=(Ne=(be=Nn[r.pluginType])==null?void 0:be.schema)==null?void 0:Ne.fields;return Array.isArray(le)&&(le=le.reduce((Be,fe)=>{const ce=Object.keys(fe)[0];return ce.match(/-/g)?Be[ce.replace(/-/g,"_")]={...fe[ce],fieldNameHasDashes:!0}:Be[ce]=fe[ce],Be},{})),Object.keys(le).sort().forEach(Be=>{var Lo,Uo,Ko,Go,jo,qo,zo;const fe=le[Be];fe.type==="set"&&(fe.type="array");const ce=K?`${K}-${Be}`:`${Be}`;if((Lo=se==null?void 0:se.fieldsToDelete)!=null&&Lo.includes(ce)){sc(G,ce);return}if(Object.prototype.hasOwnProperty.call(fe,"overwrite")||fe.hidden)return;if(fe.type==="table")return j(ce,fe.schema,G);if(fe.fields)return ie&&fe.type==="record"?(G[ce]={type:"object",model:Be,schema:{fields:Object.values(j(ce,fe,{},!0))}},G):j(ce,fe,G);if(G[ce]={id:ce,model:Be},G[ce].type=fe.type==="boolean"?"checkbox":"input",G[ce].required=fe.required,G[ce].referenceable=fe.referenceable,ce.startsWith("config-"))if(!ie&&fe.type==="array"&&(M.value=ce),ie&&M.value&&ce.startsWith(M.value)){const ke=ce.slice(M.value.length+1);G[ce].label=ke.split("-").map(c).join(".")}else G[ce].label=c(ce);if((K==="config"||K.startsWith("config-"))&&(Uo=le[Be])!=null&&Uo.description&&(G[ce].help=Ho.marked.parse(le[Be].description,{mangle:!1,headerIds:!1})),fe.type==="map"){if(G[ce].type="object-advanced",G[ce].values=fe.values,fe.values.type==="array"){const{type:ke}=fe.values.elements||{};G[ce].schema={fields:[{schema:{fields:[{...Ae,model:ce,valueArrayType:ke==="integer"?"number":ke||"string",inputAttributes:{...Ae.inputAttributes,type:ke==="integer"?"number":"text",inputMode:ke==="integer"?"numeric":"text"}}]}}]}}else fe.values.fields&&(G[ce].schema={fields:[{type:"object",model:"object",schema:{fields:fe.values.fields.map(ke=>{const Ye=Object.keys(ke)[0];return{model:Ye,type:"input",label:u(Ye),placeholder:Ye,inputType:ke[Ye].type}})}}]});return G}if(fe.enum&&fe.type==="array"&&(G[ce].type="checklist",G[ce].values=fe.enum,G[ce].multi=!0,G[ce].multiSelect=!0),fe.one_of&&fe.type!=="array"&&(G[ce].type="select",G[ce].values=fe.one_of,G[ce].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),fe.elements&&fe.type==="array"){const ke=fe.elements;if(G[ce].referenceable=ke.referenceable,G[ce].elements=ke,["string","integer","number"].includes(ke.type)&&!ke.one_of){const{id:Ye,help:Fe,label:ve,hint:Ze,values:it,referenceable:kn,model:Cn}=G[ce],{inputAttributes:Ei,...CR}=JSON.parse(JSON.stringify(Ae));Ei.type=ke.type==="string"?"text":"number",G[ce]={id:Ye,help:Fe,label:ve,hint:Ze,values:it,referenceable:kn,model:Cn,inputAttributes:Ei,...CR}}}if(fe.hint&&(G[ce].hint=fe.hint),se&&!se.overwriteDefault&&Object.keys(se).forEach(ke=>{if(ke===ce){const{help:Ye,label:Fe,hint:ve,values:Ze,referenceable:it,elements:kn}=G[ce],{help:Cn,...Ei}=se[ke];G[ce]={help:Ye,label:Fe,hint:ve,values:Ze,referenceable:it,elements:kn,...Ei},typeof Cn=="string"&&(G[ce].help=Ho.marked.parse(Cn,{mangle:!1,headerIds:!1}))}}),fe.type==="array"&&((Ko=fe.elements)==null?void 0:Ko.type)==="record"&&Array.isArray(fe.elements.fields)){let ke={};for(const Fe of fe.elements.fields)ke={...ke,...Fe};const Ye=(qo=(jo=(Go=G[ce])==null?void 0:Go.items)==null?void 0:jo.schema)==null?void 0:qo.fields;if(Array.isArray(Ye))for(const Fe of G[ce].items.schema.fields){const ve=(zo=ke[Fe.model])==null?void 0:zo.description;Fe.help===void 0&&typeof ve=="string"&&(Fe.help=Ho.marked.parse(ve,{mangle:!1,headerIds:!1}))}if(Ye||(G[ce].type="array",G[ce].newElementButtonLabelClasses="kong-form-new-element-button-label",G[ce].fieldClasses="array-card-container-wrapper",G[ce].itemContainerComponent="FieldArrayCardContainer",G[ce].items={type:"object",schema:{fields:Object.values(j(ce,fe.elements,{},!0))}},G[ce].items.schema.fields.forEach(Fe=>{var ve,Ze;for(const it of fe.elements.fields){const kn=Object.keys(it)[0],Cn=((Ze=(ve=Fe.id)==null?void 0:ve.split)==null?void 0:Ze.call(ve,"-"))??[];if(Cn[Cn.length-1]===kn){Fe.model=kn,Fe.label=c(kn);break}}}),fe.elements.type==="record"&&(G[ce].nestedFields=!0)),!G[ce].nestedFields)G[ce].items.default=()=>fe.elements.fields.reduce((Fe,ve)=>{const Ze=Object.keys(ve)[0];return Fe[Ze]=ve[Ze].default,Fe},{});else{const Fe=(ve,Ze)=>{if(ve.type==="object"){ve.model&&(Ze[ve.model]={});for(const it of ve.schema.fields)Fe(it,ve.model?Ze[ve.model]:Ze)}else ve.model&&(Ze[ve.model]=ve.default)};G[ce].items.default=()=>{const ve={};return Fe(G[ce].items,ve),ve}}}if(b.value&&we){for(let ke=0;ke<we.length;ke++)if(we[ke][ce]){G[ce]={...G[ce],...we[ke][ce]};break}}if(fe.required&&fe.type!=="boolean"&&(G[ce].required=!0,G[ce].selectOptions={hideNoneSelectedText:!0}),fe.required&&fe.type==="boolean"&&(G[ce].default=fe.default??!1),fe.default!=null&&typeof fe.default!="object"&&fe.default!=="function"&&(G[ce].default=fe.default),G[ce].type==="input"){["string","number"].includes(typeof G[ce].default)&&r.config.app==="konnect"&&(G[ce].placeholder=`Default: ${G[ce].default===""?"<empty string>":G[ce].default}`);const{type:ke}=fe.elements||{};ke&&(G[ce].valueArrayType=ke==="integer"?"number":ke),G[ce].inputType=fe.type==="array"||fe.type==="string"?fe.encrypted?"password":"text":fe.type}let ot="string";fe.enum?ot=q(fe.enum):fe.type==="boolean"?ot="boolean":fe.type==="number"||fe.type==="integer"?(ot="number",G[ce].inputType="number"):fe.type==="array"?(ot="array",G[ce].default=fe.default,fe.len_min>0&&(G[ce].submitWhenNull=!0)):fe.type==="foreign"?ot="object":fe.default&&Array.isArray(fe.default)?(ot="array",G[ce].valueArrayType=q(fe.default)):fe.default&&(ot=typeof fe.default),G[ce].valueType=ot,fe.fieldNameHasDashes&&(G[ce].fieldNameHasDashes=!0)}),G},F=()=>{var Be,fe,ce,ot,Lo,Uo,Ko,Go,jo,qo,zo,ke;const K=((Be=At[r.pluginType])==null?void 0:Be.scope.includes(H.PluginScope.SERVICE))??!0,J=((fe=At[r.pluginType])==null?void 0:fe.scope.includes(H.PluginScope.ROUTE))??!0,G=((ce=At[r.pluginType])==null?void 0:ce.scope.includes(H.PluginScope.CONSUMER))??!0,ie=r.config.disableConsumerGroupScope?!1:((ot=At[r.pluginType])==null?void 0:ot.scope.includes(H.PluginScope.CONSUMER_GROUP))??!0,le=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Uo=(Lo=y.value)==null?void 0:Lo.consumer)!=null&&Uo.id),se=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((Go=(Ko=y.value)==null?void 0:Ko.consumer_group)!=null&&Go.id),we=r.config.entityType==="services"&&!!r.config.entityId||!!((qo=(jo=y.value)==null?void 0:jo.service)!=null&&qo.id),be=r.config.entityType==="routes"&&!!r.config.entityId||!!((ke=(zo=y.value)==null?void 0:zo.route)!=null&&ke.id),Ne=[];if(K&&Ne.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.gateway_service.placeholder"),type:"AutoSuggest",entity:"services",inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:we&&r.disableScopeSelection}),J&&Ne.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.route.placeholder"),type:"AutoSuggest",entity:"routes",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:be&&r.disableScopeSelection}),G&&Ne.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.consumer.placeholder"),type:"AutoSuggest",entity:"consumers",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:le&&r.disableScopeSelection}),ie&&Ne.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.consumer_group.placeholder"),type:"AutoSuggest",entity:"consumer_groups",entityDataKey:"consumer_group",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:se&&r.disableScopeSelection}),Ne.length){const Ye=[...K?["service"]:[],...J?["route"]:[],...G?["consumer"]:[],...ie?["consumer_group"]:[]],ve=Ye.splice(Ye.length-2,2).map(it=>a(it==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${it}.plural`)).join(`${Ye.length>0?",":""} and/or `),Ze=["Specific",[...Ye.length>0?[Ye.map(it=>a(it==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${it}.plural`)).join(", ")]:[],ve].join(", ")].join(" ");D.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Ze,fields:[]}),D.selectionGroup.fields[1].fields=Ne}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(D,l[r.pluginType].formSchema)},R=n.computed(()=>!f(B.fields,I,!0)),U=n.computed(()=>!L.value&&!S.value&&(w.value===ae.EntityBaseFormType.Create||R.value)),re=n.ref(!1),de=n.ref(),ee=K=>{r.credential&&K.password&&(K.password=""),B.fields.id=(K==null?void 0:K.id)||void 0,de.value=K==null?void 0:K.ordering,Object.assign(I,B.fields),y.value=K,re.value=!0},oe=n.ref({}),Y=K=>{var J;B.fields=K.model,B.fields.id=((J=y.value)==null?void 0:J.id)||void 0,Object.assign(I,K.originalModel),oe.value=K.data,r.isWizardStep&&o("model-updated",{model:B.fields,data:K.data,resourceEndpoint:O.value})},$=n.ref(new Map),z=n.computed(()=>[B.clientErrorMessage,B.serverErrorMessage].filter(Boolean).join("; ")),X=K=>{K.valid?$.value.delete(K.model):$.value.set(K.model,K.error),B.clientErrorMessage=[...$.value.entries()].map(([J,G])=>`${J}: ${typeof G=="string"?G:d(G)}`).join("; "),B.clientErrorMessage&&(B.serverErrorMessage="")};n.watch([E,re],(K,J)=>{const G=K[0]!==J[0],ie=K[1],le=J[1];if(!b.value&&w.value===ae.EntityBaseFormType.Edit&&(G||ie&&ie!==le)){const se=j("config",C.value,D);me.value&&(se._isCustomPlugin=!0),T.value&&(se._supported_redis_partial_type=T.value),_.value=se}},{deep:!0});const Q=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},ne=n.computed(()=>{let K=`${r.config.apiBaseUrl}${Oe.form[r.config.app].validate}`;return r.config.app==="konnect"?K=K.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),K=K.replace(/{id}/gi,r.pluginId),K}),ue=n.computed(()=>{const K=r.config.entityType&&r.config.entityId&&!r.developer,J=b.value?Oe.form[r.config.app].credential[w.value]:Oe.form[r.config.app][w.value][K?"forEntity":"all"];let G=`${r.config.apiBaseUrl}${J}`;return r.config.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),G=G.replace(/{resourceEndpoint}/gi,O.value),G=G.replace(/{id}/gi,r.pluginId),G=G.replace(/{entityType}/gi,r.config.entityType||""),G=G.replace(/{entityId}/gi,r.config.entityId||""),G}),me=n.computed(()=>!Object.keys(At).includes(r.pluginType)),P=n.computed(()=>{const K=oe.value;if(b.value){for(const J in H.PluginScope){const G=H.PluginScope[J];K[G]&&!K[G].id&&(K[G]={id:r.config.entityId})}delete K.created_at}return oe.value.partials&&k.value&&sc(K,k.value),K}),x=async()=>{if(!B.clientErrorMessage&&!r.isWizardStep)try{B.isReadonly=!0;let K;const J=JSON.parse(JSON.stringify(P.value)),G=l[r.pluginType];typeof(G==null?void 0:G.shamefullyTransformPayload)=="function"&&G.shamefullyTransformPayload({originalModel:I,model:B.fields,payload:J,schema:_.value}),!b.value&&!me.value&&await p.post(ne.value,J),w.value==="create"?K=await p.post(ue.value,J):w.value==="edit"&&(K=r.config.app==="konnect"||T.value&&J.partials?await p.put(ue.value,Object.assign({ordering:de.value},J)):await p.patch(ue.value,J)),Object.assign(I,B.fields),o("update",K==null?void 0:K.data)}catch(K){B.serverErrorMessage=d(K),o("error",K)}finally{B.isReadonly=!1}},A=n.computed(()=>{var ie;const K=b.value?(ie=Nn[r.pluginType])==null?void 0:ie.schemaEndpoint:r.pluginType,J=b.value?Oe.form[r.config.app].credentialSchema:Oe.form[r.config.app].pluginSchema;let G=`${r.config.apiBaseUrl}${J}`;return r.config.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),G=G.replace(/{plugin}/gi,K),G}),V=n.ref(""),L=n.ref(!1),Z=n.ref("");return n.onBeforeMount(async()=>{var K,J,G,ie;L.value=!0;try{if(b.value&&r.config.app==="konnect"){const le=(K=Nn[r.pluginType])==null?void 0:K.schemaEndpoint,se=gm[le];V.value=le,_.value=j("",se,{}),L.value=!1}else{const le=r.schema??(await p.get(A.value)).data;if(g.value=le,le)if(b.value)_.value=j("",le,{}),L.value=!1;else{const se=le.fields.find(be=>be.config);C.value=se?se.config:le,le.supported_partials&&(T.value=Object.keys(le.supported_partials).find(be=>[Xo.REDIS_CE,Xo.REDIS_EE].includes(be)),k.value=(J=le.supported_partials[T.value])==null?void 0:J[0]),F();const we=(G=le.fields.find(be=>be.protocols))==null?void 0:G.protocols;if(we){const{default:be=[],elements:Ne={}}=we;D.protocols.default=be,D.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:be.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(ie=Ne.one_of)!=null&&ie.length&&(D.protocols.values=Ne.one_of.map(Be=>({label:Be,value:Be})))}if(re.value||w.value===ae.EntityBaseFormType.Create){const be=j("config",C.value,D);T.value&&(be._supported_redis_partial_type=T.value),me.value&&(be._isCustomPlugin=!0),_.value=be}}}}catch(le){console.error(le),Z.value=d(le),o("error:fetch-schema",le)}finally{L.value=!1}}),(K,J)=>{const G=n.resolveComponent("KSkeleton"),ie=n.resolveComponent("KEmptyState"),le=n.resolveComponent("KButton"),se=n.resolveComponent("KTabs"),we=n.resolveComponent("KSlideout");return n.openBlock(),n.createElementBlock("div",SV,[L.value?(n.openBlock(),n.createBlock(G,{key:0,type:"form"})):Z.value?(n.openBlock(),n.createBlock(ie,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(n.unref(a)("errors.load_schema")),1)]),_:1})):(n.openBlock(),n.createBlock(n.unref(ae.EntityBaseForm),{key:2,"can-submit":U.value,config:e.config,"edit-id":e.pluginId,"entity-type":n.unref(ae.SupportedEntityType).Plugin,"error-message":z.value,"fetch-url":v.value,"form-fields":P.value,"is-readonly":B.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:Q,"onFetch:error":J[4]||(J[4]=be=>K.$emit("error",be)),"onFetch:success":ee,onLoading:J[5]||(J[5]=be=>K.$emit("loading",be))},{"form-actions":n.withCtx(()=>[e.isWizardStep?(n.openBlock(),n.createElementBlock("div",xV)):(n.openBlock(),n.createBlock(NV,{key:1,"teleport-target":e.actionsTeleportTarget},{default:n.withCtx(()=>[n.createElementVNode("div",AV,[e.hideViewConfigAction?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(le,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:J[3]||(J[3]=be=>N())},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),n.createVNode(le,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:B.isReadonly,onClick:Q},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),n.createVNode(le,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!U.value||B.isReadonly,type:"submit",onClick:x},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:n.withCtx(()=>[n.createElementVNode("form",{hidden:"",onSubmit:x},null,32),n.createVNode(CV,{config:e.config,credential:b.value,editing:w.value===n.unref(ae.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,"entity-map":E.value,"raw-schema":g.value,record:y.value,schema:_.value,onGlobalAction:J[0]||(J[0]=(be,Ne)=>K.$emit("globalAction",be,Ne)),onLoading:J[1]||(J[1]=be=>S.value=be),onModelUpdated:Y,onShowNewPartialModal:J[2]||(J[2]=be=>K.$emit("showNewPartialModal",be)),onValidityChange:X},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),n.createVNode(we,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:n.unref(a)("view_configuration.title"),visible:m.value,onClose:N},{default:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(n.unref(a)("view_configuration.message")),1),n.createVNode(se,{"data-testid":"form-view-configuration-slideout-tabs",tabs:W.value},{json:n.withCtx(()=>[n.createVNode(n.unref(ae.JsonCodeBlock),{config:e.config,"entity-record":P.value,"fetcher-url":ue.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:n.withCtx(()=>[n.createVNode(n.unref(ae.YamlCodeBlock),{"entity-record":P.value},null,8,["entity-record"])]),terraform:n.withCtx(()=>[n.createVNode(n.unref(ae.TerraformCodeBlock),{"credential-type":V.value,"entity-record":P.value,"entity-type":n.unref(ae.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-420ab237"]]),PV={class:"kong-ui-entities-plugins-list"},IV={class:"button-row"},OV={class:"empty-state-icon-gateway"},$V={class:"name-cell-wrapper"},BV={class:"info-wrapper"},VV={key:0,class:"info-name"},RV={key:1,class:"info-name"},DV={key:2,class:"info-type"},MV={key:1},FV=_e(n.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}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:t}){var A,V;const o=Ie.usePluginMetaData(),r=t,i=e,{i18n:{t:a}}=Ie.useI18n(),l=Zn.useRouter(),{axiosInstance:s}=ae.useAxios((A=i.config)==null?void 0:A.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ae.useTableState(()=>y.value),u=n.computed(()=>c.value&&i.config.app==="konnect"),f=n.computed(()=>!!i.config.entityId),p=n.computed(()=>{var L;return((L=i.config)==null?void 0:L.entityType)==="consumers"}),m=n.computed(()=>{var L;return((L=i.config)==null?void 0:L.entityType)==="consumer_groups"}),h=i.config.app==="konnect"||ae.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),w=n.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(V=i.config)!=null&&V.entityId||(g.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),g.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(g.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),g.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const _=g,b=n.computed(()=>{var Z,te,K,J;let L=i.config.entityType?`${i.config.apiBaseUrl}${Oe.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Oe.list[i.config.app].all}`;return i.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,((Z=i.config)==null?void 0:Z.controlPlaneId)||""):i.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,(te=i.config)!=null&&te.workspace?`/${i.config.workspace}`:"")),L.replace(/{entityType}/gi,((K=i.config)==null?void 0:K.entityType)||"").replace(/{entityId}/gi,((J=i.config)==null?void 0:J.entityId)||"")}),y=n.ref(""),C=n.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:g.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...g.enabled,label:a("search.filter.field.enabled")},name:g.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:T,fetcherState:k,fetcherCacheKey:S}=ae.useFetcher(n.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),b),I=()=>{y.value=""},B=()=>{S.value++},W=n.ref(null),M=L=>{var te,K,J,G;const Z=[];return((te=L.route)!=null&&te.id||L.route_id)&&Z.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((K=L.service)!=null&&K.id||L.service_id)&&Z.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((J=L.consumer)!=null&&J.id||L.consumer_id)&&Z.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((G=L.consumer_group)!=null&&G.id||L.consumer_group_id)&&Z.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),Z.length?Z:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},v=async(L,Z)=>{var te;return L===null?!1:await((te=i.canRetrieveScopedEntity)==null?void 0:te.call(i,L,Z.id))},N=(L,Z)=>{var K,J,G,ie,le;let te=null;switch(L){case"route":te=(K=Z.route)==null?void 0:K.id;break;case"service":te=(J=Z.service)==null?void 0:J.id;break;case"consumer":te=(G=Z.consumer)==null?void 0:G.id;break;case"consumer_group":te=(ie=Z.consumer_group)==null?void 0:ie.id;break}te&&((le=i.config)!=null&&le.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(L,te))},E=n.ref(!1),D=n.ref(null),O=n.computed(()=>{const L={action:"disable",id:"",name:""};if(D.value){const{enabled:Z,id:te,name:K}=D.value;L.action=Z?"disable":"enable",L.id=te,L.name=o.getDisplayName(K)||te}return L}),q=L=>{E.value=!0,D.value=L},j=()=>{E.value=!1,D.value=null},F=async()=>{var K,J,G,ie,le,se,we,be;if(!await((K=i.canEdit)==null?void 0:K.call(i,D.value))||!D.value)return;let Z=`${i.config.apiBaseUrl}${(le=Oe.item[i.config.app])==null?void 0:le[(J=i.config)!=null&&J.entityType?"forEntity":"all"].replace(/{entityType}/gi,((G=i.config)==null?void 0:G.entityType)||"").replace(/{entityId}/gi,((ie=i.config)==null?void 0:ie.entityId)||"")}`.replace(/{id}/gi,D.value.id||"");i.config.app==="konnect"?Z=Z.replace(/{controlPlaneId}/gi,((se=i.config)==null?void 0:se.controlPlaneId)||""):i.config.app==="kongManager"&&(Z=Z.replace(/\/{workspace}/gi,(we=i.config)!=null&&we.workspace?`/${i.config.workspace}`:""));const te=!D.value.enabled;try{const{data:Ne}=((be=i.config)==null?void 0:be.app)==="konnect"?await s.put(Z,{...D.value,enabled:te},{timeout:12e4}):await s.patch(Z,{...D.value,enabled:te},{timeout:12e4});r("toggle-enabled",te,Ne),D.value.enabled=te}catch(Ne){r("error",Ne)}},R=async(L,Z)=>{const te=L.id;if(!await Z(te)){r("copy:error",{entity:L,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:L,field:"id",message:a("copy.success",{val:te})})},U=async(L,Z)=>{const te=JSON.stringify(L);if(!await Z(te)){r("copy:error",{entity:L,message:a("errors.copy")});return}r("copy:success",{entity:L,message:a("copy.success_brief")})},re=async L=>{var te;await((te=i.canRetrieve)==null?void 0:te.call(i,L))&&l.push(i.config.getViewRoute(L))},de=L=>({label:a("actions.view"),to:i.config.getViewRoute(L)}),ee=L=>({label:a("actions.edit"),to:i.config.getEditRoute(L)}),oe=L=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(L)}),Y=n.ref(void 0),$=n.ref(!1),z=n.ref(!1),X=n.ref(""),Q=ae.useDeleteUrlBuilder(i.config,b.value),ne=L=>{Y.value=L,$.value=!0},ue=()=>{$.value=!1},me=async()=>{var L,Z,te;if((L=Y.value)!=null&&L.id){z.value=!0;try{await s.delete(Q(Y.value.id)),z.value=!1,$.value=!1,S.value++,r("delete:success",Y.value)}catch(K){X.value=((te=(Z=K.response)==null?void 0:Z.data)==null?void 0:te.message)||K.message||a("errors.delete"),r("error",K)}finally{z.value=!1}}},P=()=>{l.push(i.config.createRoute)};n.watch(k,L=>{var Z,te,K;if(L.status===ae.FetcherStatus.Error){W.value={title:a("errors.general")},(K=(te=(Z=L.error)==null?void 0:Z.response)==null?void 0:te.data)!=null&&K.message&&(W.value.message=L.error.response.data.message),r("error",L.error);return}W.value=null});const x=n.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")});return n.onBeforeMount(async()=>{await i.canCreate()&&(x.value.title=a("plugins.list.empty_state.title"),x.value.ctaText=a("actions.create"))}),(L,Z)=>{const te=n.resolveComponent("KButton"),K=n.resolveComponent("KBadge"),J=n.resolveComponent("KTruncate"),G=n.resolveComponent("KInputSwitch"),ie=n.resolveComponent("KDropdownItem"),le=n.resolveComponent("KClipboardProvider");return n.openBlock(),n.createElementBlock("div",PV,[n.createVNode(n.unref(ae.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":w.value,"empty-state-options":x.value,"enable-entity-actions":"","error-message":W.value,fetcher:n.unref(T),"fetcher-cache-key":n.unref(S),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:y.value,"table-headers":n.unref(_),title:e.title,"title-tag":e.titleTag,onClearSearchInput:I,"onClick:row":Z[4]||(Z[4]=se=>re(se)),onSort:B,onState:n.unref(d)},n.createSlots({"toolbar-filter":n.withCtx(()=>[n.createVNode(n.unref(ae.EntityFilter),{modelValue:y.value,"onUpdate:modelValue":Z[0]||(Z[0]=se=>y.value=se),config:C.value},null,8,["modelValue","config"])]),"toolbar-button":n.withCtx(()=>[(n.openBlock(),n.createBlock(n.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[n.createElementVNode("div",IV,[!f.value&&u.value?(n.openBlock(),n.createBlock(te,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:Z[1]||(Z[1]=se=>L.$emit("click:learn-more"))},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.BookIcon),{decorative:""})]),_:1})):n.createCommentVNode("",!0),n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:n.withCtx(()=>[n.createVNode(te,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:n.withCtx(({row:se})=>[n.createElementVNode("div",$V,[n.createVNode(n.unref(Qn.PluginIcon),{class:"plugin-icon",name:se.name,size:24},null,8,["name"]),n.createElementVNode("div",BV,[se.instance_name?(n.openBlock(),n.createElementBlock("span",VV,n.toDisplayString(se.instance_name),1)):(n.openBlock(),n.createElementBlock("span",RV,n.toDisplayString(n.unref(o).getDisplayName(se.name)),1)),se.instance_name?(n.openBlock(),n.createElementBlock("span",DV,n.toDisplayString(n.unref(o).getDisplayName(se.name)),1)):n.createCommentVNode("",!0)])])]),appliedTo:n.withCtx(({row:se})=>[M(se).length>0?(n.openBlock(),n.createBlock(J,{key:0},{default:n.withCtx(()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(M(se),we=>(n.openBlock(),n.createBlock(n.unref(ae.PermissionsWrapper),{key:we.badgeText,"auth-function":()=>v(we.type,se),"force-show":""},{default:n.withCtx(({isAllowed:be})=>[n.createVNode(K,{class:n.normalizeClass(be||"disabled"),onClick:n.withModifiers(Ne=>be&&we.type&&N(we.type,se),["stop"])},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(we.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(n.openBlock(),n.createElementBlock("span",MV,"-"))]),enabled:n.withCtx(({row:se})=>[n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(se)&&await e.canToggle(se)),"force-show":""},{default:n.withCtx(({isAllowed:we})=>{var be,Ne;return[n.createElementVNode("div",{onClick:Z[3]||(Z[3]=n.withModifiers(()=>{},["stop"]))},[n.createVNode(G,{disabled:!we,"disabled-tooltip-text":!we&&((Ne=(be=e.config).getToggleDisabledTooltip)==null?void 0:Ne.call(be,se))||void 0,"model-value":se.enabled,onClick:n.withModifiers(Be=>we&&q(se),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:n.withCtx(({rowValue:se})=>[n.createVNode(K,{appearance:n.unref(ic)(se)?"info":"warning"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(ic)(se)?n.unref(a)("plugins.list.table_headers.ordering_badge.static"):n.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:n.withCtx(({rowValue:se})=>[n.createVNode(n.unref(ae.TableTags),{tags:se},null,8,["tags"])]),actions:n.withCtx(({row:se})=>[n.createVNode(le,null,{default:n.withCtx(({copyToClipboard:we})=>[n.createVNode(ie,{"data-testid":"action-entity-copy-id",onClick:be=>R(se,we)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),n.createVNode(le,null,{default:n.withCtx(({copyToClipboard:we})=>[n.createVNode(ie,{"data-testid":"action-entity-copy-json",onClick:be=>U(se,we)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(se)},{default:n.withCtx(()=>[n.createVNode(ie,{"data-testid":"action-entity-view","has-divider":"",item:de(se)},null,8,["item"])]),_:2},1032,["auth-function"]),n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":()=>e.canEdit(se)},{default:n.withCtx(()=>[n.createVNode(ie,{"data-testid":"action-entity-edit",item:ee(se)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&n.unref(h)?(n.openBlock(),n.createBlock(n.unref(ae.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(se)},{default:n.withCtx(()=>[oe(se)?(n.openBlock(),n.createBlock(ie,{key:0,"data-testid":"action-entity-config-dyn-order",item:oe(se)},null,8,["item"])):n.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):n.createCommentVNode("",!0),n.createVNode(n.unref(ae.PermissionsWrapper),{"auth-function":()=>e.canDelete(se)},{default:n.withCtx(()=>[n.createVNode(ie,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:we=>ne(se)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!y.value&&e.config.app==="konnect"?{name:"empty-state",fn:n.withCtx(()=>{var se;return[n.createVNode(n.unref(ae.EntityEmptyState),{"action-button-text":n.unref(a)("plugins.list.empty_state_v2.create_cta"),appearance:"secondary","can-create":()=>e.canCreate(),"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state",description:n.unref(a)("plugins.list.empty_state_v2.description"),"learn-more":e.config.app==="konnect",title:n.unref(a)("plugins.list.empty_state_v2.title"),"onClick:create":P,"onClick:learnMore":Z[2]||(Z[2]=we=>L.$emit("click:learn-more"))},n.createSlots({image:n.withCtx(()=>[n.createElementVNode("div",OV,[n.createVNode(n.unref(Ee.PlugIcon),{color:n.unref(Ow),size:n.unref(Bw)},null,8,["color","size"])])]),_:2},[(se=e.config)!=null&&se.isControlPlaneGroup?{name:"message",fn:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["action-button-text","can-create","data-testid","description","learn-more","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),n.createVNode(n.unref(ae.EntityToggleModal),{action:O.value.action,"entity-id":O.value.id,"entity-name":O.value.name,"entity-type":n.unref(a)("glossary.plugin"),"on-confirm":F,visible:E.value,onCancel:j,onProceed:j},null,8,["action","entity-id","entity-name","entity-type","visible"]),n.createVNode(n.unref(ae.EntityDeleteModal),{"action-pending":z.value,description:n.unref(a)("delete.description"),"entity-name":Y.value&&(Y.value.instance_name||Y.value.name||Y.value.id),"entity-type":n.unref(ae.EntityTypes).Plugin,error:X.value,title:n.unref(a)("delete.title"),visible:$.value,onCancel:ue,onProceed:me},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-6c66e4a5"]]),LV={class:"plugin-select-card-wrapper"},UV=["data-testid"],KV={class:"plugin-card-header"},GV={class:"plugin-card-title"},jV={key:0,class:"plugin-card-actions"},qV=["data-testid","title"],zV={key:0,class:"plugin-card-text"},HV={key:0},YV=["title"],Ol=_e(n.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:t}){const o=t,r=e,i=Zn.useRouter(),{i18n:{t:a}}=Ie.useI18n(),l=n.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=n.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=n.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},u=()=>{r.navigateOnClick?d():f()},f=()=>{o("plugin-clicked",r.plugin)},p=n.computed(()=>r.plugin.id==="custom-plugin-create"),m=n.computed(()=>r.config.app==="konnect"&&r.plugin.group===H.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},w=(_,b)=>{const y=r.config;r.config.app==="konnect"&&typeof y.getCustomEditRoute=="function"&&y.getCustomEditRoute&&i.push(y.getCustomEditRoute(_,b))},g=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;p.value&&_.createCustomRoute?i.push(_.createCustomRoute):m.value&&d()}};return(_,b)=>{const y=n.resolveComponent("KButton"),C=n.resolveComponent("KDropdownItem"),T=n.resolveComponent("KDropdownMenu"),k=n.resolveComponent("KTooltip");return n.openBlock(),n.createElementBlock("div",LV,[n.createVNode(k,{text:e.plugin.disabledMessage},{default:n.withCtx(()=>[n.createElementVNode("a",{class:n.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:b[1]||(b[1]=S=>s.value||m.value?void 0:u())},[n.createElementVNode("div",KV,[n.createElementVNode("div",GV,[n.createElementVNode("span",{class:n.normalizeClass({"non-custom-title":!m.value})},n.toDisplayString(e.plugin.name),3)]),c.value?(n.openBlock(),n.createElementBlock("div",jV,[n.createVNode(T,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:n.withCtx(()=>[n.createVNode(y,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.MoreIcon),{size:n.unref($w)},null,8,["size"])]),_:1})]),items:n.withCtx(()=>[e.canDeleteCustomPlugin?(n.openBlock(),n.createBlock(C,{key:0,"data-testid":"edit-plugin-schema",onClick:b[0]||(b[0]=n.withModifiers(S=>w(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.edit")),1)]),_:1})):n.createCommentVNode("",!0),e.canDeleteCustomPlugin?(n.openBlock(),n.createBlock(C,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:n.withModifiers(h,["stop"])},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.delete")),1)]),_:1})):n.createCommentVNode("",!0)]),_:1})])):n.createCommentVNode("",!0)]),n.createElementVNode("div",{class:n.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:n.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[n.createVNode(n.unref(Qn.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||m.value&&!p.value?(n.openBlock(),n.createElementBlock("div",zV,[m.value&&!p.value?(n.openBlock(),n.createElementBlock("p",HV,n.toDisplayString(n.unref(a)("plugins.select.custom_badge_text")),1)):n.createCommentVNode("",!0),e.plugin.description?(n.openBlock(),n.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},n.toDisplayString(e.plugin.description),9,YV)):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],10,qV),n.createElementVNode("div",{class:"plugin-card-footer",onClick:g},n.toDisplayString(p.value?n.unref(a)("actions.create_custom"):e.plugin.exists?n.unref(a)("actions.enabled"):n.unref(a)("actions.enable")),1)],10,UV)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),WV=_e(n.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:t}){var h;const o=e,r=t,{i18nT:i,i18n:{t:a}}=Ie.useI18n(),{getMessageFromError:l}=ae.useErrors(),{axiosInstance:s}=ae.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=n.computed(()=>{var w;return f.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((w=o.plugin)==null?void 0:w.name)||a("delete.custom_plugin")})}),d=n.ref(!1),u=n.ref(""),f=n.ref(!1),p=n.computed(()=>{if(o.config.app==="konnect"){const w=o.plugin.customPluginType==="streaming"?Oe.select[o.config.app].streamingCustomPluginItem:Oe.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${w}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var w,g,_,b;if(d.value=!0,u.value="",!(!((w=o.plugin)!=null&&w.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(y){const{response:C}=y;(C==null?void 0:C.status)===400&&((b=(_=C.data)==null?void 0:_.message)!=null&&b.includes("plugin schema is currently in use"))?f.value=!0:u.value=l(y)}finally{d.value=!1}};return(w,g)=>{const _=n.resolveComponent("KButton"),b=n.resolveComponent("KModal");return!f.value&&e.plugin?(n.openBlock(),n.createBlock(n.unref(ae.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:n.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":n.unref(ae.EntityTypes).Plugin,error:u.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[0]=y=>w.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(n.openBlock(),n.createBlock(b,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:g[2]||(g[2]=y=>w.$emit("closed"))},{default:n.withCtx(()=>[n.createElementVNode("div",null,[n.createVNode(n.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:n.withCtx(()=>[n.createElementVNode("strong",null,n.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":n.withCtx(()=>[n.createElementVNode("div",null,[n.createVNode(_,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[1]=y=>w.$emit("closed"))},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):n.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),XV={class:"custom-plugins-grid"},ZV={class:"empty-state-title"},JV={class:"empty-state-description"},$l=310,QV=_e(n.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:t}){const o=e,r=t,{i18n:{t:i}}=Ie.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ie.usePluginHelpers(),s=n.ref(!0),c=T=>{r("plugin-clicked",T)},d=n.computed(()=>{if(o.config.app==="kongManager")return[];const T=JSON.parse(JSON.stringify(o.pluginList))[H.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:H.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(T):T}),u=n.ref(!1),f=n.ref(null),p=T=>{u.value=!0,f.value={id:T.id,name:T.name,customPluginType:T.customPluginType}},m=T=>{var k;T&&(r("revalidate"),r("delete:success",((k=f.value)==null?void 0:k.name)||"")),u.value=!1,f.value=null},h=n.ref($l),w=n.ref(null),g=n.ref(null),_=n.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),b=n.ref(!1),y=()=>{h.value=Math.max(a(g.value),$l),C()},C=()=>{var T,k;(T=g.value)!=null&&T.length&&(b.value=l(w.value,(k=g.value)==null?void 0:k.length))};return n.onMounted(async()=>{await n.nextTick(),h.value=Math.max(a(g.value),$l),C(),window==null||window.addEventListener("resize",y)}),n.onUnmounted(()=>{window==null||window.removeEventListener("resize",y)}),(T,k)=>{const S=n.resolveComponent("KEmptyState"),I=n.resolveComponent("KCollapse");return n.openBlock(),n.createElementBlock("div",XV,[d.value.length?(n.openBlock(),n.createBlock(I,{key:1,modelValue:s.value,"onUpdate:modelValue":k[0]||(k[0]=B=>s.value=B),class:"custom-plugins-collapse","data-testid":`${n.unref(H.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:n.unref(H.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?n.unref(i)("plugins.select.view_more"):n.unref(i)("plugins.select.view_less")},n.createSlots({"visible-content":n.withCtx(()=>[n.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:w,class:"plugin-card-container",style:n.normalizeStyle(_.value)},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(d.value,(B,W)=>(n.openBlock(),n.createBlock(Ol,{key:`plugin-card-${W}`,ref_for:!0,ref_key:"pluginCardRef",ref:g,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:B,onCustomPluginDelete:M=>p(B),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[b.value?void 0:{name:"trigger",fn:n.withCtx(()=>[k[2]||(k[2]=n.createTextVNode(" "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(n.openBlock(),n.createBlock(S,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:n.withCtx(()=>[n.createElementVNode("span",ZV,n.toDisplayString(n.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:n.withCtx(()=>[n.createElementVNode("span",JV,n.toDisplayString(n.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),u.value&&f.value?(n.openBlock(),n.createBlock(WV,{key:2,config:e.config,plugin:f.value,onClosed:m,onProceed:k[1]||(k[1]=B=>m(!0))},null,8,["config","plugin"])):n.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Bl=310,em=_e(n.defineComponent({__name:"PluginSelectGroup",props:n.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:n.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:t}){const o=n.useModel(e,"modelValue"),r=e,i=t,{i18n:{t:a}}=Ie.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ie.usePluginHelpers(),c=n.ref(Bl),d=n.ref(null),u=n.ref(null),f=n.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=n.ref(!1),m=()=>{c.value=Math.max(l(u.value),Bl),h()},h=()=>{var w,g;(w=u.value)!=null&&w.length&&(p.value=s(d.value,(g=u.value)==null?void 0:g.length))};return n.onMounted(async()=>{await n.nextTick(),c.value=Math.max(l(u.value),Bl),h(),window==null||window.addEventListener("resize",m)}),n.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(w,g)=>{const _=n.resolveComponent("KCollapse");return n.openBlock(),n.createBlock(_,{modelValue:o.value,"onUpdate:modelValue":g[0]||(g[0]=b=>o.value=b),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?n.unref(a)("plugins.select.view_more"):n.unref(a)("plugins.select.view_less")},n.createSlots({"visible-content":n.withCtx(()=>[n.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:n.normalizeStyle(f.value)},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(r.plugins,b=>(n.openBlock(),n.createBlock(Ol,{key:`plugin-card-${b.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:u,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:b,onPluginClicked:y=>i("plugin-clicked",b)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:n.withCtx(()=>[g[1]||(g[1]=n.createTextVNode(" "))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),eR={class:"plugin-select-grid"},tR={class:"empty-state-title"},nR={class:"empty-state-description"},Vl=n.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:t}){const o=e,r=t,{i18n:{t:i}}=Ie.useI18n(),a=n.ref(!1),l=n.ref(Fl),s=d=>{r("plugin-clicked",d)},c=n.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[H.PluginGroup.CUSTOM_PLUGINS],d});return(d,u)=>{const f=n.resolveComponent("KEmptyState");return n.openBlock(),n.createElementBlock("div",eR,[Object.keys(c.value).length?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(f,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:n.withCtx(()=>[n.createElementVNode("span",tR,n.toDisplayString(n.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:n.withCtx(()=>[n.createElementVNode("span",nR,n.toDisplayString(n.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(n.openBlock(),n.createBlock(em,{key:1,modelValue:a.value,"onUpdate:modelValue":u[0]||(u[0]=p=>a.value=p),config:e.config,name:o.highlightedPluginsTitle||n.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:o.highlightedPlugins,onPluginClicked:u[1]||(u[1]=p=>s(p))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):n.createCommentVNode("",!0),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(Ml),p=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[c.value[p]?(n.openBlock(),n.createElementBlock("div",{key:p},[n.createVNode(em,{modelValue:l.value[p],"onUpdate:modelValue":m=>l.value[p]=m,config:e.config,name:p,"navigate-on-click":e.navigateOnClick,plugins:c.value[p]||[],onPluginClicked:u[2]||(u[2]=m=>s(m))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):n.createCommentVNode("",!0)],64))),256))])}}}),oR={class:"kong-ui-entities-plugin-select-form"},rR={class:"plugins-filter-input-container"},iR={key:0},aR={key:3,"aria-live":"polite",class:"plugins-results-container"},lR={"data-testid":"kong-tab"},sR={class:"tab-description"},cR={"data-testid":"custom-tab"},dR={class:"tab-description"},uR=_e(n.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:t}){var F;const o=e,r=t,i=Zn.useRoute(),a=Zn.useRouter(),{i18n:{t:l}}=Ie.useI18n(),{pluginMetaData:s}=Ie.usePluginMetaData(),{getMessageFromError:c}=ae.useErrors(),{sortAlpha:d,objectsAreEqual:u}=ae.useHelpers(),f=n.ref(""),p=n.ref(!0),m=n.ref(!1),h=n.ref(""),w=n.ref([]),g=n.ref([]),_=n.ref({}),b=n.ref([]),{axiosInstance:y}=ae.useAxios((F=o.config)==null?void 0:F.axiosRequestConfig),C=n.computed(()=>_.value?Object.entries(_.value).filter(([R])=>R!==H.PluginGroup.CUSTOM_PLUGINS).reduce((R,[,U])=>{for(const re of U)R[re.id]=re;return R},{}):{}),T=n.computed(()=>{var re;if(!_.value)return{};const R=f.value.toLowerCase(),U=JSON.parse(JSON.stringify(_.value));for(const de in _.value){const ee=((re=_.value[de])==null?void 0:re.filter(oe=>oe.name.toLowerCase().includes(R)||oe.id.toLowerCase().includes(R)||oe.group.toLowerCase().includes(R)))||[];ee.length?U[de]=ee:delete U[de]}return U}),k=n.computed(()=>o.highlightedPluginIds.reduce((R,U)=>{const re=C.value[U];return re&&R.push(re),R},[])),S=n.computed(()=>Object.keys(T.value).length>0),I=n.computed(()=>Object.keys(_.value).length>0&&!S.value),B=n.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),W=n.computed(()=>{var U;let R=B.value.length&&((i==null?void 0:i.hash)||((U=B.value[0])==null?void 0:U.hash))||"";return R==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(R="#kong"),R}),M=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...w.value])].filter(R=>!o.ignoredPlugins.includes(R)).filter(R=>o.config.entityType&&(o.config.entityType==="services"&&s[R]&&!s[R].scope.includes(H.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[R]&&!s[R].scope.includes(H.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[R]&&!s[R].scope.includes(H.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[R]&&!s[R].scope.includes(H.PluginScope.CONSUMER))?!1:R).reduce((R,U)=>{var Y;const re=s[U]&&s[U].name||U,de={...s[U],id:U,name:re,available:w.value.includes(U),disabledMessage:"",group:((Y=s[U])==null?void 0:Y.group)||H.PluginGroup.CUSTOM_PLUGINS};de.group===H.PluginGroup.CUSTOM_PLUGINS&&(de.customPluginType=g.value.find($=>$.name===U)?"streaming":"schema"),o.disabledPlugins&&(de.disabledMessage=o.disabledPlugins[U]);const ee=de.group||l("plugins.select.misc_plugins");let oe=R[ee];return oe||(oe=[]),oe.push(de),oe.sort(d("name")),R[ee]=oe,R},{}),v=n.computed(()=>{var U;let R=`${o.config.apiBaseUrl}${Oe.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?R=R.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(R=((U=o.config.gatewayInfo)==null?void 0:U.edition)==="community"?`${o.config.apiBaseUrl}${Oe.select[o.config.app].availablePluginsForOss}`:R.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),R}),N=n.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let R=`${o.config.apiBaseUrl}${Oe.select[o.config.app].streamingCustomPlugins}`;return R=R.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),R}return null}),E=n.computed(()=>{if(o.config.entityType&&o.config.entityId){let R=`${o.config.apiBaseUrl}${Oe.list[o.config.app].forEntity}`;return o.config.app==="konnect"?R=R.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(R=R.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),R.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),D=R=>{a.replace({hash:R,query:i.query})};n.watch(()=>o.disabledPlugins,(R,U)=>{!u(R,U)&&!p.value&&(_.value=M())}),n.watch(()=>o.ignoredPlugins,(R,U)=>{!u(R,U)&&!p.value&&(_.value=M())}),n.watch(p,R=>{r("loading",R)});const O=n.ref(!1),q=n.ref(!1),j=n.ref(!1);return n.onBeforeMount(async()=>{O.value=await o.canCreateCustomPlugin(),q.value=await o.canEditCustomPlugin(),j.value=await o.canDeleteCustomPlugin()}),n.onMounted(async()=>{try{const{data:R}=await y.get(v.value);if(o.config.app==="konnect"){const{names:U}=R;if(w.value=U||[],N.value){const{data:re}=await y.get(N.value);g.value=re.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:U}}=R;w.value=U?Object.keys(U):[]}}catch(R){m.value=!0,h.value=c(R)}if(E.value)try{const{data:{data:R}}=await y.get(E.value);if(R!=null&&R.length){const U=R.reduce((re,de)=>(de.name&&re.push(de.name),re),[]);b.value=b.value.concat(U)}}catch{}m.value||(_.value=M()),p.value=!1}),(R,U)=>{const re=n.resolveComponent("KInput"),de=n.resolveComponent("KSkeletonBox"),ee=n.resolveComponent("KSkeleton"),oe=n.resolveComponent("KEmptyState"),Y=n.resolveComponent("KTooltip"),$=n.resolveComponent("KTabs");return n.openBlock(),n.createElementBlock("div",oR,[n.createElementVNode("div",rR,[n.createVNode(re,{modelValue:f.value,"onUpdate:modelValue":U[0]||(U[0]=z=>f.value=z),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:n.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(n.openBlock(),n.createElementBlock("section",iR,[n.createVNode(de,{class:"plugins-skeleton-title",width:"10"}),n.createVNode(ee,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(n.openBlock(),n.createBlock(oe,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(h.value),1)]),_:1})):I.value&&f.value?(n.openBlock(),n.createBlock(oe,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:n.withCtx(()=>[n.createElementVNode("h5",null,n.toDisplayString(n.unref(l)("search.no_results",{filter:f.value})),1)]),_:1})):(n.openBlock(),n.createElementBlock("section",aR,[B.value.length&&e.customPluginSupport!=="none"?(n.openBlock(),n.createBlock($,{key:0,modelValue:W.value,"onUpdate:modelValue":U[5]||(U[5]=z=>W.value=z),"data-testid":"plugins-tabs",tabs:B.value,onChange:D},n.createSlots({kong:n.withCtx(()=>[n.createElementVNode("div",lR,[n.createElementVNode("p",sR,n.toDisplayString(n.unref(l)("plugins.select.tabs.kong.description")),1),n.createVNode(Vl,{config:e.config,"hide-highlighted-plugins":f.value.length>0,"highlighted-plugins":k.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":T.value,onPluginClicked:U[1]||(U[1]=z=>R.$emit("plugin-clicked",z))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:n.withCtx(()=>[n.createElementVNode("div",cR,[n.createElementVNode("p",dR,n.toDisplayString(n.unref(l)("plugins.select.tabs.custom.description")),1),n.createVNode(QV,{"can-create-custom-plugin":O.value,"can-delete-custom-plugin":j.value,"can-edit-custom-plugin":q.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":T.value,"onDelete:success":U[2]||(U[2]=z=>R.$emit("delete-custom:success",z)),onPluginClicked:U[3]||(U[3]=z=>R.$emit("plugin-clicked",z)),onRevalidate:U[4]||(U[4]=()=>_.value=M())},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:n.withCtx(()=>[n.createVNode(Y,{"max-width":"300",text:n.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(n.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(n.openBlock(),n.createBlock(Vl,{key:1,config:e.config,"hide-highlighted-plugins":f.value.length>0,"highlighted-plugins":k.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":T.value,onPluginClicked:U[6]||(U[6]=z=>R.$emit("plugin-clicked",z))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-d2065987"]]),fR={class:"kong-ui-entity-plugin-config-card"},pR={class:"name-cell-wrapper"},mR={class:"info-name"},gR={key:0},hR={key:0},yR={key:0},_R={key:0},bR={key:0},Rl="config",wR=_e(n.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:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:t}){var b;const o=t,r=e,{i18n:{t:i}}=Ie.useI18n(),a=Ie.usePluginMetaData(),{setFieldType:l}=Ie.usePluginHelpers(),{getPropValue:s}=ae.useHelpers(),c=n.computed(()=>{var y;return(y=Oe.item[r.config.app])==null?void 0:y[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"")}),d=n.computed(()=>{var T,k;const y={},C=((T=w.value)==null?void 0:T.fields)||[];for(let S=0;S<C.length;S++){const I=w.value.fields[S],B=(k=Object.keys(I))==null?void 0:k[0];l(y,B,I[B])}return{...y,instance_name:{section:ae.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ae.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ae.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ae.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ae.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ae.ConfigurationSchemaType.BadgeTag,section:ae.ConfigurationSchemaSection.Basic,order:7}}}),u=n.computed(()=>{var C,T,k;if(!((C=w.value)!=null&&C.fields))return[];const y=(T=w.value.fields)==null?void 0:T.find(S=>{var B;return((B=Object.keys(S))==null?void 0:B[0])===Rl});return((k=y==null?void 0:y[Rl])==null?void 0:k.fields)||[]}),f=n.computed(()=>{var C,T;const y={};if(!u.value)return y;for(let k=0;k<((C=u.value)==null?void 0:C.length);k++){const S=u.value[k],I=(T=Object.keys(S))==null?void 0:T[0],B=S[I];B.required&&(y[I]={order:1}),l(y,I,B)}return y}),{getMessageFromError:p}=ae.useErrors(),{axiosInstance:m}=ae.useAxios((b=r.config)==null?void 0:b.axiosRequestConfig),h=n.computed(()=>{var C,T;let y=`${r.config.apiBaseUrl}${Oe.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?y=y.replace(/{controlPlaneId}/gi,((C=r.config)==null?void 0:C.controlPlaneId)||""):r.config.app==="kongManager"&&(y=y.replace(/\/{workspace}/gi,(T=r.config)!=null&&T.workspace?`/${r.config.workspace}`:"")),y=y.replace(/{plugin}/gi,r.config.pluginType),y}),w=n.ref({});ae.useSchemaProvider(w);const g=n.ref(!1),_=n.ref("");return n.onBeforeMount(async()=>{g.value=!0;try{const{data:y}=await m.get(h.value);w.value=y}catch(y){_.value=p(y),o("error:fetch-schema",y)}finally{g.value=!1}}),(y,C)=>{const T=n.resolveComponent("KSkeleton"),k=n.resolveComponent("KEmptyState"),S=n.resolveComponent("KCopy");return n.openBlock(),n.createElementBlock("div",fR,[g.value?(n.openBlock(),n.createBlock(T,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):_.value?(n.openBlock(),n.createBlock(k,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(_.value),1)]),_:1})):(n.openBlock(),n.createBlock(n.unref(ae.EntityBaseConfigCard),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":n.unref(ae.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":Rl,"plugin-config-schema":f.value,"onFetch:error":C[0]||(C[0]=I=>y.$emit("fetch:error",I)),"onFetch:success":C[1]||(C[1]=I=>y.$emit("fetch:success",I)),onLoading:C[2]||(C[2]=I=>y.$emit("loading",I))},{name:n.withCtx(I=>[n.createElementVNode("div",pR,[n.createVNode(n.unref(Qn.PluginIcon),{class:"plugin-icon",name:n.unref(s)("rowValue",I),size:24},null,8,["name"]),n.createElementVNode("span",mR,n.toDisplayString(n.unref(a).getDisplayName(n.unref(s)("rowValue",I))),1)])]),consumer:n.withCtx(I=>[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",I).id,value:n.unref(s)("rowValue",I).id,type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",I).id,"consumer")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(S,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"consumer-copy-uuid",text:n.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",gR,"–"))]),route:n.withCtx(I=>[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",I).id,value:n.unref(s)("rowValue",I).id,type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",I).id,"route")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(S,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"route-copy-uuid",text:n.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",hR,"–"))]),service:n.withCtx(I=>[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",I).id,value:n.unref(s)("rowValue",I).id,type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",I).id,"service")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(S,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"service-copy-uuid",text:n.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",yR,"–"))]),consumer_group:n.withCtx(I=>[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",I).id,value:n.unref(s)("rowValue",I).id,type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",I).id,"consumer_group")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(S,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"consumer-group-copy-uuid",text:n.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",_R,"–"))]),partials:n.withCtx(I=>{var B,W,M,v,N,E,D,O,q;return[n.unref(s)("rowValue",I)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ae.InternalLinkItem),{key:1,item:{key:(W=(B=n.unref(s)("rowValue",I))==null?void 0:B[0])==null?void 0:W.id,value:((v=(M=n.unref(s)("rowValue",I))==null?void 0:M[0])==null?void 0:v.id)+((E=(N=n.unref(s)("rowValue",I))==null?void 0:N[0])!=null&&E.name?"/"+((O=(D=n.unref(s)("rowValue",I))==null?void 0:D[0])==null?void 0:O.name):""),type:n.unref(ae.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var j,F;return y.$emit("navigation-click",(F=(j=n.unref(s)("rowValue",I))==null?void 0:j[0])==null?void 0:F.id,"partial")}},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(S,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",I).label}),"data-testid":"partial-copy-uuid",text:(q=n.unref(s)("rowValue",I))==null?void 0:q[0].id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",bR,"–"))]}),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-c314449c"]]),{usePluginMetaData:ER,useProvideExperimentalFreeForms:kR}=Ie;Object.defineProperty(he,"PluginGroup",{enumerable:!0,get:()=>H.PluginGroup}),Object.defineProperty(he,"PluginScope",{enumerable:!0,get:()=>H.PluginScope}),Object.defineProperty(he,"PluginIcon",{enumerable:!0,get:()=>Qn.PluginIcon}),Object.defineProperty(he,"getPluginIconURL",{enumerable:!0,get:()=>Qn.getPluginIconURL}),he.EXPERIMENTAL_FREE_FORM_PROVIDER=ki,he.EntityTypeIdField=Wt,he.FEATURE_FLAGS=Wl,he.PLUGIN_GROUPS_COLLAPSE_STATUS=Fl,he.PluginConfigCard=wR,he.PluginForm=TV,he.PluginGroupArray=Ml,he.PluginList=FV,he.PluginPartialType=Xo,he.PluginSelect=uR,he.PluginSelectCard=Ol,he.PluginSelectGrid=Vl,he.pluginEndpoints=Oe,he.usePluginMetaData=ER,he.useProvideExperimentalFreeForms=kR,Object.defineProperty(he,Symbol.toStringTag,{value:"Module"})});
|