@kong-ui-public/entities-plugins 9.72.0 → 9.72.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.
@@ -1,6 +1,6 @@
1
- (function(he,t){typeof exports=="object"&&typeof module<"u"?t(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("monaco-editor"),require("@vueuse/core"),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","monaco-editor","@vueuse/core","@kong-ui-public/entities-plugins-icon"],t):(he=typeof globalThis<"u"?globalThis:he||self,t(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.monaco,he.core$1,he.entitiesPluginsIcon))})(this,function(he,t,ue,Wo,Qn,Re,q,Ne,Xo,hR,ke,Te,eo,yR,Jp,Je,to){"use strict";var mR=Object.defineProperty;var gR=(he,t,ue)=>t in he?mR(he,t,{enumerable:!0,configurable:!0,writable:!0,value:ue}):he[t]=ue;var Ke=(he,t,ue)=>gR(he,typeof t!="symbol"?t+"":t,ue);function Qp(e){const n=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(n,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return n.default=e,Object.freeze(n)}const Zo=Qp(Jp),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":{"ai-mcp":{tool_item_label:"Tool #{index}"},"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",done:"Done",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:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}},error:{invalid_connection:"Invalid connection"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can either connect all outputs from another node or select individual ones.",override:"Each input can connect to only one output, but one output can connect to many inputs."},proceed:"Yes, update"}},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2"}},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&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},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,t){typeof exports=="object"&&typeof module<"u"?t(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("monaco-editor"),require("@vueuse/core"),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","monaco-editor","@vueuse/core","@kong-ui-public/entities-plugins-icon"],t):(he=typeof globalThis<"u"?globalThis:he||self,t(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.monaco,he.core$1,he.entitiesPluginsIcon))})(this,function(he,t,ue,Wo,Qn,Re,z,Ne,Xo,hR,ke,Te,eo,yR,Jp,Je,to){"use strict";var mR=Object.defineProperty;var gR=(he,t,ue)=>t in he?mR(he,t,{enumerable:!0,configurable:!0,writable:!0,value:ue}):he[t]=ue;var Ke=(he,t,ue)=>gR(he,typeof t!="symbol"?t+"":t,ue);function Qp(e){const n=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(n,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return n.default=e,Object.freeze(n)}const Zo=Qp(Jp),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":{"ai-mcp":{tool_item_label:"Tool #{index}"},"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",done:"Done",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:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}},error:{invalid_connection:"Invalid connection"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can either connect all outputs from another node or select individual ones.",override:"Each input can connect to only one output, but one output can connect to many inputs."},proceed:"Yes, update"}},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2"}},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&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},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 ve(){const e=Re.createI18n("en-us",je);return{i18n:e,i18nT:Re.i18nTComponent(e)}}function Dl(){const{capitalize:e}=ue.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var h,y,g;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:ue.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:ue.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:ue.ConfigurationSchemaType.Text,...u[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(u[p]={type:ue.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:ue.ConfigurationSchemaType.BadgeMethod,...u[p]}:((y=m.elements)==null?void 0:y.type)==="string"?m.encrypted?u[p]={type:ue.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:ue.ConfigurationSchemaType.BadgeTag,...u[p]}:((g=m.elements)==null?void 0:g.type)==="record"&&(u[p]={type:ue.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:ue.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:ue.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const h=m.split(".");h.reduce((y,g,_)=>y[g]||(y[g]=isNaN(h[_+1])?h.length-1===_?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",h=!1)=>{const y=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(g=>{g.match(y)&&delete u[g]}):h?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const h=u[m].$el;p=h.offsetHeight>p?h.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,h;if(u&&p){const y=(h=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:h.split(" ").length;return p>y}return!0}}}var Jo=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Jo||{});const Ll=[q.PluginGroup.AUTHENTICATION,q.PluginGroup.AI,q.PluginGroup.SECURITY,q.PluginGroup.TRAFFIC_CONTROL,q.PluginGroup.SERVERLESS,q.PluginGroup.ANALYTICS_AND_MONITORING,q.PluginGroup.TRANSFORMATIONS,q.PluginGroup.LOGGING,q.PluginGroup.DEPLOYMENT,q.PluginGroup.WEBSOCKET,q.PluginGroup.CUSTOM_PLUGINS],Fl={[q.PluginGroup.AUTHENTICATION]:!1,[q.PluginGroup.AI]:!1,[q.PluginGroup.SECURITY]:!1,[q.PluginGroup.TRAFFIC_CONTROL]:!1,[q.PluginGroup.SERVERLESS]:!1,[q.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[q.PluginGroup.TRANSFORMATIONS]:!1,[q.PluginGroup.LOGGING]:!1,[q.PluginGroup.DEPLOYMENT]:!1,[q.PluginGroup.CUSTOM_PLUGINS]:!1};var Zt=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(Zt||{});const Jt=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Qt={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"},Cn={getColumnFields:Jt,tags:Qt,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(e){const n=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"},...n},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...e}}}},Ul={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Qt}]},em={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"}}]},Kl={fields:[{username:{}},{password:{inputType:"password"}},{tags:Qt}]},tm={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"}}]},nm={class:"field-wrapper"},om=t.defineComponent({__name:"KeyAuthIdentityRealms",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,{clearValidationErrors:a,value:l}=Ne.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=$e.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")},f=t.inject(Ne.FORMS_CONFIG),{axiosInstance:u}=ue.useAxios(f==null?void 0:f.axiosRequestConfig),p=()=>{if((f==null?void 0:f.app)==="konnect"){const w=/\b(us|eu|au|me|in)\b/.exec((f==null?void 0:f.apiBaseUrl)||"");if(w)return{region:w[1]}}return{}},m=t.ref(!0),h=t.ref([d]),y=async()=>{if((f==null?void 0:f.app)==="konnect")try{m.value=!0;let w=`${f==null?void 0:f.apiBaseUrl}/v1/realms`;const b=[];do{const C=await u.get(w);C&&C.data&&C.data.data&&b.push(...C.data.data.map(E=>({value:E.id,label:E.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),w=C.data.meta.next?`${f==null?void 0:f.apiBaseUrl}${C.data.meta.next}`:null}while(w);h.value=[d,...b]}catch(w){console.error("Failed to fetch Konnect realms",w)}finally{m.value=!1}},g=t.computed(()=>l.value.map(w=>w.id||"current-cp")),_=w=>{const b=w.includes("current-cp")?[{scope:"cp",id:null}]:[],C=l.value.filter(({scope:O})=>O!=="cp").map(({id:O})=>O),E=w.filter(O=>O!=="current-cp"),x=(C.length!==E.length||C.some(O=>!E.includes(O))?E.filter(O=>!C.includes(O)):E).map(O=>({...p(),scope:"realm",id:O}));l.value=[...b,...x]};return t.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),t.onMounted(()=>{y()}),n({clearValidationErrors:a}),(w,b)=>{const C=t.resolveComponent("KMultiselect");return t.openBlock(),t.createElementBlock("div",nm,[t.createVNode(C,{items:h.value,loading:m.value,"model-value":g.value,"onUpdate:modelValue":_},null,8,["items","loading","model-value"])])}}}),we=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},rm=we(om,[["__scopeId","data-v-29b128ff"]]),jl={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
3
+ will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function ve(){const e=Re.createI18n("en-us",je);return{i18n:e,i18nT:Re.i18nTComponent(e)}}function Dl(){const{capitalize:e}=ue.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var h,y,g;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:ue.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:ue.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:ue.ConfigurationSchemaType.Text,...u[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(u[p]={type:ue.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:ue.ConfigurationSchemaType.BadgeMethod,...u[p]}:((y=m.elements)==null?void 0:y.type)==="string"?m.encrypted?u[p]={type:ue.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:ue.ConfigurationSchemaType.BadgeTag,...u[p]}:((g=m.elements)==null?void 0:g.type)==="record"&&(u[p]={type:ue.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:ue.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:ue.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const h=m.split(".");h.reduce((y,g,_)=>y[g]||(y[g]=isNaN(h[_+1])?h.length-1===_?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",h=!1)=>{const y=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(g=>{g.match(y)&&delete u[g]}):h?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const h=u[m].$el;p=h.offsetHeight>p?h.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,h;if(u&&p){const y=(h=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:h.split(" ").length;return p>y}return!0}}}var Jo=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Jo||{});const Fl=[z.PluginGroup.AUTHENTICATION,z.PluginGroup.AI,z.PluginGroup.SECURITY,z.PluginGroup.TRAFFIC_CONTROL,z.PluginGroup.SERVERLESS,z.PluginGroup.ANALYTICS_AND_MONITORING,z.PluginGroup.TRANSFORMATIONS,z.PluginGroup.LOGGING,z.PluginGroup.DEPLOYMENT,z.PluginGroup.WEBSOCKET,z.PluginGroup.CUSTOM_PLUGINS],Ll={[z.PluginGroup.AUTHENTICATION]:!1,[z.PluginGroup.AI]:!1,[z.PluginGroup.SECURITY]:!1,[z.PluginGroup.TRAFFIC_CONTROL]:!1,[z.PluginGroup.SERVERLESS]:!1,[z.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[z.PluginGroup.TRANSFORMATIONS]:!1,[z.PluginGroup.LOGGING]:!1,[z.PluginGroup.DEPLOYMENT]:!1,[z.PluginGroup.CUSTOM_PLUGINS]:!1};var Zt=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(Zt||{});const Jt=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Qt={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"},Cn={getColumnFields:Jt,tags:Qt,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(e){const n=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"},...n},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...e}}}},Ul={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Qt}]},em={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"}}]},Kl={fields:[{username:{}},{password:{inputType:"password"}},{tags:Qt}]},tm={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"}}]},nm={class:"field-wrapper"},om=t.defineComponent({__name:"KeyAuthIdentityRealms",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,{clearValidationErrors:a,value:l}=Ne.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=$e.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")},f=t.inject(Ne.FORMS_CONFIG),{axiosInstance:u}=ue.useAxios(f==null?void 0:f.axiosRequestConfig),p=()=>{if((f==null?void 0:f.app)==="konnect"){const w=/\b(us|eu|au|me|in)\b/.exec((f==null?void 0:f.apiBaseUrl)||"");if(w)return{region:w[1]}}return{}},m=t.ref(!0),h=t.ref([d]),y=async()=>{if((f==null?void 0:f.app)==="konnect")try{m.value=!0;let w=`${f==null?void 0:f.apiBaseUrl}/v1/realms`;const b=[];do{const C=await u.get(w);C&&C.data&&C.data.data&&b.push(...C.data.data.map(E=>({value:E.id,label:E.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),w=C.data.meta.next?`${f==null?void 0:f.apiBaseUrl}${C.data.meta.next}`:null}while(w);h.value=[d,...b]}catch(w){console.error("Failed to fetch Konnect realms",w)}finally{m.value=!1}},g=t.computed(()=>l.value.map(w=>w.id||"current-cp")),_=w=>{const b=w.includes("current-cp")?[{scope:"cp",id:null}]:[],C=l.value.filter(({scope:$})=>$!=="cp").map(({id:$})=>$),E=w.filter($=>$!=="current-cp"),x=(C.length!==E.length||C.some($=>!E.includes($))?E.filter($=>!C.includes($)):E).map($=>({...p(),scope:"realm",id:$}));l.value=[...b,...x]};return t.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),t.onMounted(()=>{y()}),n({clearValidationErrors:a}),(w,b)=>{const C=t.resolveComponent("KMultiselect");return t.openBlock(),t.createElementBlock("div",nm,[t.createVNode(C,{items:h.value,loading:m.value,"model-value":g.value,"onUpdate:modelValue":_},null,8,["items","loading","model-value"])])}}}),we=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},rm=we(om,[["__scopeId","data-v-29b128ff"]]),jl={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
4
4
  client. If missing, it will be generated for you.`}},{tags:Qt},{ttl:{help:"Time-to-live value for data"}}]},im=e=>{var n;return(e==null?void 0:e.app)==="kongManager"?{fieldsToDelete:["config-identity_realms"],shamefullyTransformPayload:({payload:o})=>{(e!=null&&e.credential&&typeof o.ttl!="number"||Number.isNaN(o.ttl))&&(o.ttl=0)}}:{"config-identity_realms":{component:((n=e==null?void 0:e.experimentalRenders)==null?void 0:n.keyAuthIdentityRealms)??!1?t.markRaw(rm):null}}},am={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"}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},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
6
  send it as part of the response body.`}},{tags:Qt}]},lm={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"}}]},sm={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
@@ -10,13 +10,13 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
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
11
  it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:Cn.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
12
12
  authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:Cn.tags}]},dm={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"]}}]},zl={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:Qt},{ttl:{help:"Time-to-live value for data"}}]},um=e=>(e==null?void 0:e.app)==="kongManager"?{shamefullyTransformPayload:({payload:n})=>{(e!=null&&e.credential&&typeof n.ttl!="number"||Number.isNaN(n.ttl))&&(n.ttl=0)}}:{},fm={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."}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},It={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",isEnterprise:!1,nameKey:"plugins.meta.jwt.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",...q.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",...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",isEnterprise:!1,nameKey:"plugins.meta.cors.name",...q.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"]]},...q.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",isEnterprise:!0,nameKey:"plugins.meta.opa.name",...q.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",...q.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"]]},...q.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"]]},...q.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"]]},...q.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"]]]},...q.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",...q.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",...q.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",...q.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",...q.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"]]},...q.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",...q.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"]]},...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",...q.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",...q.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,...q.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,...q.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,...q.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,...q.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,...q.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,...q.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,...q.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,...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",isEnterprise:!0,nameKey:"plugins.meta.post-function.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",isEnterprise:!1,nameKey:"plugins.meta.datadog.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",isEnterprise:!0,nameKey:"plugins.meta.collector.name",...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",...q.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"]]},...q.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",...q.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"]]},...q.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",isEnterprise:!1,nameKey:"plugins.meta.file-log.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",isEnterprise:!1,nameKey:"plugins.meta.http-log.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",isEnterprise:!1,nameKey:"plugins.meta.loggly.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",isEnterprise:!1,nameKey:"plugins.meta.statsd.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",isEnterprise:!1,nameKey:"plugins.meta.syslog.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",isEnterprise:!1,nameKey:"plugins.meta.session.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",isEnterprise:!1,nameKey:"plugins.meta.acme.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",...q.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"]]},...q.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",...q.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"]]},...q.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",...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",isEnterprise:!0,nameKey:"plugins.meta.saml.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",...q.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",...q.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",...q.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,...q.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,...q.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,...q.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"]]]},...q.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",isEnterprise:!0,nameKey:"plugins.meta.confluent.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",isEnterprise:!1,nameKey:"plugins.meta.redirect.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",isEnterprise:!1,nameKey:"plugins.meta.kafka-consume.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",isEnterprise:!1,nameKey:"plugins.meta.confluent-consume.name",...q.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",isEnterprise:!1,nameKey:"plugins.meta.request-callout.name",...q.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,...q.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,...q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",isEnterprise:!1,nameKey:"plugins.meta.datakit.name",...q.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,...q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",isEnterprise:!1,nameKey:"plugins.meta.solace-upstream.name",...q.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,...q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]}},Nn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ul,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Jt(Ul),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Kl,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Jt(Kl)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:jl,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Jt(jl)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:zl,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Jt(zl)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:ql,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Jt(ql)},"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:Jt(Gl)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:sm,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},pm={acls:em,basicauth_credentials:tm,keyauth_credentials:am,keyauth_enc_credentials:fm,oauth2_credentials:dm,hmacauth_credentials:lm,jwt_secrets:cm},mm=()=>{const{i18n:{t:e}}=ve(),n={},o={};for(const[i,a]of Object.entries(It))n[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:n,credentialMetaData:o,credentialSchemas:Nn,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},no={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},gm={"config-prompts-prepend":{...no,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":{...no,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"}]}}}},hm={"config-templates":{...no,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"}]}}}},ym={shamefullyTransformPayload:({originalModel:e,model:n,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&n[l]?!0:e[l]===n[l]?!1:e[l]===null?n[l]!==""&&!Number.isNaN(n[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)}},_m={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},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:Cn.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"}},Pe={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"},Qo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},wm={"config-metrics":{...Qo,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"]}},Em={"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}},Nm={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},vm={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Hl=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:Cn.fields.arrayItems({newElementButtonLabel:"Add"})}),vm),er={"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,n)=>({...e,[n]:Cn.fields.arrayItems({newElementButtonLabel:"Add"})}),Sm),Yl={"config-add-json":{...Pe,label:"Config.Add.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Pe,label:"Config.Append.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Pe,label:"Config.Remove.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Pe,label:"Config.Rename.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Pe,label:"Config.Replace.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}}},Am={...Yl,"config-allow-json":{...Pe,label:"Config.Allow.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Pe,label:"Config.Transform.Functions",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Pe,label:"Config.Transform.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}}},Im={"config-rules":{...no,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"}]}}}},Tm={"config-session_redis_cluster_nodes":{...no,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"}]}}}},Pm={"config-metrics":{...Qo,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":{...Qo,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"}};var Wl=typeof global=="object"&&global&&global.Object===Object&&global,Vm=typeof self=="object"&&self&&self.Object===Object&&self,bt=Wl||Vm||Function("return this")(),lt=bt.Symbol,Xl=Object.prototype,Rm=Xl.hasOwnProperty,Mm=Xl.toString,oo=lt?lt.toStringTag:void 0;function Dm(e){var n=Rm.call(e,oo),o=e[oo];try{e[oo]=void 0;var r=!0}catch{}var i=Mm.call(e);return r&&(n?e[oo]=o:delete e[oo]),i}var Lm=Object.prototype,Fm=Lm.toString;function Um(e){return Fm.call(e)}var Km="[object Null]",jm="[object Undefined]",Zl=lt?lt.toStringTag:void 0;function en(e){return e==null?e===void 0?jm:Km:Zl&&Zl in Object(e)?Dm(e):Um(e)}function Tt(e){return e!=null&&typeof e=="object"}var Gm="[object Symbol]";function Ei(e){return typeof e=="symbol"||Tt(e)&&en(e)==Gm}function Jl(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var ft=Array.isArray,Ql=lt?lt.prototype:void 0,es=Ql?Ql.toString:void 0;function ts(e){if(typeof e=="string")return e;if(ft(e))return Jl(e,ts)+"";if(Ei(e))return es?es.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function tn(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function qm(e){return e}var zm="[object AsyncFunction]",Hm="[object Function]",Ym="[object GeneratorFunction]",Wm="[object Proxy]";function tr(e){if(!tn(e))return!1;var n=en(e);return n==Hm||n==Ym||n==zm||n==Wm}var Ci=bt["__core-js_shared__"],ns=function(){var e=/[^.]+$/.exec(Ci&&Ci.keys&&Ci.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Xm(e){return!!ns&&ns in e}var Zm=Function.prototype,Jm=Zm.toString;function nn(e){if(e!=null){try{return Jm.call(e)}catch{}try{return e+""}catch{}}return""}var Qm=/[\\^$.*+?()[\]{}|]/g,eg=/^\[object .+?Constructor\]$/,tg=Function.prototype,ng=Object.prototype,og=tg.toString,rg=ng.hasOwnProperty,ig=RegExp("^"+og.call(rg).replace(Qm,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function ag(e){if(!tn(e)||Xm(e))return!1;var n=tr(e)?ig:eg;return n.test(nn(e))}function lg(e,n){return e==null?void 0:e[n]}function on(e,n){var o=lg(e,n);return ag(o)?o:void 0}var Ni=on(bt,"WeakMap"),os=Object.create,sg=function(){function e(){}return function(n){if(!tn(n))return{};if(os)return os(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function cg(e,n,o){switch(o.length){case 0:return e.call(n);case 1:return e.call(n,o[0]);case 2:return e.call(n,o[0],o[1]);case 3:return e.call(n,o[0],o[1],o[2])}return e.apply(n,o)}function dg(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var ug=800,fg=16,pg=Date.now;function mg(e){var n=0,o=0;return function(){var r=pg(),i=fg-(r-o);if(o=r,i>0){if(++n>=ug)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function gg(e){return function(){return e}}var nr=function(){try{var e=on(Object,"defineProperty");return e({},"",{}),e}catch{}}(),hg=nr?function(e,n){return nr(e,"toString",{configurable:!0,enumerable:!1,value:gg(n),writable:!0})}:qm,yg=mg(hg);function _g(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var bg=9007199254740991,wg=/^(?:0|[1-9]\d*)$/;function vi(e,n){var o=typeof e;return n=n??bg,!!n&&(o=="number"||o!="symbol"&&wg.test(e))&&e>-1&&e%1==0&&e<n}function rs(e,n,o){n=="__proto__"&&nr?nr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function Si(e,n){return e===n||e!==e&&n!==n}var kg=Object.prototype,Eg=kg.hasOwnProperty;function xi(e,n,o){var r=e[n];(!(Eg.call(e,n)&&Si(r,o))||o===void 0&&!(n in e))&&rs(e,n,o)}function ro(e,n,o,r){var i=!o;o||(o={});for(var a=-1,l=n.length;++a<l;){var s=n[a],c=void 0;c===void 0&&(c=e[s]),i?rs(o,s,c):xi(o,s,c)}return o}var is=Math.max;function Cg(e,n,o){return n=is(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=is(r.length-n,0),l=Array(a);++i<a;)l[i]=r[n+i];i=-1;for(var s=Array(n+1);++i<n;)s[i]=r[i];return s[n]=o(l),cg(e,this,s)}}var Ng=9007199254740991;function Ai(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Ng}function Ii(e){return e!=null&&Ai(e.length)&&!tr(e)}var vg=Object.prototype;function or(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||vg;return e===o}function Sg(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var xg="[object Arguments]";function as(e){return Tt(e)&&en(e)==xg}var ls=Object.prototype,Ag=ls.hasOwnProperty,Ig=ls.propertyIsEnumerable,rr=as(function(){return arguments}())?as:function(e){return Tt(e)&&Ag.call(e,"callee")&&!Ig.call(e,"callee")};function Tg(){return!1}var ss=typeof he=="object"&&he&&!he.nodeType&&he,cs=ss&&typeof module=="object"&&module&&!module.nodeType&&module,Pg=cs&&cs.exports===ss,ds=Pg?bt.Buffer:void 0,Og=ds?ds.isBuffer:void 0,io=Og||Tg,$g="[object Arguments]",Bg="[object Array]",Vg="[object Boolean]",Rg="[object Date]",Mg="[object Error]",Dg="[object Function]",Lg="[object Map]",Fg="[object Number]",Ug="[object Object]",Kg="[object RegExp]",jg="[object Set]",Gg="[object String]",qg="[object WeakMap]",zg="[object ArrayBuffer]",Hg="[object DataView]",Yg="[object Float32Array]",Wg="[object Float64Array]",Xg="[object Int8Array]",Zg="[object Int16Array]",Jg="[object Int32Array]",Qg="[object Uint8Array]",eh="[object Uint8ClampedArray]",th="[object Uint16Array]",nh="[object Uint32Array]",Oe={};Oe[Yg]=Oe[Wg]=Oe[Xg]=Oe[Zg]=Oe[Jg]=Oe[Qg]=Oe[eh]=Oe[th]=Oe[nh]=!0,Oe[$g]=Oe[Bg]=Oe[zg]=Oe[Vg]=Oe[Hg]=Oe[Rg]=Oe[Mg]=Oe[Dg]=Oe[Lg]=Oe[Fg]=Oe[Ug]=Oe[Kg]=Oe[jg]=Oe[Gg]=Oe[qg]=!1;function oh(e){return Tt(e)&&Ai(e.length)&&!!Oe[en(e)]}function Ti(e){return function(n){return e(n)}}var us=typeof he=="object"&&he&&!he.nodeType&&he,ao=us&&typeof module=="object"&&module&&!module.nodeType&&module,rh=ao&&ao.exports===us,Pi=rh&&Wl.process,vn=function(){try{var e=ao&&ao.require&&ao.require("util").types;return e||Pi&&Pi.binding&&Pi.binding("util")}catch{}}(),fs=vn&&vn.isTypedArray,Oi=fs?Ti(fs):oh,ih=Object.prototype,ah=ih.hasOwnProperty;function ps(e,n){var o=ft(e),r=!o&&rr(e),i=!o&&!r&&io(e),a=!o&&!r&&!i&&Oi(e),l=o||r||i||a,s=l?Sg(e.length,String):[],c=s.length;for(var d in e)(n||ah.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||vi(d,c)))&&s.push(d);return s}function ms(e,n){return function(o){return e(n(o))}}var lh=ms(Object.keys,Object),sh=Object.prototype,ch=sh.hasOwnProperty;function gs(e){if(!or(e))return lh(e);var n=[];for(var o in Object(e))ch.call(e,o)&&o!="constructor"&&n.push(o);return n}function $i(e){return Ii(e)?ps(e):gs(e)}function dh(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var uh=Object.prototype,fh=uh.hasOwnProperty;function ph(e){if(!tn(e))return dh(e);var n=or(e),o=[];for(var r in e)r=="constructor"&&(n||!fh.call(e,r))||o.push(r);return o}function Bi(e){return Ii(e)?ps(e,!0):ph(e)}var mh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,gh=/^\w*$/;function hh(e,n){if(ft(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Ei(e)?!0:gh.test(e)||!mh.test(e)||n!=null&&e in Object(n)}var lo=on(Object,"create");function yh(){this.__data__=lo?lo(null):{},this.size=0}function _h(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var bh="__lodash_hash_undefined__",wh=Object.prototype,kh=wh.hasOwnProperty;function Eh(e){var n=this.__data__;if(lo){var o=n[e];return o===bh?void 0:o}return kh.call(n,e)?n[e]:void 0}var Ch=Object.prototype,Nh=Ch.hasOwnProperty;function vh(e){var n=this.__data__;return lo?n[e]!==void 0:Nh.call(n,e)}var Sh="__lodash_hash_undefined__";function xh(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=lo&&n===void 0?Sh:n,this}function rn(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}rn.prototype.clear=yh,rn.prototype.delete=_h,rn.prototype.get=Eh,rn.prototype.has=vh,rn.prototype.set=xh;function Ah(){this.__data__=[],this.size=0}function ir(e,n){for(var o=e.length;o--;)if(Si(e[o][0],n))return o;return-1}var Ih=Array.prototype,Th=Ih.splice;function Ph(e){var n=this.__data__,o=ir(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Th.call(n,o,1),--this.size,!0}function Oh(e){var n=this.__data__,o=ir(n,e);return o<0?void 0:n[o][1]}function $h(e){return ir(this.__data__,e)>-1}function Bh(e,n){var o=this.__data__,r=ir(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Pt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Pt.prototype.clear=Ah,Pt.prototype.delete=Ph,Pt.prototype.get=Oh,Pt.prototype.has=$h,Pt.prototype.set=Bh;var so=on(bt,"Map");function Vh(){this.size=0,this.__data__={hash:new rn,map:new(so||Pt),string:new rn}}function Rh(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function ar(e,n){var o=e.__data__;return Rh(n)?o[typeof n=="string"?"string":"hash"]:o.map}function Mh(e){var n=ar(this,e).delete(e);return this.size-=n?1:0,n}function Dh(e){return ar(this,e).get(e)}function Lh(e){return ar(this,e).has(e)}function Fh(e,n){var o=ar(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Ot(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Ot.prototype.clear=Vh,Ot.prototype.delete=Mh,Ot.prototype.get=Dh,Ot.prototype.has=Lh,Ot.prototype.set=Fh;var Uh="Expected a function";function Vi(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(Uh);var o=function(){var r=arguments,i=n?n.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(Vi.Cache||Ot),o}Vi.Cache=Ot;var Kh=500;function jh(e){var n=Vi(e,function(r){return o.size===Kh&&o.clear(),r}),o=n.cache;return n}var Gh=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,qh=/\\(\\)?/g,zh=jh(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Gh,function(o,r,i,a){n.push(i?a.replace(qh,"$1"):r||o)}),n});function lr(e){return e==null?"":ts(e)}function Sn(e,n){return ft(e)?e:hh(e,n)?[e]:zh(lr(e))}function sr(e){if(typeof e=="string"||Ei(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Ri(e,n){n=Sn(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[sr(n[o++])];return o&&o==r?e:void 0}function hs(e,n,o){var r=e==null?void 0:Ri(e,n);return r===void 0?o:r}function Mi(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var ys=lt?lt.isConcatSpreadable:void 0;function Hh(e){return ft(e)||rr(e)||!!(ys&&e&&e[ys])}function Yh(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=Hh),i||(i=[]);++a<l;){var s=e[a];o(s)?Mi(i,s):i[i.length]=s}return i}function Wh(e){var n=e==null?0:e.length;return n?Yh(e):[]}function _s(e){return yg(Cg(e,void 0,Wh),e+"")}var Di=ms(Object.getPrototypeOf,Object),Xh="[object Object]",Zh=Function.prototype,Jh=Object.prototype,bs=Zh.toString,Qh=Jh.hasOwnProperty,ey=bs.call(Object);function ty(e){if(!Tt(e)||en(e)!=Xh)return!1;var n=Di(e);if(n===null)return!0;var o=Qh.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&bs.call(o)==ey}function ws(e,n,o){var r=-1,i=e.length;n<0&&(n=-n>i?0:i+n),o=o>i?i:o,o<0&&(o+=i),i=n>o?0:o-n>>>0,n>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+n];return a}function ny(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:ws(e,n,o)}var oy="\\ud800-\\udfff",ry="\\u0300-\\u036f",iy="\\ufe20-\\ufe2f",ay="\\u20d0-\\u20ff",ly=ry+iy+ay,sy="\\ufe0e\\ufe0f",cy="\\u200d",dy=RegExp("["+cy+oy+ly+sy+"]");function ks(e){return dy.test(e)}function uy(e){return e.split("")}var Es="\\ud800-\\udfff",fy="\\u0300-\\u036f",py="\\ufe20-\\ufe2f",my="\\u20d0-\\u20ff",gy=fy+py+my,hy="\\ufe0e\\ufe0f",yy="["+Es+"]",Li="["+gy+"]",Fi="\\ud83c[\\udffb-\\udfff]",_y="(?:"+Li+"|"+Fi+")",Cs="[^"+Es+"]",Ns="(?:\\ud83c[\\udde6-\\uddff]){2}",vs="[\\ud800-\\udbff][\\udc00-\\udfff]",by="\\u200d",Ss=_y+"?",xs="["+hy+"]?",wy="(?:"+by+"(?:"+[Cs,Ns,vs].join("|")+")"+xs+Ss+")*",ky=xs+Ss+wy,Ey="(?:"+[Cs+Li+"?",Li,Ns,vs,yy].join("|")+")",Cy=RegExp(Fi+"(?="+Fi+")|"+Ey+ky,"g");function Ny(e){return e.match(Cy)||[]}function vy(e){return ks(e)?Ny(e):uy(e)}function Sy(e){return function(n){n=lr(n);var o=ks(n)?vy(n):void 0,r=o?o[0]:n.charAt(0),i=o?ny(o,1).join(""):n.slice(1);return r[e]()+i}}var xy=Sy("toUpperCase");function Ay(e){return xy(lr(e).toLowerCase())}function Iy(){this.__data__=new Pt,this.size=0}function Ty(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function Py(e){return this.__data__.get(e)}function Oy(e){return this.__data__.has(e)}var $y=200;function By(e,n){var o=this.__data__;if(o instanceof Pt){var r=o.__data__;if(!so||r.length<$y-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Ot(r)}return o.set(e,n),this.size=o.size,this}function $t(e){var n=this.__data__=new Pt(e);this.size=n.size}$t.prototype.clear=Iy,$t.prototype.delete=Ty,$t.prototype.get=Py,$t.prototype.has=Oy,$t.prototype.set=By;function Vy(e,n){return e&&ro(n,$i(n),e)}function Ry(e,n){return e&&ro(n,Bi(n),e)}var As=typeof he=="object"&&he&&!he.nodeType&&he,Is=As&&typeof module=="object"&&module&&!module.nodeType&&module,My=Is&&Is.exports===As,Ts=My?bt.Buffer:void 0,Ps=Ts?Ts.allocUnsafe:void 0;function Dy(e,n){if(n)return e.slice();var o=e.length,r=Ps?Ps(o):new e.constructor(o);return e.copy(r),r}function Ly(e,n){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];n(l,o,e)&&(a[i++]=l)}return a}function Os(){return[]}var Fy=Object.prototype,Uy=Fy.propertyIsEnumerable,$s=Object.getOwnPropertySymbols,Ui=$s?function(e){return e==null?[]:(e=Object(e),Ly($s(e),function(n){return Uy.call(e,n)}))}:Os;function Ky(e,n){return ro(e,Ui(e),n)}var jy=Object.getOwnPropertySymbols,Bs=jy?function(e){for(var n=[];e;)Mi(n,Ui(e)),e=Di(e);return n}:Os;function Gy(e,n){return ro(e,Bs(e),n)}function Vs(e,n,o){var r=n(e);return ft(e)?r:Mi(r,o(e))}function Ki(e){return Vs(e,$i,Ui)}function Rs(e){return Vs(e,Bi,Bs)}var ji=on(bt,"DataView"),Gi=on(bt,"Promise"),qi=on(bt,"Set"),Ms="[object Map]",qy="[object Object]",Ds="[object Promise]",Ls="[object Set]",Fs="[object WeakMap]",Us="[object DataView]",zy=nn(ji),Hy=nn(so),Yy=nn(Gi),Wy=nn(qi),Xy=nn(Ni),st=en;(ji&&st(new ji(new ArrayBuffer(1)))!=Us||so&&st(new so)!=Ms||Gi&&st(Gi.resolve())!=Ds||qi&&st(new qi)!=Ls||Ni&&st(new Ni)!=Fs)&&(st=function(e){var n=en(e),o=n==qy?e.constructor:void 0,r=o?nn(o):"";if(r)switch(r){case zy:return Us;case Hy:return Ms;case Yy:return Ds;case Wy:return Ls;case Xy:return Fs}return n});var Zy=Object.prototype,Jy=Zy.hasOwnProperty;function Qy(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&Jy.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var cr=bt.Uint8Array;function zi(e){var n=new e.constructor(e.byteLength);return new cr(n).set(new cr(e)),n}function e_(e,n){var o=n?zi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var t_=/\w*$/;function n_(e){var n=new e.constructor(e.source,t_.exec(e));return n.lastIndex=e.lastIndex,n}var Ks=lt?lt.prototype:void 0,js=Ks?Ks.valueOf:void 0;function o_(e){return js?Object(js.call(e)):{}}function r_(e,n){var o=n?zi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var i_="[object Boolean]",a_="[object Date]",l_="[object Map]",s_="[object Number]",c_="[object RegExp]",d_="[object Set]",u_="[object String]",f_="[object Symbol]",p_="[object ArrayBuffer]",m_="[object DataView]",g_="[object Float32Array]",h_="[object Float64Array]",y_="[object Int8Array]",__="[object Int16Array]",b_="[object Int32Array]",w_="[object Uint8Array]",k_="[object Uint8ClampedArray]",E_="[object Uint16Array]",C_="[object Uint32Array]";function N_(e,n,o){var r=e.constructor;switch(n){case p_:return zi(e);case i_:case a_:return new r(+e);case m_:return e_(e,o);case g_:case h_:case y_:case __:case b_:case w_:case k_:case E_:case C_:return r_(e,o);case l_:return new r;case s_:case u_:return new r(e);case c_:return n_(e);case d_:return new r;case f_:return o_(e)}}function v_(e){return typeof e.constructor=="function"&&!or(e)?sg(Di(e)):{}}var S_="[object Map]";function x_(e){return Tt(e)&&st(e)==S_}var Gs=vn&&vn.isMap,A_=Gs?Ti(Gs):x_,I_="[object Set]";function T_(e){return Tt(e)&&st(e)==I_}var qs=vn&&vn.isSet,P_=qs?Ti(qs):T_,O_=1,$_=2,B_=4,zs="[object Arguments]",V_="[object Array]",R_="[object Boolean]",M_="[object Date]",D_="[object Error]",Hs="[object Function]",L_="[object GeneratorFunction]",F_="[object Map]",U_="[object Number]",Ys="[object Object]",K_="[object RegExp]",j_="[object Set]",G_="[object String]",q_="[object Symbol]",z_="[object WeakMap]",H_="[object ArrayBuffer]",Y_="[object DataView]",W_="[object Float32Array]",X_="[object Float64Array]",Z_="[object Int8Array]",J_="[object Int16Array]",Q_="[object Int32Array]",eb="[object Uint8Array]",tb="[object Uint8ClampedArray]",nb="[object Uint16Array]",ob="[object Uint32Array]",Ae={};Ae[zs]=Ae[V_]=Ae[H_]=Ae[Y_]=Ae[R_]=Ae[M_]=Ae[W_]=Ae[X_]=Ae[Z_]=Ae[J_]=Ae[Q_]=Ae[F_]=Ae[U_]=Ae[Ys]=Ae[K_]=Ae[j_]=Ae[G_]=Ae[q_]=Ae[eb]=Ae[tb]=Ae[nb]=Ae[ob]=!0,Ae[D_]=Ae[Hs]=Ae[z_]=!1;function co(e,n,o,r,i,a){var l,s=n&O_,c=n&$_,d=n&B_;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!tn(e))return e;var f=ft(e);if(f){if(l=Qy(e),!s)return dg(e,l)}else{var u=st(e),p=u==Hs||u==L_;if(io(e))return Dy(e,s);if(u==Ys||u==zs||p&&!i){if(l=c||p?{}:v_(e),!s)return c?Gy(e,Ry(l,e)):Ky(e,Vy(l,e))}else{if(!Ae[u])return i?e:{};l=N_(e,u,s)}}a||(a=new $t);var m=a.get(e);if(m)return m;a.set(e,l),P_(e)?e.forEach(function(g){l.add(co(g,n,o,g,e,a))}):A_(e)&&e.forEach(function(g,_){l.set(_,co(g,n,o,_,e,a))});var h=d?c?Rs:Ki:c?Bi:$i,y=f?void 0:h(e);return _g(y||e,function(g,_){y&&(_=g,g=e[_]),xi(l,_,co(g,n,o,_,e,a))}),l}var rb=1,ib=4;function xn(e){return co(e,rb|ib)}var ab="__lodash_hash_undefined__";function lb(e){return this.__data__.set(e,ab),this}function sb(e){return this.__data__.has(e)}function dr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Ot;++n<o;)this.add(e[n])}dr.prototype.add=dr.prototype.push=lb,dr.prototype.has=sb;function cb(e,n){for(var o=-1,r=e==null?0:e.length;++o<r;)if(n(e[o],o,e))return!0;return!1}function db(e,n){return e.has(n)}var ub=1,fb=2;function Ws(e,n,o,r,i,a){var l=o&ub,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(n);if(d&&f)return d==n&&f==e;var u=-1,p=!0,m=o&fb?new dr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var h=e[u],y=n[u];if(r)var g=l?r(y,h,u,n,e,a):r(h,y,u,e,n,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!cb(n,function(_,w){if(!db(m,w)&&(h===_||i(h,_,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(h===y||i(h,y,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function pb(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function mb(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var gb=1,hb=2,yb="[object Boolean]",_b="[object Date]",bb="[object Error]",wb="[object Map]",kb="[object Number]",Eb="[object RegExp]",Cb="[object Set]",Nb="[object String]",vb="[object Symbol]",Sb="[object ArrayBuffer]",xb="[object DataView]",Xs=lt?lt.prototype:void 0,Hi=Xs?Xs.valueOf:void 0;function Ab(e,n,o,r,i,a,l){switch(o){case xb:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case Sb:return!(e.byteLength!=n.byteLength||!a(new cr(e),new cr(n)));case yb:case _b:case kb:return Si(+e,+n);case bb:return e.name==n.name&&e.message==n.message;case Eb:case Nb:return e==n+"";case wb:var s=pb;case Cb:var c=r&gb;if(s||(s=mb),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=hb,l.set(e,n);var f=Ws(s(e),s(n),r,i,a,l);return l.delete(e),f;case vb:if(Hi)return Hi.call(e)==Hi.call(n)}return!1}var Ib=1,Tb=Object.prototype,Pb=Tb.hasOwnProperty;function Ob(e,n,o,r,i,a){var l=o&Ib,s=Ki(e),c=s.length,d=Ki(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:Pb.call(n,p)))return!1}var m=a.get(e),h=a.get(n);if(m&&h)return m==n&&h==e;var y=!0;a.set(e,n),a.set(n,e);for(var g=l;++u<c;){p=s[u];var _=e[p],w=n[p];if(r)var b=l?r(w,_,p,n,e,a):r(_,w,p,e,n,a);if(!(b===void 0?_===w||i(_,w,o,r,a):b)){y=!1;break}g||(g=p=="constructor")}if(y&&!g){var C=e.constructor,E=n.constructor;C!=E&&"constructor"in e&&"constructor"in n&&!(typeof C=="function"&&C instanceof C&&typeof E=="function"&&E instanceof E)&&(y=!1)}return a.delete(e),a.delete(n),y}var $b=1,Zs="[object Arguments]",Js="[object Array]",ur="[object Object]",Bb=Object.prototype,Qs=Bb.hasOwnProperty;function Vb(e,n,o,r,i,a){var l=ft(e),s=ft(n),c=l?Js:st(e),d=s?Js:st(n);c=c==Zs?ur:c,d=d==Zs?ur:d;var f=c==ur,u=d==ur,p=c==d;if(p&&io(e)){if(!io(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new $t),l||Oi(e)?Ws(e,n,o,r,i,a):Ab(e,n,c,o,r,i,a);if(!(o&$b)){var m=f&&Qs.call(e,"__wrapped__"),h=u&&Qs.call(n,"__wrapped__");if(m||h){var y=m?e.value():e,g=h?n.value():n;return a||(a=new $t),i(y,g,o,r,a)}}return p?(a||(a=new $t),Ob(e,n,o,r,i,a)):!1}function ec(e,n,o,r,i){return e===n?!0:e==null||n==null||!Tt(e)&&!Tt(n)?e!==e&&n!==n:Vb(e,n,o,r,ec,i)}function Rb(e,n){return e!=null&&n in Object(e)}function Mb(e,n,o){n=Sn(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=sr(n[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)&&vi(l,i)&&(ft(e)||rr(e)))}function Db(e,n){return e!=null&&Mb(e,n,Rb)}function Lb(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function Fb(e,n){return n.length<2?e:Ri(e,ws(n,0,-1))}var Ub="[object Map]",Kb="[object Set]",jb=Object.prototype,Gb=jb.hasOwnProperty;function tc(e){if(e==null)return!0;if(Ii(e)&&(ft(e)||typeof e=="string"||typeof e.splice=="function"||io(e)||Oi(e)||rr(e)))return!e.length;var n=st(e);if(n==Ub||n==Kb)return!e.size;if(or(e))return!gs(e).length;for(var o in e)if(Gb.call(e,o))return!1;return!0}function Yi(e,n){return ec(e,n)}function nc(e,n){return n=Sn(n,e),e=Fb(e,n),e==null||delete e[sr(Lb(n))]}function qb(e){return ty(e)?void 0:e}var zb=1,Hb=2,Yb=4,oc=_s(function(e,n){var o={};if(e==null)return o;var r=!1;n=Jl(n,function(a){return a=Sn(a,e),r||(r=a.length>1),a}),ro(e,Rs(e),o),r&&(o=co(o,zb|Hb|Yb,qb));for(var i=n.length;i--;)nc(o,n[i]);return o});function rc(e,n,o,r){if(!tn(e))return e;n=Sn(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=sr(n[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=tn(f)?f:vi(n[i+1])?[]:{})}xi(s,c,d),s=s[c]}return e}function Wb(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=Ri(e,l);o(s,l)&&rc(a,Sn(l,e),s)}return a}function Xb(e,n){return Wb(e,n,function(o,r){return Db(e,r)})}var Wi=_s(function(e,n){return e==null?{}:Xb(e,n)});function Zb(e,n,o){return e==null?e:rc(e,n,o)}var Jb=0;function fr(e){var n=++Jb;return lr(e)+n}function ic(e,n){return e==null?!0:nc(e,n)}const Qb=e=>{const n=Object.keys(e);return n.length===0?!0:n.length===2&&n.includes("ssl_verify")&&n.includes("authentication")?Yi(e,{ssl_verify:!0,authentication:{mode:"none"}}):!1},an=e=>{var o,r;e.confluent&&Qb(e==null?void 0:e.confluent)&&(e.confluent=null);const n=(r=(o=e==null?void 0:e.confluent)==null?void 0:o.authentication)==null?void 0:r.basic;n&&!n.password&&!n.username&&delete e.confluent.authentication.basic},e0={"config-message_by_lua_functions":{...Pe,inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},t0={"config-message_by_lua_functions":{...Pe,inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},n0={shamefullyTransformPayload:({payload:e})=>{var n,o,r;an((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{an(i==null?void 0:i.schema_registry)})}},o0={shamefullyTransformPayload:({payload:e})=>{var n,o,r;an((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{an(i==null?void 0:i.schema_registry)})}},r0={shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},i0={"config-static_tags":{...Qo,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"}]}}}},a0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp":"AIMcpForm"};function ac(e,n){const o=a0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Xi=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),lc={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR")},sc=Symbol("TOASTER_PROVIDER");function cc(){return t.inject(Xi,[])}function l0(e){t.provide(Xi,e)}const s0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},dc=(e,n)=>(e.order??0)-(n.order??0),uc=(e,n)=>s0(e,n)||dc(e,n)||e.model.localeCompare(n.model),$e={useI18n:ve,usePluginMetaData:mm,usePluginHelpers:Dl,useSchemas:e=>{const{capitalize:n}=ue.useStringHelpers(),{convertToDotNotation:o}=Dl(),{i18n:{t:r}}=ve(),i=cc(),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:{...Pm},"statsd-advanced":{...Om},"route-by-header":{...Im},"ai-prompt-decorator":{...gm},"ai-prompt-template":{...hm},"ai-proxy-advanced":{...ym},"ai-llm-as-judge":{..._m},"vault-auth":{...Bm},"oas-validation":{...Nm},mocking:{...Cm},"rate-limiting":{...er},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":er["config-consumer_groups"]}:{...er},"graphql-rate-limiting-advanced":{...km},"injection-protection":{...Em},"response-ratelimiting":{...er},"pre-function":{...Hl},"post-function":{...Hl},"request-transformer-advanced":{...xm},"response-transformer":{...Yl},"response-transformer-advanced":{...Am},zipkin:{...i0},"upstream-oauth":{...$m},saml:{...Tm},"kafka-upstream":{...e0},"key-auth":im(e),"key-auth-enc":um(e),confluent:{...t0},"confluent-consume":{...n0},"kafka-consume":{...o0},"kafka-log":{...r0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(k,T,x)=>{let O={};(T||k)&&(O=T||(k.fields?k.fields:k));const Y=l().concat(k.blacklist?k.blacklist:[]),K=Object.keys(O).filter(j=>!Y.includes(j)),I=K.indexOf("comparator");I>-1&&K.splice(I,1);let Q={fields:[]};const A={};K.forEach(j=>{d(O[j],j,O,A,Q,x)});const D=A.name,V=It[D],X=[],H=j=>{const L=["cluster-cache"];for(const R of L)if(j.model.includes(R))return!1;return new RegExp("(?<=-redis-).*").test(j.model)};if(Q._supported_redis_partial_type=k._supported_redis_partial_type,Q._redis_partial_path=k._redis_partial_path,Ne.getSharedFormName(D)||ac(D,i)||V!=null&&V.useLegacyForm||e!=null&&e.credential){if(V!=null&&V.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&k._supported_redis_partial_type){for(const j of Q.fields)if(H(j)){X.push(j);continue}Q.fields=Q.fields.filter(j=>!H(j)),X.length&&Q.fields.push({id:"_redis",fields:X,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path})}Q.fields.sort((j,L)=>(j.order=j.order||0,L.order=L.order||0,j.order-L.order))}else{const j=[],L=[],R=[],oe=[],ie={};if(V!=null&&V.fieldRules){const G=[...V.fieldRules.atLeastOneOf??[],...V.fieldRules.onlyOneOf??[],...V.fieldRules.mutuallyRequired??[]];if(V.fieldRules.onlyOneOfMutuallyRequired)for(const ee of V.fieldRules.onlyOneOfMutuallyRequired)G.push(...ee);for(const ee of G)for(const U of ee)ie[U.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const G of Q.fields){if(e!=null&&e.enableRedisPartial&&k._supported_redis_partial_type&&H(G)){oe.push(G);continue}if(G.pinned){j.push(G);continue}if(G.required||ie[G.model]!==void 0){ie[G.model]===!1&&(ie[G.model]=!0),L.push(G);continue}R.push(G)}oe.length&&R.push({id:"_redis",fields:oe,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path,order:-1});const Z=Object.entries(ie).filter(([,G])=>!G).map(([G])=>G.replace(/-/g,".").replace(/_/g,"-"));Z.length>0&&console.warn(`Unknown checked fields for plugin ${D}: ${Z.join(", ")}`);const ae=[];j.length>0&&ae.push({fields:j.sort(dc)}),(L.length>0||R.length>0)&&ae.push({fields:L.sort(uc),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:R.sort(uc),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"}}),Q={groups:ae}}return{schema:Q,model:A,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=k=>Array.isArray(k.default)||k.default!=null&&typeof k.default!="object"&&k.default!=="function",d=(k,T,x,O,Y,K)=>{const I=c(k);return O[T]=I?k.default:null,k.id=T,k.model=T,k.fields&&k.type==="record"?u(k,T,x,O,Y,K):(x[T]=k,C(k,O),K&&K[T]&&f(x[T],K[T]),Y.fields.push(k)),x},f=(k,T)=>(T&&(Object.assign(k,T),T.label&&(k.label=T.label)),k),u=(k,T,x,O,Y,K)=>{k.fields.forEach(I=>{Object.keys(I).forEach(Q=>{const A=I[Q];x=d(A,T+"-"+Q,x,O,Y,K)})})},p=(k,T)=>{k.type="input",k.inputType="hidden",k.styleClasses="kong-form-hidden-field-wrapper";const x=e==null?void 0:e.entityId;T[k.model]=x?{id:x}: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")},y=k=>{k.type="checkbox",k.default=!0,k.required=!1},g=k=>{if(k.type="object-advanced",k.values.type==="array"){const{type:T}=k.values.elements||{};k.schema={fields:[{schema:{fields:[{...Pe,model:k.model,valueArrayType:T==="integer"?"number":T||"string",inputAttributes:{...Pe.inputAttributes,type:T==="integer"?"number":"text",inputMode:T==="integer"?"numeric":"text"}}]}}]}}else k.values.fields&&(k.schema={fields:[{type:"object",model:"object",schema:{fields:k.values.fields.map(T=>{const x=Object.keys(T)[0];return{model:x,type:"input",label:n(x),placeholder:x,inputType:T[x].type}})}}]})},_=k=>k.fields.reduce((T,x)=>(x.fields&&x.fields.forEach(O=>{T[O.model]=O}),x.model&&(T[x.model]=x),T),{}),w=(k,T)=>{if(!Ne.customFields.includes(k.model))return;const x=_(k);Ne.customFields.forEach(O=>{Object.keys(x).forEach(Y=>{const K=c(x[Y]);T[Y]=K?x[Y].default:null}),delete T[O]})},b=(k,T)=>k.inputType==="hidden"?"":o(n(k.label||T.replace(/_/g," "))),C=(k,T)=>{switch(w(k,T),k.type){case"foreign":p(k,T);break;case"number":m(k),k.attributes={step:"any"};break;case"integer":m(k);break;case"string":h(k);break;case"boolean":y(k);break;case"map":g(k);break}k.inputType==="foreign"&&p(k,T),k.label=b(k,k.model)};function E(k,T){if(T==null||T.type&&T.type!=="record"||typeof k!="object"||k==null)return k;const x={};for(const O of T.fields){const Y=Object.keys(O)[0],K=O[Y];K.type==="record"?x[Y]=E(k[Y],K):K.type==="array"&&Array.isArray(k[Y])&&K.elements.type==="record"?x[Y]=k[Y].map(I=>E(I,K.elements)):x[Y]=k[Y]}return x}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:Cn,pruneRecord:E}},useExperimentalFreeForms:cc,useProvideExperimentalFreeForms:l0},ze="/v2/control-planes/{controlPlaneId}/core-entities",We="/{workspace}",Be={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}`}}},c0={key:0},d0=we(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=$e.usePluginHelpers(),{i18n:{t:r}}=$e.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=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(f,u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",c0,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,u)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f,(p,m)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]),{t:An}=Re.createI18n("en-us",je);function Zi(e){return e.map(n=>({value:n,label:n}))}const Ji="*",fc="$",pc=".";function pt(...e){return e.join(pc)}function Qi(...e){return pt(fc,...e)}function mc(e){return e.startsWith(pt(fc,""))}function In(e){return e.split(pc).filter(n=>n!=="")}function pr(e){const n=In(e);return n[n.length-1]}const u0=e=>{var n,o;return e.type==="redis-ce"?An("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.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")},f0={"redis-ce":An("redis.shared_configuration.open_source"),"redis-ee":An("redis.shared_configuration.enterprise")},p0=e=>f0[e]??"";function m0(e,n){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return n.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 g0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const gc=Symbol("free-form-data"),hc=Symbol("free-form-schema"),yc=Symbol("free-form-field-path"),ea=Symbol("free-form-field-renderer-slots"),mr=Symbol("free-form-field-renderer-matchers-map"),_c=Symbol("free-form-config"),bc=Symbol("free-form-field-reset-label-path-setting"),Tn="free-form-field-renderers-slot",h0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function y0(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,ta(r,n)):e.type==="array"&&e.elements&&Object.assign(o,na(e,n)),o}function ta(e,n=""){const o={};if(Array.isArray(e.fields))for(const r of e.fields){const i=Object.keys(r)[0],a=r[i],l=n?pt(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=ta(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=na(a,l);Object.assign(o,s)}}return o}function na(e,n=""){const o={};if(e.elements){const r=e.elements,i=pt(n,Ji);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=ta(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=na(r,i);Object.assign(o,a)}}return o}function oa(e){const n=In(e).map(o=>/^\d+$/.test(o)?Ji:o);return pt(...n)}function _0(e){const n=t.toValue(e),o=t.computed(()=>n?y0(n):{});function r(f){var u;return f==null?n:(u=o.value)==null?void 0:u[oa(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],y=u?`${u}.${h}`:h,g=i(y,!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?Wo.marked.parse(u.description,{async:!1}):void 0;return{...h0,"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 Ve(){const e=t.inject(gc),n=t.inject(hc),o=t.inject(_c,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!n)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...n}}const wc=e=>{const n=t.inject(yc,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!mc(r)&&n.value&&(i=pt(n.value,r)),mc(r)&&(i=i.slice(Qi("").length)),i});return t.provide(yc,o),o},b0=e=>{const{getSchema:n}=Ve(),{default:o,...r}=t.useSlots(),i=t.inject(ea),a=t.inject(mr),l=t.computed(()=>{const c=t.toValue(i),d=Object.keys(r).filter(f=>f!==Tn&&f!=="item").reduce((f,u)=>{const p=oa(pt(t.toValue(e),u));return{...f,[p]:r[u]}},{});return c?{...c,...d}:d});t.provide(ea,l);const s=t.toValue(e);return t.computed(()=>{if(o)return;const c=l.value[oa(t.toValue(e))];if(c)return c;for(const[d,f]of a)if(d({path:s,schema:n(s)}))return f})},w0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function k0(e){return w0[e.toLocaleLowerCase()]??e}function E0(e,n){const o=t.inject(bc,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?pt(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?pt(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}),t.provide(bc,l),a}function C0(e){return In(e).map(o=>o.split("_").map(Ay).map(k0).join(" ")).join(" › ")}function N0(e,n){const o=t.toValue(e),r=pr(o),{formConfig:i}=Ve(),a=E0(r,n),{getSchema:l}=Ve(),s=kc(e);return t.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 wt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ve(),a=t.toValue(e),l=t.toValue(n),s=N0(e,t.toRef(()=>t.toValue(n).resetLabelPath));return t.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 v0(e){var r;const n=In(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?pt(o.parent.path,i):i,o={parent:o}}return o}function kc(e){return t.computed(()=>v0(t.toValue(e)))}function Ec(e){const{formData:n}=Ve(),o=wc(e);return{value:t.computed({get:()=>hs(n,In(o.value)),set:i=>Zb(n,In(o.value),i)})}}function ct(e){const{getSchema:n}=Ve(),o=wc(e),r=b0(o),{value:i}=Ec(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:kc(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function gr(e){const{getSchema:n}=Ve(),o=t.useAttrs();return t.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=t.toValue(e).parent;return r!=null&&r.path?((i=n(r.path))==null?void 0:i.type)==="array":!1})}function Cc(e,n){const o=t.reactive(new Map),r=t.reactive(new Map);function i(){return fr(`${e}-`)}function a(s){if(s==null)return"null";if(typeof s!="object")return String(s);try{return JSON.stringify(s,Object.keys(s).sort())}catch{return String(s)}}function l(s,c){if(s==null||typeof s!="object")return`${e}-${c}`;const d=a(s);if(o.has(d))return o.get(d);if(r.has(c)){const u=r.get(c);return o.set(d,u),u}const f=i();return o.set(d,f),r.set(c,f),f}return t.watch(n,s=>{const c=t.toValue(s),d=new Set,f=new Set;c.forEach((u,p)=>{if(u!=null&&typeof u=="object"){const m=a(u);d.add(m)}f.add(p)}),Array.from(o.keys()).forEach(u=>{d.has(u)||o.delete(u)}),Array.from(r.keys()).forEach(u=>{f.has(u)||r.delete(u)})},{immediate:!0,deep:!0}),{getKey:l}}const S0="__request_callout_";function Nc(){return fr(S0)}const Pn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=n,i=t.computed(()=>o.multiline?Te.KTextArea:Te.KInput),a=t.ref(o.modelValue);t.watch(()=>o.modelValue,d=>{a.value=d});const{formConfig:l}=Ve(),s=d=>{a.value=d,l.updateOnChange||r("update:modelValue",d)},c=()=>{l.updateOnChange&&r("update:modelValue",a.value)};return(d,f)=>(t.openBlock(),t.createBlock(t.unref(i),t.mergeProps(d.$attrs,{"model-value":d.modelValue,resizable:d.multiline?!0:void 0,onChange:c,"onUpdate:modelValue":s}),t.createSlots({_:2},[t.renderList(t.useSlots(),(u,p)=>({name:p,fn:t.withCtx(m=>[t.renderSlot(d.$slots,p,t.normalizeProps(t.guardReactiveProps(m)))])}))]),1040,["model-value","resizable"]))}}),x0=["innerHTML"],On=we(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=ve(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=ct(t.toRef(()=>e.name)),c=wt(s.path,t.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=t.computed(()=>{var _;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((_=s.schema)==null?void 0:_.value).encrypted}),p=t.inject(Ne.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var _;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((_=s.schema.value)!=null&&_.referenceable)}),h=t.computed(()=>({referenceable:m.value})),y=gr(s.ancestors),g=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:pr(e.name)==="name");return(_,w)=>{var C;const b=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(b,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},_.$attrs)),[t.createVNode(Pn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":g.value,"data-autofocus":t.unref(y),"data-testid":`ff-${s.path.value}`,error:_.error,"error-message":_.errorMessage,help:_.help,"model-value":t.unref(l)??"",multiline:_.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(C=t.unref(c).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,x0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(p)&&m.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(p)),{key:0,schema:h.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(b,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-fb5b80e5"]]),A0=["innerHTML"],ra=we(t.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=ct(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=wt(i.path,o);return(c,d)=>{var u;const f=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(Te.KCheckbox),t.mergeProps({key:1},t.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":t.unref(r)??!1,"onUpdate:modelValue":l}),t.createSlots({_:2},[(u=t.unref(s).labelAttributes)!=null&&u.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,A0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),vc=we(t.defineComponent({__name:"SlideTransition",setup(e){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),r=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(h=>[h,m.getPropertyValue(h)]))}function a(p){["overflow","transition",...n].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)=>(t.openBlock(),t.createBlock(t.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:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),I0=["data-testid"],T0=["data-testid"],P0=["data-testid"],O0=["innerHTML"],$0={class:"ff-object-field-actions"},B0=["data-testid"],dt=we(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.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){const n=t.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=ct(t.toRef(n,"name")),{getSchema:i,getDefault:a}=Ve(),l=t.useModel(e,"added"),s=t.useModel(e,"expanded"),c=t.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),d=t.computed(()=>{var g,_;if((g=r.ancestors)!=null&&g.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((_=i(w.path))==null?void 0:_.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=wt(r.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:f.value}))),p=t.computed(()=>u.value.required?!0:l.value??e.defaultAdded),m=t.computed(()=>e.asChild!==void 0?e.asChild:d.value),h=t.computed(()=>{let g=r.schema.value.fields;return e.omit&&(g=g.filter(_=>!e.omit.includes(Object.keys(_)[0]))),e.fieldsOrder?g.sort((_,w)=>{const b=Object.keys(_)[0],C=Object.keys(w)[0],E=e.fieldsOrder.indexOf(b),k=e.fieldsOrder.indexOf(C);return E===-1&&k===-1?0:E===-1?1:k===-1?-1:E-k}):g});function y(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,g=>{e.collapsible&&(s.value=g)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(g,_)=>{var b;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(g.$slots[t.unref(Tn)]))),r.error?(t.openBlock(),t.createBlock(w,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},g.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,C=>(t.openBlock(),t.createBlock(Qe,{key:Object.keys(C)[0],name:Object.keys(C)[0]},null,8,["name"]))),128))],!0)],16,I0)):(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},g.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Te.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(u),required:!1},{"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(b=t.unref(u).labelAttributes)!=null&&b.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,O0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",$0,[g.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:0,appearance:"tertiary",class:t.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:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(u).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:y},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(ke.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(ke.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,P0),t.createVNode(vc,null,{default:t.withCtx(()=>[c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,C=>(t.openBlock(),t.createBlock(Qe,{key:Object.keys(C)[0],name:Object.keys(C)[0]},null,8,["name"]))),128))],!0)],8,B0)):t.createCommentVNode("",!0)]),_:3})],16,T0))],64)}}}),[["__scopeId","data-v-6f044592"]]),V0=["innerHTML"],$n=we(t.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=ct(t.toRef(()=>e.name)),a=wt(i.path,o),l=t.computed(()=>{var y;const p=(y=i.schema)==null?void 0:y.value;if(typeof p.gt=="number")return{min:p.gt};const[m,h]=p.between??[];return{min:o.min??m,max:o.max??h}}),s=n,c=r.value,d=t.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=gr(i.ancestors);return(p,m)=>{var y;const h=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(Pn,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(u),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(y=t.unref(a).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,V0)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),R0=["innerHTML"],kt=we(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},multiple:{type:Boolean,default:()=>{}},items:{},placeholder:{}},setup(e){const n=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:o}=Ve(),{value:r,...i}=ct(t.toRef(()=>e.name)),a=wt(i.path,n),l=t.computed(()=>e.items?e.items:i.path?o(i.path.value):[]),s=t.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=i.schema.value)==null?void 0:d.type)==="set"}),c=t.computed(()=>s.value?Te.KMultiselect:Te.KSelect);return(d,f)=>{var p;const u=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(c),t.mergeProps({key:1},t.unref(a),{modelValue:t.unref(r),"onUpdate:modelValue":f[0]||(f[0]=m=>t.isRef(r)?r.value=m:null),class:"ff-enum-field",clearable:!t.unref(a).required,"data-testid":`ff-${i.path.value}`,items:l.value,"kpop-attributes":{"data-testid":`${i.path.value}-items`}}),t.createSlots({_:2},[(p=t.unref(a).labelAttributes)!=null&&p.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(d.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,R0)],!0)]),key:"0"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-8b105573"]]);function ia(e,n,o=!0){const{value:r,...i}=ct(t.toRef(e,"name")),a=wt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(d(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return fr("ff-kv-field-")}function c(g,_,w){const b=w.indexOf(g),C=w.indexOf(_);return b===-1&&C===-1?0:b===-1?1:C===-1?-1:b-C}function d(g,_){const w=Object.entries(g).map(([b,C])=>({id:s(),key:b,value:C}));return _&&w.sort((b,C)=>c(b.key,C.key,_)),w}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(w=>w.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;t.watch(l,g=>{if(!o)return;const _=g.length?Object.fromEntries(g.map(({key:w,value:b})=>[w,b]).filter(([w])=>w)):null;r.value=_,h=_,n("change",_)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,g=>{Yi(g,h)||y(g)},{deep:!0});function y(g){if(!g){l.value=[];return}const _=new Map;l.value.forEach(E=>{E.key&&_.set(E.key,E)});const w=[],b=Object.keys(g);(e.keyOrder?[...b].sort((E,k)=>c(E,k,e.keyOrder)):b).forEach(E=>{const k=g[E];if(_.has(E)){const T=_.get(E);T.value=k,w.push(T)}else w.push({id:s(),key:E,value:k})}),l.value=w}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const M0=["data-testid"],D0=["data-testid"],L0=["innerHTML"],F0=["data-testid"],U0=we(t.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=ve(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=ia(r,a),m=t.useTemplateRef("root");async function h(E,k="key"){var T;m.value&&(await t.nextTick(),(T=m.value.querySelector(`[data-${k}-input="${E}"]`))==null||T.focus())}function y(){s();const E=l.value.findIndex(({key:k})=>!k);h(E===-1?l.value.length-1:E)}function g(E){E===l.value.length-1&&s(),h(E+1)}const _=t.inject(Ne.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var E,k;return e.showVaultSecretPicker??!!((k=(E=p.schema.value)==null?void 0:E.values)!=null&&k.referenceable)}),b=t.computed(()=>({referenceable:w.value}));function C(E,k){l.value[E].value=k}return n({reset:d,setValue:f}),(E,k)=>{var Y;const T=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),O=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(T,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${t.unref(p).path.value}`},[t.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${t.unref(p).path.value}`},[t.createVNode(x,t.mergeProps({class:"ff-kv-field-label"},t.unref(u),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(Y=t.unref(u).labelAttributes)!=null&&Y.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,L0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(O,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["data-testid"])],8,D0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(K,I)=>(t.openBlock(),t.createElementBlock("div",{key:K.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${I}`},[t.createVNode(Pn,{modelValue:K.key,"onUpdate:modelValue":Q=>K.key=Q,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":I,"data-testid":`ff-key-${t.unref(p).path.value}.${I}`,placeholder:E.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(Q=>h(I,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Pn,{modelValue:K.value,"onUpdate:modelValue":Q=>K.value=Q,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${I}`,"data-value-input":I,placeholder:E.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(Q=>g(I),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(_)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:b.value,update:Q=>C(I,Q),value:K.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(_)?(t.openBlock(),t.createBlock(T,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${t.unref(p).path.value}`,message:t.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),t.createVNode(O,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${I}`,icon:"",onClick:Q=>t.unref(c)(K.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,F0))),128))],8,M0))}}}),[["__scopeId","data-v-92e0893d"]]),K0=["data-testid"],j0=["innerHTML"],aa=we(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ct(t.toRef(()=>e.name)),s=wt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var y,g;return((g=(y=l.schema)==null?void 0:y.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),d=t.ref("");function f(y){return y.map(g=>g.trim()).filter(Boolean).join(", ")}function u(y){return y.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(y){d.value=y;const g=u(y),_=!g.length&&c.value?null:g;a.value=_,i("update:modelValue",_)}const m=gr(l.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:pr(e.name)==="name");return t.watch(a,y=>{const g=y?f(y):"";f(u(d.value))!==g&&(d.value=g)},{immediate:!0}),(y,g)=>{var w;const _=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[t.createVNode(Pn,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(w=t.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,j0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,K0))}}}),[["__scopeId","data-v-a27f4ff1"]]),G0=["data-testid"],q0=["innerHTML"],z0=we(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{name:{},labelAttributes:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ct(t.toRef(()=>e.name)),s=wt(l.path,t.toRef({...r,...o})),c=t.ref("");function d(p){c.value=p;let m=p||null;try{const h=JSON.parse(p);h&&typeof h=="object"&&(m=h)}catch{}a.value=m,i("update:modelValue",m)}const f=gr(l.ancestors),u=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:pr(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);Yi(m,p)||(c.value=JSON.stringify(p,null,2))}catch{c.value=JSON.stringify(p,null,2)}return}c.value=p||""},{immediate:!0}),(p,m)=>{var y;const h=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${l.path.value}`},[t.createVNode(Pn,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":u.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":d}),t.createSlots({_:2},[(y=t.unref(s).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,q0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,G0))}}}),[["__scopeId","data-v-5749f722"]]),Qe=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=ct(t.toRef(n,"name")),r=t.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?kt:On;case"boolean":return"one_of"in o.schema.value?kt:ra;case"number":case"integer":return"one_of"in o.schema.value?kt:$n;case"array":return hr;case"set":return g0(o.schema)?aa:kt;case"record":return dt;case"map":return U0;case"json":return z0;default:return}});return(i,a)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.$slots[t.unref(Tn)]))),t.unref(o).error?(t.openBlock(),t.createBlock(l,{key:0,appearance:"danger",message:t.unref(o).error.message},null,8,["message"])):t.unref(o).renderer.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(o).renderer.value),{key:1,name:Qi(t.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,name:Qi(t.unref(o).path.value)},null,8,["name"])):(t.openBlock(),t.createBlock(l,{key:1,appearance:"warning",message:`${t.unref(o).path.value} ${t.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),t.renderSlot(i.$slots,"default")],64))],64)}}}),H0=["data-testid"],Y0=["data-testid"],W0=["innerHTML"],X0=["data-testid"],Z0={class:"ff-array-field-item-content"},J0=["data-index","data-testid"],hr=we(t.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:n}){var k;t.useCssVars(T=>({"3e1c9ee2":E.value}));const o=e,r=n,{i18n:{t:i}}=ve(),{getDefault:a,getSchema:l}=Ve(),{value:s,...c}=ct(t.toRef(o,"name")),d=wt(c.path,t.toRef({...o,...t.useAttrs()})),f=t.computed(()=>{if(!c.path)throw new Error("Field path is required for sub-schema retrieval");const T=l(c.path.value);if(!T)throw new Error(`Schema not found for path: ${c.path.value}`);return T.elements}),u=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=Cc("ff-array-field",u),m=t.computed(()=>o.appearance==="card"?Te.KCard:"div");function h(T,x){return typeof o.itemLabel=="function"?o.itemLabel(T,x):o.itemLabel||d.value.label||`Item #${x}`}const y=t.computed(()=>u.value.map((T,x)=>({hash:`#${p(T,x)}`,title:""}))),g=t.ref((k=y.value[0])==null?void 0:k.hash),_=async()=>{var x;const T=a(pt(c.path.value,Ji));Array.isArray(s.value)||(s.value=[]),s.value.push(T),r("add"),o.appearance==="tabs"&&(await t.nextTick(),g.value=(x=y.value[y.value.length-1])==null?void 0:x.hash),await t.nextTick(),C(u.value.length+1)},w=async T=>{var x;Array.isArray(s.value)&&s.value.splice(T,1),r("remove",T),o.appearance==="tabs"&&(g.value=(x=y.value[Math.max(0,T-1)])==null?void 0:x.hash)},b=t.useTemplateRef("root");function C(T){var O;if(!b.value)return;const x=Math.max(0,Math.min(T,u.value.length-1));(O=b.value.querySelector(`[data-index="${x}"] [data-autofocus]`))==null||O.focus()}const E=t.computed(()=>{const{appearance:T,stickyTabs:x}=o;return T!=="tabs"||x==null||x===!1?null:typeof x=="number"?`${o.stickyTabs}px`:typeof x=="string"?x:"0"});return(T,x)=>{var Q;const O=t.resolveComponent("KAlert"),Y=t.resolveComponent("KLabel"),K=t.resolveComponent("KButton"),I=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(O,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:b,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${T.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":T.stickyTabs}]),"data-testid":`ff-array-${c.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${c.path.value}`},[t.createVNode(Y,t.mergeProps({class:"ff-array-field-label"},t.unref(d),{"data-testid":`ff-label-${c.path.value}`,"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(Q=t.unref(d).labelAttributes)!=null&&Q.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(T.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,W0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${c.path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,Y0),u.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[T.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${c.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(A,D)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(A,D),class:"ff-array-field-item","data-index":D,"data-testid":`ff-array-item-${c.path.value}.${D}`},{default:t.withCtx(()=>[t.createElementVNode("div",Z0,[T.$slots.item?t.renderSlot(T.$slots,"item",{key:0,fieldName:String(D),index:D},void 0,!0):t.createCommentVNode("",!0),f.value.type==="array"&&f.value.elements.type==="string"?(t.openBlock(),t.createBlock(aa,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(D)},null,8,["help","name"])):(t.openBlock(),t.createBlock(Qe,{key:2,name:String(D)},null,8,["name"]))]),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${D}`,icon:"",onClick:V=>w(D)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,X0)):(t.openBlock(),t.createBlock(t.unref(Te.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(I,{modelValue:g.value,"onUpdate:modelValue":x[0]||(x[0]=A=>g.value=A),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:y.value},t.createSlots({_:2},[t.renderList(u.value,(A,D)=>({name:t.unref(p)(A,D),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":D,"data-testid":`ff-array-item-${c.path.value}.${D}`},[T.$slots.item?t.renderSlot(T.$slots,"item",{key:0,fieldName:String(D),index:D},void 0,!0):(t.openBlock(),t.createBlock(Qe,{key:1,name:String(D)},null,8,["name"]))],8,J0)])})),t.renderList(u.value,(A,D)=>({name:`${t.unref(p)(A,D)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h(A,D))+" ",1),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${D}`,icon:"",onClick:t.withModifiers(V=>w(D),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,H0))}}}),[["__scopeId","data-v-3edd064c"]]),uo=Symbol(),Q0=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Ve(),r=t.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[n.index])==null?void 0:c.name)})}),i=t.computed(()=>r.value.map(({[uo]:l,name:s})=>({value:l,label:s}))),a=t.computed(()=>o.config.callouts[n.index]);return t.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(t.openBlock(),t.createBlock(dt,{name:l.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(kt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(dt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(kt,t.mergeProps(d,{items:t.unref(Zi)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),ew=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Ve();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[uo]=Nc())}return(r,i)=>(t.openBlock(),t.createBlock(hr,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:t.withCtx(({index:a,fieldName:l})=>[t.createVNode(Q0,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),Sc=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),r=t.inject(mr);if(!r)throw new Error(mr.toString()+"not provided");return o&&r.set(n.match,o),(i,a)=>null}}),mt=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),a=_0(e.schema);t.provide(hc,a);const l=m=>{var h;return tr((h=e.config)==null?void 0:h.hasValue)?e.config.hasValue(m):!!m},s=t.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((h,y)=>{const g=Object.keys(h)[0],_=Object.keys(y)[0],w=e.fieldsOrder.indexOf(g),b=e.fieldsOrder.indexOf(_);return w===-1&&b===-1?0:w===-1?1:b===-1?-1:w-b}):m});let c=!1;const d=t.reactive({});t.provide(gc,d),t.provide(ea,oc(i,"default",Tn));const f=new Map;t.provide(mr,f),t.provide(_c,e.config??{}),t.watch(d,m=>{c&&r("change",t.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 y;let h;!m||!l(t.toValue(m))?h=a.getDefault():h=xn(t.toValue(m)),tr((y=e.config)==null?void 0:y.prepareFormData)?u(e.config.prepareFormData(h)):u(h),c=!0}return t.onBeforeMount(()=>{p(e.data)}),t.watch(()=>e.data,m=>{p(m)},{deep:!0}),n({getInnerData:()=>t.toRaw(d)}),(m,h)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Tn)]))),t.renderSlot(m.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,y=>(t.openBlock(),t.createBlock(Qe,{key:Object.keys(y)[0],name:Object.keys(y)[0],onGlobalAction:h[0]||(h[0]=(g,_)=>r("globalAction",g,_))},null,8,["name"]))),128))])]),_:3}))}}),tw={class:"ff-advanced-fields"},la=we(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=Re.createI18n("en-us",je),{getSchema:o}=Ve(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Te.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"trigger-label":r.value?t.unref(n)("plugins.form.grouping.advanced_parameters.view"):t.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:t.withCtx(()=>[t.createElementVNode("div",tw,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(Qe,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(Qe,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(aa,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:t.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):t.createCommentVNode("",!0),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-1cf32bc7"]]),nw=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=ve();function a(d,f=!1){return d.reduce((u,{[uo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=xn(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[uo]=Nc()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(y=>p[y])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=xn(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{[uo]:h,depends_on:y,...g}=m;return{depends_on:y.map(_=>u[_]).filter(_=>_!=null),...g}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(mt,{class:"rc-config-form",config:r,data:d.data,schema:d.schema,tag:"div",onChange:c},{[t.unref(Tn)]:t.withCtx(()=>[t.createVNode(Sc,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(On,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(Sc,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(hr,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(ew),t.createVNode(dt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(dt,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(dt,t.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}),t.createVNode(la)]),_:2},1032,["data","schema"]))}}),ow={class:"sc-form-pinned-fields"},rw={class:"sc-form-config-form"},sa=we(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Re.createI18n("en-us",je),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.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=t.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:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("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?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),u.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1);function d(f){return Wi(f,["config","instance_name","partials","protocols","tags"])}return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",ow,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:t.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Te.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"sc-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",rw,[t.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"]]),iw=t.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(sa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(nw,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),aw={key:1},lw=["innerHTML"],sw={class:"horizontal-container"},cw=we(t.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Ve(),a=ct(t.toRef(()=>e.name)),l=wt(a.path,r),s=t.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=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",aw,[t.createVNode(p,t.normalizeProps(t.guardReactiveProps(t.unref(l).labelAttributes)),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l).label)+" ",1)]),_:2},[(m=t.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,lw)]),key:"0"}:void 0]),1040),t.createElementVNode("div",sw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(t.unref(Te.KRadio),{key:h.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=y=>t.unref(a).value.value=y),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),dw={class:"sp-form-request-limits-subtitle"},uw={class:"sp-form-request-limits-content"},fw={class:"sp-form-window-type"},pw={class:"sp-form-request-limits-items"},mw={class:"sp-form-request-limits-row"},gw=["id"],hw={class:"sp-form-request-limits-actions"},yw={key:0,class:"sp-form-request-limits-examples"},_w={class:"sp-form-request-limits-examples-badges"},ca="config.window_type",bw=we(t.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t:n}=Re.createI18n("en-us",je),{formData:o,getSelectItems:r,getSchema:i}=Ve(),a=t.computed(()=>{var w,b;const _=(b=(w=o.config)==null?void 0:w.limit)==null?void 0:b.map((C,E)=>{var k,T;return{limit:C,windowSize:(T=(k=o.config)==null?void 0:k.window_size)==null?void 0:T[E]}});return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=Cc("request-limits",a),s=_=>{var w,b;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(b=o.config.window_size)!=null&&b.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(ca))==null?void 0:g.default,f=t.computed(()=>hs(o,ca)),u=t.computed(()=>r(ca).sort((_,w)=>_.value===d?-1:w.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},h=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),y=(_,w)=>{if(w===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=w}),o.config.limit=[_.config.limit],o.config.window_size=[_.config.window_size]};return(_,w)=>{const b=t.resolveComponent("KLabel"),C=t.resolveComponent("KButton"),E=t.resolveComponent("KBadge"),k=t.resolveComponent("KTooltip"),T=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(T,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",dw,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",uw,[t.createElementVNode("div",fw,[t.createVNode(cw,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=x=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",pw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(x,O)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(x,O)},[t.createVNode(b,{for:`sp-form-request-limits-item-${O}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:O+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",mw,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${O}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode($n,{name:`$.config.limit.${O}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode($n,{name:`$.config.window_size.${O}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,gw),t.createElementVNode("div",hw,[t.createVNode(C,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(O)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(C,{appearance:"tertiary",onClick:()=>s(O)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),h.value.length>0?(t.openBlock(),t.createElementBlock("div",yw,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",_w,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(x,O)=>(t.openBlock(),t.createBlock(k,{key:`use-case-${O}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(x.description),1),w[1]||(w[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(x.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(x.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(E,{appearance:p.value===`${f.value}-${O}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>y(x,`${f.value}-${O}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(x.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),ww={id:"sp-form-error-legend",class:"sp-form-error-inputs"},kw=we(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Re.createI18n("en-us",je);return(o,r)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",ww,[t.createVNode($n,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(On,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Ew={class:"partial-config-card"},Cw={class:"config-card-row-label"},Nw={class:"label-text"},vw=["data-testid"],Sw=["data-testid"],xw={key:1},Aw=["data-testid"],Iw=["data-testid"],Tw=we(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Re.createI18n("en-us",je),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("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}=ue.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,y,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:((y=r[u])==null?void 0:y.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=m0(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(d));return(u,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",Ew,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:h,label:y,value:g,type:_})=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"partial-config-card-row"},[t.createElementVNode("div",Cw,[t.createElementVNode("div",Nw,t.toDisplayString(y),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(g)?(t.openBlock(),t.createElementBlock("div",xw,[_==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(g)},null,8,["text"])],8,Aw)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},t.toDisplayString(g),9,Iw))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,Sw))],8,vw)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Pw=we(t.defineComponent({__name:"NewRedisPartialModal",props:{visible:{type:Boolean,default:!1},partialType:{type:String,default:""}},emits:["partialUpdated","partialUpdateFailed","modalClose"],setup(e,{emit:n}){const o=e,{t:r}=Re.createI18n("en-us",je),i=t.inject(Ne.FORMS_CONFIG),a=n,{getMessageFromError:l}=ue.useErrors(),s=t.computed(()=>{switch(o.partialType){case eo.PartialType.REDIS_CE:return eo.PartialType.REDIS_EE;case eo.PartialType.REDIS_EE:return eo.PartialType.REDIS_CE;default:return}}),c=t.ref(!1),d=t.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"),t.nextTick(()=>{c.value=!1})};return t.watch(()=>o.visible,m=>{m&&(c.value=!0,t.nextTick(()=>{d.value="#km-modal-footer"}))}),(m,h)=>{const y=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(y,{class:"plugin-redis-partial-form","data-testid":"redis-partial-form-modal","full-screen":"",title:t.unref(r)("plugins.free-form.redis_partial.redis_partial_modal_title"),visible:c.value,onCancel:p},{footer:t.withCtx(()=>h[0]||(h[0]=[t.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:t.withCtx(()=>[t.createVNode(t.unref(eo.RedisConfigurationForm),{"action-teleport-target":d.value,config:t.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"]]),Ow="#52596e",$w="#e0e4ea",Bw="#007d60",xc="#d60027",Vw="#00abd2",Ac="#afb7c5",fo="12px",Rw="16px",da="20px",Mw="24px",Dw="8px",Ic=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"],Lw={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},Fw={key:0,class:"shared-redis-config"},Uw={class:"shared-redis-config-title"},Kw={class:"redis-config-select","data-testid":"redis-config-select"},jw={class:"selected-redis-config"},Gw=["data-testid"],qw={class:"select-item-name","data-testid":"selected-redis-config"},zw={class:"empty-redis-config","data-testid":"empty-redis-config"},Hw={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Yw="1000",Ww=we(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var X;const o=n,{t:r}=Re.createI18n("en-us",je),i=e,a=t.inject(Ic),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var H;return i.redisPath?i.redisPath:(H=a==null?void 0:a.redisPath)!=null&&H.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((X=a==null?void 0:a.redisType)==null?void 0:X.value)||"all",d=t.computed(()=>{var H;return!!((H=a==null?void 0:a.redisType)!=null&&H.value)}),f=t.ref(!1),u=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=ue.useErrors(),h=t.ref(i.defaultRedisConfigItem),y=t.ref({}),g=t.ref(),{value:_}=Ec("$.partials"),{value:w}=ct(s),b=t.inject(Ne.FORMS_CONFIG),{debouncedQueryChange:C,loading:E,error:k,loadItems:T,results:x}=ue.useDebouncedFilter(b,Tc[b.app].getAll,Yw,{fetchedItemsKey:"data",searchKeys:["id","name"]}),O=t.computed(()=>k.value?m(k.value):""),Y=H=>{let j=`${b.apiBaseUrl}${Tc[b.app].getOne}`;return b.app==="konnect"?j=j.replace(/{controlPlaneId}/gi,(b==null?void 0:b.controlPlaneId)||""):b.app==="kongManager"&&(j=j.replace(/\/{workspace}/gi,b!=null&&b.workspace?`/${b.workspace}`:"")),j=j.replace(/{id}/gi,String(H)),j},K=t.computed(()=>{const H=(x.value||[]).map(j=>({label:j.id,name:j.name,value:j.id,type:j.type,tag:u0(j)})).filter(j=>j.type==="redis-ce"||j.type==="redis-ee");return c!=="all"?H.filter(j=>j.type===c):H}),{axiosInstance:I}=ue.useAxios(b==null?void 0:b.axiosRequestConfig),Q=()=>{p.value?(g.value&&(_.value=g.value,h.value=g.value[0].id,w.value=void 0),w!=null&&w.value&&(y.value=w.value)):(Object.keys(y.value).length&&(w.value=y.value),_!=null&&_.value&&(g.value=_.value),_.value=l?null:void 0)},A=H=>{T(),o("globalAction","notify",H)},D=H=>{o("globalAction","notify",H)},V=async H=>{if(H){h.value=H,_.value=[{id:H}],g.value=[{id:H}],w.value=void 0;try{const j=await I.get(Y(H));if(j.data.config){const L=Object.assign(j.data,j.data.config);delete L.config,u.value=L}}catch(j){console.error(j)}}};return t.watch(()=>p.value,()=>{Q()}),t.onBeforeMount(()=>{var H;if(T(),i.defaultRedisConfigItem||_!=null&&_.value){const j=i.defaultRedisConfigItem||((H=_==null?void 0:_.value)==null?void 0:H[0].id);V(j),p.value=!0}else w!=null&&w.value&&(y.value=w.value)}),(H,j)=>{const L=t.resolveComponent("KBadge"),R=t.resolveComponent("KRadio"),oe=t.resolveComponent("KSelect"),ie=t.resolveComponent("KCard");return d.value?(t.openBlock(),t.createBlock(ie,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",Lw,[t.createVNode(R,{modelValue:p.value,"onUpdate:modelValue":j[0]||(j[0]=Z=>p.value=Z),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(r)("redis.shared_configuration.description"),label:t.unref(r)("redis.shared_configuration.label"),"selected-value":!0},{default:t.withCtx(()=>[t.createVNode(L,{appearance:"success"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),t.createVNode(R,{modelValue:p.value,"onUpdate:modelValue":j[1]||(j[1]=Z=>p.value=Z),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(r)("redis.dedicated_configuration.description"),label:t.unref(r)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),p.value?(t.openBlock(),t.createElementBlock("div",Fw,[t.createElementVNode("div",Uw,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",Kw,[t.createVNode(oe,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:K.value,loading:t.unref(E),"model-value":h.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:j[3]||(j[3]=Z=>V(Z==null?void 0:Z.value)),onQueryChange:t.unref(C)},{"selected-item-template":t.withCtx(({item:Z})=>[t.createElementVNode("div",jw,t.toDisplayString(Z.name),1)]),"item-template":t.withCtx(({item:Z})=>[t.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${Z.name}`},[t.createElementVNode("span",qw,t.toDisplayString(Z.name),1),t.createVNode(L,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(Z.tag),1)]),_:2},1024)],8,Gw)]),empty:t.withCtx(()=>[t.createElementVNode("div",zw,t.toDisplayString(t.unref(r)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":t.withCtx(()=>[t.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:j[2]||(j[2]=()=>f.value=!0)},[t.createVNode(t.unref(ke.AddIcon),{size:t.unref(fo)},null,8,["size"]),t.createElementVNode("span",null,t.toDisplayString(t.unref(r)("redis.shared_configuration.create_new_configuration",{type:t.unref(p0)(t.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),u.value?(t.openBlock(),t.createBlock(Tw,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),O.value?(t.openBlock(),t.createElementBlock("p",Hw,t.toDisplayString(O.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(dt,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(Pc),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(Pw,{"partial-type":t.unref(c),visible:f.value,onModalClose:j[4]||(j[4]=Z=>f.value=!1),onPartialUpdateFailed:D,onPartialUpdated:A},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(dt,t.mergeProps({key:1},i,{"fields-order":t.unref(Pc),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-12b9ad82"]]),Xw=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=Ve();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(vc,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(Ww,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),Zw=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change","globalAction"],setup(e,{emit:n}){const o=n,r={hasValue:a=>!!(a!=null&&a.config)};function i(a){var l;((l=a.config)==null?void 0:l.namespace)===null&&delete a.config.namespace,o("change",a)}return(a,l)=>(t.openBlock(),t.createBlock(mt,{class:"rc-config-form",config:r,data:a.data,schema:a.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(bw),t.createVNode(kw)]),_:1}),t.createVNode(la,null,{default:t.withCtx(()=>[t.createVNode(Qe,{name:"config.dictionary_name"}),t.createVNode(Qe,{name:"config.lock_dictionary_name"}),t.createVNode(Qe,{name:"config.strategy"}),t.createVNode(Xw,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(Qe,{name:"config.namespace"}),t.createVNode(Qe,{name:"config.hide_client_headers"}),t.createVNode(Qe,{name:"config.disable_penalty"}),t.createVNode(Qe,{name:"config.retry_after_jitter_max"}),t.createVNode(Qe,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),Jw=t.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},emits:["globalAction"],setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(sa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Zw,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),Qw={class:"ff-standard-layout"},ek={class:"enabled"},tk={class:"scope"},nk={key:0,class:"scope-detail"},ok=we(t.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:n}=Re.createI18n("en-us",je),o=e,r=t.useSlots();t.provide(Ne.AUTOFILL_SLOT,r==null?void 0:r[Ne.AUTOFILL_SLOT_NAME]);const i=t.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(_=>_.model==="enabled")}}),a=t.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(_=>_.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:g,description:_})=>({label:g,description:_}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var _;const g=["instance_name","protocols","tags"];return{fields:(_=o.formSchema)==null?void 0:_.fields.filter(w=>g.includes(w.model))}}),d=["config"],f=t.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(_=>d.includes(Object.keys(_)[0])),g});function u(g){return Wi(g,["config","partials"])}const p=t.ref(!1),m=t.ref(!0),h=Wi(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]);function y(g,_){h[_]=g,o.onModelUpdated(g,_)}return t.watch(p,g=>{g?Object.keys(h).forEach(_=>{o.onModelUpdated(h[_],_)}):Object.keys(h).forEach(_=>{o.onModelUpdated("",_)})}),(g,_)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",Qw,[t.createVNode(t.unref(ue.EntityFormBlock),{description:t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",ek,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",tk,[t.createVNode(t.unref(Te.KRadio),t.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[0]||(_[0]=b=>p.value=b),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(Te.KRadio),t.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[1]||(_[1]=b=>p.value=b),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),p.value?(t.openBlock(),t.createElementBlock("div",nk,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:y},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:m.value,"onUpdate:modelValue":_[2]||(_[2]=b=>m.value=b),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.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:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ue.EntityFormBlock),{description:t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(g.$slots,"default",{data:u(g.model),schema:f.value,onChange:_[3]||(_[3]=(...b)=>g.onFormChange&&g.onFormChange(...b))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-a727028f"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Oc(e){return typeof e>"u"||e===null}function rk(e){return typeof e=="object"&&e!==null}function ik(e){return Array.isArray(e)?e:Oc(e)?[]:[e]}function ak(e,n){var o,r,i,a;if(n)for(a=Object.keys(n),o=0,r=a.length;o<r;o+=1)i=a[o],e[i]=n[i];return e}function lk(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function sk(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var ck=Oc,dk=rk,uk=ik,fk=lk,pk=sk,mk=ak,Ge={isNothing:ck,isObject:dk,toArray:uk,repeat:fk,isNegativeZero:pk,extend:mk};function $c(e,n){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)+")",!n&&e.mark.snippet&&(o+=`
13
+ client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Qt},{ttl:{help:"Time-to-live value for data"}}]},um=e=>(e==null?void 0:e.app)==="kongManager"?{shamefullyTransformPayload:({payload:n})=>{(e!=null&&e.credential&&typeof n.ttl!="number"||Number.isNaN(n.ttl))&&(n.ttl=0)}}:{},fm={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."}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},It={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",isEnterprise:!1,nameKey:"plugins.meta.jwt.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",...z.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",...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",isEnterprise:!1,nameKey:"plugins.meta.cors.name",...z.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"]]},...z.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",isEnterprise:!0,nameKey:"plugins.meta.opa.name",...z.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",...z.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"]]},...z.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"]]},...z.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"]]},...z.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"]]]},...z.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",...z.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",...z.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",...z.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",...z.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"]]},...z.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",...z.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"]]},...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",...z.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",...z.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,...z.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,...z.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,...z.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,...z.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,...z.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,...z.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,...z.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,...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",isEnterprise:!0,nameKey:"plugins.meta.post-function.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",isEnterprise:!1,nameKey:"plugins.meta.datadog.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",isEnterprise:!0,nameKey:"plugins.meta.collector.name",...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",...z.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"]]},...z.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",...z.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"]]},...z.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",isEnterprise:!1,nameKey:"plugins.meta.file-log.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",isEnterprise:!1,nameKey:"plugins.meta.http-log.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",isEnterprise:!1,nameKey:"plugins.meta.loggly.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",isEnterprise:!1,nameKey:"plugins.meta.statsd.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",isEnterprise:!1,nameKey:"plugins.meta.syslog.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",isEnterprise:!1,nameKey:"plugins.meta.session.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",isEnterprise:!1,nameKey:"plugins.meta.acme.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",...z.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"]]},...z.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",...z.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"]]},...z.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",...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",isEnterprise:!0,nameKey:"plugins.meta.saml.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",...z.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",...z.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",...z.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,...z.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,...z.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,...z.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"]]]},...z.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",isEnterprise:!0,nameKey:"plugins.meta.confluent.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",isEnterprise:!1,nameKey:"plugins.meta.redirect.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",isEnterprise:!1,nameKey:"plugins.meta.kafka-consume.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",isEnterprise:!1,nameKey:"plugins.meta.confluent-consume.name",...z.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",isEnterprise:!1,nameKey:"plugins.meta.request-callout.name",...z.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,...z.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,...z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",isEnterprise:!1,nameKey:"plugins.meta.datakit.name",...z.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,...z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",isEnterprise:!1,nameKey:"plugins.meta.solace-upstream.name",...z.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,...z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]}},Nn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ul,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Jt(Ul),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Kl,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Jt(Kl)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:jl,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Jt(jl)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:zl,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Jt(zl)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:ql,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Jt(ql)},"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:Jt(Gl)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:sm,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},pm={acls:em,basicauth_credentials:tm,keyauth_credentials:am,keyauth_enc_credentials:fm,oauth2_credentials:dm,hmacauth_credentials:lm,jwt_secrets:cm},mm=()=>{const{i18n:{t:e}}=ve(),n={},o={};for(const[i,a]of Object.entries(It))n[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:n,credentialMetaData:o,credentialSchemas:Nn,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},no={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},gm={"config-prompts-prepend":{...no,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":{...no,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"}]}}}},hm={"config-templates":{...no,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"}]}}}},ym={shamefullyTransformPayload:({originalModel:e,model:n,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&n[l]?!0:e[l]===n[l]?!1:e[l]===null?n[l]!==""&&!Number.isNaN(n[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)}},_m={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},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:Cn.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"}},Pe={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"},Qo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},wm={"config-metrics":{...Qo,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"]}},Em={"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}},Nm={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},vm={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Hl=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:Cn.fields.arrayItems({newElementButtonLabel:"Add"})}),vm),er={"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,n)=>({...e,[n]:Cn.fields.arrayItems({newElementButtonLabel:"Add"})}),Sm),Yl={"config-add-json":{...Pe,label:"Config.Add.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Pe,label:"Config.Append.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Pe,label:"Config.Remove.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Pe,label:"Config.Rename.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Pe,label:"Config.Replace.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}}},Am={...Yl,"config-allow-json":{...Pe,label:"Config.Allow.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Pe,label:"Config.Transform.Functions",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Pe,label:"Config.Transform.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}}},Im={"config-rules":{...no,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"}]}}}},Tm={"config-session_redis_cluster_nodes":{...no,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"}]}}}},Pm={"config-metrics":{...Qo,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":{...Qo,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"}};var Wl=typeof global=="object"&&global&&global.Object===Object&&global,Vm=typeof self=="object"&&self&&self.Object===Object&&self,bt=Wl||Vm||Function("return this")(),lt=bt.Symbol,Xl=Object.prototype,Rm=Xl.hasOwnProperty,Mm=Xl.toString,oo=lt?lt.toStringTag:void 0;function Dm(e){var n=Rm.call(e,oo),o=e[oo];try{e[oo]=void 0;var r=!0}catch{}var i=Mm.call(e);return r&&(n?e[oo]=o:delete e[oo]),i}var Fm=Object.prototype,Lm=Fm.toString;function Um(e){return Lm.call(e)}var Km="[object Null]",jm="[object Undefined]",Zl=lt?lt.toStringTag:void 0;function en(e){return e==null?e===void 0?jm:Km:Zl&&Zl in Object(e)?Dm(e):Um(e)}function Tt(e){return e!=null&&typeof e=="object"}var Gm="[object Symbol]";function Ei(e){return typeof e=="symbol"||Tt(e)&&en(e)==Gm}function Jl(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var ft=Array.isArray,Ql=lt?lt.prototype:void 0,es=Ql?Ql.toString:void 0;function ts(e){if(typeof e=="string")return e;if(ft(e))return Jl(e,ts)+"";if(Ei(e))return es?es.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function tn(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function qm(e){return e}var zm="[object AsyncFunction]",Hm="[object Function]",Ym="[object GeneratorFunction]",Wm="[object Proxy]";function tr(e){if(!tn(e))return!1;var n=en(e);return n==Hm||n==Ym||n==zm||n==Wm}var Ci=bt["__core-js_shared__"],ns=function(){var e=/[^.]+$/.exec(Ci&&Ci.keys&&Ci.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Xm(e){return!!ns&&ns in e}var Zm=Function.prototype,Jm=Zm.toString;function nn(e){if(e!=null){try{return Jm.call(e)}catch{}try{return e+""}catch{}}return""}var Qm=/[\\^$.*+?()[\]{}|]/g,eg=/^\[object .+?Constructor\]$/,tg=Function.prototype,ng=Object.prototype,og=tg.toString,rg=ng.hasOwnProperty,ig=RegExp("^"+og.call(rg).replace(Qm,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function ag(e){if(!tn(e)||Xm(e))return!1;var n=tr(e)?ig:eg;return n.test(nn(e))}function lg(e,n){return e==null?void 0:e[n]}function on(e,n){var o=lg(e,n);return ag(o)?o:void 0}var Ni=on(bt,"WeakMap"),os=Object.create,sg=function(){function e(){}return function(n){if(!tn(n))return{};if(os)return os(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function cg(e,n,o){switch(o.length){case 0:return e.call(n);case 1:return e.call(n,o[0]);case 2:return e.call(n,o[0],o[1]);case 3:return e.call(n,o[0],o[1],o[2])}return e.apply(n,o)}function dg(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var ug=800,fg=16,pg=Date.now;function mg(e){var n=0,o=0;return function(){var r=pg(),i=fg-(r-o);if(o=r,i>0){if(++n>=ug)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function gg(e){return function(){return e}}var nr=function(){try{var e=on(Object,"defineProperty");return e({},"",{}),e}catch{}}(),hg=nr?function(e,n){return nr(e,"toString",{configurable:!0,enumerable:!1,value:gg(n),writable:!0})}:qm,yg=mg(hg);function _g(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var bg=9007199254740991,wg=/^(?:0|[1-9]\d*)$/;function vi(e,n){var o=typeof e;return n=n??bg,!!n&&(o=="number"||o!="symbol"&&wg.test(e))&&e>-1&&e%1==0&&e<n}function rs(e,n,o){n=="__proto__"&&nr?nr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function Si(e,n){return e===n||e!==e&&n!==n}var kg=Object.prototype,Eg=kg.hasOwnProperty;function xi(e,n,o){var r=e[n];(!(Eg.call(e,n)&&Si(r,o))||o===void 0&&!(n in e))&&rs(e,n,o)}function ro(e,n,o,r){var i=!o;o||(o={});for(var a=-1,l=n.length;++a<l;){var s=n[a],c=void 0;c===void 0&&(c=e[s]),i?rs(o,s,c):xi(o,s,c)}return o}var is=Math.max;function Cg(e,n,o){return n=is(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=is(r.length-n,0),l=Array(a);++i<a;)l[i]=r[n+i];i=-1;for(var s=Array(n+1);++i<n;)s[i]=r[i];return s[n]=o(l),cg(e,this,s)}}var Ng=9007199254740991;function Ai(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Ng}function Ii(e){return e!=null&&Ai(e.length)&&!tr(e)}var vg=Object.prototype;function or(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||vg;return e===o}function Sg(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var xg="[object Arguments]";function as(e){return Tt(e)&&en(e)==xg}var ls=Object.prototype,Ag=ls.hasOwnProperty,Ig=ls.propertyIsEnumerable,rr=as(function(){return arguments}())?as:function(e){return Tt(e)&&Ag.call(e,"callee")&&!Ig.call(e,"callee")};function Tg(){return!1}var ss=typeof he=="object"&&he&&!he.nodeType&&he,cs=ss&&typeof module=="object"&&module&&!module.nodeType&&module,Pg=cs&&cs.exports===ss,ds=Pg?bt.Buffer:void 0,Og=ds?ds.isBuffer:void 0,io=Og||Tg,$g="[object Arguments]",Bg="[object Array]",Vg="[object Boolean]",Rg="[object Date]",Mg="[object Error]",Dg="[object Function]",Fg="[object Map]",Lg="[object Number]",Ug="[object Object]",Kg="[object RegExp]",jg="[object Set]",Gg="[object String]",qg="[object WeakMap]",zg="[object ArrayBuffer]",Hg="[object DataView]",Yg="[object Float32Array]",Wg="[object Float64Array]",Xg="[object Int8Array]",Zg="[object Int16Array]",Jg="[object Int32Array]",Qg="[object Uint8Array]",eh="[object Uint8ClampedArray]",th="[object Uint16Array]",nh="[object Uint32Array]",Oe={};Oe[Yg]=Oe[Wg]=Oe[Xg]=Oe[Zg]=Oe[Jg]=Oe[Qg]=Oe[eh]=Oe[th]=Oe[nh]=!0,Oe[$g]=Oe[Bg]=Oe[zg]=Oe[Vg]=Oe[Hg]=Oe[Rg]=Oe[Mg]=Oe[Dg]=Oe[Fg]=Oe[Lg]=Oe[Ug]=Oe[Kg]=Oe[jg]=Oe[Gg]=Oe[qg]=!1;function oh(e){return Tt(e)&&Ai(e.length)&&!!Oe[en(e)]}function Ti(e){return function(n){return e(n)}}var us=typeof he=="object"&&he&&!he.nodeType&&he,ao=us&&typeof module=="object"&&module&&!module.nodeType&&module,rh=ao&&ao.exports===us,Pi=rh&&Wl.process,vn=function(){try{var e=ao&&ao.require&&ao.require("util").types;return e||Pi&&Pi.binding&&Pi.binding("util")}catch{}}(),fs=vn&&vn.isTypedArray,Oi=fs?Ti(fs):oh,ih=Object.prototype,ah=ih.hasOwnProperty;function ps(e,n){var o=ft(e),r=!o&&rr(e),i=!o&&!r&&io(e),a=!o&&!r&&!i&&Oi(e),l=o||r||i||a,s=l?Sg(e.length,String):[],c=s.length;for(var d in e)(n||ah.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||vi(d,c)))&&s.push(d);return s}function ms(e,n){return function(o){return e(n(o))}}var lh=ms(Object.keys,Object),sh=Object.prototype,ch=sh.hasOwnProperty;function gs(e){if(!or(e))return lh(e);var n=[];for(var o in Object(e))ch.call(e,o)&&o!="constructor"&&n.push(o);return n}function $i(e){return Ii(e)?ps(e):gs(e)}function dh(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var uh=Object.prototype,fh=uh.hasOwnProperty;function ph(e){if(!tn(e))return dh(e);var n=or(e),o=[];for(var r in e)r=="constructor"&&(n||!fh.call(e,r))||o.push(r);return o}function Bi(e){return Ii(e)?ps(e,!0):ph(e)}var mh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,gh=/^\w*$/;function hh(e,n){if(ft(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Ei(e)?!0:gh.test(e)||!mh.test(e)||n!=null&&e in Object(n)}var lo=on(Object,"create");function yh(){this.__data__=lo?lo(null):{},this.size=0}function _h(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var bh="__lodash_hash_undefined__",wh=Object.prototype,kh=wh.hasOwnProperty;function Eh(e){var n=this.__data__;if(lo){var o=n[e];return o===bh?void 0:o}return kh.call(n,e)?n[e]:void 0}var Ch=Object.prototype,Nh=Ch.hasOwnProperty;function vh(e){var n=this.__data__;return lo?n[e]!==void 0:Nh.call(n,e)}var Sh="__lodash_hash_undefined__";function xh(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=lo&&n===void 0?Sh:n,this}function rn(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}rn.prototype.clear=yh,rn.prototype.delete=_h,rn.prototype.get=Eh,rn.prototype.has=vh,rn.prototype.set=xh;function Ah(){this.__data__=[],this.size=0}function ir(e,n){for(var o=e.length;o--;)if(Si(e[o][0],n))return o;return-1}var Ih=Array.prototype,Th=Ih.splice;function Ph(e){var n=this.__data__,o=ir(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Th.call(n,o,1),--this.size,!0}function Oh(e){var n=this.__data__,o=ir(n,e);return o<0?void 0:n[o][1]}function $h(e){return ir(this.__data__,e)>-1}function Bh(e,n){var o=this.__data__,r=ir(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Pt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Pt.prototype.clear=Ah,Pt.prototype.delete=Ph,Pt.prototype.get=Oh,Pt.prototype.has=$h,Pt.prototype.set=Bh;var so=on(bt,"Map");function Vh(){this.size=0,this.__data__={hash:new rn,map:new(so||Pt),string:new rn}}function Rh(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function ar(e,n){var o=e.__data__;return Rh(n)?o[typeof n=="string"?"string":"hash"]:o.map}function Mh(e){var n=ar(this,e).delete(e);return this.size-=n?1:0,n}function Dh(e){return ar(this,e).get(e)}function Fh(e){return ar(this,e).has(e)}function Lh(e,n){var o=ar(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Ot(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Ot.prototype.clear=Vh,Ot.prototype.delete=Mh,Ot.prototype.get=Dh,Ot.prototype.has=Fh,Ot.prototype.set=Lh;var Uh="Expected a function";function Vi(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(Uh);var o=function(){var r=arguments,i=n?n.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(Vi.Cache||Ot),o}Vi.Cache=Ot;var Kh=500;function jh(e){var n=Vi(e,function(r){return o.size===Kh&&o.clear(),r}),o=n.cache;return n}var Gh=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,qh=/\\(\\)?/g,zh=jh(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Gh,function(o,r,i,a){n.push(i?a.replace(qh,"$1"):r||o)}),n});function lr(e){return e==null?"":ts(e)}function Sn(e,n){return ft(e)?e:hh(e,n)?[e]:zh(lr(e))}function sr(e){if(typeof e=="string"||Ei(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Ri(e,n){n=Sn(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[sr(n[o++])];return o&&o==r?e:void 0}function hs(e,n,o){var r=e==null?void 0:Ri(e,n);return r===void 0?o:r}function Mi(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var ys=lt?lt.isConcatSpreadable:void 0;function Hh(e){return ft(e)||rr(e)||!!(ys&&e&&e[ys])}function Yh(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=Hh),i||(i=[]);++a<l;){var s=e[a];o(s)?Mi(i,s):i[i.length]=s}return i}function Wh(e){var n=e==null?0:e.length;return n?Yh(e):[]}function _s(e){return yg(Cg(e,void 0,Wh),e+"")}var Di=ms(Object.getPrototypeOf,Object),Xh="[object Object]",Zh=Function.prototype,Jh=Object.prototype,bs=Zh.toString,Qh=Jh.hasOwnProperty,ey=bs.call(Object);function ty(e){if(!Tt(e)||en(e)!=Xh)return!1;var n=Di(e);if(n===null)return!0;var o=Qh.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&bs.call(o)==ey}function ws(e,n,o){var r=-1,i=e.length;n<0&&(n=-n>i?0:i+n),o=o>i?i:o,o<0&&(o+=i),i=n>o?0:o-n>>>0,n>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+n];return a}function ny(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:ws(e,n,o)}var oy="\\ud800-\\udfff",ry="\\u0300-\\u036f",iy="\\ufe20-\\ufe2f",ay="\\u20d0-\\u20ff",ly=ry+iy+ay,sy="\\ufe0e\\ufe0f",cy="\\u200d",dy=RegExp("["+cy+oy+ly+sy+"]");function ks(e){return dy.test(e)}function uy(e){return e.split("")}var Es="\\ud800-\\udfff",fy="\\u0300-\\u036f",py="\\ufe20-\\ufe2f",my="\\u20d0-\\u20ff",gy=fy+py+my,hy="\\ufe0e\\ufe0f",yy="["+Es+"]",Fi="["+gy+"]",Li="\\ud83c[\\udffb-\\udfff]",_y="(?:"+Fi+"|"+Li+")",Cs="[^"+Es+"]",Ns="(?:\\ud83c[\\udde6-\\uddff]){2}",vs="[\\ud800-\\udbff][\\udc00-\\udfff]",by="\\u200d",Ss=_y+"?",xs="["+hy+"]?",wy="(?:"+by+"(?:"+[Cs,Ns,vs].join("|")+")"+xs+Ss+")*",ky=xs+Ss+wy,Ey="(?:"+[Cs+Fi+"?",Fi,Ns,vs,yy].join("|")+")",Cy=RegExp(Li+"(?="+Li+")|"+Ey+ky,"g");function Ny(e){return e.match(Cy)||[]}function vy(e){return ks(e)?Ny(e):uy(e)}function Sy(e){return function(n){n=lr(n);var o=ks(n)?vy(n):void 0,r=o?o[0]:n.charAt(0),i=o?ny(o,1).join(""):n.slice(1);return r[e]()+i}}var xy=Sy("toUpperCase");function Ay(e){return xy(lr(e).toLowerCase())}function Iy(){this.__data__=new Pt,this.size=0}function Ty(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function Py(e){return this.__data__.get(e)}function Oy(e){return this.__data__.has(e)}var $y=200;function By(e,n){var o=this.__data__;if(o instanceof Pt){var r=o.__data__;if(!so||r.length<$y-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Ot(r)}return o.set(e,n),this.size=o.size,this}function $t(e){var n=this.__data__=new Pt(e);this.size=n.size}$t.prototype.clear=Iy,$t.prototype.delete=Ty,$t.prototype.get=Py,$t.prototype.has=Oy,$t.prototype.set=By;function Vy(e,n){return e&&ro(n,$i(n),e)}function Ry(e,n){return e&&ro(n,Bi(n),e)}var As=typeof he=="object"&&he&&!he.nodeType&&he,Is=As&&typeof module=="object"&&module&&!module.nodeType&&module,My=Is&&Is.exports===As,Ts=My?bt.Buffer:void 0,Ps=Ts?Ts.allocUnsafe:void 0;function Dy(e,n){if(n)return e.slice();var o=e.length,r=Ps?Ps(o):new e.constructor(o);return e.copy(r),r}function Fy(e,n){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];n(l,o,e)&&(a[i++]=l)}return a}function Os(){return[]}var Ly=Object.prototype,Uy=Ly.propertyIsEnumerable,$s=Object.getOwnPropertySymbols,Ui=$s?function(e){return e==null?[]:(e=Object(e),Fy($s(e),function(n){return Uy.call(e,n)}))}:Os;function Ky(e,n){return ro(e,Ui(e),n)}var jy=Object.getOwnPropertySymbols,Bs=jy?function(e){for(var n=[];e;)Mi(n,Ui(e)),e=Di(e);return n}:Os;function Gy(e,n){return ro(e,Bs(e),n)}function Vs(e,n,o){var r=n(e);return ft(e)?r:Mi(r,o(e))}function Ki(e){return Vs(e,$i,Ui)}function Rs(e){return Vs(e,Bi,Bs)}var ji=on(bt,"DataView"),Gi=on(bt,"Promise"),qi=on(bt,"Set"),Ms="[object Map]",qy="[object Object]",Ds="[object Promise]",Fs="[object Set]",Ls="[object WeakMap]",Us="[object DataView]",zy=nn(ji),Hy=nn(so),Yy=nn(Gi),Wy=nn(qi),Xy=nn(Ni),st=en;(ji&&st(new ji(new ArrayBuffer(1)))!=Us||so&&st(new so)!=Ms||Gi&&st(Gi.resolve())!=Ds||qi&&st(new qi)!=Fs||Ni&&st(new Ni)!=Ls)&&(st=function(e){var n=en(e),o=n==qy?e.constructor:void 0,r=o?nn(o):"";if(r)switch(r){case zy:return Us;case Hy:return Ms;case Yy:return Ds;case Wy:return Fs;case Xy:return Ls}return n});var Zy=Object.prototype,Jy=Zy.hasOwnProperty;function Qy(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&Jy.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var cr=bt.Uint8Array;function zi(e){var n=new e.constructor(e.byteLength);return new cr(n).set(new cr(e)),n}function e_(e,n){var o=n?zi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var t_=/\w*$/;function n_(e){var n=new e.constructor(e.source,t_.exec(e));return n.lastIndex=e.lastIndex,n}var Ks=lt?lt.prototype:void 0,js=Ks?Ks.valueOf:void 0;function o_(e){return js?Object(js.call(e)):{}}function r_(e,n){var o=n?zi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var i_="[object Boolean]",a_="[object Date]",l_="[object Map]",s_="[object Number]",c_="[object RegExp]",d_="[object Set]",u_="[object String]",f_="[object Symbol]",p_="[object ArrayBuffer]",m_="[object DataView]",g_="[object Float32Array]",h_="[object Float64Array]",y_="[object Int8Array]",__="[object Int16Array]",b_="[object Int32Array]",w_="[object Uint8Array]",k_="[object Uint8ClampedArray]",E_="[object Uint16Array]",C_="[object Uint32Array]";function N_(e,n,o){var r=e.constructor;switch(n){case p_:return zi(e);case i_:case a_:return new r(+e);case m_:return e_(e,o);case g_:case h_:case y_:case __:case b_:case w_:case k_:case E_:case C_:return r_(e,o);case l_:return new r;case s_:case u_:return new r(e);case c_:return n_(e);case d_:return new r;case f_:return o_(e)}}function v_(e){return typeof e.constructor=="function"&&!or(e)?sg(Di(e)):{}}var S_="[object Map]";function x_(e){return Tt(e)&&st(e)==S_}var Gs=vn&&vn.isMap,A_=Gs?Ti(Gs):x_,I_="[object Set]";function T_(e){return Tt(e)&&st(e)==I_}var qs=vn&&vn.isSet,P_=qs?Ti(qs):T_,O_=1,$_=2,B_=4,zs="[object Arguments]",V_="[object Array]",R_="[object Boolean]",M_="[object Date]",D_="[object Error]",Hs="[object Function]",F_="[object GeneratorFunction]",L_="[object Map]",U_="[object Number]",Ys="[object Object]",K_="[object RegExp]",j_="[object Set]",G_="[object String]",q_="[object Symbol]",z_="[object WeakMap]",H_="[object ArrayBuffer]",Y_="[object DataView]",W_="[object Float32Array]",X_="[object Float64Array]",Z_="[object Int8Array]",J_="[object Int16Array]",Q_="[object Int32Array]",eb="[object Uint8Array]",tb="[object Uint8ClampedArray]",nb="[object Uint16Array]",ob="[object Uint32Array]",Ae={};Ae[zs]=Ae[V_]=Ae[H_]=Ae[Y_]=Ae[R_]=Ae[M_]=Ae[W_]=Ae[X_]=Ae[Z_]=Ae[J_]=Ae[Q_]=Ae[L_]=Ae[U_]=Ae[Ys]=Ae[K_]=Ae[j_]=Ae[G_]=Ae[q_]=Ae[eb]=Ae[tb]=Ae[nb]=Ae[ob]=!0,Ae[D_]=Ae[Hs]=Ae[z_]=!1;function co(e,n,o,r,i,a){var l,s=n&O_,c=n&$_,d=n&B_;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!tn(e))return e;var f=ft(e);if(f){if(l=Qy(e),!s)return dg(e,l)}else{var u=st(e),p=u==Hs||u==F_;if(io(e))return Dy(e,s);if(u==Ys||u==zs||p&&!i){if(l=c||p?{}:v_(e),!s)return c?Gy(e,Ry(l,e)):Ky(e,Vy(l,e))}else{if(!Ae[u])return i?e:{};l=N_(e,u,s)}}a||(a=new $t);var m=a.get(e);if(m)return m;a.set(e,l),P_(e)?e.forEach(function(g){l.add(co(g,n,o,g,e,a))}):A_(e)&&e.forEach(function(g,_){l.set(_,co(g,n,o,_,e,a))});var h=d?c?Rs:Ki:c?Bi:$i,y=f?void 0:h(e);return _g(y||e,function(g,_){y&&(_=g,g=e[_]),xi(l,_,co(g,n,o,_,e,a))}),l}var rb=1,ib=4;function xn(e){return co(e,rb|ib)}var ab="__lodash_hash_undefined__";function lb(e){return this.__data__.set(e,ab),this}function sb(e){return this.__data__.has(e)}function dr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Ot;++n<o;)this.add(e[n])}dr.prototype.add=dr.prototype.push=lb,dr.prototype.has=sb;function cb(e,n){for(var o=-1,r=e==null?0:e.length;++o<r;)if(n(e[o],o,e))return!0;return!1}function db(e,n){return e.has(n)}var ub=1,fb=2;function Ws(e,n,o,r,i,a){var l=o&ub,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(n);if(d&&f)return d==n&&f==e;var u=-1,p=!0,m=o&fb?new dr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var h=e[u],y=n[u];if(r)var g=l?r(y,h,u,n,e,a):r(h,y,u,e,n,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!cb(n,function(_,w){if(!db(m,w)&&(h===_||i(h,_,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(h===y||i(h,y,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function pb(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function mb(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var gb=1,hb=2,yb="[object Boolean]",_b="[object Date]",bb="[object Error]",wb="[object Map]",kb="[object Number]",Eb="[object RegExp]",Cb="[object Set]",Nb="[object String]",vb="[object Symbol]",Sb="[object ArrayBuffer]",xb="[object DataView]",Xs=lt?lt.prototype:void 0,Hi=Xs?Xs.valueOf:void 0;function Ab(e,n,o,r,i,a,l){switch(o){case xb:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case Sb:return!(e.byteLength!=n.byteLength||!a(new cr(e),new cr(n)));case yb:case _b:case kb:return Si(+e,+n);case bb:return e.name==n.name&&e.message==n.message;case Eb:case Nb:return e==n+"";case wb:var s=pb;case Cb:var c=r&gb;if(s||(s=mb),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=hb,l.set(e,n);var f=Ws(s(e),s(n),r,i,a,l);return l.delete(e),f;case vb:if(Hi)return Hi.call(e)==Hi.call(n)}return!1}var Ib=1,Tb=Object.prototype,Pb=Tb.hasOwnProperty;function Ob(e,n,o,r,i,a){var l=o&Ib,s=Ki(e),c=s.length,d=Ki(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:Pb.call(n,p)))return!1}var m=a.get(e),h=a.get(n);if(m&&h)return m==n&&h==e;var y=!0;a.set(e,n),a.set(n,e);for(var g=l;++u<c;){p=s[u];var _=e[p],w=n[p];if(r)var b=l?r(w,_,p,n,e,a):r(_,w,p,e,n,a);if(!(b===void 0?_===w||i(_,w,o,r,a):b)){y=!1;break}g||(g=p=="constructor")}if(y&&!g){var C=e.constructor,E=n.constructor;C!=E&&"constructor"in e&&"constructor"in n&&!(typeof C=="function"&&C instanceof C&&typeof E=="function"&&E instanceof E)&&(y=!1)}return a.delete(e),a.delete(n),y}var $b=1,Zs="[object Arguments]",Js="[object Array]",ur="[object Object]",Bb=Object.prototype,Qs=Bb.hasOwnProperty;function Vb(e,n,o,r,i,a){var l=ft(e),s=ft(n),c=l?Js:st(e),d=s?Js:st(n);c=c==Zs?ur:c,d=d==Zs?ur:d;var f=c==ur,u=d==ur,p=c==d;if(p&&io(e)){if(!io(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new $t),l||Oi(e)?Ws(e,n,o,r,i,a):Ab(e,n,c,o,r,i,a);if(!(o&$b)){var m=f&&Qs.call(e,"__wrapped__"),h=u&&Qs.call(n,"__wrapped__");if(m||h){var y=m?e.value():e,g=h?n.value():n;return a||(a=new $t),i(y,g,o,r,a)}}return p?(a||(a=new $t),Ob(e,n,o,r,i,a)):!1}function ec(e,n,o,r,i){return e===n?!0:e==null||n==null||!Tt(e)&&!Tt(n)?e!==e&&n!==n:Vb(e,n,o,r,ec,i)}function Rb(e,n){return e!=null&&n in Object(e)}function Mb(e,n,o){n=Sn(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=sr(n[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)&&vi(l,i)&&(ft(e)||rr(e)))}function Db(e,n){return e!=null&&Mb(e,n,Rb)}function Fb(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function Lb(e,n){return n.length<2?e:Ri(e,ws(n,0,-1))}var Ub="[object Map]",Kb="[object Set]",jb=Object.prototype,Gb=jb.hasOwnProperty;function tc(e){if(e==null)return!0;if(Ii(e)&&(ft(e)||typeof e=="string"||typeof e.splice=="function"||io(e)||Oi(e)||rr(e)))return!e.length;var n=st(e);if(n==Ub||n==Kb)return!e.size;if(or(e))return!gs(e).length;for(var o in e)if(Gb.call(e,o))return!1;return!0}function Yi(e,n){return ec(e,n)}function nc(e,n){return n=Sn(n,e),e=Lb(e,n),e==null||delete e[sr(Fb(n))]}function qb(e){return ty(e)?void 0:e}var zb=1,Hb=2,Yb=4,oc=_s(function(e,n){var o={};if(e==null)return o;var r=!1;n=Jl(n,function(a){return a=Sn(a,e),r||(r=a.length>1),a}),ro(e,Rs(e),o),r&&(o=co(o,zb|Hb|Yb,qb));for(var i=n.length;i--;)nc(o,n[i]);return o});function rc(e,n,o,r){if(!tn(e))return e;n=Sn(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=sr(n[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=tn(f)?f:vi(n[i+1])?[]:{})}xi(s,c,d),s=s[c]}return e}function Wb(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=Ri(e,l);o(s,l)&&rc(a,Sn(l,e),s)}return a}function Xb(e,n){return Wb(e,n,function(o,r){return Db(e,r)})}var Wi=_s(function(e,n){return e==null?{}:Xb(e,n)});function Zb(e,n,o){return e==null?e:rc(e,n,o)}var Jb=0;function fr(e){var n=++Jb;return lr(e)+n}function ic(e,n){return e==null?!0:nc(e,n)}const Qb=e=>{const n=Object.keys(e);return n.length===0?!0:n.length===2&&n.includes("ssl_verify")&&n.includes("authentication")?Yi(e,{ssl_verify:!0,authentication:{mode:"none"}}):!1},an=e=>{var o,r;e.confluent&&Qb(e==null?void 0:e.confluent)&&(e.confluent=null);const n=(r=(o=e==null?void 0:e.confluent)==null?void 0:o.authentication)==null?void 0:r.basic;n&&!n.password&&!n.username&&delete e.confluent.authentication.basic},e0={"config-message_by_lua_functions":{...Pe,inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},t0={"config-message_by_lua_functions":{...Pe,inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},n0={shamefullyTransformPayload:({payload:e})=>{var n,o,r;an((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{an(i==null?void 0:i.schema_registry)})}},o0={shamefullyTransformPayload:({payload:e})=>{var n,o,r;an((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{an(i==null?void 0:i.schema_registry)})}},r0={shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},i0={"config-static_tags":{...Qo,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"}]}}}},a0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp":"AIMcpForm"};function ac(e,n){const o=a0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Xi=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),lc={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR")},sc=Symbol("TOASTER_PROVIDER");function cc(){return t.inject(Xi,[])}function l0(e){t.provide(Xi,e)}const s0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},dc=(e,n)=>(e.order??0)-(n.order??0),uc=(e,n)=>s0(e,n)||dc(e,n)||e.model.localeCompare(n.model),$e={useI18n:ve,usePluginMetaData:mm,usePluginHelpers:Dl,useSchemas:e=>{const{capitalize:n}=ue.useStringHelpers(),{convertToDotNotation:o}=Dl(),{i18n:{t:r}}=ve(),i=cc(),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:{...Pm},"statsd-advanced":{...Om},"route-by-header":{...Im},"ai-prompt-decorator":{...gm},"ai-prompt-template":{...hm},"ai-proxy-advanced":{...ym},"ai-llm-as-judge":{..._m},"vault-auth":{...Bm},"oas-validation":{...Nm},mocking:{...Cm},"rate-limiting":{...er},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":er["config-consumer_groups"]}:{...er},"graphql-rate-limiting-advanced":{...km},"injection-protection":{...Em},"response-ratelimiting":{...er},"pre-function":{...Hl},"post-function":{...Hl},"request-transformer-advanced":{...xm},"response-transformer":{...Yl},"response-transformer-advanced":{...Am},zipkin:{...i0},"upstream-oauth":{...$m},saml:{...Tm},"kafka-upstream":{...e0},"key-auth":im(e),"key-auth-enc":um(e),confluent:{...t0},"confluent-consume":{...n0},"kafka-consume":{...o0},"kafka-log":{...r0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(k,T,x)=>{let $={};(T||k)&&($=T||(k.fields?k.fields:k));const K=l().concat(k.blacklist?k.blacklist:[]),j=Object.keys($).filter(G=>!K.includes(G)),I=j.indexOf("comparator");I>-1&&j.splice(I,1);let Q={fields:[]};const A={};j.forEach(G=>{d($[G],G,$,A,Q,x)});const D=A.name,V=It[D],X=[],Y=G=>{const F=["cluster-cache"];for(const R of F)if(G.model.includes(R))return!1;return new RegExp("(?<=-redis-).*").test(G.model)};if(Q._supported_redis_partial_type=k._supported_redis_partial_type,Q._redis_partial_path=k._redis_partial_path,Ne.getSharedFormName(D)||ac(D,i)||V!=null&&V.useLegacyForm||e!=null&&e.credential){if(V!=null&&V.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&k._supported_redis_partial_type){for(const G of Q.fields)if(Y(G)){X.push(G);continue}Q.fields=Q.fields.filter(G=>!Y(G)),X.length&&Q.fields.push({id:"_redis",fields:X,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path})}Q.fields.sort((G,F)=>(G.order=G.order||0,F.order=F.order||0,G.order-F.order))}else{const G=[],F=[],R=[],oe=[],ie={};if(V!=null&&V.fieldRules){const q=[...V.fieldRules.atLeastOneOf??[],...V.fieldRules.onlyOneOf??[],...V.fieldRules.mutuallyRequired??[]];if(V.fieldRules.onlyOneOfMutuallyRequired)for(const ee of V.fieldRules.onlyOneOfMutuallyRequired)q.push(...ee);for(const ee of q)for(const U of ee)ie[U.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const q of Q.fields){if(e!=null&&e.enableRedisPartial&&k._supported_redis_partial_type&&Y(q)){oe.push(q);continue}if(q.pinned){G.push(q);continue}if(q.required||ie[q.model]!==void 0){ie[q.model]===!1&&(ie[q.model]=!0),F.push(q);continue}R.push(q)}oe.length&&R.push({id:"_redis",fields:oe,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path,order:-1});const Z=Object.entries(ie).filter(([,q])=>!q).map(([q])=>q.replace(/-/g,".").replace(/_/g,"-"));Z.length>0&&console.warn(`Unknown checked fields for plugin ${D}: ${Z.join(", ")}`);const ae=[];G.length>0&&ae.push({fields:G.sort(dc)}),(F.length>0||R.length>0)&&ae.push({fields:F.sort(uc),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:R.sort(uc),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"}}),Q={groups:ae}}return{schema:Q,model:A,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=k=>Array.isArray(k.default)||k.default!=null&&typeof k.default!="object"&&k.default!=="function",d=(k,T,x,$,K,j)=>{const I=c(k);return $[T]=I?k.default:null,k.id=T,k.model=T,k.fields&&k.type==="record"?u(k,T,x,$,K,j):(x[T]=k,C(k,$),j&&j[T]&&f(x[T],j[T]),K.fields.push(k)),x},f=(k,T)=>(T&&(Object.assign(k,T),T.label&&(k.label=T.label)),k),u=(k,T,x,$,K,j)=>{k.fields.forEach(I=>{Object.keys(I).forEach(Q=>{const A=I[Q];x=d(A,T+"-"+Q,x,$,K,j)})})},p=(k,T)=>{k.type="input",k.inputType="hidden",k.styleClasses="kong-form-hidden-field-wrapper";const x=e==null?void 0:e.entityId;T[k.model]=x?{id:x}: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")},y=k=>{k.type="checkbox",k.default=!0,k.required=!1},g=k=>{if(k.type="object-advanced",k.values.type==="array"){const{type:T}=k.values.elements||{};k.schema={fields:[{schema:{fields:[{...Pe,model:k.model,valueArrayType:T==="integer"?"number":T||"string",inputAttributes:{...Pe.inputAttributes,type:T==="integer"?"number":"text",inputMode:T==="integer"?"numeric":"text"}}]}}]}}else k.values.fields&&(k.schema={fields:[{type:"object",model:"object",schema:{fields:k.values.fields.map(T=>{const x=Object.keys(T)[0];return{model:x,type:"input",label:n(x),placeholder:x,inputType:T[x].type}})}}]})},_=k=>k.fields.reduce((T,x)=>(x.fields&&x.fields.forEach($=>{T[$.model]=$}),x.model&&(T[x.model]=x),T),{}),w=(k,T)=>{if(!Ne.customFields.includes(k.model))return;const x=_(k);Ne.customFields.forEach($=>{Object.keys(x).forEach(K=>{const j=c(x[K]);T[K]=j?x[K].default:null}),delete T[$]})},b=(k,T)=>k.inputType==="hidden"?"":o(n(k.label||T.replace(/_/g," "))),C=(k,T)=>{switch(w(k,T),k.type){case"foreign":p(k,T);break;case"number":m(k),k.attributes={step:"any"};break;case"integer":m(k);break;case"string":h(k);break;case"boolean":y(k);break;case"map":g(k);break}k.inputType==="foreign"&&p(k,T),k.label=b(k,k.model)};function E(k,T){if(T==null||T.type&&T.type!=="record"||typeof k!="object"||k==null)return k;const x={};for(const $ of T.fields){const K=Object.keys($)[0],j=$[K];j.type==="record"?x[K]=E(k[K],j):j.type==="array"&&Array.isArray(k[K])&&j.elements.type==="record"?x[K]=k[K].map(I=>E(I,j.elements)):x[K]=k[K]}return x}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:Cn,pruneRecord:E}},useExperimentalFreeForms:cc,useProvideExperimentalFreeForms:l0},ze="/v2/control-planes/{controlPlaneId}/core-entities",We="/{workspace}",Be={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}`}}},c0={key:0},d0=we(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=$e.usePluginHelpers(),{i18n:{t:r}}=$e.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=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(f,u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",c0,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,u)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f,(p,m)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]),{t:An}=Re.createI18n("en-us",je);function Zi(e){return e.map(n=>({value:n,label:n}))}const Ji="*",fc="$",pc=".";function pt(...e){return e.join(pc)}function Qi(...e){return pt(fc,...e)}function mc(e){return e.startsWith(pt(fc,""))}function In(e){return e.split(pc).filter(n=>n!=="")}function pr(e){const n=In(e);return n[n.length-1]}const u0=e=>{var n,o;return e.type==="redis-ce"?An("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.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")},f0={"redis-ce":An("redis.shared_configuration.open_source"),"redis-ee":An("redis.shared_configuration.enterprise")},p0=e=>f0[e]??"";function m0(e,n){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return n.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 g0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const gc=Symbol("free-form-data"),hc=Symbol("free-form-schema"),yc=Symbol("free-form-field-path"),ea=Symbol("free-form-field-renderer-slots"),mr=Symbol("free-form-field-renderer-matchers-map"),_c=Symbol("free-form-config"),bc=Symbol("free-form-field-reset-label-path-setting"),Tn="free-form-field-renderers-slot",h0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function y0(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,ta(r,n)):e.type==="array"&&e.elements&&Object.assign(o,na(e,n)),o}function ta(e,n=""){const o={};if(Array.isArray(e.fields))for(const r of e.fields){const i=Object.keys(r)[0],a=r[i],l=n?pt(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=ta(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=na(a,l);Object.assign(o,s)}}return o}function na(e,n=""){const o={};if(e.elements){const r=e.elements,i=pt(n,Ji);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=ta(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=na(r,i);Object.assign(o,a)}}return o}function oa(e){const n=In(e).map(o=>/^\d+$/.test(o)?Ji:o);return pt(...n)}function _0(e){const n=t.toValue(e),o=t.computed(()=>n?y0(n):{});function r(f){var u;return f==null?n:(u=o.value)==null?void 0:u[oa(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],y=u?`${u}.${h}`:h,g=i(y,!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?Wo.marked.parse(u.description,{async:!1}):void 0;return{...h0,"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 Ve(){const e=t.inject(gc),n=t.inject(hc),o=t.inject(_c,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!n)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...n}}const wc=e=>{const n=t.inject(yc,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!mc(r)&&n.value&&(i=pt(n.value,r)),mc(r)&&(i=i.slice(Qi("").length)),i});return t.provide(yc,o),o},b0=e=>{const{getSchema:n}=Ve(),{default:o,...r}=t.useSlots(),i=t.inject(ea),a=t.inject(mr),l=t.computed(()=>{const c=t.toValue(i),d=Object.keys(r).filter(f=>f!==Tn&&f!=="item").reduce((f,u)=>{const p=oa(pt(t.toValue(e),u));return{...f,[p]:r[u]}},{});return c?{...c,...d}:d});t.provide(ea,l);const s=t.toValue(e);return t.computed(()=>{if(o)return;const c=l.value[oa(t.toValue(e))];if(c)return c;for(const[d,f]of a)if(d({path:s,schema:n(s)}))return f})},w0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function k0(e){return w0[e.toLocaleLowerCase()]??e}function E0(e,n){const o=t.inject(bc,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?pt(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?pt(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}),t.provide(bc,l),a}function C0(e){return In(e).map(o=>o.split("_").map(Ay).map(k0).join(" ")).join(" › ")}function N0(e,n){const o=t.toValue(e),r=pr(o),{formConfig:i}=Ve(),a=E0(r,n),{getSchema:l}=Ve(),s=kc(e);return t.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 wt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ve(),a=t.toValue(e),l=t.toValue(n),s=N0(e,t.toRef(()=>t.toValue(n).resetLabelPath));return t.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 v0(e){var r;const n=In(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?pt(o.parent.path,i):i,o={parent:o}}return o}function kc(e){return t.computed(()=>v0(t.toValue(e)))}function Ec(e){const{formData:n}=Ve(),o=wc(e);return{value:t.computed({get:()=>hs(n,In(o.value)),set:i=>Zb(n,In(o.value),i)})}}function ct(e){const{getSchema:n}=Ve(),o=wc(e),r=b0(o),{value:i}=Ec(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:kc(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function gr(e){const{getSchema:n}=Ve(),o=t.useAttrs();return t.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=t.toValue(e).parent;return r!=null&&r.path?((i=n(r.path))==null?void 0:i.type)==="array":!1})}function Cc(e,n){const o=t.reactive(new Map),r=t.reactive(new Map);function i(){return fr(`${e}-`)}function a(s){if(s==null)return"null";if(typeof s!="object")return String(s);try{return JSON.stringify(s,Object.keys(s).sort())}catch{return String(s)}}function l(s,c){if(s==null||typeof s!="object")return`${e}-${c}`;const d=a(s);if(o.has(d))return o.get(d);if(r.has(c)){const u=r.get(c);return o.set(d,u),u}const f=i();return o.set(d,f),r.set(c,f),f}return t.watch(n,s=>{const c=t.toValue(s),d=new Set,f=new Set;c.forEach((u,p)=>{if(u!=null&&typeof u=="object"){const m=a(u);d.add(m)}f.add(p)}),Array.from(o.keys()).forEach(u=>{d.has(u)||o.delete(u)}),Array.from(r.keys()).forEach(u=>{f.has(u)||r.delete(u)})},{immediate:!0,deep:!0}),{getKey:l}}const S0="__request_callout_";function Nc(){return fr(S0)}const Pn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=n,i=t.computed(()=>o.multiline?Te.KTextArea:Te.KInput),a=t.ref(o.modelValue);t.watch(()=>o.modelValue,d=>{a.value=d});const{formConfig:l}=Ve(),s=d=>{a.value=d,l.updateOnChange||r("update:modelValue",d)},c=()=>{l.updateOnChange&&r("update:modelValue",a.value)};return(d,f)=>(t.openBlock(),t.createBlock(t.unref(i),t.mergeProps(d.$attrs,{"model-value":d.modelValue,resizable:d.multiline?!0:void 0,onChange:c,"onUpdate:modelValue":s}),t.createSlots({_:2},[t.renderList(t.useSlots(),(u,p)=>({name:p,fn:t.withCtx(m=>[t.renderSlot(d.$slots,p,t.normalizeProps(t.guardReactiveProps(m)))])}))]),1040,["model-value","resizable"]))}}),x0=["innerHTML"],On=we(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=ve(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=ct(t.toRef(()=>e.name)),c=wt(s.path,t.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=t.computed(()=>{var _;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((_=s.schema)==null?void 0:_.value).encrypted}),p=t.inject(Ne.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var _;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((_=s.schema.value)!=null&&_.referenceable)}),h=t.computed(()=>({referenceable:m.value})),y=gr(s.ancestors),g=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:pr(e.name)==="name");return(_,w)=>{var C;const b=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(b,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},_.$attrs)),[t.createVNode(Pn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":g.value,"data-autofocus":t.unref(y),"data-testid":`ff-${s.path.value}`,error:_.error,"error-message":_.errorMessage,help:_.help,"model-value":t.unref(l)??"",multiline:_.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(C=t.unref(c).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,x0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(p)&&m.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(p)),{key:0,schema:h.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(b,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-fb5b80e5"]]),A0=["innerHTML"],ra=we(t.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=ct(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=wt(i.path,o);return(c,d)=>{var u;const f=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(Te.KCheckbox),t.mergeProps({key:1},t.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":t.unref(r)??!1,"onUpdate:modelValue":l}),t.createSlots({_:2},[(u=t.unref(s).labelAttributes)!=null&&u.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,A0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),vc=we(t.defineComponent({__name:"SlideTransition",setup(e){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),r=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(h=>[h,m.getPropertyValue(h)]))}function a(p){["overflow","transition",...n].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)=>(t.openBlock(),t.createBlock(t.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:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),I0=["data-testid"],T0=["data-testid"],P0=["data-testid"],O0=["innerHTML"],$0={class:"ff-object-field-actions"},B0=["data-testid"],dt=we(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.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){const n=t.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=ct(t.toRef(n,"name")),{getSchema:i,getDefault:a}=Ve(),l=t.useModel(e,"added"),s=t.useModel(e,"expanded"),c=t.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),d=t.computed(()=>{var g,_;if((g=r.ancestors)!=null&&g.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((_=i(w.path))==null?void 0:_.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=wt(r.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:f.value}))),p=t.computed(()=>u.value.required?!0:l.value??e.defaultAdded),m=t.computed(()=>e.asChild!==void 0?e.asChild:d.value),h=t.computed(()=>{let g=r.schema.value.fields;return e.omit&&(g=g.filter(_=>!e.omit.includes(Object.keys(_)[0]))),e.fieldsOrder?g.sort((_,w)=>{const b=Object.keys(_)[0],C=Object.keys(w)[0],E=e.fieldsOrder.indexOf(b),k=e.fieldsOrder.indexOf(C);return E===-1&&k===-1?0:E===-1?1:k===-1?-1:E-k}):g});function y(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,g=>{e.collapsible&&(s.value=g)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(g,_)=>{var b;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(g.$slots[t.unref(Tn)]))),r.error?(t.openBlock(),t.createBlock(w,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},g.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,C=>(t.openBlock(),t.createBlock(Qe,{key:Object.keys(C)[0],name:Object.keys(C)[0]},null,8,["name"]))),128))],!0)],16,I0)):(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},g.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Te.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(u),required:!1},{"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(b=t.unref(u).labelAttributes)!=null&&b.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,O0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",$0,[g.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:0,appearance:"tertiary",class:t.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:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(u).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:y},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(ke.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(ke.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,P0),t.createVNode(vc,null,{default:t.withCtx(()=>[c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,C=>(t.openBlock(),t.createBlock(Qe,{key:Object.keys(C)[0],name:Object.keys(C)[0]},null,8,["name"]))),128))],!0)],8,B0)):t.createCommentVNode("",!0)]),_:3})],16,T0))],64)}}}),[["__scopeId","data-v-6f044592"]]),V0=["innerHTML"],$n=we(t.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=ct(t.toRef(()=>e.name)),a=wt(i.path,o),l=t.computed(()=>{var y;const p=(y=i.schema)==null?void 0:y.value;if(typeof p.gt=="number")return{min:p.gt};const[m,h]=p.between??[];return{min:o.min??m,max:o.max??h}}),s=n,c=r.value,d=t.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=gr(i.ancestors);return(p,m)=>{var y;const h=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(Pn,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(u),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(y=t.unref(a).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,V0)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),R0=["innerHTML"],kt=we(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},multiple:{type:Boolean,default:()=>{}},items:{},placeholder:{}},setup(e){const n=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:o}=Ve(),{value:r,...i}=ct(t.toRef(()=>e.name)),a=wt(i.path,n),l=t.computed(()=>e.items?e.items:i.path?o(i.path.value):[]),s=t.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=i.schema.value)==null?void 0:d.type)==="set"}),c=t.computed(()=>s.value?Te.KMultiselect:Te.KSelect);return(d,f)=>{var p;const u=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(c),t.mergeProps({key:1},t.unref(a),{modelValue:t.unref(r),"onUpdate:modelValue":f[0]||(f[0]=m=>t.isRef(r)?r.value=m:null),class:"ff-enum-field",clearable:!t.unref(a).required,"data-testid":`ff-${i.path.value}`,items:l.value,"kpop-attributes":{"data-testid":`${i.path.value}-items`}}),t.createSlots({_:2},[(p=t.unref(a).labelAttributes)!=null&&p.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(d.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,R0)],!0)]),key:"0"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-8b105573"]]);function ia(e,n,o=!0){const{value:r,...i}=ct(t.toRef(e,"name")),a=wt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(d(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return fr("ff-kv-field-")}function c(g,_,w){const b=w.indexOf(g),C=w.indexOf(_);return b===-1&&C===-1?0:b===-1?1:C===-1?-1:b-C}function d(g,_){const w=Object.entries(g).map(([b,C])=>({id:s(),key:b,value:C}));return _&&w.sort((b,C)=>c(b.key,C.key,_)),w}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(w=>w.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;t.watch(l,g=>{if(!o)return;const _=g.length?Object.fromEntries(g.map(({key:w,value:b})=>[w,b]).filter(([w])=>w)):null;r.value=_,h=_,n("change",_)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,g=>{Yi(g,h)||y(g)},{deep:!0});function y(g){if(!g){l.value=[];return}const _=new Map;l.value.forEach(E=>{E.key&&_.set(E.key,E)});const w=[],b=Object.keys(g);(e.keyOrder?[...b].sort((E,k)=>c(E,k,e.keyOrder)):b).forEach(E=>{const k=g[E];if(_.has(E)){const T=_.get(E);T.value=k,w.push(T)}else w.push({id:s(),key:E,value:k})}),l.value=w}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const M0=["data-testid"],D0=["data-testid"],F0=["innerHTML"],L0=["data-testid"],U0=we(t.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=ve(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=ia(r,a),m=t.useTemplateRef("root");async function h(E,k="key"){var T;m.value&&(await t.nextTick(),(T=m.value.querySelector(`[data-${k}-input="${E}"]`))==null||T.focus())}function y(){s();const E=l.value.findIndex(({key:k})=>!k);h(E===-1?l.value.length-1:E)}function g(E){E===l.value.length-1&&s(),h(E+1)}const _=t.inject(Ne.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var E,k;return e.showVaultSecretPicker??!!((k=(E=p.schema.value)==null?void 0:E.values)!=null&&k.referenceable)}),b=t.computed(()=>({referenceable:w.value}));function C(E,k){l.value[E].value=k}return n({reset:d,setValue:f}),(E,k)=>{var K;const T=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),$=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(T,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${t.unref(p).path.value}`},[t.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${t.unref(p).path.value}`},[t.createVNode(x,t.mergeProps({class:"ff-kv-field-label"},t.unref(u),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(K=t.unref(u).labelAttributes)!=null&&K.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,F0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode($,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["data-testid"])],8,D0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(j,I)=>(t.openBlock(),t.createElementBlock("div",{key:j.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${I}`},[t.createVNode(Pn,{modelValue:j.key,"onUpdate:modelValue":Q=>j.key=Q,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":I,"data-testid":`ff-key-${t.unref(p).path.value}.${I}`,placeholder:E.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(Q=>h(I,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Pn,{modelValue:j.value,"onUpdate:modelValue":Q=>j.value=Q,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${I}`,"data-value-input":I,placeholder:E.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(Q=>g(I),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(_)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:b.value,update:Q=>C(I,Q),value:j.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(_)?(t.openBlock(),t.createBlock(T,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${t.unref(p).path.value}`,message:t.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),t.createVNode($,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${I}`,icon:"",onClick:Q=>t.unref(c)(j.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,L0))),128))],8,M0))}}}),[["__scopeId","data-v-92e0893d"]]),K0=["data-testid"],j0=["innerHTML"],aa=we(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ct(t.toRef(()=>e.name)),s=wt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var y,g;return((g=(y=l.schema)==null?void 0:y.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),d=t.ref("");function f(y){return y.map(g=>g.trim()).filter(Boolean).join(", ")}function u(y){return y.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(y){d.value=y;const g=u(y),_=!g.length&&c.value?null:g;a.value=_,i("update:modelValue",_)}const m=gr(l.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:pr(e.name)==="name");return t.watch(a,y=>{const g=y?f(y):"";f(u(d.value))!==g&&(d.value=g)},{immediate:!0}),(y,g)=>{var w;const _=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[t.createVNode(Pn,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(w=t.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,j0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,K0))}}}),[["__scopeId","data-v-a27f4ff1"]]),G0=["data-testid"],q0=["innerHTML"],z0=we(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{name:{},labelAttributes:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ct(t.toRef(()=>e.name)),s=wt(l.path,t.toRef({...r,...o})),c=t.ref("");function d(p){c.value=p;let m=p||null;try{const h=JSON.parse(p);h&&typeof h=="object"&&(m=h)}catch{}a.value=m,i("update:modelValue",m)}const f=gr(l.ancestors),u=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:pr(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);Yi(m,p)||(c.value=JSON.stringify(p,null,2))}catch{c.value=JSON.stringify(p,null,2)}return}c.value=p||""},{immediate:!0}),(p,m)=>{var y;const h=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${l.path.value}`},[t.createVNode(Pn,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":u.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":d}),t.createSlots({_:2},[(y=t.unref(s).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,q0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,G0))}}}),[["__scopeId","data-v-5749f722"]]),Qe=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=ct(t.toRef(n,"name")),r=t.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?kt:On;case"boolean":return"one_of"in o.schema.value?kt:ra;case"number":case"integer":return"one_of"in o.schema.value?kt:$n;case"array":return hr;case"set":return g0(o.schema)?aa:kt;case"record":return dt;case"map":return U0;case"json":return z0;default:return}});return(i,a)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.$slots[t.unref(Tn)]))),t.unref(o).error?(t.openBlock(),t.createBlock(l,{key:0,appearance:"danger",message:t.unref(o).error.message},null,8,["message"])):t.unref(o).renderer.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(o).renderer.value),{key:1,name:Qi(t.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,name:Qi(t.unref(o).path.value)},null,8,["name"])):(t.openBlock(),t.createBlock(l,{key:1,appearance:"warning",message:`${t.unref(o).path.value} ${t.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),t.renderSlot(i.$slots,"default")],64))],64)}}}),H0=["data-testid"],Y0=["data-testid"],W0=["innerHTML"],X0=["data-testid"],Z0={class:"ff-array-field-item-content"},J0=["data-index","data-testid"],hr=we(t.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:n}){var k;t.useCssVars(T=>({"3e1c9ee2":E.value}));const o=e,r=n,{i18n:{t:i}}=ve(),{getDefault:a,getSchema:l}=Ve(),{value:s,...c}=ct(t.toRef(o,"name")),d=wt(c.path,t.toRef({...o,...t.useAttrs()})),f=t.computed(()=>{if(!c.path)throw new Error("Field path is required for sub-schema retrieval");const T=l(c.path.value);if(!T)throw new Error(`Schema not found for path: ${c.path.value}`);return T.elements}),u=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=Cc("ff-array-field",u),m=t.computed(()=>o.appearance==="card"?Te.KCard:"div");function h(T,x){return typeof o.itemLabel=="function"?o.itemLabel(T,x):o.itemLabel||d.value.label||`Item #${x}`}const y=t.computed(()=>u.value.map((T,x)=>({hash:`#${p(T,x)}`,title:""}))),g=t.ref((k=y.value[0])==null?void 0:k.hash),_=async()=>{var x;const T=a(pt(c.path.value,Ji));Array.isArray(s.value)||(s.value=[]),s.value.push(T),r("add"),o.appearance==="tabs"&&(await t.nextTick(),g.value=(x=y.value[y.value.length-1])==null?void 0:x.hash),await t.nextTick(),C(u.value.length+1)},w=async T=>{var x;Array.isArray(s.value)&&s.value.splice(T,1),r("remove",T),o.appearance==="tabs"&&(g.value=(x=y.value[Math.max(0,T-1)])==null?void 0:x.hash)},b=t.useTemplateRef("root");function C(T){var $;if(!b.value)return;const x=Math.max(0,Math.min(T,u.value.length-1));($=b.value.querySelector(`[data-index="${x}"] [data-autofocus]`))==null||$.focus()}const E=t.computed(()=>{const{appearance:T,stickyTabs:x}=o;return T!=="tabs"||x==null||x===!1?null:typeof x=="number"?`${o.stickyTabs}px`:typeof x=="string"?x:"0"});return(T,x)=>{var Q;const $=t.resolveComponent("KAlert"),K=t.resolveComponent("KLabel"),j=t.resolveComponent("KButton"),I=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock($,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:b,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${T.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":T.stickyTabs}]),"data-testid":`ff-array-${c.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${c.path.value}`},[t.createVNode(K,t.mergeProps({class:"ff-array-field-label"},t.unref(d),{"data-testid":`ff-label-${c.path.value}`,"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(Q=t.unref(d).labelAttributes)!=null&&Q.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(T.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,W0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(j,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${c.path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,Y0),u.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[T.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${c.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(A,D)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(A,D),class:"ff-array-field-item","data-index":D,"data-testid":`ff-array-item-${c.path.value}.${D}`},{default:t.withCtx(()=>[t.createElementVNode("div",Z0,[T.$slots.item?t.renderSlot(T.$slots,"item",{key:0,fieldName:String(D),index:D},void 0,!0):t.createCommentVNode("",!0),f.value.type==="array"&&f.value.elements.type==="string"?(t.openBlock(),t.createBlock(aa,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(D)},null,8,["help","name"])):(t.openBlock(),t.createBlock(Qe,{key:2,name:String(D)},null,8,["name"]))]),t.createVNode(j,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${D}`,icon:"",onClick:V=>w(D)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,X0)):(t.openBlock(),t.createBlock(t.unref(Te.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(I,{modelValue:g.value,"onUpdate:modelValue":x[0]||(x[0]=A=>g.value=A),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:y.value},t.createSlots({_:2},[t.renderList(u.value,(A,D)=>({name:t.unref(p)(A,D),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":D,"data-testid":`ff-array-item-${c.path.value}.${D}`},[T.$slots.item?t.renderSlot(T.$slots,"item",{key:0,fieldName:String(D),index:D},void 0,!0):(t.openBlock(),t.createBlock(Qe,{key:1,name:String(D)},null,8,["name"]))],8,J0)])})),t.renderList(u.value,(A,D)=>({name:`${t.unref(p)(A,D)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h(A,D))+" ",1),t.createVNode(j,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${D}`,icon:"",onClick:t.withModifiers(V=>w(D),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,H0))}}}),[["__scopeId","data-v-3edd064c"]]),uo=Symbol(),Q0=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Ve(),r=t.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[n.index])==null?void 0:c.name)})}),i=t.computed(()=>r.value.map(({[uo]:l,name:s})=>({value:l,label:s}))),a=t.computed(()=>o.config.callouts[n.index]);return t.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(t.openBlock(),t.createBlock(dt,{name:l.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(kt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(dt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(kt,t.mergeProps(d,{items:t.unref(Zi)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),ew=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Ve();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[uo]=Nc())}return(r,i)=>(t.openBlock(),t.createBlock(hr,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:t.withCtx(({index:a,fieldName:l})=>[t.createVNode(Q0,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),Sc=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),r=t.inject(mr);if(!r)throw new Error(mr.toString()+"not provided");return o&&r.set(n.match,o),(i,a)=>null}}),mt=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),a=_0(e.schema);t.provide(hc,a);const l=m=>{var h;return tr((h=e.config)==null?void 0:h.hasValue)?e.config.hasValue(m):!!m},s=t.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((h,y)=>{const g=Object.keys(h)[0],_=Object.keys(y)[0],w=e.fieldsOrder.indexOf(g),b=e.fieldsOrder.indexOf(_);return w===-1&&b===-1?0:w===-1?1:b===-1?-1:w-b}):m});let c=!1;const d=t.reactive({});t.provide(gc,d),t.provide(ea,oc(i,"default",Tn));const f=new Map;t.provide(mr,f),t.provide(_c,e.config??{}),t.watch(d,m=>{c&&r("change",t.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 y;let h;!m||!l(t.toValue(m))?h=a.getDefault():h=xn(t.toValue(m)),tr((y=e.config)==null?void 0:y.prepareFormData)?u(e.config.prepareFormData(h)):u(h),c=!0}return t.onBeforeMount(()=>{p(e.data)}),t.watch(()=>e.data,m=>{p(m)},{deep:!0}),n({getInnerData:()=>t.toRaw(d)}),(m,h)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Tn)]))),t.renderSlot(m.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,y=>(t.openBlock(),t.createBlock(Qe,{key:Object.keys(y)[0],name:Object.keys(y)[0],onGlobalAction:h[0]||(h[0]=(g,_)=>r("globalAction",g,_))},null,8,["name"]))),128))])]),_:3}))}}),tw={class:"ff-advanced-fields"},la=we(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=Re.createI18n("en-us",je),{getSchema:o}=Ve(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Te.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"trigger-label":r.value?t.unref(n)("plugins.form.grouping.advanced_parameters.view"):t.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:t.withCtx(()=>[t.createElementVNode("div",tw,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(Qe,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(Qe,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(aa,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:t.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):t.createCommentVNode("",!0),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-1cf32bc7"]]),nw=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=ve();function a(d,f=!1){return d.reduce((u,{[uo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=xn(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[uo]=Nc()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(y=>p[y])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=xn(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{[uo]:h,depends_on:y,...g}=m;return{depends_on:y.map(_=>u[_]).filter(_=>_!=null),...g}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(mt,{class:"rc-config-form",config:r,data:d.data,schema:d.schema,tag:"div",onChange:c},{[t.unref(Tn)]:t.withCtx(()=>[t.createVNode(Sc,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(On,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(Sc,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(hr,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(ew),t.createVNode(dt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(dt,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(dt,t.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}),t.createVNode(la)]),_:2},1032,["data","schema"]))}}),ow={class:"sc-form-pinned-fields"},rw={class:"sc-form-config-form"},sa=we(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Re.createI18n("en-us",je),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.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=t.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:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("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?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),u.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1);function d(f){return Wi(f,["config","instance_name","partials","protocols","tags"])}return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",ow,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:t.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Te.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"sc-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",rw,[t.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"]]),iw=t.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(sa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(nw,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),aw={key:1},lw=["innerHTML"],sw={class:"horizontal-container"},cw=we(t.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Ve(),a=ct(t.toRef(()=>e.name)),l=wt(a.path,r),s=t.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=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",aw,[t.createVNode(p,t.normalizeProps(t.guardReactiveProps(t.unref(l).labelAttributes)),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l).label)+" ",1)]),_:2},[(m=t.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,lw)]),key:"0"}:void 0]),1040),t.createElementVNode("div",sw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(t.unref(Te.KRadio),{key:h.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=y=>t.unref(a).value.value=y),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),dw={class:"sp-form-request-limits-subtitle"},uw={class:"sp-form-request-limits-content"},fw={class:"sp-form-window-type"},pw={class:"sp-form-request-limits-items"},mw={class:"sp-form-request-limits-row"},gw=["id"],hw={class:"sp-form-request-limits-actions"},yw={key:0,class:"sp-form-request-limits-examples"},_w={class:"sp-form-request-limits-examples-badges"},ca="config.window_type",bw=we(t.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t:n}=Re.createI18n("en-us",je),{formData:o,getSelectItems:r,getSchema:i}=Ve(),a=t.computed(()=>{var w,b;const _=(b=(w=o.config)==null?void 0:w.limit)==null?void 0:b.map((C,E)=>{var k,T;return{limit:C,windowSize:(T=(k=o.config)==null?void 0:k.window_size)==null?void 0:T[E]}});return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=Cc("request-limits",a),s=_=>{var w,b;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(b=o.config.window_size)!=null&&b.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(ca))==null?void 0:g.default,f=t.computed(()=>hs(o,ca)),u=t.computed(()=>r(ca).sort((_,w)=>_.value===d?-1:w.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},h=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),y=(_,w)=>{if(w===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=w}),o.config.limit=[_.config.limit],o.config.window_size=[_.config.window_size]};return(_,w)=>{const b=t.resolveComponent("KLabel"),C=t.resolveComponent("KButton"),E=t.resolveComponent("KBadge"),k=t.resolveComponent("KTooltip"),T=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(T,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",dw,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",uw,[t.createElementVNode("div",fw,[t.createVNode(cw,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=x=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",pw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(x,$)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(x,$)},[t.createVNode(b,{for:`sp-form-request-limits-item-${$}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:$+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",mw,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${$}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode($n,{name:`$.config.limit.${$}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode($n,{name:`$.config.window_size.${$}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,gw),t.createElementVNode("div",hw,[t.createVNode(C,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c($)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(C,{appearance:"tertiary",onClick:()=>s($)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),h.value.length>0?(t.openBlock(),t.createElementBlock("div",yw,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",_w,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(x,$)=>(t.openBlock(),t.createBlock(k,{key:`use-case-${$}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(x.description),1),w[1]||(w[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(x.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(x.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(E,{appearance:p.value===`${f.value}-${$}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>y(x,`${f.value}-${$}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(x.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),ww={id:"sp-form-error-legend",class:"sp-form-error-inputs"},kw=we(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Re.createI18n("en-us",je);return(o,r)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",ww,[t.createVNode($n,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(On,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Ew={class:"partial-config-card"},Cw={class:"config-card-row-label"},Nw={class:"label-text"},vw=["data-testid"],Sw=["data-testid"],xw={key:1},Aw=["data-testid"],Iw=["data-testid"],Tw=we(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Re.createI18n("en-us",je),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("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}=ue.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,y,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:((y=r[u])==null?void 0:y.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=m0(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(d));return(u,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",Ew,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:h,label:y,value:g,type:_})=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"partial-config-card-row"},[t.createElementVNode("div",Cw,[t.createElementVNode("div",Nw,t.toDisplayString(y),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(g)?(t.openBlock(),t.createElementBlock("div",xw,[_==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(g)},null,8,["text"])],8,Aw)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},t.toDisplayString(g),9,Iw))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,Sw))],8,vw)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Pw=we(t.defineComponent({__name:"NewRedisPartialModal",props:{visible:{type:Boolean,default:!1},partialType:{type:String,default:""}},emits:["partialUpdated","partialUpdateFailed","modalClose"],setup(e,{emit:n}){const o=e,{t:r}=Re.createI18n("en-us",je),i=t.inject(Ne.FORMS_CONFIG),a=n,{getMessageFromError:l}=ue.useErrors(),s=t.computed(()=>{switch(o.partialType){case eo.PartialType.REDIS_CE:return eo.PartialType.REDIS_EE;case eo.PartialType.REDIS_EE:return eo.PartialType.REDIS_CE;default:return}}),c=t.ref(!1),d=t.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"),t.nextTick(()=>{c.value=!1})};return t.watch(()=>o.visible,m=>{m&&(c.value=!0,t.nextTick(()=>{d.value="#km-modal-footer"}))}),(m,h)=>{const y=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(y,{class:"plugin-redis-partial-form","data-testid":"redis-partial-form-modal","full-screen":"",title:t.unref(r)("plugins.free-form.redis_partial.redis_partial_modal_title"),visible:c.value,onCancel:p},{footer:t.withCtx(()=>h[0]||(h[0]=[t.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:t.withCtx(()=>[t.createVNode(t.unref(eo.RedisConfigurationForm),{"action-teleport-target":d.value,config:t.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"]]),Ow="#52596e",$w="#e0e4ea",Bw="#007d60",xc="#d60027",Vw="#00abd2",Ac="#afb7c5",fo="12px",Rw="16px",da="20px",Mw="24px",Dw="8px",Ic=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"],Fw={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},Lw={key:0,class:"shared-redis-config"},Uw={class:"shared-redis-config-title"},Kw={class:"redis-config-select","data-testid":"redis-config-select"},jw={class:"selected-redis-config"},Gw=["data-testid"],qw={class:"select-item-name","data-testid":"selected-redis-config"},zw={class:"empty-redis-config","data-testid":"empty-redis-config"},Hw={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Yw="1000",Ww=we(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var X;const o=n,{t:r}=Re.createI18n("en-us",je),i=e,a=t.inject(Ic),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var Y;return i.redisPath?i.redisPath:(Y=a==null?void 0:a.redisPath)!=null&&Y.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((X=a==null?void 0:a.redisType)==null?void 0:X.value)||"all",d=t.computed(()=>{var Y;return!!((Y=a==null?void 0:a.redisType)!=null&&Y.value)}),f=t.ref(!1),u=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=ue.useErrors(),h=t.ref(i.defaultRedisConfigItem),y=t.ref({}),g=t.ref(),{value:_}=Ec("$.partials"),{value:w}=ct(s),b=t.inject(Ne.FORMS_CONFIG),{debouncedQueryChange:C,loading:E,error:k,loadItems:T,results:x}=ue.useDebouncedFilter(b,Tc[b.app].getAll,Yw,{fetchedItemsKey:"data",searchKeys:["id","name"]}),$=t.computed(()=>k.value?m(k.value):""),K=Y=>{let G=`${b.apiBaseUrl}${Tc[b.app].getOne}`;return b.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,(b==null?void 0:b.controlPlaneId)||""):b.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,b!=null&&b.workspace?`/${b.workspace}`:"")),G=G.replace(/{id}/gi,String(Y)),G},j=t.computed(()=>{const Y=(x.value||[]).map(G=>({label:G.id,name:G.name,value:G.id,type:G.type,tag:u0(G)})).filter(G=>G.type==="redis-ce"||G.type==="redis-ee");return c!=="all"?Y.filter(G=>G.type===c):Y}),{axiosInstance:I}=ue.useAxios(b==null?void 0:b.axiosRequestConfig),Q=()=>{p.value?(g.value&&(_.value=g.value,h.value=g.value[0].id,w.value=void 0),w!=null&&w.value&&(y.value=w.value)):(Object.keys(y.value).length&&(w.value=y.value),_!=null&&_.value&&(g.value=_.value),_.value=l?null:void 0)},A=Y=>{T(),o("globalAction","notify",Y)},D=Y=>{o("globalAction","notify",Y)},V=async Y=>{if(Y){h.value=Y,_.value=[{id:Y}],g.value=[{id:Y}],w.value=void 0;try{const G=await I.get(K(Y));if(G.data.config){const F=Object.assign(G.data,G.data.config);delete F.config,u.value=F}}catch(G){console.error(G)}}};return t.watch(()=>p.value,()=>{Q()}),t.onBeforeMount(()=>{var Y;if(T(),i.defaultRedisConfigItem||_!=null&&_.value){const G=i.defaultRedisConfigItem||((Y=_==null?void 0:_.value)==null?void 0:Y[0].id);V(G),p.value=!0}else w!=null&&w.value&&(y.value=w.value)}),(Y,G)=>{const F=t.resolveComponent("KBadge"),R=t.resolveComponent("KRadio"),oe=t.resolveComponent("KSelect"),ie=t.resolveComponent("KCard");return d.value?(t.openBlock(),t.createBlock(ie,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",Fw,[t.createVNode(R,{modelValue:p.value,"onUpdate:modelValue":G[0]||(G[0]=Z=>p.value=Z),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(r)("redis.shared_configuration.description"),label:t.unref(r)("redis.shared_configuration.label"),"selected-value":!0},{default:t.withCtx(()=>[t.createVNode(F,{appearance:"success"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),t.createVNode(R,{modelValue:p.value,"onUpdate:modelValue":G[1]||(G[1]=Z=>p.value=Z),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(r)("redis.dedicated_configuration.description"),label:t.unref(r)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),p.value?(t.openBlock(),t.createElementBlock("div",Lw,[t.createElementVNode("div",Uw,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",Kw,[t.createVNode(oe,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:j.value,loading:t.unref(E),"model-value":h.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:G[3]||(G[3]=Z=>V(Z==null?void 0:Z.value)),onQueryChange:t.unref(C)},{"selected-item-template":t.withCtx(({item:Z})=>[t.createElementVNode("div",jw,t.toDisplayString(Z.name),1)]),"item-template":t.withCtx(({item:Z})=>[t.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${Z.name}`},[t.createElementVNode("span",qw,t.toDisplayString(Z.name),1),t.createVNode(F,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(Z.tag),1)]),_:2},1024)],8,Gw)]),empty:t.withCtx(()=>[t.createElementVNode("div",zw,t.toDisplayString(t.unref(r)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":t.withCtx(()=>[t.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:G[2]||(G[2]=()=>f.value=!0)},[t.createVNode(t.unref(ke.AddIcon),{size:t.unref(fo)},null,8,["size"]),t.createElementVNode("span",null,t.toDisplayString(t.unref(r)("redis.shared_configuration.create_new_configuration",{type:t.unref(p0)(t.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),u.value?(t.openBlock(),t.createBlock(Tw,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),$.value?(t.openBlock(),t.createElementBlock("p",Hw,t.toDisplayString($.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(dt,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(Pc),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(Pw,{"partial-type":t.unref(c),visible:f.value,onModalClose:G[4]||(G[4]=Z=>f.value=!1),onPartialUpdateFailed:D,onPartialUpdated:A},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(dt,t.mergeProps({key:1},i,{"fields-order":t.unref(Pc),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-12b9ad82"]]),Xw=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=Ve();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(vc,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(Ww,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),Zw=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change","globalAction"],setup(e,{emit:n}){const o=n,r={hasValue:a=>!!(a!=null&&a.config)};function i(a){var l;((l=a.config)==null?void 0:l.namespace)===null&&delete a.config.namespace,o("change",a)}return(a,l)=>(t.openBlock(),t.createBlock(mt,{class:"rc-config-form",config:r,data:a.data,schema:a.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(bw),t.createVNode(kw)]),_:1}),t.createVNode(la,null,{default:t.withCtx(()=>[t.createVNode(Qe,{name:"config.dictionary_name"}),t.createVNode(Qe,{name:"config.lock_dictionary_name"}),t.createVNode(Qe,{name:"config.strategy"}),t.createVNode(Xw,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(Qe,{name:"config.namespace"}),t.createVNode(Qe,{name:"config.hide_client_headers"}),t.createVNode(Qe,{name:"config.disable_penalty"}),t.createVNode(Qe,{name:"config.retry_after_jitter_max"}),t.createVNode(Qe,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),Jw=t.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},emits:["globalAction"],setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(sa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Zw,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),Qw={class:"ff-standard-layout"},ek={class:"enabled"},tk={class:"scope"},nk={key:0,class:"scope-detail"},ok=we(t.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:n}=Re.createI18n("en-us",je),o=e,r=t.useSlots();t.provide(Ne.AUTOFILL_SLOT,r==null?void 0:r[Ne.AUTOFILL_SLOT_NAME]);const i=t.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(_=>_.model==="enabled")}}),a=t.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(_=>_.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:g,description:_})=>({label:g,description:_}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var _;const g=["instance_name","protocols","tags"];return{fields:(_=o.formSchema)==null?void 0:_.fields.filter(w=>g.includes(w.model))}}),d=["config"],f=t.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(_=>d.includes(Object.keys(_)[0])),g});function u(g){return Wi(g,["config","partials"])}const p=t.ref(!1),m=t.ref(!0),h=Wi(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]);function y(g,_){h[_]=g,o.onModelUpdated(g,_)}return t.watch(p,g=>{g?Object.keys(h).forEach(_=>{o.onModelUpdated(h[_],_)}):Object.keys(h).forEach(_=>{o.onModelUpdated("",_)})}),(g,_)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",Qw,[t.createVNode(t.unref(ue.EntityFormBlock),{description:t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",ek,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",tk,[t.createVNode(t.unref(Te.KRadio),t.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[0]||(_[0]=b=>p.value=b),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(Te.KRadio),t.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[1]||(_[1]=b=>p.value=b),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),p.value?(t.openBlock(),t.createElementBlock("div",nk,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:y},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:m.value,"onUpdate:modelValue":_[2]||(_[2]=b=>m.value=b),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.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:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ue.EntityFormBlock),{description:t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(g.$slots,"default",{data:u(g.model),schema:f.value,onChange:_[3]||(_[3]=(...b)=>g.onFormChange&&g.onFormChange(...b))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-a727028f"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Oc(e){return typeof e>"u"||e===null}function rk(e){return typeof e=="object"&&e!==null}function ik(e){return Array.isArray(e)?e:Oc(e)?[]:[e]}function ak(e,n){var o,r,i,a;if(n)for(a=Object.keys(n),o=0,r=a.length;o<r;o+=1)i=a[o],e[i]=n[i];return e}function lk(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function sk(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var ck=Oc,dk=rk,uk=ik,fk=lk,pk=sk,mk=ak,Ge={isNothing:ck,isObject:dk,toArray:uk,repeat:fk,isNegativeZero:pk,extend:mk};function $c(e,n){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)+")",!n&&e.mark.snippet&&(o+=`
14
14
 
15
15
  `+e.mark.snippet),r+" "+o):r}function po(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=$c(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}po.prototype=Object.create(Error.prototype),po.prototype.constructor=po,po.prototype.toString=function(n){return this.name+": "+$c(this,n)};var et=po;function ua(e,n,o,r,i){var a="",l="",s=Math.floor(i/2)-1;return r-n>s&&(a=" ... ",n=r-s+a.length),o-r>s&&(l=" ...",o=r+s-l.length),{str:a+e.slice(n,o).replace(/\t/g,"→")+l,pos:r-n+a.length}}function fa(e,n){return Ge.repeat(" ",n-e.length)+e}function gk(e,n){if(n=Object.create(n||null),!e.buffer)return null;n.maxLength||(n.maxLength=79),typeof n.indent!="number"&&(n.indent=1),typeof n.linesBefore!="number"&&(n.linesBefore=3),typeof n.linesAfter!="number"&&(n.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,f=Math.min(e.line+n.linesAfter,i.length).toString().length,u=n.maxLength-(n.indent+f+3);for(c=1;c<=n.linesBefore&&!(l-c<0);c++)d=ua(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=Ge.repeat(" ",n.indent)+fa((e.line-c+1).toString(),f)+" | "+d.str+`
16
16
  `+s;for(d=ua(e.buffer,r[l],i[l],e.position,u),s+=Ge.repeat(" ",n.indent)+fa((e.line+1).toString(),f)+" | "+d.str+`
17
17
  `,s+=Ge.repeat("-",n.indent+f+3+d.pos)+`^
18
18
  `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=ua(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=Ge.repeat(" ",n.indent)+fa((e.line+c+1).toString(),f)+" | "+d.str+`
19
- `;return s.replace(/\n$/,"")}var hk=gk,yk=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],_k=["scalar","sequence","mapping"];function bk(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function wk(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(yk.indexOf(o)===-1)throw new et('Unknown option "'+o+'" is met in definition of "'+e+'" YAML type.')}),this.options=n,this.tag=e,this.kind=n.kind||null,this.resolve=n.resolve||function(){return!0},this.construct=n.construct||function(o){return o},this.instanceOf=n.instanceOf||null,this.predicate=n.predicate||null,this.represent=n.represent||null,this.representName=n.representName||null,this.defaultStyle=n.defaultStyle||null,this.multi=n.multi||!1,this.styleAliases=bk(n.styleAliases||null),_k.indexOf(this.kind)===-1)throw new et('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var He=wk;function Bc(e,n){var o=[];return e[n].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 kk(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},n,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(n=0,o=arguments.length;n<o;n+=1)arguments[n].forEach(r);return e}function pa(e){return this.extend(e)}pa.prototype.extend=function(n){var o=[],r=[];if(n instanceof He)r.push(n);else if(Array.isArray(n))r=r.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(o=o.concat(n.implicit)),n.explicit&&(r=r.concat(n.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(pa.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Bc(i,"implicit"),i.compiledExplicit=Bc(i,"explicit"),i.compiledTypeMap=kk(i.compiledImplicit,i.compiledExplicit),i};var Vc=pa,Rc=new He("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Mc=new He("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Dc=new He("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Lc=new Vc({explicit:[Rc,Mc,Dc]});function Ek(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function Ck(){return null}function Nk(e){return e===null}var Fc=new He("tag:yaml.org,2002:null",{kind:"scalar",resolve:Ek,construct:Ck,predicate:Nk,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function vk(e){if(e===null)return!1;var n=e.length;return n===4&&(e==="true"||e==="True"||e==="TRUE")||n===5&&(e==="false"||e==="False"||e==="FALSE")}function Sk(e){return e==="true"||e==="True"||e==="TRUE"}function xk(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Uc=new He("tag:yaml.org,2002:bool",{kind:"scalar",resolve:vk,construct:Sk,predicate:xk,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 Ak(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function Ik(e){return 48<=e&&e<=55}function Tk(e){return 48<=e&&e<=57}function Pk(e){if(e===null)return!1;var n=e.length,o=0,r=!1,i;if(!n)return!1;if(i=e[o],(i==="-"||i==="+")&&(i=e[++o]),i==="0"){if(o+1===n)return!0;if(i=e[++o],i==="b"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!Ak(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!Ik(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!Tk(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function Ok(e){var n=e,o=1,r;if(n.indexOf("_")!==-1&&(n=n.replace(/_/g,"")),r=n[0],(r==="-"||r==="+")&&(r==="-"&&(o=-1),n=n.slice(1),r=n[0]),n==="0")return 0;if(r==="0"){if(n[1]==="b")return o*parseInt(n.slice(2),2);if(n[1]==="x")return o*parseInt(n.slice(2),16);if(n[1]==="o")return o*parseInt(n.slice(2),8)}return o*parseInt(n,10)}function $k(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!Ge.isNegativeZero(e)}var Kc=new He("tag:yaml.org,2002:int",{kind:"scalar",resolve:Pk,construct:Ok,predicate:$k,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"]}}),Bk=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Vk(e){return!(e===null||!Bk.test(e)||e[e.length-1]==="_")}function Rk(e){var n,o;return n=e.replace(/_/g,"").toLowerCase(),o=n[0]==="-"?-1:1,"+-".indexOf(n[0])>=0&&(n=n.slice(1)),n===".inf"?o===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:n===".nan"?NaN:o*parseFloat(n,10)}var Mk=/^[-+]?[0-9]+e/;function Dk(e,n){var o;if(isNaN(e))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(n){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),Mk.test(o)?o.replace("e",".e"):o}function Lk(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||Ge.isNegativeZero(e))}var jc=new He("tag:yaml.org,2002:float",{kind:"scalar",resolve:Vk,construct:Rk,predicate:Lk,represent:Dk,defaultStyle:"lowercase"}),Gc=Lc.extend({implicit:[Fc,Uc,Kc,jc]}),qc=Gc,zc=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Hc=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 Fk(e){return e===null?!1:zc.exec(e)!==null||Hc.exec(e)!==null}function Uk(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=zc.exec(e),n===null&&(n=Hc.exec(e)),n===null)throw new Error("Date resolve error");if(o=+n[1],r=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(o,r,i));if(a=+n[4],l=+n[5],s=+n[6],n[7]){for(c=n[7].slice(0,3);c.length<3;)c+="0";c=+c}return n[9]&&(f=+n[10],u=+(n[11]||0),d=(f*60+u)*6e4,n[9]==="-"&&(d=-d)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),d&&p.setTime(p.getTime()-d),p}function Kk(e){return e.toISOString()}var Yc=new He("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Fk,construct:Uk,instanceOf:Date,represent:Kk});function jk(e){return e==="<<"||e===null}var Wc=new He("tag:yaml.org,2002:merge",{kind:"scalar",resolve:jk}),ma=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
19
+ `;return s.replace(/\n$/,"")}var hk=gk,yk=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],_k=["scalar","sequence","mapping"];function bk(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function wk(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(yk.indexOf(o)===-1)throw new et('Unknown option "'+o+'" is met in definition of "'+e+'" YAML type.')}),this.options=n,this.tag=e,this.kind=n.kind||null,this.resolve=n.resolve||function(){return!0},this.construct=n.construct||function(o){return o},this.instanceOf=n.instanceOf||null,this.predicate=n.predicate||null,this.represent=n.represent||null,this.representName=n.representName||null,this.defaultStyle=n.defaultStyle||null,this.multi=n.multi||!1,this.styleAliases=bk(n.styleAliases||null),_k.indexOf(this.kind)===-1)throw new et('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var He=wk;function Bc(e,n){var o=[];return e[n].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 kk(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},n,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(n=0,o=arguments.length;n<o;n+=1)arguments[n].forEach(r);return e}function pa(e){return this.extend(e)}pa.prototype.extend=function(n){var o=[],r=[];if(n instanceof He)r.push(n);else if(Array.isArray(n))r=r.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(o=o.concat(n.implicit)),n.explicit&&(r=r.concat(n.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(pa.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Bc(i,"implicit"),i.compiledExplicit=Bc(i,"explicit"),i.compiledTypeMap=kk(i.compiledImplicit,i.compiledExplicit),i};var Vc=pa,Rc=new He("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Mc=new He("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Dc=new He("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Fc=new Vc({explicit:[Rc,Mc,Dc]});function Ek(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function Ck(){return null}function Nk(e){return e===null}var Lc=new He("tag:yaml.org,2002:null",{kind:"scalar",resolve:Ek,construct:Ck,predicate:Nk,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function vk(e){if(e===null)return!1;var n=e.length;return n===4&&(e==="true"||e==="True"||e==="TRUE")||n===5&&(e==="false"||e==="False"||e==="FALSE")}function Sk(e){return e==="true"||e==="True"||e==="TRUE"}function xk(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Uc=new He("tag:yaml.org,2002:bool",{kind:"scalar",resolve:vk,construct:Sk,predicate:xk,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 Ak(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function Ik(e){return 48<=e&&e<=55}function Tk(e){return 48<=e&&e<=57}function Pk(e){if(e===null)return!1;var n=e.length,o=0,r=!1,i;if(!n)return!1;if(i=e[o],(i==="-"||i==="+")&&(i=e[++o]),i==="0"){if(o+1===n)return!0;if(i=e[++o],i==="b"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!Ak(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!Ik(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!Tk(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function Ok(e){var n=e,o=1,r;if(n.indexOf("_")!==-1&&(n=n.replace(/_/g,"")),r=n[0],(r==="-"||r==="+")&&(r==="-"&&(o=-1),n=n.slice(1),r=n[0]),n==="0")return 0;if(r==="0"){if(n[1]==="b")return o*parseInt(n.slice(2),2);if(n[1]==="x")return o*parseInt(n.slice(2),16);if(n[1]==="o")return o*parseInt(n.slice(2),8)}return o*parseInt(n,10)}function $k(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!Ge.isNegativeZero(e)}var Kc=new He("tag:yaml.org,2002:int",{kind:"scalar",resolve:Pk,construct:Ok,predicate:$k,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"]}}),Bk=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Vk(e){return!(e===null||!Bk.test(e)||e[e.length-1]==="_")}function Rk(e){var n,o;return n=e.replace(/_/g,"").toLowerCase(),o=n[0]==="-"?-1:1,"+-".indexOf(n[0])>=0&&(n=n.slice(1)),n===".inf"?o===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:n===".nan"?NaN:o*parseFloat(n,10)}var Mk=/^[-+]?[0-9]+e/;function Dk(e,n){var o;if(isNaN(e))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(n){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),Mk.test(o)?o.replace("e",".e"):o}function Fk(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||Ge.isNegativeZero(e))}var jc=new He("tag:yaml.org,2002:float",{kind:"scalar",resolve:Vk,construct:Rk,predicate:Fk,represent:Dk,defaultStyle:"lowercase"}),Gc=Fc.extend({implicit:[Lc,Uc,Kc,jc]}),qc=Gc,zc=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Hc=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 Lk(e){return e===null?!1:zc.exec(e)!==null||Hc.exec(e)!==null}function Uk(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=zc.exec(e),n===null&&(n=Hc.exec(e)),n===null)throw new Error("Date resolve error");if(o=+n[1],r=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(o,r,i));if(a=+n[4],l=+n[5],s=+n[6],n[7]){for(c=n[7].slice(0,3);c.length<3;)c+="0";c=+c}return n[9]&&(f=+n[10],u=+(n[11]||0),d=(f*60+u)*6e4,n[9]==="-"&&(d=-d)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),d&&p.setTime(p.getTime()-d),p}function Kk(e){return e.toISOString()}var Yc=new He("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Lk,construct:Uk,instanceOf:Date,represent:Kk});function jk(e){return e==="<<"||e===null}var Wc=new He("tag:yaml.org,2002:merge",{kind:"scalar",resolve:jk}),ma=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
20
20
  \r`;function Gk(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=ma;for(o=0;o<i;o++)if(n=a.indexOf(e.charAt(o)),!(n>64)){if(n<0)return!1;r+=6}return r%8===0}function qk(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=ma,l=0,s=[];for(n=0;n<i;n++)n%4===0&&n&&(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)),l=l<<6|a.indexOf(r.charAt(n));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 zk(e){var n="",o=0,r,i,a=e.length,l=ma;for(r=0;r<a;r++)r%3===0&&r&&(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]),o=(o<<8)+e[r];return i=a%3,i===0?(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]):i===2?(n+=l[o>>10&63],n+=l[o>>4&63],n+=l[o<<2&63],n+=l[64]):i===1&&(n+=l[o>>2&63],n+=l[o<<4&63],n+=l[64],n+=l[64]),n}function Hk(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Xc=new He("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Gk,construct:qk,predicate:Hk,represent:zk}),Yk=Object.prototype.hasOwnProperty,Wk=Object.prototype.toString;function Xk(e){if(e===null)return!0;var n=[],o,r,i,a,l,s=e;for(o=0,r=s.length;o<r;o+=1){if(i=s[o],l=!1,Wk.call(i)!=="[object Object]")return!1;for(a in i)if(Yk.call(i,a))if(!l)l=!0;else return!1;if(!l)return!1;if(n.indexOf(a)===-1)n.push(a);else return!1}return!0}function Zk(e){return e!==null?e:[]}var Zc=new He("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Xk,construct:Zk}),Jk=Object.prototype.toString;function Qk(e){if(e===null)return!0;var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1){if(r=l[n],Jk.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function eE(e){if(e===null)return[];var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1)r=l[n],i=Object.keys(r),a[n]=[i[0],r[i[0]]];return a}var Jc=new He("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Qk,construct:eE}),tE=Object.prototype.hasOwnProperty;function nE(e){if(e===null)return!0;var n,o=e;for(n in o)if(tE.call(o,n)&&o[n]!==null)return!1;return!0}function oE(e){return e!==null?e:{}}var Qc=new He("tag:yaml.org,2002:set",{kind:"mapping",resolve:nE,construct:oE}),ga=qc.extend({implicit:[Yc,Wc],explicit:[Xc,Zc,Jc,Qc]}),Kt=Object.prototype.hasOwnProperty,yr=1,ed=2,td=3,_r=4,ha=1,rE=2,nd=3,iE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,aE=/[\x85\u2028\u2029]/,lE=/[,\[\]\{\}]/,od=/^(?:!|!!|![a-z\-]+!)$/i,rd=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function id(e){return Object.prototype.toString.call(e)}function Et(e){return e===10||e===13}function ln(e){return e===9||e===32}function tt(e){return e===9||e===32||e===10||e===13}function Bn(e){return e===44||e===91||e===93||e===123||e===125}function sE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function cE(e){return e===120?2:e===117?4:e===85?8:0}function dE(e){return 48<=e&&e<=57?e-48:-1}function ad(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
21
21
  `: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 uE(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}for(var ld=new Array(256),sd=new Array(256),Vn=0;Vn<256;Vn++)ld[Vn]=ad(Vn)?1:0,sd[Vn]=ad(Vn);function fE(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||ga,this.onWarning=n.onWarning||null,this.legacy=n.legacy||!1,this.json=n.json||!1,this.listener=n.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 cd(e,n){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=hk(o),new et(n,o)}function ye(e,n){throw cd(e,n)}function br(e,n){e.onWarning&&e.onWarning.call(null,cd(e,n))}var dd={YAML:function(n,o,r){var i,a,l;n.version!==null&&ye(n,"duplication of %YAML directive"),r.length!==1&&ye(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&ye(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&ye(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&br(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&ye(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],od.test(i)||ye(n,"ill-formed tag handle (first argument) of the TAG directive"),Kt.call(n.tagMap,i)&&ye(n,'there is a previously declared suffix for "'+i+'" tag handle'),rd.test(a)||ye(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{ye(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function jt(e,n,o,r){var i,a,l,s;if(n<o){if(s=e.input.slice(n,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 iE.test(s)&&ye(e,"the stream contains non-printable characters");e.result+=s}}function ud(e,n,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],Kt.call(n,a)||(n[a]=o[a],r[a]=!0)}function Rn(e,n,o,r,i,a,l,s,c){var d,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),d=0,f=i.length;d<f;d+=1)Array.isArray(i[d])&&ye(e,"nested arrays are not supported inside keys"),typeof i=="object"&&id(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&id(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(d=0,f=a.length;d<f;d+=1)ud(e,n,a[d],o);else ud(e,n,a,o);else!e.json&&!Kt.call(o,i)&&Kt.call(n,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(n,i,{configurable:!0,enumerable:!0,writable:!0,value:a}):n[i]=a,delete o[i];return n}function ya(e){var n;n=e.input.charCodeAt(e.position),n===10?e.position++:n===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,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;ln(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(n&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(Et(i))for(ya(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&&br(e,"deficient indentation"),r}function wr(e){var n=e.position,o;return o=e.input.charCodeAt(n),!!((o===45||o===46)&&o===e.input.charCodeAt(n+1)&&o===e.input.charCodeAt(n+2)&&(n+=3,o=e.input.charCodeAt(n),o===0||tt(o)))}function _a(e,n){n===1?e.result+=" ":n>1&&(e.result+=Ge.repeat(`
22
22
  `,n-1))}function pE(e,n,o){var r,i,a,l,s,c,d,f,u=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),tt(m)||Bn(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),tt(i)||o&&Bn(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),tt(i)||o&&Bn(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),tt(r))break}else{if(e.position===e.lineStart&&wr(e)||o&&Bn(m))break;if(Et(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,Me(e,!1,-1),e.lineIndent>=n){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=d,e.lineIndent=f;break}}s&&(jt(e,a,l,!1),_a(e,e.line-c),a=l=e.position,s=!1),ln(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return jt(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function mE(e,n){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(jt(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 Et(o)?(jt(e,r,i,!0),_a(e,Me(e,!1,n)),r=i=e.position):e.position===e.lineStart&&wr(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 gE(e,n){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 jt(e,o,e.position,!0),e.position++,!0;if(s===92){if(jt(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),Et(s))Me(e,!1,n);else if(s<256&&ld[s])e.result+=sd[s],e.position++;else if((l=cE(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=sE(s))>=0?a=(a<<4)+l:ye(e,"expected hexadecimal character");e.result+=uE(a),e.position++}else ye(e,"unknown escape sequence");o=r=e.position}else Et(s)?(jt(e,o,r,!0),_a(e,Me(e,!1,n)),o=r=e.position):e.position===e.lineStart&&wr(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 hE(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,h=Object.create(null),y,g,_,w;if(w=e.input.charCodeAt(e.position),w===91)f=93,m=!1,s=[];else if(w===123)f=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),w=e.input.charCodeAt(++e.position);w!==0;){if(Me(e,!0,n),w=e.input.charCodeAt(e.position),w===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?w===44&&ye(e,"expected the node content, but found ','"):ye(e,"missed comma between flow collection entries"),g=y=_=null,u=p=!1,w===63&&(d=e.input.charCodeAt(e.position+1),tt(d)&&(u=p=!0,e.position++,Me(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,Mn(e,n,yr,!1,!0),g=e.tag,y=e.result,Me(e,!0,n),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(u=!0,w=e.input.charCodeAt(++e.position),Me(e,!0,n),Mn(e,n,yr,!1,!0),_=e.result),m?Rn(e,s,h,g,y,_,r,i,a):u?s.push(Rn(e,null,h,g,y,_,r,i,a)):s.push(y),Me(e,!0,n),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}ye(e,"unexpected end of the stream within a flow collection")}function yE(e,n){var o,r,i=ha,a=!1,l=!1,s=n,c=0,d=!1,f,u;if(u=e.input.charCodeAt(e.position),u===124)r=!1;else if(u===62)r=!0;else return!1;for(e.kind="scalar",e.result="";u!==0;)if(u=e.input.charCodeAt(++e.position),u===43||u===45)ha===i?i=u===43?nd:rE:ye(e,"repeat of a chomping mode identifier");else if((f=dE(u))>=0)f===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=n+f-1,l=!0);else break;if(ln(u)){do u=e.input.charCodeAt(++e.position);while(ln(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!Et(u)&&u!==0)}for(;u!==0;){for(ya(e),e.lineIndent=0,u=e.input.charCodeAt(e.position);(!l||e.lineIndent<s)&&u===32;)e.lineIndent++,u=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>s&&(s=e.lineIndent),Et(u)){c++;continue}if(e.lineIndent<s){i===nd?e.result+=Ge.repeat(`
@@ -26,10 +26,10 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
26
26
  `,c+1)):c===0?a&&(e.result+=" "):e.result+=Ge.repeat(`
27
27
  `,c):e.result+=Ge.repeat(`
28
28
  `,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!Et(u)&&u!==0;)u=e.input.charCodeAt(++e.position);jt(e,o,e.position,!1)}return!0}function fd(e,n){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),!tt(l))));){if(s=!0,e.position++,Me(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,Mn(e,n,td,!1,!0),a.push(e.result),Me(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)ye(e,"bad indentation of a sequence entry");else if(e.lineIndent<n)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function _E(e,n,o){var r,i,a,l,s,c,d=e.tag,f=e.anchor,u={},p=Object.create(null),m=null,h=null,y=null,g=!1,_=!1,w;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),w=e.input.charCodeAt(e.position);w!==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,(w===63||w===58)&&tt(r))w===63?(g&&(Rn(e,u,p,m,h,null,l,s,c),m=h=y=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,w=r;else{if(l=e.line,s=e.lineStart,c=e.position,!Mn(e,o,ed,!1,!0))break;if(e.line===a){for(w=e.input.charCodeAt(e.position);ln(w);)w=e.input.charCodeAt(++e.position);if(w===58)w=e.input.charCodeAt(++e.position),tt(w)||ye(e,"a whitespace character is expected after the key-value separator within a block mapping"),g&&(Rn(e,u,p,m,h,null,l,s,c),m=h=y=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=f,!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=f,!0}if((e.line===a||e.lineIndent>n)&&(g&&(l=e.line,s=e.lineStart,c=e.position),Mn(e,n,_r,!0,i)&&(g?h=e.result:y=e.result),g||(Rn(e,u,p,m,h,y,l,s,c),m=h=y=null),Me(e,!0,-1),w=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&w!==0)ye(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return g&&Rn(e,u,p,m,h,null,l,s,c),_&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),_}function bE(e){var n,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="!",n=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(n,e.position),l=e.input.charCodeAt(++e.position)):ye(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!tt(l);)l===33&&(r?ye(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),od.test(i)||ye(e,"named tag handle cannot contain such characters"),r=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(n,e.position),lE.test(a)&&ye(e,"tag suffix cannot contain flow indicator characters")}a&&!rd.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:Kt.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 wE(e){var n,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),n=e.position;o!==0&&!tt(o)&&!Bn(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&ye(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function kE(e){var n,o,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),n=e.position;r!==0&&!tt(r)&&!Bn(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&ye(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),Kt.call(e.anchorMap,o)||ye(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Me(e,!0,-1),!0}function Mn(e,n,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,h,y,g;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=_r===o||td===o,r&&Me(e,!0,-1)&&(d=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;bE(e)||wE(e);)Me(e,!0,-1)?(d=!0,s=a,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)):s=!1;if(s&&(s=d||i),(c===1||_r===o)&&(yr===o||ed===o?y=n:y=n+1,g=e.position-e.lineStart,c===1?s&&(fd(e,g)||_E(e,g,y))||hE(e,y)?f=!0:(l&&yE(e,y)||mE(e,y)||gE(e,y)?f=!0:kE(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&ye(e,"alias node should not have any properties")):pE(e,y,yr===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&fd(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+'"'),u=0,p=e.implicitTypes.length;u<p;u+=1)if(h=e.implicitTypes[u],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(Kt.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"],u=0,p=m.length;u<p;u+=1)if(e.tag.slice(0,m[u].tag.length)===m[u].tag){h=m[u];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||f}function EE(e){var n=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&&!tt(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(;ln(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!Et(l));break}if(Et(l))break;for(o=e.position;l!==0&&!tt(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&ya(e),Kt.call(dd,r)?dd[r](e,r,i):br(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"),Mn(e,e.lineIndent-1,_r,!1,!0),Me(e,!0,-1),e.checkLineBreaks&&aE.test(e.input.slice(n,e.position))&&br(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&wr(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 pd(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
29
- `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new fE(e,n),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;)EE(o);return o.documents}function CE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=pd(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function NE(e,n){var o=pd(e,n);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 vE=CE,SE=NE,md={loadAll:vE,load:SE},gd=Object.prototype.toString,hd=Object.prototype.hasOwnProperty,ba=65279,xE=9,mo=10,AE=13,IE=32,TE=33,PE=34,wa=35,OE=37,$E=38,BE=39,VE=42,yd=44,RE=45,kr=58,ME=61,DE=62,LE=63,FE=64,_d=91,bd=93,UE=96,wd=123,KE=124,kd=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 jE=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],GE=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function qE(e,n){var o,r,i,a,l,s,c;if(n===null)return{};for(o={},r=Object.keys(n),i=0,a=r.length;i<a;i+=1)l=r[i],s=String(n[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&hd.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function zE(e){var n,o,r;if(n=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-n.length)+n}var HE=1,go=2;function YE(e){this.schema=e.schema||ga,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=qE(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==='"'?go:HE,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 Ed(e,n){for(var o=Ge.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
29
+ `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new fE(e,n),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;)EE(o);return o.documents}function CE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=pd(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function NE(e,n){var o=pd(e,n);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 vE=CE,SE=NE,md={loadAll:vE,load:SE},gd=Object.prototype.toString,hd=Object.prototype.hasOwnProperty,ba=65279,xE=9,mo=10,AE=13,IE=32,TE=33,PE=34,wa=35,OE=37,$E=38,BE=39,VE=42,yd=44,RE=45,kr=58,ME=61,DE=62,FE=63,LE=64,_d=91,bd=93,UE=96,wd=123,KE=124,kd=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 jE=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],GE=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function qE(e,n){var o,r,i,a,l,s,c;if(n===null)return{};for(o={},r=Object.keys(n),i=0,a=r.length;i<a;i+=1)l=r[i],s=String(n[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&hd.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function zE(e){var n,o,r;if(n=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-n.length)+n}var HE=1,go=2;function YE(e){this.schema=e.schema||ga,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=qE(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==='"'?go:HE,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 Ed(e,n){for(var o=Ge.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
30
30
  `,r),i===-1?(l=e.slice(r),r=s):(l=e.slice(r,i+1),r=i+1),l.length&&l!==`
31
31
  `&&(a+=o),a+=l;return a}function ka(e,n){return`
32
- `+Ge.repeat(" ",e.indent*n)}function WE(e,n){var o,r,i;for(o=0,r=e.implicitTypes.length;o<r;o+=1)if(i=e.implicitTypes[o],i.resolve(n))return!0;return!1}function Er(e){return e===IE||e===xE}function ho(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==ba||65536<=e&&e<=1114111}function Cd(e){return ho(e)&&e!==ba&&e!==AE&&e!==mo}function Nd(e,n,o){var r=Cd(e),i=r&&!Er(e);return(o?r:r&&e!==yd&&e!==_d&&e!==bd&&e!==wd&&e!==kd)&&e!==wa&&!(n===kr&&!i)||Cd(n)&&!Er(n)&&e===wa||n===kr&&i}function XE(e){return ho(e)&&e!==ba&&!Er(e)&&e!==RE&&e!==LE&&e!==kr&&e!==yd&&e!==_d&&e!==bd&&e!==wd&&e!==kd&&e!==wa&&e!==$E&&e!==VE&&e!==TE&&e!==KE&&e!==ME&&e!==DE&&e!==BE&&e!==PE&&e!==OE&&e!==FE&&e!==UE}function ZE(e){return!Er(e)&&e!==kr}function yo(e,n){var o=e.charCodeAt(n),r;return o>=55296&&o<=56319&&n+1<e.length&&(r=e.charCodeAt(n+1),r>=56320&&r<=57343)?(o-55296)*1024+r-56320+65536:o}function vd(e){var n=/^\n* /;return n.test(e)}var Sd=1,Ea=2,xd=3,Ad=4,Dn=5;function JE(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,h=-1,y=XE(yo(e,0))&&ZE(yo(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=yo(e,c),!ho(d))return Dn;y=y&&Nd(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=yo(e,c),d===mo)u=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!ho(d))return Dn;y=y&&Nd(d,f,s),f=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!u&&!p?y&&!l&&!i(e)?Sd:a===go?Dn:Ea:o>9&&vd(e)?Dn:l?a===go?Dn:Ea:p?Ad:xd}function QE(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===go?'""':"''";if(!e.noCompatMode&&(jE.indexOf(n)!==-1||GE.test(n)))return e.quotingType===go?'"'+n+'"':"'"+n+"'";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 WE(e,d)}switch(JE(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case Sd:return n;case Ea:return"'"+n.replace(/'/g,"''")+"'";case xd:return"|"+Id(n,e.indent)+Td(Ed(n,a));case Ad:return">"+Id(n,e.indent)+Td(Ed(eC(n,l),a));case Dn:return'"'+tC(n)+'"';default:throw new et("impossible error: invalid scalar style")}}()}function Id(e,n){var o=vd(e)?String(n):"",r=e[e.length-1]===`
32
+ `+Ge.repeat(" ",e.indent*n)}function WE(e,n){var o,r,i;for(o=0,r=e.implicitTypes.length;o<r;o+=1)if(i=e.implicitTypes[o],i.resolve(n))return!0;return!1}function Er(e){return e===IE||e===xE}function ho(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==ba||65536<=e&&e<=1114111}function Cd(e){return ho(e)&&e!==ba&&e!==AE&&e!==mo}function Nd(e,n,o){var r=Cd(e),i=r&&!Er(e);return(o?r:r&&e!==yd&&e!==_d&&e!==bd&&e!==wd&&e!==kd)&&e!==wa&&!(n===kr&&!i)||Cd(n)&&!Er(n)&&e===wa||n===kr&&i}function XE(e){return ho(e)&&e!==ba&&!Er(e)&&e!==RE&&e!==FE&&e!==kr&&e!==yd&&e!==_d&&e!==bd&&e!==wd&&e!==kd&&e!==wa&&e!==$E&&e!==VE&&e!==TE&&e!==KE&&e!==ME&&e!==DE&&e!==BE&&e!==PE&&e!==OE&&e!==LE&&e!==UE}function ZE(e){return!Er(e)&&e!==kr}function yo(e,n){var o=e.charCodeAt(n),r;return o>=55296&&o<=56319&&n+1<e.length&&(r=e.charCodeAt(n+1),r>=56320&&r<=57343)?(o-55296)*1024+r-56320+65536:o}function vd(e){var n=/^\n* /;return n.test(e)}var Sd=1,Ea=2,xd=3,Ad=4,Dn=5;function JE(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,h=-1,y=XE(yo(e,0))&&ZE(yo(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=yo(e,c),!ho(d))return Dn;y=y&&Nd(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=yo(e,c),d===mo)u=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!ho(d))return Dn;y=y&&Nd(d,f,s),f=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!u&&!p?y&&!l&&!i(e)?Sd:a===go?Dn:Ea:o>9&&vd(e)?Dn:l?a===go?Dn:Ea:p?Ad:xd}function QE(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===go?'""':"''";if(!e.noCompatMode&&(jE.indexOf(n)!==-1||GE.test(n)))return e.quotingType===go?'"'+n+'"':"'"+n+"'";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 WE(e,d)}switch(JE(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case Sd:return n;case Ea:return"'"+n.replace(/'/g,"''")+"'";case xd:return"|"+Id(n,e.indent)+Td(Ed(n,a));case Ad:return">"+Id(n,e.indent)+Td(Ed(eC(n,l),a));case Dn:return'"'+tC(n)+'"';default:throw new et("impossible error: invalid scalar style")}}()}function Id(e,n){var o=vd(e)?String(n):"",r=e[e.length-1]===`
33
33
  `,i=r&&(e[e.length-2]===`
34
34
  `||e===`
35
35
  `),a=i?"+":r?"":"-";return o+a+`
@@ -41,7 +41,7 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
41
41
  `+e.slice(i,a),i=a+1),l=s;return c+=`
42
42
  `,e.length-i>n&&l>i?c+=e.slice(i,l)+`
43
43
  `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function tC(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=yo(e,i),r=Xe[o],!r&&ho(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||zE(o);return n}function nC(e,n,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)),(Bt(e,n,s,!1,!1)||typeof s>"u"&&Bt(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function Od(e,n,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)),(Bt(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&Bt(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=ka(e,n)),e.dump&&mo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function oC(e,n,o){var r="",i=e.tag,a=Object.keys(o),l,s,c,d,f;for(l=0,s=a.length;l<s;l+=1)f="",r!==""&&(f+=", "),e.condenseFlow&&(f+='"'),c=a[l],d=o[c],e.replacer&&(d=e.replacer.call(o,c,d)),Bt(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Bt(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function rC(e,n,o,r){var i="",a=e.tag,l=Object.keys(o),s,c,d,f,u,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+=ka(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),Bt(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&mo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=ka(e,n)),Bt(e,n+1,f,!0,u)&&(e.dump&&mo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function $d(e,n,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 n=="object"&&n instanceof s.instanceOf)&&(!s.predicate||s.predicate(n))){if(o?s.multi&&s.representName?e.tag=s.representName(n):e.tag=s.tag:e.tag="?",s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,gd.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(hd.call(s.represent,c))r=s.represent[c](n,c);else throw new et("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function Bt(e,n,o,r,i,a,l){e.tag=null,e.dump=o,$d(e,o,!1)||$d(e,o,!0);var s=gd.call(e.dump),c=r,d;r&&(r=e.flowLevel<0||e.flowLevel>n);var f=s==="[object Object]"||s==="[object Array]",u,p;if(f&&(u=e.duplicates.indexOf(o),p=u!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&n>0)&&(i=!1),p&&e.usedDuplicates[u])e.dump="*ref_"+u;else{if(f&&p&&!e.usedDuplicates[u]&&(e.usedDuplicates[u]=!0),s==="[object Object]")r&&Object.keys(e.dump).length!==0?(rC(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(oC(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?Od(e,n-1,e.dump,i):Od(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(nC(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&QE(e,e.dump,n,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 iC(e,n){var o=[],r=[],i,a;for(Ca(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function Ca(e,n,o){var r,i,a;if(e!==null&&typeof e=="object")if(i=n.indexOf(e),i!==-1)o.indexOf(i)===-1&&o.push(i);else if(n.push(e),Array.isArray(e))for(i=0,a=e.length;i<a;i+=1)Ca(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)Ca(e[r[i]],n,o)}function aC(e,n){n=n||{};var o=new YE(n);o.noRefs||iC(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),Bt(o,0,r,!0,!0)?o.dump+`
44
- `:""}var lC=aC,sC={dump:lC};function Na(e,n){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var cC=He,dC=Vc,uC=Lc,va=Gc,fC=qc,pC=ga,mC=md.load,gC=md.loadAll,hC=sC.dump,yC=et,_C={binary:Xc,float:jc,map:Dc,null:Fc,pairs:Jc,set:Qc,timestamp:Yc,bool:Uc,int:Kc,merge:Wc,omap:Zc,seq:Mc,str:Rc},bC=Na("safeLoad","load"),wC=Na("safeLoadAll","loadAll"),kC=Na("safeDump","dump"),Bd={Type:cC,Schema:dC,FAILSAFE_SCHEMA:uC,JSON_SCHEMA:va,CORE_SCHEMA:fC,DEFAULT_SCHEMA:pC,load:mC,loadAll:gC,dump:hC,YAMLException:yC,types:_C,safeLoad:bC,safeLoadAll:wC,safeDump:kC};const Vd=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
44
+ `:""}var lC=aC,sC={dump:lC};function Na(e,n){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var cC=He,dC=Vc,uC=Fc,va=Gc,fC=qc,pC=ga,mC=md.load,gC=md.loadAll,hC=sC.dump,yC=et,_C={binary:Xc,float:jc,map:Dc,null:Lc,pairs:Jc,set:Qc,timestamp:Yc,bool:Uc,int:Kc,merge:Wc,omap:Zc,seq:Mc,str:Rc},bC=Na("safeLoad","load"),wC=Na("safeLoadAll","loadAll"),kC=Na("safeDump","dump"),Bd={Type:cC,Schema:dC,FAILSAFE_SCHEMA:uC,JSON_SCHEMA:va,CORE_SCHEMA:fC,DEFAULT_SCHEMA:pC,load:mC,loadAll:gC,dump:hC,YAMLException:yC,types:_C,safeLoad:bC,safeLoadAll:wC,safeDump:kC};const Vd=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
45
45
  - name: STATIC_INPUTS
46
46
  type: static
47
47
  values:
@@ -116,12 +116,12 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
116
116
  input: API
117
117
  status: 200
118
118
  `},Symbol.toStringTag,{value:"Module"})),EC={class:"dk-code-editor"},CC={class:"examples-content"},NC={ref:"editor-root",class:"editor"},Sa="YAML Syntax",vC="datakit.insert-example",SC=we(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean},config:{}},emits:["change","error"],setup(e,{expose:n,emit:o}){const{t:r}=Re.createI18n("en-us",je),i=o,a=t.useTemplateRef("editor-root"),l=t.shallowRef(null);function s(c){const d=l.value,f=d==null?void 0:d.getModel();if(!d||!f)return;const u=Vd[c];if(d.getValue()!==u){const p=f.getFullModelRange();d.pushUndoStop(),d.executeEdits(vC,[{range:p,text:u}]),d.pushUndoStop()}d.focus()}return t.onMounted(()=>{const c=Zo.editor.create(a.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});l.value=c,e.config&&Object.keys(e.config).length>0&&c.setValue(Bd.dump(t.toRaw(e.config),{schema:va,noArrayIndent:!0})),c.onDidChangeModelContent(()=>{const d=c.getModel(),f=c.getValue()||"";try{const u=Bd.load(f,{schema:va,json:!0});Zo.editor.setModelMarkers(d,Sa,[]),i("change",u)}catch(u){const{message:p,mark:m}=u,{line:h,column:y}=m||{line:0,column:0},g=p.split(`
119
- `)[0],_=[{startLineNumber:h+1,startColumn:y+1,endLineNumber:h+1,endColumn:y+2,message:g,severity:Zo.MarkerSeverity.Error,source:Sa}];Zo.editor.setModelMarkers(d,Sa,_),i("error",g)}})}),t.onBeforeUnmount(()=>{var c;(c=l.value)==null||c.dispose()}),n({setExampleCode:s}),(c,d)=>(t.openBlock(),t.createElementBlock("div",EC,[t.createVNode(t.unref(Te.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(ke.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",CC,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(Vd,(f,u)=>t.createVNode(t.unref(Te.KButton),{key:u,appearance:"secondary",size:"small",onClick:p=>s(u)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${u}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),t.createElementVNode("div",NC,null,512)]))}}),[["__scopeId","data-v-d63d9bf4"]]),{t:xa}=Re.createI18n("en-us",je);function Ct(e){return xa(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function _o(e){return xa(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function xC(e){return xa(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const Cr={call:{type:"call",summary:_o("call"),description:Ct("call"),icon:ke.NetworkIcon,io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}}},jq:{type:"jq",summary:_o("jq"),description:Ct("jq"),icon:ke.CodeblockIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},exit:{type:"exit",summary:_o("exit"),description:Ct("exit"),icon:ke.GatewayIcon,io:{input:{fields:[{name:"headers"},{name:"body"}]}}},property:{type:"property",summary:_o("property"),description:Ct("property"),icon:ke.StackIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},static:{type:"static",summary:_o("static"),description:Ct("static"),icon:ke.VitalsIcon,io:{output:{fields:[],configurable:!0}}}},Nr={request:{type:"request",description:Ct("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_request:{type:"service_request",description:Ct("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_response:{type:"service_response",description:Ct("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}}},response:{type:"response",description:Ct("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}}}},Rd=Object.keys(Nr),Aa=e=>Rd.includes(e),Vt=e=>Rd.includes(e),Md=e=>Vt(e.type);function Ln(e){return xn(e)}function bo(e){return`${e}:${fr()}`}function vr(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function Dd(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function Ia(e){return Vt(e)?Nr[e]:Cr[e]}function Ld(e){var i,a,l,s,c,d;const n=Ia(e),o=((l=(a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields)==null?void 0:l.map(({name:f})=>f))??[],r=((d=(c=(s=n.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 Fd(e){return(e??[]).map(n=>({id:bo("field"),name:n}))}function Fn(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function Gt(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function Ta(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Ud(e,n){return n?e.fields.input.some(o=>o.id===n):!0}const AC=["request","service_request","service_response","response"];function IC(e){const n=e==="request"||e==="service_request"?"request":"response",o=Nr[e];return{name:e,phase:n,position:{x:0,y:0},fields:Ld(o.type),expanded:{}}}function TC(e,n){const o=e.toUpperCase();let r=1;for(;n.has(`${o}_${r}`);)r++;return`${o}_${r}`}function PC(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d}=Je.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let f;function u(_){var w;(w=n==null?void 0:n.onHistoryChange)==null||w.call(n,_,e.value)}function p(_){if(!_){f=void 0,o(),u("commit");return}if(f!==_){f=_,o(),u("commit");return}const w=d.value[0]??null;o(),d.value.shift(),w&&d.value.unshift(w),u("commit")}function m(){r(),f=void 0,u("undo")}function h(){i(),f=void 0,u("redo")}function y(){s(),f=void 0,u("clear")}function g(){c(),f=void 0,u("reset")}return{canUndo:a,canRedo:l,commit:p,undo:m,redo:h,clear:y,reset:g}}function Kd(e,n,o){var f,u;const r=new Map(n.map(p=>[p.name,p])),i=[],a=[],l=new Map,s=[],c=new Map,d=p=>{const m=new Set,h=[...p];for(;h.length>0;){const y=h.shift();if(!m.has(y)&&(m.add(y),Aa(y)||(l.get(y).phase="request"),!!c.has(y)))for(const g of c.get(y))m.has(g)||h.push(g)}};for(const p of e){const m=r.get(p.name),h=Gd(p.type,p,m);i.push(h),l.set(h.name,h)}for(const p of AC)if(!l.has(p)){const m=r.get(p)??IC(p),h=Gd(p,void 0,m);i.push(h),l.set(h.name,h)}for(const p of e)BC(p,s);for(const p of s){const m=l.get(p.source),h=l.get(p.target);if(!m||!h){m||console.warn(`[initEditorState] skip: source "${p.source}" not found`),h||console.warn(`[initEditorState] skip: target "${p.target}" not found`);continue}c.has(p.source)||c.set(p.source,new Set),c.get(p.source).add(p.target),c.has(p.target)||c.set(p.target,new Set),c.get(p.target).add(p.source),a.push({id:bo("edge"),source:m.id,sourceField:(f=Fn(m,"output",p.sourceField))==null?void 0:f.id,target:h.id,targetField:(u=Fn(h,"input",p.targetField))==null?void 0:u.id})}return d(["request","service_request"]),{nodes:i,edges:a,isEditing:o}}function jd(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Ld(n);return{id:bo("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Fd((a==null?void 0:a.input)??s.input),output:Fd((a==null?void 0:a.output)??s.output)},config:l?Ln(l):{}}}function OC(e){return Vt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Gd(e,n,o){return jd({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??OC(e),position:o==null?void 0:o.position,fields:VC(n,o),config:n?$C(n):void 0})}function $C(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return Ln(s)}function BC(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=vr(e.input);r&&n.push({source:r,sourceField:i,target:o})}if(e.inputs)for(const[r,i]of Object.entries(e.inputs)){if(!i)continue;const{nodeName:a,fieldName:l}=vr(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=vr(e.output);r&&n.push({source:o,target:r,targetField:i})}if(e.outputs)for(const[r,i]of Object.entries(e.outputs)){if(!i)continue;const{nodeName:a,fieldName:l}=vr(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function VC(e,n){var a,l;if(!e&&!n)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=n==null?void 0:n.fields)!=null&&a.input&&n.fields.input.forEach(s=>o.add(s)),(l=n==null?void 0:n.fields)!=null&&l.output&&n.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 RC(e){const n=t.computed(()=>{const c=new Map;return e.value.nodes.forEach(d=>c.set(d.id,d)),c}),o=t.computed(()=>e.value.edges);function r(c){const d=n.value.get(c.source),f=n.value.get(c.target);if(!d||!f)return c;const u=Ud(d,c.sourceField)&&!Ta(d,c.sourceField),p=Ta(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=n.value.get(d.source),p=n.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};Ta(u,d.sourceField)||f.push("source handle is not an output field"),Ud(p,d.targetField)||f.push("target handle is not an input field"),p.name==="request"&&f.push('cannot target "request"'),u.name==="response"&&f.push('cannot source from "response"');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 y=Sr(o.value,d);return Pa(y)&&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)[...n.value.values()].some(u=>u.name===f)||c.push(`missing implicit node "${f}"`);for(const f of o.value){const u=n.value.get(f.source);n.value.get(f.target).name==="request"&&c.push(`edge "${f.id}" targets "request"`),u.name==="response"&&c.push(`edge "${f.id}" sources from "response"`)}return Pa(Sr(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:Sr}}function Pa(e){const n=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(n.has(i))return!1;n.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 Sr(e,n){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 n&&(o.has(n.source)||o.set(n.source,[]),o.get(n.source).push(n.target),o.has(n.target)||o.set(n.target,[])),o}const[MC,DC]=Je.createInjectionState(function(n,o,r={}){const i=t.ref(Kd(n,o,r.isEditing)),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=PC(i,{capacity:200,clone:Ln,onHistoryChange:F=>{var W;F!=="clear"&&((W=r.onChange)==null||W.call(r,ne(),re()))}}),d=t.ref(null),f=t.ref(new Set),u=t.computed(()=>new Map(i.value.nodes.map(F=>[F.id,F]))),p=t.computed(()=>new Map(i.value.nodes.map(F=>[F.name,F]))),m=t.computed(()=>{const F=new Map,W=new Map;for(const N of i.value.edges)F.set(N.id,N),W.has(N.source)||W.set(N.source,new Set),W.get(N.source).add(N.id),W.has(N.target)||W.set(N.target,new Set),W.get(N.target).add(N.id);return{edgeMapById:F,edgeIdMapByNodeId:W}}),h=t.computed(()=>m.value.edgeMapById),y=t.computed(()=>m.value.edgeIdMapByNodeId),g=t.computed(()=>new Set(i.value.nodes.map(F=>F.name))),{canonicalizeConnection:_,validateConnection:w,validateGraph:b,isValidConnection:C,isValidVueFlowConnection:E}=RC(i);function k(F){return u.value.get(F)}function T(F){return p.value.get(F)}function x(F){return h.value.get(F)}function O(F){if(!y.value.has(F))return[];const W=[];return y.value.get(F).forEach(N=>{const v=x(N);v&&W.push(v)}),W}function Y(F){return O(F).filter(W=>W.target===F)}function K(F){return O(F).filter(W=>W.source===F)}const I=t.computed(()=>a.value?k(a.value):void 0);function Q(F){a.value=F}function A(F){if(Vt(F.type))throw new Error("[createNode] implicit nodes are fixed.");return jd({type:F.type,name:F.name||(Vt(F.type)?void 0:TC(F.type,g.value)),phase:F.phase,position:F.position,fields:F.fields,config:F.config})}function D(F,W=!0){const N=A(F);if(N)return i.value.nodes.push(N),W&&c.commit(),N.id}function V(F,W=!0){i.value.edges=i.value.edges.filter(v=>v.source!==F&&v.target!==F),i.value.nodes=i.value.nodes.filter(v=>v.id!==F),a.value===F&&(a.value=void 0);const N=b();N.ok||console.warn("[removeNode] topology invalid:",N.errors.join("; ")),W&&c.commit()}function X(F,W,N=!0,v){const S=k(F);if(S){if(Aa(S.name)){console.warn("[renameNode] implicit node name is reserved.");return}S.name=W,N&&c.commit(v)}}function H(F,W,N=!0){const v=k(F);v&&(v.position={...W},N&&c.commit())}function j(F,W,N,v=!0){const S=k(F);S&&(S.expanded[W]=N??!S.expanded[W],v&&c.commit(`toggle:${F}:${W}`))}function L(F,W,N=!0,v){const S=k(F);S&&(S.config=Ln(W),N&&c.commit(v))}function R(F,W,N,v=!0){const S=k(F);if(!S)return;const P=S.fields[W];if(P.some($=>$.name===N)){console.warn(`[addField] field "${N}" already exists on ${W}.`);return}P.push({id:bo("field"),name:N}),W==="input"?S.fields.input=P:S.fields.output=P,v&&c.commit()}function oe(F,W,N,v=!0){const S=k(F);if(!S)return;const P=S.fields.input,$=S.fields.output,J=P.find(te=>te.id===W)??$.find(te=>te.id===W);J&&(J.name=N,v&&c.commit())}function ie(F,W,N=!0,v=!0){const S=k(F);if(!S)return;const P=S.fields.input,$=S.fields.output,J=P.findIndex(z=>z.id===W);J>=0&&P.splice(J,1);const te=$.findIndex(z=>z.id===W);te>=0&&$.splice(te,1),S.fields.input=P,S.fields.output=$,N&&(i.value.edges=i.value.edges.filter(z=>z.sourceField!==W&&z.targetField!==W));const M=b();M.ok||console.warn("[removeField] topology invalid:",M.errors.join("; ")),v&&c.commit()}function Z(F,W=!0){const N=_(F),v=w(N);if(!v.ok){console.warn("[connectEdge] invalid connection:",v.errors.join("; "));return}const S={id:bo("edge"),...N};i.value.edges.push(S);const P=b();if(!P.ok){i.value.edges.pop(),console.warn("[connectEdge] topology invalid:",P.errors.join("; "));return}return W&&c.commit(),S.id}function ae(F,W,N=!0){G(F,!1),Z(W,!1),N&&c.commit()}function G(F,W=!0){const N=i.value.edges.findIndex(P=>P.id===F);if(N<0)return;const v=i.value.edges[N];i.value.edges.splice(N,1);const S=b();if(!S.ok){i.value.edges.splice(N,0,v),console.warn("[disconnectEdge] topology invalid:",S.errors.join("; "));return}W&&c.commit()}function ee(F,W=!0){const N=Y(F);for(const v of N)G(v.id,!1);W&&c.commit()}function U(F,W=!0){const N=K(F);for(const v of N)G(v.id,!1);W&&c.commit()}function ne(){var W,N,v,S,P;const F=[];for(const $ of i.value.nodes){if(Vt($.type))continue;let J;const te={};let M;const z={};for(const se of i.value.edges.filter(_e=>_e.target===$.id)){const _e=k(se.source);if(!_e)continue;const be=(W=Gt(_e,"output",se.sourceField))==null?void 0:W.name,Ce=be?`${_e.name}.${be}`:_e.name,xe=(N=Gt($,"input",se.targetField))==null?void 0:N.name;xe?te[xe]=Ce:J===void 0&&(J=Ce)}for(const se of i.value.edges.filter(_e=>_e.source===$.id)){const _e=k(se.target);if(!_e)continue;const be=_e.type;if(!Vt(be)||!((v=Nr[be].io)!=null&&v.input))continue;const Ce=(S=Gt(_e,"input",se.targetField))==null?void 0:S.name,xe=Ce?`${_e.name}.${Ce}`:_e.name,pe=(P=Gt($,"output",se.sourceField))==null?void 0:P.name;pe?z[pe]=xe:M===void 0&&(M=xe)}const B={...Ln($.config),name:$.name,type:$.type};Object.keys(te).length>0?B.inputs=te:J!==void 0&&(B.input=J),Object.keys(z).length>0?B.outputs=z:M!==void 0&&(B.output=M),F.push(B)}return F}function re(){return i.value.nodes.map(F=>Ln({name:F.name,phase:F.phase,position:{...F.position},expanded:{...F.expanded},fields:{input:F.fields.input.map(W=>W.name),output:F.fields.output.map(W=>W.name)}}))}function de(F,W,N){i.value=Kd(F,W,N),c.reset()}return{state:i,selection:a,modalOpen:l,newCreatedNodeId:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,nodeMapById:u,nodeMapByName:p,edgeMapById:h,edgeIdMapByNodeId:y,getNodeById:k,getNodeByName:T,getEdgeById:x,getEdgesByNodeId:O,getInEdgesByNodeId:Y,getOutEdgesByNodeId:K,selectedNode:I,selectNode:Q,createNode:A,addNode:D,removeNode:V,renameNode:X,moveNode:H,toggleExpanded:j,replaceConfig:L,addField:R,renameField:oe,removeField:ie,connectEdge:Z,replaceConnection:ae,disconnectEdge:G,disconnectInEdges:ee,disconnectOutEdges:U,toConfigNodes:ne,toUINodes:re,load:de,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,isValidConnection:C,isValidVueFlowConnection:E,validateGraph:()=>b()}});function rt(){const e=DC();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const Oa=Je.createGlobalState(()=>{const e=Je.useLocalStorage("datakit-editor-mode","flow"),n=Je.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}});function xr(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function Rt(e){return typeof e=="function"?e():t.unref(e)}const LC=typeof window<"u"&&typeof document<"u",FC=e=>typeof e<"u",UC=Object.prototype.toString,KC=e=>UC.call(e)==="[object Object]",jC=()=>{};function GC(e,n){function o(...r){return new Promise((i,a)=>{Promise.resolve(e(()=>n.apply(this,r),{fn:n,thisArg:this,args:r})).then(i).catch(a)})}return o}const qd=e=>e();function qC(e=qd){const n=t.ref(!0);function o(){n.value=!1}function r(){n.value=!0}const i=(...a)=>{n.value&&e(...a)};return{isActive:t.readonly(n),pause:o,resume:r,eventFilter:i}}function zd(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function zC(e,n,o={}){const{eventFilter:r=qd,...i}=o;return t.watch(e,GC(r,n),i)}function Un(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=qC(r);return{stop:zC(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function HC(e,n={}){if(!t.isRef(e))return t.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=t.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=Rt(n.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,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:y}={}){let g=null;const w=[new Promise(b=>{g=t.watch(e,C=>{u(C)!==n&&(g==null||g(),b(C))},{flush:p,deep:m,immediate:!0})})];return h!=null&&w.push(zd(h,y).then(()=>Rt(e)).finally(()=>g==null?void 0:g())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(C=>C===u,p);const{flush:m="sync",deep:h=!1,timeout:y,throwOnTimeout:g}=p??{};let _=null;const b=[new Promise(C=>{_=t.watch([e,u],([E,k])=>{n!==(E===k)&&(_==null||_(),C(E))},{flush:m,deep:h,immediate:!0})})];return y!=null&&b.push(zd(y,g).then(()=>Rt(e)).finally(()=>(_==null||_(),Rt(e)))),Promise.race(b)}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(Rt(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(Rt(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return $a(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return $a(e,!n)}}}function Ba(e){return $a(e)}function YC(e){var n;const o=Rt(e);return(n=o==null?void 0:o.$el)!=null?n:o}const Hd=LC?window:void 0;function Yd(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=Hd):[n,o,r,i]=e,!n)return jC;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=t.watch(()=>[YC(n),Rt(i)],([f,u])=>{if(l(),!f)return;const p=KC(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return xr(d),d}function WC(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Wd(...e){let n,o,r={};e.length===3?(n=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(n=!0,o=e[0],r=e[1]):(n=e[0],o=e[1]):(n=!0,o=e[0]);const{target:i=Hd,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=WC(n);return Yd(i,a,f=>{f.repeat&&Rt(s)||c(f)&&o(f)},l)}function XC(e){return JSON.parse(JSON.stringify(e))}function Va(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.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 y=d;n||(n="modelValue"),y=y||`update:${n.toString()}`;const g=b=>s?typeof s=="function"?s(b):XC(b):b,_=()=>FC(e[n])?g(e[n]):u,w=b=>{p?p(b)&&h(y,b):h(y,b)};if(c){const b=_(),C=t.ref(b);let E=!1;return t.watch(()=>e[n],k=>{E||(E=!0,C.value=g(k),t.nextTick(()=>E=!1))}),t.watch(C,k=>{!E&&(k!==e[n]||f)&&w(k)},{deep:f}),C}else return t.computed({get(){return _()},set(b){w(b)}})}var ZC={value:()=>{}};function Ar(){for(var e=0,n=arguments.length,o={},r;e<n;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new Ir(o)}function Ir(e){this._=e}function JC(e,n){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&&!n.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}Ir.prototype=Ar.prototype={constructor:Ir,on:function(e,n){var o=this._,r=JC(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=QC(o[i],e.name)))return i;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++a<l;)if(i=(e=r[a]).type)o[i]=Xd(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Xd(o[i],e.name,null);return this},copy:function(){var e={},n=this._;for(var o in n)e[o]=n[o].slice();return new Ir(e)},call:function(e,n){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(n,o)},apply:function(e,n,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(n,o)}};function QC(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Xd(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=ZC,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Ra="http://www.w3.org/1999/xhtml";const Zd={svg:"http://www.w3.org/2000/svg",xhtml:Ra,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Tr(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Zd.hasOwnProperty(n)?{space:Zd[n],local:e}:e}function eN(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Ra&&n.documentElement.namespaceURI===Ra?n.createElement(e):n.createElementNS(o,e)}}function tN(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Jd(e){var n=Tr(e);return(n.local?tN:eN)(n)}function nN(){}function Ma(e){return e==null?nN:function(){return this.querySelector(e)}}function oN(e){typeof e!="function"&&(e=Ma(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[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 it(r,this._parents)}function rN(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function iN(){return[]}function Qd(e){return e==null?iN:function(){return this.querySelectorAll(e)}}function aN(e){return function(){return rN(e.apply(this,arguments))}}function lN(e){typeof e=="function"?e=aN(e):e=Qd(e);for(var n=this._groups,o=n.length,r=[],i=[],a=0;a<o;++a)for(var l=n[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 it(r,i)}function eu(e){return function(){return this.matches(e)}}function tu(e){return function(n){return n.matches(e)}}var sN=Array.prototype.find;function cN(e){return function(){return sN.call(this.children,e)}}function dN(){return this.firstElementChild}function uN(e){return this.select(e==null?dN:cN(typeof e=="function"?e:tu(e)))}var fN=Array.prototype.filter;function pN(){return Array.from(this.children)}function mN(e){return function(){return fN.call(this.children,e)}}function gN(e){return this.selectAll(e==null?pN:mN(typeof e=="function"?e:tu(e)))}function hN(e){typeof e!="function"&&(e=eu(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[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 it(r,this._parents)}function nu(e){return new Array(e.length)}function yN(){return new it(this._enter||this._groups.map(nu),this._parents)}function Pr(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}Pr.prototype={constructor:Pr,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function _N(e){return function(){return e}}function bN(e,n,o,r,i,a){for(var l=0,s,c=n.length,d=a.length;l<d;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new Pr(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function wN(e,n,o,r,i,a,l){var s,c,d=new Map,f=n.length,u=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=n[s])&&(p[s]=m=l.call(c,c.__data__,s,n)+"",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 Pr(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function kN(e){return e.__data__}function EN(e,n){if(!arguments.length)return Array.from(this,kN);var o=n?wN:bN,r=this._parents,i=this._groups;typeof e!="function"&&(e=_N(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=CN(e.call(f,f&&f.__data__,d,r)),h=m.length,y=s[d]=new Array(h),g=l[d]=new Array(h),_=c[d]=new Array(p);o(f,u,y,g,_,m,n);for(var w=0,b=0,C,E;w<h;++w)if(C=y[w]){for(w>=b&&(b=w+1);!(E=g[b])&&++b<h;);C._next=E||null}}return l=new it(l,r),l._enter=s,l._exit=c,l}function CN(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function NN(){return new it(this._exit||this._groups.map(nu),this._parents)}function vN(e,n,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+""),n!=null&&(i=n(i),i&&(i=i.selection())),o==null?a.remove():o(a),r&&i?r.merge(i).order():i}function SN(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._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 it(s,this._parents)}function xN(){for(var e=this._groups,n=-1,o=e.length;++n<o;)for(var r=e[n],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 AN(e){e||(e=IN);function n(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(n)}return new it(i,this._parents).order()}function IN(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function TN(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function PN(){return Array.from(this)}function ON(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function $N(){let e=0;for(const n of this)++e;return e}function BN(){return!this.node()}function VN(e){for(var n=this._groups,o=0,r=n.length;o<r;++o)for(var i=n[o],a=0,l=i.length,s;a<l;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function RN(e){return function(){this.removeAttribute(e)}}function MN(e){return function(){this.removeAttributeNS(e.space,e.local)}}function DN(e,n){return function(){this.setAttribute(e,n)}}function LN(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function FN(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function UN(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,o)}}function KN(e,n){var o=Tr(e);if(arguments.length<2){var r=this.node();return o.local?r.getAttributeNS(o.space,o.local):r.getAttribute(o)}return this.each((n==null?o.local?MN:RN:typeof n=="function"?o.local?UN:FN:o.local?LN:DN)(o,n))}function ou(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function jN(e){return function(){this.style.removeProperty(e)}}function GN(e,n,o){return function(){this.style.setProperty(e,n,o)}}function qN(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function zN(e,n,o){return arguments.length>1?this.each((n==null?jN:typeof n=="function"?qN:GN)(e,n,o??"")):Kn(this.node(),e)}function Kn(e,n){return e.style.getPropertyValue(n)||ou(e).getComputedStyle(e,null).getPropertyValue(n)}function HN(e){return function(){delete this[e]}}function YN(e,n){return function(){this[e]=n}}function WN(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function XN(e,n){return arguments.length>1?this.each((n==null?HN:typeof n=="function"?WN:YN)(e,n)):this.node()[e]}function ru(e){return e.trim().split(/^|\s+/)}function Da(e){return e.classList||new iu(e)}function iu(e){this._node=e,this._names=ru(e.getAttribute("class")||"")}iu.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function au(e,n){for(var o=Da(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function lu(e,n){for(var o=Da(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function ZN(e){return function(){au(this,e)}}function JN(e){return function(){lu(this,e)}}function QN(e,n){return function(){(n.apply(this,arguments)?au:lu)(this,e)}}function e1(e,n){var o=ru(e+"");if(arguments.length<2){for(var r=Da(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?QN:n?ZN:JN)(o,n))}function t1(){this.textContent=""}function n1(e){return function(){this.textContent=e}}function o1(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function r1(e){return arguments.length?this.each(e==null?t1:(typeof e=="function"?o1:n1)(e)):this.node().textContent}function i1(){this.innerHTML=""}function a1(e){return function(){this.innerHTML=e}}function l1(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function s1(e){return arguments.length?this.each(e==null?i1:(typeof e=="function"?l1:a1)(e)):this.node().innerHTML}function c1(){this.nextSibling&&this.parentNode.appendChild(this)}function d1(){return this.each(c1)}function u1(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function f1(){return this.each(u1)}function p1(e){var n=typeof e=="function"?e:Jd(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function m1(){return null}function g1(e,n){var o=typeof e=="function"?e:Jd(e),r=n==null?m1:typeof n=="function"?n:Ma(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function h1(){var e=this.parentNode;e&&e.removeChild(this)}function y1(){return this.each(h1)}function _1(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function b1(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function w1(e){return this.select(e?b1:_1)}function k1(e){return arguments.length?this.property("__data__",e):this.node().__data__}function E1(e){return function(n){e.call(this,n,this.__data__)}}function C1(e){return e.trim().split(/^|\s+/).map(function(n){var o="",r=n.indexOf(".");return r>=0&&(o=n.slice(r+1),n=n.slice(0,r)),{type:n,name:o}})}function N1(e){return function(){var n=this.__on;if(n){for(var o=0,r=-1,i=n.length,a;o<i;++o)a=n[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):n[++r]=a;++r?n.length=r:delete this.__on}}}function v1(e,n,o){return function(){var r=this.__on,i,a=E1(n);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=n;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:n,listener:a,options:o},r?r.push(i):this.__on=[i]}}function S1(e,n,o){var r=C1(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=n?v1:N1,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function su(e,n,o){var r=ou(e),i=r.CustomEvent;typeof i=="function"?i=new i(n,o):(i=r.document.createEvent("Event"),o?(i.initEvent(n,o.bubbles,o.cancelable),i.detail=o.detail):i.initEvent(n,!1,!1)),e.dispatchEvent(i)}function x1(e,n){return function(){return su(this,e,n)}}function A1(e,n){return function(){return su(this,e,n.apply(this,arguments))}}function I1(e,n){return this.each((typeof n=="function"?A1:x1)(e,n))}function*T1(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length,l;i<a;++i)(l=r[i])&&(yield l)}var cu=[null];function it(e,n){this._groups=e,this._parents=n}function wo(){return new it([[document.documentElement]],cu)}function P1(){return this}it.prototype=wo.prototype={constructor:it,select:oN,selectAll:lN,selectChild:uN,selectChildren:gN,filter:hN,data:EN,enter:yN,exit:NN,join:vN,merge:SN,selection:P1,order:xN,sort:AN,call:TN,nodes:PN,node:ON,size:$N,empty:BN,each:VN,attr:KN,style:zN,property:XN,classed:e1,text:r1,html:s1,raise:d1,lower:f1,append:p1,insert:g1,remove:y1,clone:w1,datum:k1,on:S1,dispatch:I1,[Symbol.iterator]:T1};function gt(e){return typeof e=="string"?new it([[document.querySelector(e)]],[document.documentElement]):new it([[e]],cu)}function O1(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Nt(e,n){if(e=O1(e),n===void 0&&(n=e.currentTarget),n){var o=n.ownerSVGElement||n;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[e.clientX-i.left-n.clientLeft,e.clientY-i.top-n.clientTop]}}return[e.pageX,e.pageY]}const $1={passive:!1},ko={capture:!0,passive:!1};function La(e){e.stopImmediatePropagation()}function jn(e){e.preventDefault(),e.stopImmediatePropagation()}function du(e){var n=e.document.documentElement,o=gt(e).on("dragstart.drag",jn,ko);"onselectstart"in n?o.on("selectstart.drag",jn,ko):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function uu(e,n){var o=e.document.documentElement,r=gt(e).on("dragstart.drag",null);n&&(r.on("click.drag",jn,ko),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 Or=e=>()=>e;function Fa(e,{sourceEvent:n,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:n,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}})}Fa.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function B1(e){return!e.ctrlKey&&!e.button}function V1(){return this.parentNode}function R1(e,n){return n??{x:e.x,y:e.y}}function M1(){return navigator.maxTouchPoints||"ontouchstart"in this}function D1(){var e=B1,n=V1,o=R1,r=M1,i={},a=Ar("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",_,$1).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(C,E){if(!(f||!e.call(this,C,E))){var k=b(this,n.call(this,C,E),C,E,"mouse");k&&(gt(C.view).on("mousemove.drag",h,ko).on("mouseup.drag",y,ko),du(C.view),La(C),d=!1,s=C.clientX,c=C.clientY,k("start",C))}}function h(C){if(jn(C),!d){var E=C.clientX-s,k=C.clientY-c;d=E*E+k*k>u}i.mouse("drag",C)}function y(C){gt(C.view).on("mousemove.drag mouseup.drag",null),uu(C.view,d),jn(C),i.mouse("end",C)}function g(C,E){if(e.call(this,C,E)){var k=C.changedTouches,T=n.call(this,C,E),x=k.length,O,Y;for(O=0;O<x;++O)(Y=b(this,T,C,E,k[O].identifier,k[O]))&&(La(C),Y("start",C,k[O]))}}function _(C){var E=C.changedTouches,k=E.length,T,x;for(T=0;T<k;++T)(x=i[E[T].identifier])&&(jn(C),x("drag",C,E[T]))}function w(C){var E=C.changedTouches,k=E.length,T,x;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),T=0;T<k;++T)(x=i[E[T].identifier])&&(La(C),x("end",C,E[T]))}function b(C,E,k,T,x,O){var Y=a.copy(),K=Nt(O||k,E),I,Q,A;if((A=o.call(C,new Fa("beforestart",{sourceEvent:k,target:p,identifier:x,active:l,x:K[0],y:K[1],dx:0,dy:0,dispatch:Y}),T))!=null)return I=A.x-K[0]||0,Q=A.y-K[1]||0,function D(V,X,H){var j=K,L;switch(V){case"start":i[x]=D,L=l++;break;case"end":delete i[x],--l;case"drag":K=Nt(H||X,E),L=l;break}Y.call(V,C,new Fa(V,{sourceEvent:X,subject:A,target:p,identifier:x,active:L,x:K[0]+I,y:K[1]+Q,dx:K[0]-j[0],dy:K[1]-j[1],dispatch:Y}),T)}}return p.filter=function(C){return arguments.length?(e=typeof C=="function"?C:Or(!!C),p):e},p.container=function(C){return arguments.length?(n=typeof C=="function"?C:Or(C),p):n},p.subject=function(C){return arguments.length?(o=typeof C=="function"?C:Or(C),p):o},p.touchable=function(C){return arguments.length?(r=typeof C=="function"?C:Or(!!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 Ua(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function fu(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function Eo(){}var Co=.7,$r=1/Co,Gn="\\s*([+-]?\\d+)\\s*",No="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",vt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",L1=/^#([0-9a-f]{3,8})$/,F1=new RegExp(`^rgb\\(${Gn},${Gn},${Gn}\\)$`),U1=new RegExp(`^rgb\\(${vt},${vt},${vt}\\)$`),K1=new RegExp(`^rgba\\(${Gn},${Gn},${Gn},${No}\\)$`),j1=new RegExp(`^rgba\\(${vt},${vt},${vt},${No}\\)$`),G1=new RegExp(`^hsl\\(${No},${vt},${vt}\\)$`),q1=new RegExp(`^hsla\\(${No},${vt},${vt},${No}\\)$`),pu={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};Ua(Eo,sn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:mu,formatHex:mu,formatHex8:z1,formatHsl:H1,formatRgb:gu,toString:gu});function mu(){return this.rgb().formatHex()}function z1(){return this.rgb().formatHex8()}function H1(){return wu(this).formatHsl()}function gu(){return this.rgb().formatRgb()}function sn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=L1.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?hu(n):o===3?new nt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?Br(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?Br(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=F1.exec(e))?new nt(n[1],n[2],n[3],1):(n=U1.exec(e))?new nt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=K1.exec(e))?Br(n[1],n[2],n[3],n[4]):(n=j1.exec(e))?Br(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=G1.exec(e))?bu(n[1],n[2]/100,n[3]/100,1):(n=q1.exec(e))?bu(n[1],n[2]/100,n[3]/100,n[4]):pu.hasOwnProperty(e)?hu(pu[e]):e==="transparent"?new nt(NaN,NaN,NaN,0):null}function hu(e){return new nt(e>>16&255,e>>8&255,e&255,1)}function Br(e,n,o,r){return r<=0&&(e=n=o=NaN),new nt(e,n,o,r)}function Y1(e){return e instanceof Eo||(e=sn(e)),e?(e=e.rgb(),new nt(e.r,e.g,e.b,e.opacity)):new nt}function Ka(e,n,o,r){return arguments.length===1?Y1(e):new nt(e,n,o,r??1)}function nt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}Ua(nt,Ka,fu(Eo,{brighter(e){return e=e==null?$r:Math.pow($r,e),new nt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Co:Math.pow(Co,e),new nt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new nt(cn(this.r),cn(this.g),cn(this.b),Vr(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:yu,formatHex:yu,formatHex8:W1,formatRgb:_u,toString:_u}));function yu(){return`#${dn(this.r)}${dn(this.g)}${dn(this.b)}`}function W1(){return`#${dn(this.r)}${dn(this.g)}${dn(this.b)}${dn((isNaN(this.opacity)?1:this.opacity)*255)}`}function _u(){const e=Vr(this.opacity);return`${e===1?"rgb(":"rgba("}${cn(this.r)}, ${cn(this.g)}, ${cn(this.b)}${e===1?")":`, ${e})`}`}function Vr(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 bu(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new ht(e,n,o,r)}function wu(e){if(e instanceof ht)return new ht(e.h,e.s,e.l,e.opacity);if(e instanceof Eo||(e=sn(e)),!e)return new ht;if(e instanceof ht)return e;e=e.rgb();var n=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(n,o,r),a=Math.max(n,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(n===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-n)/s+2:l=(n-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new ht(l,s,c,e.opacity)}function X1(e,n,o,r){return arguments.length===1?wu(e):new ht(e,n,o,r??1)}function ht(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Ua(ht,X1,fu(Eo,{brighter(e){return e=e==null?$r:Math.pow($r,e),new ht(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Co:Math.pow(Co,e),new ht(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*n,i=2*o-r;return new nt(ja(e>=240?e-240:e+120,i,r),ja(e,i,r),ja(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new ht(ku(this.h),Rr(this.s),Rr(this.l),Vr(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=Vr(this.opacity);return`${e===1?"hsl(":"hsla("}${ku(this.h)}, ${Rr(this.s)*100}%, ${Rr(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ku(e){return e=(e||0)%360,e<0?e+360:e}function Rr(e){return Math.max(0,Math.min(1,e||0))}function ja(e,n,o){return(e<60?n+(o-n)*e/60:e<180?o:e<240?n+(o-n)*(240-e)/60:n)*255}const Ga=e=>()=>e;function Z1(e,n){return function(o){return e+o*n}}function J1(e,n,o){return e=Math.pow(e,o),n=Math.pow(n,o)-e,o=1/o,function(r){return Math.pow(e+r*n,o)}}function Q1(e){return(e=+e)==1?Eu:function(n,o){return o-n?J1(n,o,e):Ga(isNaN(n)?o:n)}}function Eu(e,n){var o=n-e;return o?Z1(e,o):Ga(isNaN(e)?n:e)}const Mr=function e(n){var o=Q1(n);function r(i,a){var l=o((i=Ka(i)).r,(a=Ka(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Eu(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 ev(e,n){n||(n=[]);var o=e?Math.min(n.length,e.length):0,r=n.slice(),i;return function(a){for(i=0;i<o;++i)r[i]=e[i]*(1-a)+n[i]*a;return r}}function tv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function nv(e,n){var o=n?n.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]=vo(e[l],n[l]);for(;l<o;++l)a[l]=n[l];return function(s){for(l=0;l<r;++l)a[l]=i[l](s);return a}}function ov(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function St(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function rv(e,n){var o={},r={},i;(e===null||typeof e!="object")&&(e={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in e?o[i]=vo(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var qa=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,za=new RegExp(qa.source,"g");function iv(e){return function(){return e}}function av(e){return function(n){return e(n)+""}}function Cu(e,n){var o=qa.lastIndex=za.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=qa.exec(e))&&(i=za.exec(n));)(a=i.index)>o&&(a=n.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:St(r,i)})),o=za.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?av(c[0].x):iv(n):(n=c.length,function(d){for(var f=0,u;f<n;++f)s[(u=c[f]).i]=u.x(d);return s.join("")})}function vo(e,n){var o=typeof n,r;return n==null||o==="boolean"?Ga(n):(o==="number"?St:o==="string"?(r=sn(n))?(n=r,Mr):Cu:n instanceof sn?Mr:n instanceof Date?ov:tv(n)?ev:Array.isArray(n)?nv:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?rv:St)(e,n)}var Nu=180/Math.PI,Ha={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function vu(e,n,o,r,i,a){var l,s,c;return(l=Math.sqrt(e*e+n*n))&&(e/=l,n/=l),(c=e*o+n*r)&&(o-=e*c,r-=n*c),(s=Math.sqrt(o*o+r*r))&&(o/=s,r/=s,c/=s),e*r<n*o&&(e=-e,n=-n,c=-c,l=-l),{translateX:i,translateY:a,rotate:Math.atan2(n,e)*Nu,skewX:Math.atan(c)*Nu,scaleX:l,scaleY:s}}var Dr;function lv(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Ha:vu(n.a,n.b,n.c,n.d,n.e,n.f)}function sv(e){return e==null||(Dr||(Dr=document.createElementNS("http://www.w3.org/2000/svg","g")),Dr.setAttribute("transform",e),!(e=Dr.transform.baseVal.consolidate()))?Ha:(e=e.matrix,vu(e.a,e.b,e.c,e.d,e.e,e.f))}function Su(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,h){if(d!==u||f!==p){var y=m.push("translate(",null,n,null,o);h.push({i:y-4,x:St(d,u)},{i:y-2,x:St(f,p)})}else(u||p)&&m.push("translate("+u+n+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:St(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:St(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");h.push({i:y-4,x:St(d,u)},{i:y-2,x:St(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,y=p.length,g;++h<y;)u[(g=p[h]).i]=g.x(m);return u.join("")}}}var cv=Su(lv,"px, ","px)","deg)"),dv=Su(sv,", ",")",")"),uv=1e-12;function xu(e){return((e=Math.exp(e))+1/e)/2}function fv(e){return((e=Math.exp(e))-1/e)/2}function pv(e){return((e=Math.exp(2*e))-1)/(e+1)}const Lr=function e(n,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,y=m*m+h*h,g,_;if(y<uv)_=Math.log(p/d)/n,g=function(T){return[s+T*m,c+T*h,d*Math.exp(n*T*_)]};else{var w=Math.sqrt(y),b=(p*p-d*d+r*y)/(2*d*o*w),C=(p*p-d*d-r*y)/(2*p*o*w),E=Math.log(Math.sqrt(b*b+1)-b),k=Math.log(Math.sqrt(C*C+1)-C);_=(k-E)/n,g=function(T){var x=T*_,O=xu(E),Y=d/(o*w)*(O*pv(n*x+E)-fv(E));return[s+Y*m,c+Y*h,d*O/xu(n*x+E)]}}return g.duration=_*1e3*n/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 qn=0,So=0,xo=0,Au=1e3,Fr,Ao,Ur=0,un=0,Kr=0,Io=typeof performance=="object"&&performance.now?performance:Date,Iu=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Ya(){return un||(Iu(mv),un=Io.now()+Kr)}function mv(){un=0}function jr(){this._call=this._time=this._next=null}jr.prototype=Tu.prototype={constructor:jr,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Ya():+o)+(n==null?0:+n),!this._next&&Ao!==this&&(Ao?Ao._next=this:Fr=this,Ao=this),this._call=e,this._time=o,Wa()},stop:function(){this._call&&(this._call=null,this._time=1/0,Wa())}};function Tu(e,n,o){var r=new jr;return r.restart(e,n,o),r}function gv(){Ya(),++qn;for(var e=Fr,n;e;)(n=un-e._time)>=0&&e._call.call(void 0,n),e=e._next;--qn}function Pu(){un=(Ur=Io.now())+Kr,qn=So=0;try{gv()}finally{qn=0,yv(),un=0}}function hv(){var e=Io.now(),n=e-Ur;n>Au&&(Kr-=n,Ur=e)}function yv(){for(var e,n=Fr,o,r=1/0;n;)n._call?(r>n._time&&(r=n._time),e=n,n=n._next):(o=n._next,n._next=null,n=e?e._next=o:Fr=o);Ao=e,Wa(r)}function Wa(e){if(!qn){So&&(So=clearTimeout(So));var n=e-un;n>24?(e<1/0&&(So=setTimeout(Pu,e-Io.now()-Kr)),xo&&(xo=clearInterval(xo))):(xo||(Ur=Io.now(),xo=setInterval(hv,Au)),qn=1,Iu(Pu))}}function Ou(e,n,o){var r=new jr;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var _v=Ar("start","end","cancel","interrupt"),bv=[],$u=0,Bu=1,Xa=2,Gr=3,Vu=4,Za=5,qr=6;function zr(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;wv(e,o,{name:n,index:r,group:i,on:_v,tween:bv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:$u})}function Ja(e,n){var o=yt(e,n);if(o.state>$u)throw new Error("too late; already scheduled");return o}function xt(e,n){var o=yt(e,n);if(o.state>Gr)throw new Error("too late; already running");return o}function yt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function wv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Tu(a,0,o.time);function a(d){o.state=Bu,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!==Bu)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Gr)return Ou(l);m.state===Vu?(m.state=qr,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=qr,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Ou(function(){o.state===Gr&&(o.state=Vu,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Xa,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Xa){for(o.state=Gr,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=Za,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Za&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=qr,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Hr(e,n){var o=e.__transition,r,i,a=!0,l;if(o){n=n==null?null:n+"";for(l in o){if((r=o[l]).name!==n){a=!1;continue}i=r.state>Xa&&r.state<Za,r.state=qr,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function kv(e){return this.each(function(){Hr(this,e)})}function Ev(e,n){var o,r;return function(){var i=xt(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===n){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function Cv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=xt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===n){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function Nv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=yt(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((n==null?Ev:Cv)(o,e,n))}function Qa(e,n,o){var r=e._id;return e.each(function(){var i=xt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return yt(i,r).value[n]}}function Ru(e,n){var o;return(typeof n=="number"?St:n instanceof sn?Mr:(o=sn(n))?(n=o,Mr):Cu)(e,n)}function vv(e){return function(){this.removeAttribute(e)}}function Sv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function xv(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttribute(e);return l===i?null:l===r?a:a=n(r=l,o)}}function Av(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttributeNS(e.space,e.local);return l===i?null:l===r?a:a=n(r=l,o)}}function Iv(e,n,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=n(r=l,s)))}}function Tv(e,n,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=n(r=l,s)))}}function Pv(e,n){var o=Tr(e),r=o==="transform"?dv:Ru;return this.attrTween(e,typeof n=="function"?(o.local?Tv:Iv)(o,r,Qa(this,"attr."+e,n)):n==null?(o.local?Sv:vv)(o):(o.local?Av:xv)(o,r,n))}function Ov(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function $v(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function Bv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&$v(e,a)),o}return i._value=n,i}function Vv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&Ov(e,a)),o}return i._value=n,i}function Rv(e,n){var o="attr."+e;if(arguments.length<2)return(o=this.tween(o))&&o._value;if(n==null)return this.tween(o,null);if(typeof n!="function")throw new Error;var r=Tr(e);return this.tween(o,(r.local?Bv:Vv)(r,n))}function Mv(e,n){return function(){Ja(this,e).delay=+n.apply(this,arguments)}}function Dv(e,n){return n=+n,function(){Ja(this,e).delay=n}}function Lv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Mv:Dv)(n,e)):yt(this.node(),n).delay}function Fv(e,n){return function(){xt(this,e).duration=+n.apply(this,arguments)}}function Uv(e,n){return n=+n,function(){xt(this,e).duration=n}}function Kv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Fv:Uv)(n,e)):yt(this.node(),n).duration}function jv(e,n){if(typeof n!="function")throw new Error;return function(){xt(this,e).ease=n}}function Gv(e){var n=this._id;return arguments.length?this.each(jv(n,e)):yt(this.node(),n).ease}function qv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;xt(this,e).ease=o}}function zv(e){if(typeof e!="function")throw new Error;return this.each(qv(this._id,e))}function Hv(e){typeof e!="function"&&(e=eu(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[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 Mt(r,this._parents,this._name,this._id)}function Yv(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,o=e._groups,r=n.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=n[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]=n[s];return new Mt(l,this._parents,this._name,this._id)}function Wv(e){return(e+"").trim().split(/^|\s+/).every(function(n){var o=n.indexOf(".");return o>=0&&(n=n.slice(0,o)),!n||n==="start"})}function Xv(e,n,o){var r,i,a=Wv(n)?Ja:xt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Zv(e,n){var o=this._id;return arguments.length<2?yt(this.node(),o).on.on(e):this.each(Xv(o,e,n))}function Jv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Qv(){return this.on("end.remove",Jv(this._id))}function eS(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Ma(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,zr(d[p],n,o,p,d,yt(f,o)));return new Mt(a,this._parents,n,o)}function tS(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Qd(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=yt(f,o),y=0,g=p.length;y<g;++y)(m=p[y])&&zr(m,n,o,y,p,h);a.push(p),l.push(f)}return new Mt(a,l,n,o)}var nS=wo.prototype.constructor;function oS(){return new nS(this._groups,this._parents)}function rS(e,n){var o,r,i;return function(){var a=Kn(this,e),l=(this.style.removeProperty(e),Kn(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Mu(e){return function(){this.style.removeProperty(e)}}function iS(e,n,o){var r,i=o+"",a;return function(){var l=Kn(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function aS(e,n,o){var r,i,a;return function(){var l=Kn(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Kn(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function lS(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=xt(this,e),d=c.on,f=c.value[a]==null?s||(s=Mu(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function sS(e,n,o){var r=(e+="")=="transform"?cv:Ru;return n==null?this.styleTween(e,rS(e,r)).on("end.style."+e,Mu(e)):typeof n=="function"?this.styleTween(e,aS(e,r,Qa(this,"style."+e,n))).each(lS(this._id,e)):this.styleTween(e,iS(e,r,n),o).on("end.style."+e,null)}function cS(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function dS(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&cS(e,l,o)),r}return a._value=n,a}function uS(e,n,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;return this.tween(r,dS(e,n,o??""))}function fS(e){return function(){this.textContent=e}}function pS(e){return function(){var n=e(this);this.textContent=n??""}}function mS(e){return this.tween("text",typeof e=="function"?pS(Qa(this,"text",e)):fS(e==null?"":e+""))}function gS(e){return function(n){this.textContent=e.call(this,n)}}function hS(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&gS(i)),n}return r._value=e,r}function yS(e){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,hS(e))}function _S(){for(var e=this._name,n=this._id,o=Du(),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=yt(c,n);zr(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Mt(r,this._parents,e,o)}function bS(){var e,n,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=xt(this,r),f=d.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),d.on=n}),i===0&&a()})}var wS=0;function Mt(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Du(){return++wS}var Dt=wo.prototype;Mt.prototype={constructor:Mt,select:eS,selectAll:tS,selectChild:Dt.selectChild,selectChildren:Dt.selectChildren,filter:Hv,merge:Yv,selection:oS,transition:_S,call:Dt.call,nodes:Dt.nodes,node:Dt.node,size:Dt.size,empty:Dt.empty,each:Dt.each,on:Zv,attr:Pv,attrTween:Rv,style:sS,styleTween:uS,text:mS,textTween:yS,remove:Qv,tween:Nv,delay:Lv,duration:Kv,ease:Gv,easeVarying:zv,end:bS,[Symbol.iterator]:Dt[Symbol.iterator]};function kS(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var ES={time:null,delay:0,duration:250,ease:kS};function CS(e,n){for(var o;!(o=e.__transition)||!(o=o[n]);)if(!(e=e.parentNode))throw new Error(`transition ${n} not found`);return o}function NS(e){var n,o;e instanceof Mt?(n=e._id,e=e._name):(n=Du(),(o=ES).time=Ya(),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])&&zr(c,e,n,d,l,o||CS(c,n));return new Mt(r,this._parents,e,n)}wo.prototype.interrupt=kv,wo.prototype.transition=NS;const Yr=e=>()=>e;function vS(e,{sourceEvent:n,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function Lt(e,n,o){this.k=e,this.x=n,this.y=o}Lt.prototype={constructor:Lt,scale:function(e){return e===1?this:new Lt(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new Lt(this.k,this.x+this.k*e,this.y+this.k*n)},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 zn=new Lt(1,0,0);Lt.prototype;function el(e){e.stopImmediatePropagation()}function To(e){e.preventDefault(),e.stopImmediatePropagation()}function SS(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function xS(){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 Lu(){return this.__zoom||zn}function AS(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function IS(){return navigator.maxTouchPoints||"ontouchstart"in this}function TS(e,n,o){var r=e.invertX(n[0][0])-o[0][0],i=e.invertX(n[1][0])-o[1][0],a=e.invertY(n[0][1])-o[0][1],l=e.invertY(n[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 PS(){var e=SS,n=xS,o=TS,r=AS,i=IS,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Lr,d=Ar("start","zoom","end"),f,u,p,m=500,h=150,y=0,g=10;function _(A){A.property("__zoom",Lu).on("wheel.zoom",x,{passive:!1}).on("mousedown.zoom",O).on("dblclick.zoom",Y).filter(i).on("touchstart.zoom",K).on("touchmove.zoom",I).on("touchend.zoom touchcancel.zoom",Q).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(A,D,V,X){var H=A.selection?A.selection():A;H.property("__zoom",Lu),A!==H?E(A,D,V,X):H.interrupt().each(function(){k(this,arguments).event(X).start().zoom(null,typeof D=="function"?D.apply(this,arguments):D).end()})},_.scaleBy=function(A,D,V,X){_.scaleTo(A,function(){var H=this.__zoom.k,j=typeof D=="function"?D.apply(this,arguments):D;return H*j},V,X)},_.scaleTo=function(A,D,V,X){_.transform(A,function(){var H=n.apply(this,arguments),j=this.__zoom,L=V==null?C(H):typeof V=="function"?V.apply(this,arguments):V,R=j.invert(L),oe=typeof D=="function"?D.apply(this,arguments):D;return o(b(w(j,oe),L,R),H,l)},V,X)},_.translateBy=function(A,D,V,X){_.transform(A,function(){return o(this.__zoom.translate(typeof D=="function"?D.apply(this,arguments):D,typeof V=="function"?V.apply(this,arguments):V),n.apply(this,arguments),l)},null,X)},_.translateTo=function(A,D,V,X,H){_.transform(A,function(){var j=n.apply(this,arguments),L=this.__zoom,R=X==null?C(j):typeof X=="function"?X.apply(this,arguments):X;return o(zn.translate(R[0],R[1]).scale(L.k).translate(typeof D=="function"?-D.apply(this,arguments):-D,typeof V=="function"?-V.apply(this,arguments):-V),j,l)},X,H)};function w(A,D){return D=Math.max(a[0],Math.min(a[1],D)),D===A.k?A:new Lt(D,A.x,A.y)}function b(A,D,V){var X=D[0]-V[0]*A.k,H=D[1]-V[1]*A.k;return X===A.x&&H===A.y?A:new Lt(A.k,X,H)}function C(A){return[(+A[0][0]+ +A[1][0])/2,(+A[0][1]+ +A[1][1])/2]}function E(A,D,V,X){A.on("start.zoom",function(){k(this,arguments).event(X).start()}).on("interrupt.zoom end.zoom",function(){k(this,arguments).event(X).end()}).tween("zoom",function(){var H=this,j=arguments,L=k(H,j).event(X),R=n.apply(H,j),oe=V==null?C(R):typeof V=="function"?V.apply(H,j):V,ie=Math.max(R[1][0]-R[0][0],R[1][1]-R[0][1]),Z=H.__zoom,ae=typeof D=="function"?D.apply(H,j):D,G=c(Z.invert(oe).concat(ie/Z.k),ae.invert(oe).concat(ie/ae.k));return function(ee){if(ee===1)ee=ae;else{var U=G(ee),ne=ie/U[2];ee=new Lt(ne,oe[0]-U[0]*ne,oe[1]-U[1]*ne)}L.zoom(null,ee)}})}function k(A,D,V){return!V&&A.__zooming||new T(A,D)}function T(A,D){this.that=A,this.args=D,this.active=0,this.sourceEvent=null,this.extent=n.apply(A,D),this.taps=0}T.prototype={event:function(A){return A&&(this.sourceEvent=A),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(A,D){return this.mouse&&A!=="mouse"&&(this.mouse[1]=D.invert(this.mouse[0])),this.touch0&&A!=="touch"&&(this.touch0[1]=D.invert(this.touch0[0])),this.touch1&&A!=="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(A){var D=gt(this.that).datum();d.call(A,this.that,new vS(A,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:d}),D)}};function x(A,...D){if(!e.apply(this,arguments))return;var V=k(this,D).event(A),X=this.__zoom,H=Math.max(a[0],Math.min(a[1],X.k*Math.pow(2,r.apply(this,arguments)))),j=Nt(A);if(V.wheel)(V.mouse[0][0]!==j[0]||V.mouse[0][1]!==j[1])&&(V.mouse[1]=X.invert(V.mouse[0]=j)),clearTimeout(V.wheel);else{if(X.k===H)return;V.mouse=[j,X.invert(j)],Hr(this),V.start()}To(A),V.wheel=setTimeout(L,h),V.zoom("mouse",o(b(w(X,H),V.mouse[0],V.mouse[1]),V.extent,l));function L(){V.wheel=null,V.end()}}function O(A,...D){if(p||!e.apply(this,arguments))return;var V=A.currentTarget,X=k(this,D,!0).event(A),H=gt(A.view).on("mousemove.zoom",oe,!0).on("mouseup.zoom",ie,!0),j=Nt(A,V),L=A.clientX,R=A.clientY;du(A.view),el(A),X.mouse=[j,this.__zoom.invert(j)],Hr(this),X.start();function oe(Z){if(To(Z),!X.moved){var ae=Z.clientX-L,G=Z.clientY-R;X.moved=ae*ae+G*G>y}X.event(Z).zoom("mouse",o(b(X.that.__zoom,X.mouse[0]=Nt(Z,V),X.mouse[1]),X.extent,l))}function ie(Z){H.on("mousemove.zoom mouseup.zoom",null),uu(Z.view,X.moved),To(Z),X.event(Z).end()}}function Y(A,...D){if(e.apply(this,arguments)){var V=this.__zoom,X=Nt(A.changedTouches?A.changedTouches[0]:A,this),H=V.invert(X),j=V.k*(A.shiftKey?.5:2),L=o(b(w(V,j),X,H),n.apply(this,D),l);To(A),s>0?gt(this).transition().duration(s).call(E,L,X,A):gt(this).call(_.transform,L,X,A)}}function K(A,...D){if(e.apply(this,arguments)){var V=A.touches,X=V.length,H=k(this,D,A.changedTouches.length===X).event(A),j,L,R,oe;for(el(A),L=0;L<X;++L)R=V[L],oe=Nt(R,this),oe=[oe,this.__zoom.invert(oe),R.identifier],H.touch0?!H.touch1&&H.touch0[2]!==oe[2]&&(H.touch1=oe,H.taps=0):(H.touch0=oe,j=!0,H.taps=1+!!f);f&&(f=clearTimeout(f)),j&&(H.taps<2&&(u=oe[0],f=setTimeout(function(){f=null},m)),Hr(this),H.start())}}function I(A,...D){if(this.__zooming){var V=k(this,D).event(A),X=A.changedTouches,H=X.length,j,L,R,oe;for(To(A),j=0;j<H;++j)L=X[j],R=Nt(L,this),V.touch0&&V.touch0[2]===L.identifier?V.touch0[0]=R:V.touch1&&V.touch1[2]===L.identifier&&(V.touch1[0]=R);if(L=V.that.__zoom,V.touch1){var ie=V.touch0[0],Z=V.touch0[1],ae=V.touch1[0],G=V.touch1[1],ee=(ee=ae[0]-ie[0])*ee+(ee=ae[1]-ie[1])*ee,U=(U=G[0]-Z[0])*U+(U=G[1]-Z[1])*U;L=w(L,Math.sqrt(ee/U)),R=[(ie[0]+ae[0])/2,(ie[1]+ae[1])/2],oe=[(Z[0]+G[0])/2,(Z[1]+G[1])/2]}else if(V.touch0)R=V.touch0[0],oe=V.touch0[1];else return;V.zoom("touch",o(b(L,R,oe),V.extent,l))}}function Q(A,...D){if(this.__zooming){var V=k(this,D).event(A),X=A.changedTouches,H=X.length,j,L;for(el(A),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),j=0;j<H;++j)L=X[j],V.touch0&&V.touch0[2]===L.identifier?delete V.touch0:V.touch1&&V.touch1[2]===L.identifier&&delete V.touch1;if(V.touch1&&!V.touch0&&(V.touch0=V.touch1,delete V.touch1),V.touch0)V.touch0[1]=this.__zoom.invert(V.touch0[0]);else if(V.end(),V.taps===2&&(L=Nt(L,this),Math.hypot(u[0]-L[0],u[1]-L[1])<g)){var R=gt(this).on("dblclick.zoom");R&&R.apply(this,arguments)}}}return _.wheelDelta=function(A){return arguments.length?(r=typeof A=="function"?A:Yr(+A),_):r},_.filter=function(A){return arguments.length?(e=typeof A=="function"?A:Yr(!!A),_):e},_.touchable=function(A){return arguments.length?(i=typeof A=="function"?A:Yr(!!A),_):i},_.extent=function(A){return arguments.length?(n=typeof A=="function"?A:Yr([[+A[0][0],+A[0][1]],[+A[1][0],+A[1][1]]]),_):n},_.scaleExtent=function(A){return arguments.length?(a[0]=+A[0],a[1]=+A[1],_):[a[0],a[1]]},_.translateExtent=function(A){return arguments.length?(l[0][0]=+A[0][0],l[1][0]=+A[1][0],l[0][1]=+A[0][1],l[1][1]=+A[1][1],_):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},_.constrain=function(A){return arguments.length?(o=A,_):o},_.duration=function(A){return arguments.length?(s=+A,_):s},_.interpolate=function(A){return arguments.length?(c=A,_):c},_.on=function(){var A=d.on.apply(d,arguments);return A===d?_:A},_.clickDistance=function(A){return arguments.length?(y=(A=+A)*A,_):Math.sqrt(y)},_.tapDistance=function(A){return arguments.length?(g=+A,_):g},_}var ge=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ge||{}),tl=(e=>(e.Partial="partial",e.Full="full",e))(tl||{}),fn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(fn||{}),qt=(e=>(e.Strict="strict",e.Loose="loose",e))(qt||{}),Wr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(Wr||{}),Po=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(Po||{}),Fu=(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))(Fu||{});const OS=["INPUT","SELECT","TEXTAREA"],$S=typeof document<"u"?document:null;function nl(e){var n,o;const r=((o=(n=e.composedPath)==null?void 0:n.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 OS.includes(r==null?void 0:r.nodeName)||i||!!a}function BS(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Uu(e,n,o,r){const i=n.replace("+",`
119
+ `)[0],_=[{startLineNumber:h+1,startColumn:y+1,endLineNumber:h+1,endColumn:y+2,message:g,severity:Zo.MarkerSeverity.Error,source:Sa}];Zo.editor.setModelMarkers(d,Sa,_),i("error",g)}})}),t.onBeforeUnmount(()=>{var c;(c=l.value)==null||c.dispose()}),n({setExampleCode:s}),(c,d)=>(t.openBlock(),t.createElementBlock("div",EC,[t.createVNode(t.unref(Te.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(ke.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",CC,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(Vd,(f,u)=>t.createVNode(t.unref(Te.KButton),{key:u,appearance:"secondary",size:"small",onClick:p=>s(u)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${u}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),t.createElementVNode("div",NC,null,512)]))}}),[["__scopeId","data-v-d63d9bf4"]]),{t:xa}=Re.createI18n("en-us",je);function Ct(e){return xa(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function _o(e){return xa(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function xC(e){return xa(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const Cr={call:{type:"call",summary:_o("call"),description:Ct("call"),icon:ke.NetworkIcon,io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}}},jq:{type:"jq",summary:_o("jq"),description:Ct("jq"),icon:ke.CodeblockIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},exit:{type:"exit",summary:_o("exit"),description:Ct("exit"),icon:ke.GatewayIcon,io:{input:{fields:[{name:"headers"},{name:"body"}]}}},property:{type:"property",summary:_o("property"),description:Ct("property"),icon:ke.StackIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},static:{type:"static",summary:_o("static"),description:Ct("static"),icon:ke.VitalsIcon,io:{output:{fields:[],configurable:!0}}}},Nr={request:{type:"request",description:Ct("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_request:{type:"service_request",description:Ct("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_response:{type:"service_response",description:Ct("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}}},response:{type:"response",description:Ct("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}}}},Rd=Object.keys(Nr),Aa=e=>Rd.includes(e),Vt=e=>Rd.includes(e),Md=e=>Vt(e.type);function Fn(e){return xn(e)}function bo(e){return`${e}:${fr()}`}function vr(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function Dd(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function Ia(e){return Vt(e)?Nr[e]:Cr[e]}function Fd(e){var i,a,l,s,c,d;const n=Ia(e),o=((l=(a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields)==null?void 0:l.map(({name:f})=>f))??[],r=((d=(c=(s=n.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 Ld(e){return(e??[]).map(n=>({id:bo("field"),name:n}))}function Ln(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function Gt(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function Ta(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Ud(e,n){return n?e.fields.input.some(o=>o.id===n):!0}const AC=["request","service_request","service_response","response"];function IC(e){const n=e==="request"||e==="service_request"?"request":"response",o=Nr[e];return{name:e,phase:n,position:{x:0,y:0},fields:Fd(o.type),expanded:{}}}function TC(e,n){const o=e.toUpperCase();let r=1;for(;n.has(`${o}_${r}`);)r++;return`${o}_${r}`}function PC(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d}=Je.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let f;function u(_){var w;(w=n==null?void 0:n.onHistoryChange)==null||w.call(n,_,e.value)}function p(_){if(!_){f=void 0,o(),u("commit");return}if(f!==_){f=_,o(),u("commit");return}const w=d.value[0]??null;o(),d.value.shift(),w&&d.value.unshift(w),u("commit")}function m(){r(),f=void 0,u("undo")}function h(){i(),f=void 0,u("redo")}function y(){s(),f=void 0,u("clear")}function g(){c(),f=void 0,u("reset")}return{canUndo:a,canRedo:l,commit:p,undo:m,redo:h,clear:y,reset:g}}function Kd(e,n,o){var f,u;const r=new Map(n.map(p=>[p.name,p])),i=[],a=[],l=new Map,s=[],c=new Map,d=p=>{const m=new Set,h=[...p];for(;h.length>0;){const y=h.shift();if(!m.has(y)&&(m.add(y),Aa(y)||(l.get(y).phase="request"),!!c.has(y)))for(const g of c.get(y))m.has(g)||h.push(g)}};for(const p of e){const m=r.get(p.name),h=Gd(p.type,p,m);i.push(h),l.set(h.name,h)}for(const p of AC)if(!l.has(p)){const m=r.get(p)??IC(p),h=Gd(p,void 0,m);i.push(h),l.set(h.name,h)}for(const p of e)BC(p,s);for(const p of s){const m=l.get(p.source),h=l.get(p.target);if(!m||!h){m||console.warn(`[initEditorState] skip: source "${p.source}" not found`),h||console.warn(`[initEditorState] skip: target "${p.target}" not found`);continue}c.has(p.source)||c.set(p.source,new Set),c.get(p.source).add(p.target),c.has(p.target)||c.set(p.target,new Set),c.get(p.target).add(p.source),a.push({id:bo("edge"),source:m.id,sourceField:(f=Ln(m,"output",p.sourceField))==null?void 0:f.id,target:h.id,targetField:(u=Ln(h,"input",p.targetField))==null?void 0:u.id})}return d(["request","service_request"]),{nodes:i,edges:a,isEditing:o}}function jd(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Fd(n);return{id:bo("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Ld((a==null?void 0:a.input)??s.input),output:Ld((a==null?void 0:a.output)??s.output)},config:l?Fn(l):{}}}function OC(e){return Vt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Gd(e,n,o){return jd({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??OC(e),position:o==null?void 0:o.position,fields:VC(n,o),config:n?$C(n):void 0})}function $C(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return Fn(s)}function BC(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=vr(e.input);r&&n.push({source:r,sourceField:i,target:o})}if(e.inputs)for(const[r,i]of Object.entries(e.inputs)){if(!i)continue;const{nodeName:a,fieldName:l}=vr(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=vr(e.output);r&&n.push({source:o,target:r,targetField:i})}if(e.outputs)for(const[r,i]of Object.entries(e.outputs)){if(!i)continue;const{nodeName:a,fieldName:l}=vr(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function VC(e,n){var a,l;if(!e&&!n)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)),(e==null?void 0:e.type)==="static"&&e.values&&Object.keys(e.values).forEach(s=>r.add(s)),(a=n==null?void 0:n.fields)!=null&&a.input&&n.fields.input.forEach(s=>o.add(s)),(l=n==null?void 0:n.fields)!=null&&l.output&&n.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 RC(e){const n=t.computed(()=>{const c=new Map;return e.value.nodes.forEach(d=>c.set(d.id,d)),c}),o=t.computed(()=>e.value.edges);function r(c){const d=n.value.get(c.source),f=n.value.get(c.target);if(!d||!f)return c;const u=Ud(d,c.sourceField)&&!Ta(d,c.sourceField),p=Ta(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=n.value.get(d.source),p=n.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};Ta(u,d.sourceField)||f.push("source handle is not an output field"),Ud(p,d.targetField)||f.push("target handle is not an input field"),p.name==="request"&&f.push('cannot target "request"'),u.name==="response"&&f.push('cannot source from "response"');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 y=Sr(o.value,d);return Pa(y)&&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)[...n.value.values()].some(u=>u.name===f)||c.push(`missing implicit node "${f}"`);for(const f of o.value){const u=n.value.get(f.source);n.value.get(f.target).name==="request"&&c.push(`edge "${f.id}" targets "request"`),u.name==="response"&&c.push(`edge "${f.id}" sources from "response"`)}return Pa(Sr(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:Sr}}function Pa(e){const n=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(n.has(i))return!1;n.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 Sr(e,n){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 n&&(o.has(n.source)||o.set(n.source,[]),o.get(n.source).push(n.target),o.has(n.target)||o.set(n.target,[])),o}const[MC,DC]=Je.createInjectionState(function(n,o,r={}){const i=t.ref(Kd(n,o,r.isEditing)),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=PC(i,{capacity:200,clone:Fn,onHistoryChange:L=>{var W;L!=="clear"&&((W=r.onChange)==null||W.call(r,ne(),re()))}}),d=t.ref(null),f=t.ref(new Set),u=t.computed(()=>new Map(i.value.nodes.map(L=>[L.id,L]))),p=t.computed(()=>new Map(i.value.nodes.map(L=>[L.name,L]))),m=t.computed(()=>{const L=new Map,W=new Map;for(const N of i.value.edges)L.set(N.id,N),W.has(N.source)||W.set(N.source,new Set),W.get(N.source).add(N.id),W.has(N.target)||W.set(N.target,new Set),W.get(N.target).add(N.id);return{edgeMapById:L,edgeIdMapByNodeId:W}}),h=t.computed(()=>m.value.edgeMapById),y=t.computed(()=>m.value.edgeIdMapByNodeId),g=t.computed(()=>new Set(i.value.nodes.map(L=>L.name))),{canonicalizeConnection:_,validateConnection:w,validateGraph:b,isValidConnection:C,isValidVueFlowConnection:E}=RC(i);function k(L){return u.value.get(L)}function T(L){return p.value.get(L)}function x(L){return h.value.get(L)}function $(L){if(!y.value.has(L))return[];const W=[];return y.value.get(L).forEach(N=>{const v=x(N);v&&W.push(v)}),W}function K(L){return $(L).filter(W=>W.target===L)}function j(L){return $(L).filter(W=>W.source===L)}const I=t.computed(()=>a.value?k(a.value):void 0);function Q(L){a.value=L}function A(L){if(Vt(L.type))throw new Error("[createNode] implicit nodes are fixed.");return jd({type:L.type,name:L.name||(Vt(L.type)?void 0:TC(L.type,g.value)),phase:L.phase,position:L.position,fields:L.fields,config:L.config})}function D(L,W=!0){const N=A(L);if(N)return i.value.nodes.push(N),W&&c.commit(),N.id}function V(L,W=!0){i.value.edges=i.value.edges.filter(v=>v.source!==L&&v.target!==L),i.value.nodes=i.value.nodes.filter(v=>v.id!==L),a.value===L&&(a.value=void 0);const N=b();N.ok||console.warn("[removeNode] topology invalid:",N.errors.join("; ")),W&&c.commit()}function X(L,W,N=!0,v){const S=k(L);if(S){if(Aa(S.name)){console.warn("[renameNode] implicit node name is reserved.");return}S.name=W,N&&c.commit(v)}}function Y(L,W,N=!0){const v=k(L);v&&(v.position={...W},N&&c.commit())}function G(L,W,N,v=!0){const S=k(L);S&&(S.expanded[W]=N??!S.expanded[W],v&&c.commit(`toggle:${L}:${W}`))}function F(L,W,N=!0,v){const S=k(L);S&&(S.config=Fn(W),N&&c.commit(v))}function R(L,W,N,v=!0){const S=k(L);if(!S)return;const P=S.fields[W];if(P.some(O=>O.name===N)){console.warn(`[addField] field "${N}" already exists on ${W}.`);return}P.push({id:bo("field"),name:N}),W==="input"?S.fields.input=P:S.fields.output=P,v&&c.commit()}function oe(L,W,N,v=!0){const S=k(L);if(!S)return;const P=S.fields.input,O=S.fields.output,J=P.find(te=>te.id===W)??O.find(te=>te.id===W);J&&(J.name=N,v&&c.commit())}function ie(L,W,N=!0,v=!0){const S=k(L);if(!S)return;const P=S.fields.input,O=S.fields.output,J=P.findIndex(H=>H.id===W);J>=0&&P.splice(J,1);const te=O.findIndex(H=>H.id===W);te>=0&&O.splice(te,1),S.fields.input=P,S.fields.output=O,N&&(i.value.edges=i.value.edges.filter(H=>H.sourceField!==W&&H.targetField!==W));const M=b();M.ok||console.warn("[removeField] topology invalid:",M.errors.join("; ")),v&&c.commit()}function Z(L,W=!0){const N=_(L),v=w(N);if(!v.ok){console.warn("[connectEdge] invalid connection:",v.errors.join("; "));return}const S={id:bo("edge"),...N};i.value.edges.push(S);const P=b();if(!P.ok){i.value.edges.pop(),console.warn("[connectEdge] topology invalid:",P.errors.join("; "));return}return W&&c.commit(),S.id}function ae(L,W,N=!0){q(L,!1),Z(W,!1),N&&c.commit()}function q(L,W=!0){const N=i.value.edges.findIndex(P=>P.id===L);if(N<0)return;const v=i.value.edges[N];i.value.edges.splice(N,1);const S=b();if(!S.ok){i.value.edges.splice(N,0,v),console.warn("[disconnectEdge] topology invalid:",S.errors.join("; "));return}W&&c.commit()}function ee(L,W=!0){const N=K(L);for(const v of N)q(v.id,!1);W&&c.commit()}function U(L,W=!0){const N=j(L);for(const v of N)q(v.id,!1);W&&c.commit()}function ne(){var W,N,v,S,P;const L=[];for(const O of i.value.nodes){if(Vt(O.type))continue;let J;const te={};let M;const H={};for(const se of i.value.edges.filter(_e=>_e.target===O.id)){const _e=k(se.source);if(!_e)continue;const be=(W=Gt(_e,"output",se.sourceField))==null?void 0:W.name,Ce=be?`${_e.name}.${be}`:_e.name,xe=(N=Gt(O,"input",se.targetField))==null?void 0:N.name;xe?te[xe]=Ce:J===void 0&&(J=Ce)}for(const se of i.value.edges.filter(_e=>_e.source===O.id)){const _e=k(se.target);if(!_e)continue;const be=_e.type;if(!Vt(be)||!((v=Nr[be].io)!=null&&v.input))continue;const Ce=(S=Gt(_e,"input",se.targetField))==null?void 0:S.name,xe=Ce?`${_e.name}.${Ce}`:_e.name,pe=(P=Gt(O,"output",se.sourceField))==null?void 0:P.name;pe?H[pe]=xe:M===void 0&&(M=xe)}const B={...Fn(O.config),name:O.name,type:O.type};Object.keys(te).length>0?B.inputs=te:J!==void 0&&(B.input=J),Object.keys(H).length>0?B.outputs=H:M!==void 0&&(B.output=M),L.push(B)}return L}function re(){return i.value.nodes.map(L=>Fn({name:L.name,phase:L.phase,position:{...L.position},expanded:{...L.expanded},fields:{input:L.fields.input.map(W=>W.name),output:L.fields.output.map(W=>W.name)}}))}function de(L,W,N){i.value=Kd(L,W,N),c.reset()}return{state:i,selection:a,modalOpen:l,newCreatedNodeId:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,nodeMapById:u,nodeMapByName:p,edgeMapById:h,edgeIdMapByNodeId:y,getNodeById:k,getNodeByName:T,getEdgeById:x,getEdgesByNodeId:$,getInEdgesByNodeId:K,getOutEdgesByNodeId:j,selectedNode:I,selectNode:Q,createNode:A,addNode:D,removeNode:V,renameNode:X,moveNode:Y,toggleExpanded:G,replaceConfig:F,addField:R,renameField:oe,removeField:ie,connectEdge:Z,replaceConnection:ae,disconnectEdge:q,disconnectInEdges:ee,disconnectOutEdges:U,toConfigNodes:ne,toUINodes:re,load:de,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,isValidConnection:C,isValidVueFlowConnection:E,validateGraph:()=>b()}});function rt(){const e=DC();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const Oa=Je.createGlobalState(()=>{const e=Je.useLocalStorage("datakit-editor-mode","flow"),n=Je.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}});function xr(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function Rt(e){return typeof e=="function"?e():t.unref(e)}const FC=typeof window<"u"&&typeof document<"u",LC=e=>typeof e<"u",UC=Object.prototype.toString,KC=e=>UC.call(e)==="[object Object]",jC=()=>{};function GC(e,n){function o(...r){return new Promise((i,a)=>{Promise.resolve(e(()=>n.apply(this,r),{fn:n,thisArg:this,args:r})).then(i).catch(a)})}return o}const qd=e=>e();function qC(e=qd){const n=t.ref(!0);function o(){n.value=!1}function r(){n.value=!0}const i=(...a)=>{n.value&&e(...a)};return{isActive:t.readonly(n),pause:o,resume:r,eventFilter:i}}function zd(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function zC(e,n,o={}){const{eventFilter:r=qd,...i}=o;return t.watch(e,GC(r,n),i)}function Un(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=qC(r);return{stop:zC(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function HC(e,n={}){if(!t.isRef(e))return t.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=t.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=Rt(n.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,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:y}={}){let g=null;const w=[new Promise(b=>{g=t.watch(e,C=>{u(C)!==n&&(g==null||g(),b(C))},{flush:p,deep:m,immediate:!0})})];return h!=null&&w.push(zd(h,y).then(()=>Rt(e)).finally(()=>g==null?void 0:g())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(C=>C===u,p);const{flush:m="sync",deep:h=!1,timeout:y,throwOnTimeout:g}=p??{};let _=null;const b=[new Promise(C=>{_=t.watch([e,u],([E,k])=>{n!==(E===k)&&(_==null||_(),C(E))},{flush:m,deep:h,immediate:!0})})];return y!=null&&b.push(zd(y,g).then(()=>Rt(e)).finally(()=>(_==null||_(),Rt(e)))),Promise.race(b)}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(Rt(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(Rt(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return $a(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return $a(e,!n)}}}function Ba(e){return $a(e)}function YC(e){var n;const o=Rt(e);return(n=o==null?void 0:o.$el)!=null?n:o}const Hd=FC?window:void 0;function Yd(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=Hd):[n,o,r,i]=e,!n)return jC;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=t.watch(()=>[YC(n),Rt(i)],([f,u])=>{if(l(),!f)return;const p=KC(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return xr(d),d}function WC(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Wd(...e){let n,o,r={};e.length===3?(n=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(n=!0,o=e[0],r=e[1]):(n=e[0],o=e[1]):(n=!0,o=e[0]);const{target:i=Hd,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=WC(n);return Yd(i,a,f=>{f.repeat&&Rt(s)||c(f)&&o(f)},l)}function XC(e){return JSON.parse(JSON.stringify(e))}function Va(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.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 y=d;n||(n="modelValue"),y=y||`update:${n.toString()}`;const g=b=>s?typeof s=="function"?s(b):XC(b):b,_=()=>LC(e[n])?g(e[n]):u,w=b=>{p?p(b)&&h(y,b):h(y,b)};if(c){const b=_(),C=t.ref(b);let E=!1;return t.watch(()=>e[n],k=>{E||(E=!0,C.value=g(k),t.nextTick(()=>E=!1))}),t.watch(C,k=>{!E&&(k!==e[n]||f)&&w(k)},{deep:f}),C}else return t.computed({get(){return _()},set(b){w(b)}})}var ZC={value:()=>{}};function Ar(){for(var e=0,n=arguments.length,o={},r;e<n;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new Ir(o)}function Ir(e){this._=e}function JC(e,n){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&&!n.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}Ir.prototype=Ar.prototype={constructor:Ir,on:function(e,n){var o=this._,r=JC(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=QC(o[i],e.name)))return i;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++a<l;)if(i=(e=r[a]).type)o[i]=Xd(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Xd(o[i],e.name,null);return this},copy:function(){var e={},n=this._;for(var o in n)e[o]=n[o].slice();return new Ir(e)},call:function(e,n){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(n,o)},apply:function(e,n,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(n,o)}};function QC(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Xd(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=ZC,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Ra="http://www.w3.org/1999/xhtml";const Zd={svg:"http://www.w3.org/2000/svg",xhtml:Ra,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Tr(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Zd.hasOwnProperty(n)?{space:Zd[n],local:e}:e}function e1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Ra&&n.documentElement.namespaceURI===Ra?n.createElement(e):n.createElementNS(o,e)}}function t1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Jd(e){var n=Tr(e);return(n.local?t1:e1)(n)}function n1(){}function Ma(e){return e==null?n1:function(){return this.querySelector(e)}}function o1(e){typeof e!="function"&&(e=Ma(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[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 it(r,this._parents)}function r1(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function i1(){return[]}function Qd(e){return e==null?i1:function(){return this.querySelectorAll(e)}}function a1(e){return function(){return r1(e.apply(this,arguments))}}function l1(e){typeof e=="function"?e=a1(e):e=Qd(e);for(var n=this._groups,o=n.length,r=[],i=[],a=0;a<o;++a)for(var l=n[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 it(r,i)}function eu(e){return function(){return this.matches(e)}}function tu(e){return function(n){return n.matches(e)}}var s1=Array.prototype.find;function c1(e){return function(){return s1.call(this.children,e)}}function d1(){return this.firstElementChild}function u1(e){return this.select(e==null?d1:c1(typeof e=="function"?e:tu(e)))}var f1=Array.prototype.filter;function p1(){return Array.from(this.children)}function m1(e){return function(){return f1.call(this.children,e)}}function g1(e){return this.selectAll(e==null?p1:m1(typeof e=="function"?e:tu(e)))}function h1(e){typeof e!="function"&&(e=eu(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[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 it(r,this._parents)}function nu(e){return new Array(e.length)}function y1(){return new it(this._enter||this._groups.map(nu),this._parents)}function Pr(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}Pr.prototype={constructor:Pr,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function _1(e){return function(){return e}}function b1(e,n,o,r,i,a){for(var l=0,s,c=n.length,d=a.length;l<d;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new Pr(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function w1(e,n,o,r,i,a,l){var s,c,d=new Map,f=n.length,u=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=n[s])&&(p[s]=m=l.call(c,c.__data__,s,n)+"",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 Pr(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function k1(e){return e.__data__}function E1(e,n){if(!arguments.length)return Array.from(this,k1);var o=n?w1:b1,r=this._parents,i=this._groups;typeof e!="function"&&(e=_1(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=C1(e.call(f,f&&f.__data__,d,r)),h=m.length,y=s[d]=new Array(h),g=l[d]=new Array(h),_=c[d]=new Array(p);o(f,u,y,g,_,m,n);for(var w=0,b=0,C,E;w<h;++w)if(C=y[w]){for(w>=b&&(b=w+1);!(E=g[b])&&++b<h;);C._next=E||null}}return l=new it(l,r),l._enter=s,l._exit=c,l}function C1(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function N1(){return new it(this._exit||this._groups.map(nu),this._parents)}function v1(e,n,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+""),n!=null&&(i=n(i),i&&(i=i.selection())),o==null?a.remove():o(a),r&&i?r.merge(i).order():i}function S1(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._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 it(s,this._parents)}function x1(){for(var e=this._groups,n=-1,o=e.length;++n<o;)for(var r=e[n],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 A1(e){e||(e=I1);function n(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(n)}return new it(i,this._parents).order()}function I1(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function T1(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function P1(){return Array.from(this)}function O1(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function $1(){let e=0;for(const n of this)++e;return e}function B1(){return!this.node()}function V1(e){for(var n=this._groups,o=0,r=n.length;o<r;++o)for(var i=n[o],a=0,l=i.length,s;a<l;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function R1(e){return function(){this.removeAttribute(e)}}function M1(e){return function(){this.removeAttributeNS(e.space,e.local)}}function D1(e,n){return function(){this.setAttribute(e,n)}}function F1(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function L1(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function U1(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,o)}}function K1(e,n){var o=Tr(e);if(arguments.length<2){var r=this.node();return o.local?r.getAttributeNS(o.space,o.local):r.getAttribute(o)}return this.each((n==null?o.local?M1:R1:typeof n=="function"?o.local?U1:L1:o.local?F1:D1)(o,n))}function ou(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function j1(e){return function(){this.style.removeProperty(e)}}function G1(e,n,o){return function(){this.style.setProperty(e,n,o)}}function q1(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function z1(e,n,o){return arguments.length>1?this.each((n==null?j1:typeof n=="function"?q1:G1)(e,n,o??"")):Kn(this.node(),e)}function Kn(e,n){return e.style.getPropertyValue(n)||ou(e).getComputedStyle(e,null).getPropertyValue(n)}function H1(e){return function(){delete this[e]}}function Y1(e,n){return function(){this[e]=n}}function W1(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function X1(e,n){return arguments.length>1?this.each((n==null?H1:typeof n=="function"?W1:Y1)(e,n)):this.node()[e]}function ru(e){return e.trim().split(/^|\s+/)}function Da(e){return e.classList||new iu(e)}function iu(e){this._node=e,this._names=ru(e.getAttribute("class")||"")}iu.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function au(e,n){for(var o=Da(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function lu(e,n){for(var o=Da(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Z1(e){return function(){au(this,e)}}function J1(e){return function(){lu(this,e)}}function Q1(e,n){return function(){(n.apply(this,arguments)?au:lu)(this,e)}}function eN(e,n){var o=ru(e+"");if(arguments.length<2){for(var r=Da(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?Q1:n?Z1:J1)(o,n))}function tN(){this.textContent=""}function nN(e){return function(){this.textContent=e}}function oN(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function rN(e){return arguments.length?this.each(e==null?tN:(typeof e=="function"?oN:nN)(e)):this.node().textContent}function iN(){this.innerHTML=""}function aN(e){return function(){this.innerHTML=e}}function lN(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function sN(e){return arguments.length?this.each(e==null?iN:(typeof e=="function"?lN:aN)(e)):this.node().innerHTML}function cN(){this.nextSibling&&this.parentNode.appendChild(this)}function dN(){return this.each(cN)}function uN(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function fN(){return this.each(uN)}function pN(e){var n=typeof e=="function"?e:Jd(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function mN(){return null}function gN(e,n){var o=typeof e=="function"?e:Jd(e),r=n==null?mN:typeof n=="function"?n:Ma(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function hN(){var e=this.parentNode;e&&e.removeChild(this)}function yN(){return this.each(hN)}function _N(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function bN(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function wN(e){return this.select(e?bN:_N)}function kN(e){return arguments.length?this.property("__data__",e):this.node().__data__}function EN(e){return function(n){e.call(this,n,this.__data__)}}function CN(e){return e.trim().split(/^|\s+/).map(function(n){var o="",r=n.indexOf(".");return r>=0&&(o=n.slice(r+1),n=n.slice(0,r)),{type:n,name:o}})}function NN(e){return function(){var n=this.__on;if(n){for(var o=0,r=-1,i=n.length,a;o<i;++o)a=n[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):n[++r]=a;++r?n.length=r:delete this.__on}}}function vN(e,n,o){return function(){var r=this.__on,i,a=EN(n);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=n;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:n,listener:a,options:o},r?r.push(i):this.__on=[i]}}function SN(e,n,o){var r=CN(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=n?vN:NN,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function su(e,n,o){var r=ou(e),i=r.CustomEvent;typeof i=="function"?i=new i(n,o):(i=r.document.createEvent("Event"),o?(i.initEvent(n,o.bubbles,o.cancelable),i.detail=o.detail):i.initEvent(n,!1,!1)),e.dispatchEvent(i)}function xN(e,n){return function(){return su(this,e,n)}}function AN(e,n){return function(){return su(this,e,n.apply(this,arguments))}}function IN(e,n){return this.each((typeof n=="function"?AN:xN)(e,n))}function*TN(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length,l;i<a;++i)(l=r[i])&&(yield l)}var cu=[null];function it(e,n){this._groups=e,this._parents=n}function wo(){return new it([[document.documentElement]],cu)}function PN(){return this}it.prototype=wo.prototype={constructor:it,select:o1,selectAll:l1,selectChild:u1,selectChildren:g1,filter:h1,data:E1,enter:y1,exit:N1,join:v1,merge:S1,selection:PN,order:x1,sort:A1,call:T1,nodes:P1,node:O1,size:$1,empty:B1,each:V1,attr:K1,style:z1,property:X1,classed:eN,text:rN,html:sN,raise:dN,lower:fN,append:pN,insert:gN,remove:yN,clone:wN,datum:kN,on:SN,dispatch:IN,[Symbol.iterator]:TN};function gt(e){return typeof e=="string"?new it([[document.querySelector(e)]],[document.documentElement]):new it([[e]],cu)}function ON(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Nt(e,n){if(e=ON(e),n===void 0&&(n=e.currentTarget),n){var o=n.ownerSVGElement||n;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[e.clientX-i.left-n.clientLeft,e.clientY-i.top-n.clientTop]}}return[e.pageX,e.pageY]}const $N={passive:!1},ko={capture:!0,passive:!1};function Fa(e){e.stopImmediatePropagation()}function jn(e){e.preventDefault(),e.stopImmediatePropagation()}function du(e){var n=e.document.documentElement,o=gt(e).on("dragstart.drag",jn,ko);"onselectstart"in n?o.on("selectstart.drag",jn,ko):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function uu(e,n){var o=e.document.documentElement,r=gt(e).on("dragstart.drag",null);n&&(r.on("click.drag",jn,ko),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 Or=e=>()=>e;function La(e,{sourceEvent:n,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:n,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}})}La.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function BN(e){return!e.ctrlKey&&!e.button}function VN(){return this.parentNode}function RN(e,n){return n??{x:e.x,y:e.y}}function MN(){return navigator.maxTouchPoints||"ontouchstart"in this}function DN(){var e=BN,n=VN,o=RN,r=MN,i={},a=Ar("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",_,$N).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(C,E){if(!(f||!e.call(this,C,E))){var k=b(this,n.call(this,C,E),C,E,"mouse");k&&(gt(C.view).on("mousemove.drag",h,ko).on("mouseup.drag",y,ko),du(C.view),Fa(C),d=!1,s=C.clientX,c=C.clientY,k("start",C))}}function h(C){if(jn(C),!d){var E=C.clientX-s,k=C.clientY-c;d=E*E+k*k>u}i.mouse("drag",C)}function y(C){gt(C.view).on("mousemove.drag mouseup.drag",null),uu(C.view,d),jn(C),i.mouse("end",C)}function g(C,E){if(e.call(this,C,E)){var k=C.changedTouches,T=n.call(this,C,E),x=k.length,$,K;for($=0;$<x;++$)(K=b(this,T,C,E,k[$].identifier,k[$]))&&(Fa(C),K("start",C,k[$]))}}function _(C){var E=C.changedTouches,k=E.length,T,x;for(T=0;T<k;++T)(x=i[E[T].identifier])&&(jn(C),x("drag",C,E[T]))}function w(C){var E=C.changedTouches,k=E.length,T,x;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),T=0;T<k;++T)(x=i[E[T].identifier])&&(Fa(C),x("end",C,E[T]))}function b(C,E,k,T,x,$){var K=a.copy(),j=Nt($||k,E),I,Q,A;if((A=o.call(C,new La("beforestart",{sourceEvent:k,target:p,identifier:x,active:l,x:j[0],y:j[1],dx:0,dy:0,dispatch:K}),T))!=null)return I=A.x-j[0]||0,Q=A.y-j[1]||0,function D(V,X,Y){var G=j,F;switch(V){case"start":i[x]=D,F=l++;break;case"end":delete i[x],--l;case"drag":j=Nt(Y||X,E),F=l;break}K.call(V,C,new La(V,{sourceEvent:X,subject:A,target:p,identifier:x,active:F,x:j[0]+I,y:j[1]+Q,dx:j[0]-G[0],dy:j[1]-G[1],dispatch:K}),T)}}return p.filter=function(C){return arguments.length?(e=typeof C=="function"?C:Or(!!C),p):e},p.container=function(C){return arguments.length?(n=typeof C=="function"?C:Or(C),p):n},p.subject=function(C){return arguments.length?(o=typeof C=="function"?C:Or(C),p):o},p.touchable=function(C){return arguments.length?(r=typeof C=="function"?C:Or(!!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 Ua(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function fu(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function Eo(){}var Co=.7,$r=1/Co,Gn="\\s*([+-]?\\d+)\\s*",No="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",vt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",FN=/^#([0-9a-f]{3,8})$/,LN=new RegExp(`^rgb\\(${Gn},${Gn},${Gn}\\)$`),UN=new RegExp(`^rgb\\(${vt},${vt},${vt}\\)$`),KN=new RegExp(`^rgba\\(${Gn},${Gn},${Gn},${No}\\)$`),jN=new RegExp(`^rgba\\(${vt},${vt},${vt},${No}\\)$`),GN=new RegExp(`^hsl\\(${No},${vt},${vt}\\)$`),qN=new RegExp(`^hsla\\(${No},${vt},${vt},${No}\\)$`),pu={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};Ua(Eo,sn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:mu,formatHex:mu,formatHex8:zN,formatHsl:HN,formatRgb:gu,toString:gu});function mu(){return this.rgb().formatHex()}function zN(){return this.rgb().formatHex8()}function HN(){return wu(this).formatHsl()}function gu(){return this.rgb().formatRgb()}function sn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=FN.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?hu(n):o===3?new nt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?Br(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?Br(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=LN.exec(e))?new nt(n[1],n[2],n[3],1):(n=UN.exec(e))?new nt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=KN.exec(e))?Br(n[1],n[2],n[3],n[4]):(n=jN.exec(e))?Br(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=GN.exec(e))?bu(n[1],n[2]/100,n[3]/100,1):(n=qN.exec(e))?bu(n[1],n[2]/100,n[3]/100,n[4]):pu.hasOwnProperty(e)?hu(pu[e]):e==="transparent"?new nt(NaN,NaN,NaN,0):null}function hu(e){return new nt(e>>16&255,e>>8&255,e&255,1)}function Br(e,n,o,r){return r<=0&&(e=n=o=NaN),new nt(e,n,o,r)}function YN(e){return e instanceof Eo||(e=sn(e)),e?(e=e.rgb(),new nt(e.r,e.g,e.b,e.opacity)):new nt}function Ka(e,n,o,r){return arguments.length===1?YN(e):new nt(e,n,o,r??1)}function nt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}Ua(nt,Ka,fu(Eo,{brighter(e){return e=e==null?$r:Math.pow($r,e),new nt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Co:Math.pow(Co,e),new nt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new nt(cn(this.r),cn(this.g),cn(this.b),Vr(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:yu,formatHex:yu,formatHex8:WN,formatRgb:_u,toString:_u}));function yu(){return`#${dn(this.r)}${dn(this.g)}${dn(this.b)}`}function WN(){return`#${dn(this.r)}${dn(this.g)}${dn(this.b)}${dn((isNaN(this.opacity)?1:this.opacity)*255)}`}function _u(){const e=Vr(this.opacity);return`${e===1?"rgb(":"rgba("}${cn(this.r)}, ${cn(this.g)}, ${cn(this.b)}${e===1?")":`, ${e})`}`}function Vr(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 bu(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new ht(e,n,o,r)}function wu(e){if(e instanceof ht)return new ht(e.h,e.s,e.l,e.opacity);if(e instanceof Eo||(e=sn(e)),!e)return new ht;if(e instanceof ht)return e;e=e.rgb();var n=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(n,o,r),a=Math.max(n,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(n===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-n)/s+2:l=(n-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new ht(l,s,c,e.opacity)}function XN(e,n,o,r){return arguments.length===1?wu(e):new ht(e,n,o,r??1)}function ht(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Ua(ht,XN,fu(Eo,{brighter(e){return e=e==null?$r:Math.pow($r,e),new ht(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Co:Math.pow(Co,e),new ht(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*n,i=2*o-r;return new nt(ja(e>=240?e-240:e+120,i,r),ja(e,i,r),ja(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new ht(ku(this.h),Rr(this.s),Rr(this.l),Vr(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=Vr(this.opacity);return`${e===1?"hsl(":"hsla("}${ku(this.h)}, ${Rr(this.s)*100}%, ${Rr(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ku(e){return e=(e||0)%360,e<0?e+360:e}function Rr(e){return Math.max(0,Math.min(1,e||0))}function ja(e,n,o){return(e<60?n+(o-n)*e/60:e<180?o:e<240?n+(o-n)*(240-e)/60:n)*255}const Ga=e=>()=>e;function ZN(e,n){return function(o){return e+o*n}}function JN(e,n,o){return e=Math.pow(e,o),n=Math.pow(n,o)-e,o=1/o,function(r){return Math.pow(e+r*n,o)}}function QN(e){return(e=+e)==1?Eu:function(n,o){return o-n?JN(n,o,e):Ga(isNaN(n)?o:n)}}function Eu(e,n){var o=n-e;return o?ZN(e,o):Ga(isNaN(e)?n:e)}const Mr=function e(n){var o=QN(n);function r(i,a){var l=o((i=Ka(i)).r,(a=Ka(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Eu(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 ev(e,n){n||(n=[]);var o=e?Math.min(n.length,e.length):0,r=n.slice(),i;return function(a){for(i=0;i<o;++i)r[i]=e[i]*(1-a)+n[i]*a;return r}}function tv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function nv(e,n){var o=n?n.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]=vo(e[l],n[l]);for(;l<o;++l)a[l]=n[l];return function(s){for(l=0;l<r;++l)a[l]=i[l](s);return a}}function ov(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function St(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function rv(e,n){var o={},r={},i;(e===null||typeof e!="object")&&(e={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in e?o[i]=vo(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var qa=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,za=new RegExp(qa.source,"g");function iv(e){return function(){return e}}function av(e){return function(n){return e(n)+""}}function Cu(e,n){var o=qa.lastIndex=za.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=qa.exec(e))&&(i=za.exec(n));)(a=i.index)>o&&(a=n.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:St(r,i)})),o=za.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?av(c[0].x):iv(n):(n=c.length,function(d){for(var f=0,u;f<n;++f)s[(u=c[f]).i]=u.x(d);return s.join("")})}function vo(e,n){var o=typeof n,r;return n==null||o==="boolean"?Ga(n):(o==="number"?St:o==="string"?(r=sn(n))?(n=r,Mr):Cu:n instanceof sn?Mr:n instanceof Date?ov:tv(n)?ev:Array.isArray(n)?nv:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?rv:St)(e,n)}var Nu=180/Math.PI,Ha={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function vu(e,n,o,r,i,a){var l,s,c;return(l=Math.sqrt(e*e+n*n))&&(e/=l,n/=l),(c=e*o+n*r)&&(o-=e*c,r-=n*c),(s=Math.sqrt(o*o+r*r))&&(o/=s,r/=s,c/=s),e*r<n*o&&(e=-e,n=-n,c=-c,l=-l),{translateX:i,translateY:a,rotate:Math.atan2(n,e)*Nu,skewX:Math.atan(c)*Nu,scaleX:l,scaleY:s}}var Dr;function lv(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Ha:vu(n.a,n.b,n.c,n.d,n.e,n.f)}function sv(e){return e==null||(Dr||(Dr=document.createElementNS("http://www.w3.org/2000/svg","g")),Dr.setAttribute("transform",e),!(e=Dr.transform.baseVal.consolidate()))?Ha:(e=e.matrix,vu(e.a,e.b,e.c,e.d,e.e,e.f))}function Su(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,h){if(d!==u||f!==p){var y=m.push("translate(",null,n,null,o);h.push({i:y-4,x:St(d,u)},{i:y-2,x:St(f,p)})}else(u||p)&&m.push("translate("+u+n+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:St(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:St(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");h.push({i:y-4,x:St(d,u)},{i:y-2,x:St(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,y=p.length,g;++h<y;)u[(g=p[h]).i]=g.x(m);return u.join("")}}}var cv=Su(lv,"px, ","px)","deg)"),dv=Su(sv,", ",")",")"),uv=1e-12;function xu(e){return((e=Math.exp(e))+1/e)/2}function fv(e){return((e=Math.exp(e))-1/e)/2}function pv(e){return((e=Math.exp(2*e))-1)/(e+1)}const Fr=function e(n,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,y=m*m+h*h,g,_;if(y<uv)_=Math.log(p/d)/n,g=function(T){return[s+T*m,c+T*h,d*Math.exp(n*T*_)]};else{var w=Math.sqrt(y),b=(p*p-d*d+r*y)/(2*d*o*w),C=(p*p-d*d-r*y)/(2*p*o*w),E=Math.log(Math.sqrt(b*b+1)-b),k=Math.log(Math.sqrt(C*C+1)-C);_=(k-E)/n,g=function(T){var x=T*_,$=xu(E),K=d/(o*w)*($*pv(n*x+E)-fv(E));return[s+K*m,c+K*h,d*$/xu(n*x+E)]}}return g.duration=_*1e3*n/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 qn=0,So=0,xo=0,Au=1e3,Lr,Ao,Ur=0,un=0,Kr=0,Io=typeof performance=="object"&&performance.now?performance:Date,Iu=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Ya(){return un||(Iu(mv),un=Io.now()+Kr)}function mv(){un=0}function jr(){this._call=this._time=this._next=null}jr.prototype=Tu.prototype={constructor:jr,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Ya():+o)+(n==null?0:+n),!this._next&&Ao!==this&&(Ao?Ao._next=this:Lr=this,Ao=this),this._call=e,this._time=o,Wa()},stop:function(){this._call&&(this._call=null,this._time=1/0,Wa())}};function Tu(e,n,o){var r=new jr;return r.restart(e,n,o),r}function gv(){Ya(),++qn;for(var e=Lr,n;e;)(n=un-e._time)>=0&&e._call.call(void 0,n),e=e._next;--qn}function Pu(){un=(Ur=Io.now())+Kr,qn=So=0;try{gv()}finally{qn=0,yv(),un=0}}function hv(){var e=Io.now(),n=e-Ur;n>Au&&(Kr-=n,Ur=e)}function yv(){for(var e,n=Lr,o,r=1/0;n;)n._call?(r>n._time&&(r=n._time),e=n,n=n._next):(o=n._next,n._next=null,n=e?e._next=o:Lr=o);Ao=e,Wa(r)}function Wa(e){if(!qn){So&&(So=clearTimeout(So));var n=e-un;n>24?(e<1/0&&(So=setTimeout(Pu,e-Io.now()-Kr)),xo&&(xo=clearInterval(xo))):(xo||(Ur=Io.now(),xo=setInterval(hv,Au)),qn=1,Iu(Pu))}}function Ou(e,n,o){var r=new jr;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var _v=Ar("start","end","cancel","interrupt"),bv=[],$u=0,Bu=1,Xa=2,Gr=3,Vu=4,Za=5,qr=6;function zr(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;wv(e,o,{name:n,index:r,group:i,on:_v,tween:bv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:$u})}function Ja(e,n){var o=yt(e,n);if(o.state>$u)throw new Error("too late; already scheduled");return o}function xt(e,n){var o=yt(e,n);if(o.state>Gr)throw new Error("too late; already running");return o}function yt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function wv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Tu(a,0,o.time);function a(d){o.state=Bu,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!==Bu)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Gr)return Ou(l);m.state===Vu?(m.state=qr,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=qr,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Ou(function(){o.state===Gr&&(o.state=Vu,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Xa,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Xa){for(o.state=Gr,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=Za,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Za&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=qr,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Hr(e,n){var o=e.__transition,r,i,a=!0,l;if(o){n=n==null?null:n+"";for(l in o){if((r=o[l]).name!==n){a=!1;continue}i=r.state>Xa&&r.state<Za,r.state=qr,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function kv(e){return this.each(function(){Hr(this,e)})}function Ev(e,n){var o,r;return function(){var i=xt(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===n){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function Cv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=xt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===n){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function Nv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=yt(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((n==null?Ev:Cv)(o,e,n))}function Qa(e,n,o){var r=e._id;return e.each(function(){var i=xt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return yt(i,r).value[n]}}function Ru(e,n){var o;return(typeof n=="number"?St:n instanceof sn?Mr:(o=sn(n))?(n=o,Mr):Cu)(e,n)}function vv(e){return function(){this.removeAttribute(e)}}function Sv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function xv(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttribute(e);return l===i?null:l===r?a:a=n(r=l,o)}}function Av(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttributeNS(e.space,e.local);return l===i?null:l===r?a:a=n(r=l,o)}}function Iv(e,n,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=n(r=l,s)))}}function Tv(e,n,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=n(r=l,s)))}}function Pv(e,n){var o=Tr(e),r=o==="transform"?dv:Ru;return this.attrTween(e,typeof n=="function"?(o.local?Tv:Iv)(o,r,Qa(this,"attr."+e,n)):n==null?(o.local?Sv:vv)(o):(o.local?Av:xv)(o,r,n))}function Ov(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function $v(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function Bv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&$v(e,a)),o}return i._value=n,i}function Vv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&Ov(e,a)),o}return i._value=n,i}function Rv(e,n){var o="attr."+e;if(arguments.length<2)return(o=this.tween(o))&&o._value;if(n==null)return this.tween(o,null);if(typeof n!="function")throw new Error;var r=Tr(e);return this.tween(o,(r.local?Bv:Vv)(r,n))}function Mv(e,n){return function(){Ja(this,e).delay=+n.apply(this,arguments)}}function Dv(e,n){return n=+n,function(){Ja(this,e).delay=n}}function Fv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Mv:Dv)(n,e)):yt(this.node(),n).delay}function Lv(e,n){return function(){xt(this,e).duration=+n.apply(this,arguments)}}function Uv(e,n){return n=+n,function(){xt(this,e).duration=n}}function Kv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Lv:Uv)(n,e)):yt(this.node(),n).duration}function jv(e,n){if(typeof n!="function")throw new Error;return function(){xt(this,e).ease=n}}function Gv(e){var n=this._id;return arguments.length?this.each(jv(n,e)):yt(this.node(),n).ease}function qv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;xt(this,e).ease=o}}function zv(e){if(typeof e!="function")throw new Error;return this.each(qv(this._id,e))}function Hv(e){typeof e!="function"&&(e=eu(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[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 Mt(r,this._parents,this._name,this._id)}function Yv(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,o=e._groups,r=n.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=n[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]=n[s];return new Mt(l,this._parents,this._name,this._id)}function Wv(e){return(e+"").trim().split(/^|\s+/).every(function(n){var o=n.indexOf(".");return o>=0&&(n=n.slice(0,o)),!n||n==="start"})}function Xv(e,n,o){var r,i,a=Wv(n)?Ja:xt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Zv(e,n){var o=this._id;return arguments.length<2?yt(this.node(),o).on.on(e):this.each(Xv(o,e,n))}function Jv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Qv(){return this.on("end.remove",Jv(this._id))}function eS(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Ma(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,zr(d[p],n,o,p,d,yt(f,o)));return new Mt(a,this._parents,n,o)}function tS(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Qd(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=yt(f,o),y=0,g=p.length;y<g;++y)(m=p[y])&&zr(m,n,o,y,p,h);a.push(p),l.push(f)}return new Mt(a,l,n,o)}var nS=wo.prototype.constructor;function oS(){return new nS(this._groups,this._parents)}function rS(e,n){var o,r,i;return function(){var a=Kn(this,e),l=(this.style.removeProperty(e),Kn(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Mu(e){return function(){this.style.removeProperty(e)}}function iS(e,n,o){var r,i=o+"",a;return function(){var l=Kn(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function aS(e,n,o){var r,i,a;return function(){var l=Kn(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Kn(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function lS(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=xt(this,e),d=c.on,f=c.value[a]==null?s||(s=Mu(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function sS(e,n,o){var r=(e+="")=="transform"?cv:Ru;return n==null?this.styleTween(e,rS(e,r)).on("end.style."+e,Mu(e)):typeof n=="function"?this.styleTween(e,aS(e,r,Qa(this,"style."+e,n))).each(lS(this._id,e)):this.styleTween(e,iS(e,r,n),o).on("end.style."+e,null)}function cS(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function dS(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&cS(e,l,o)),r}return a._value=n,a}function uS(e,n,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;return this.tween(r,dS(e,n,o??""))}function fS(e){return function(){this.textContent=e}}function pS(e){return function(){var n=e(this);this.textContent=n??""}}function mS(e){return this.tween("text",typeof e=="function"?pS(Qa(this,"text",e)):fS(e==null?"":e+""))}function gS(e){return function(n){this.textContent=e.call(this,n)}}function hS(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&gS(i)),n}return r._value=e,r}function yS(e){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,hS(e))}function _S(){for(var e=this._name,n=this._id,o=Du(),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=yt(c,n);zr(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Mt(r,this._parents,e,o)}function bS(){var e,n,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=xt(this,r),f=d.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),d.on=n}),i===0&&a()})}var wS=0;function Mt(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Du(){return++wS}var Dt=wo.prototype;Mt.prototype={constructor:Mt,select:eS,selectAll:tS,selectChild:Dt.selectChild,selectChildren:Dt.selectChildren,filter:Hv,merge:Yv,selection:oS,transition:_S,call:Dt.call,nodes:Dt.nodes,node:Dt.node,size:Dt.size,empty:Dt.empty,each:Dt.each,on:Zv,attr:Pv,attrTween:Rv,style:sS,styleTween:uS,text:mS,textTween:yS,remove:Qv,tween:Nv,delay:Fv,duration:Kv,ease:Gv,easeVarying:zv,end:bS,[Symbol.iterator]:Dt[Symbol.iterator]};function kS(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var ES={time:null,delay:0,duration:250,ease:kS};function CS(e,n){for(var o;!(o=e.__transition)||!(o=o[n]);)if(!(e=e.parentNode))throw new Error(`transition ${n} not found`);return o}function NS(e){var n,o;e instanceof Mt?(n=e._id,e=e._name):(n=Du(),(o=ES).time=Ya(),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])&&zr(c,e,n,d,l,o||CS(c,n));return new Mt(r,this._parents,e,n)}wo.prototype.interrupt=kv,wo.prototype.transition=NS;const Yr=e=>()=>e;function vS(e,{sourceEvent:n,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function Ft(e,n,o){this.k=e,this.x=n,this.y=o}Ft.prototype={constructor:Ft,scale:function(e){return e===1?this:new Ft(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new Ft(this.k,this.x+this.k*e,this.y+this.k*n)},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 zn=new Ft(1,0,0);Ft.prototype;function el(e){e.stopImmediatePropagation()}function To(e){e.preventDefault(),e.stopImmediatePropagation()}function SS(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function xS(){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 Fu(){return this.__zoom||zn}function AS(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function IS(){return navigator.maxTouchPoints||"ontouchstart"in this}function TS(e,n,o){var r=e.invertX(n[0][0])-o[0][0],i=e.invertX(n[1][0])-o[1][0],a=e.invertY(n[0][1])-o[0][1],l=e.invertY(n[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 PS(){var e=SS,n=xS,o=TS,r=AS,i=IS,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Fr,d=Ar("start","zoom","end"),f,u,p,m=500,h=150,y=0,g=10;function _(A){A.property("__zoom",Fu).on("wheel.zoom",x,{passive:!1}).on("mousedown.zoom",$).on("dblclick.zoom",K).filter(i).on("touchstart.zoom",j).on("touchmove.zoom",I).on("touchend.zoom touchcancel.zoom",Q).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(A,D,V,X){var Y=A.selection?A.selection():A;Y.property("__zoom",Fu),A!==Y?E(A,D,V,X):Y.interrupt().each(function(){k(this,arguments).event(X).start().zoom(null,typeof D=="function"?D.apply(this,arguments):D).end()})},_.scaleBy=function(A,D,V,X){_.scaleTo(A,function(){var Y=this.__zoom.k,G=typeof D=="function"?D.apply(this,arguments):D;return Y*G},V,X)},_.scaleTo=function(A,D,V,X){_.transform(A,function(){var Y=n.apply(this,arguments),G=this.__zoom,F=V==null?C(Y):typeof V=="function"?V.apply(this,arguments):V,R=G.invert(F),oe=typeof D=="function"?D.apply(this,arguments):D;return o(b(w(G,oe),F,R),Y,l)},V,X)},_.translateBy=function(A,D,V,X){_.transform(A,function(){return o(this.__zoom.translate(typeof D=="function"?D.apply(this,arguments):D,typeof V=="function"?V.apply(this,arguments):V),n.apply(this,arguments),l)},null,X)},_.translateTo=function(A,D,V,X,Y){_.transform(A,function(){var G=n.apply(this,arguments),F=this.__zoom,R=X==null?C(G):typeof X=="function"?X.apply(this,arguments):X;return o(zn.translate(R[0],R[1]).scale(F.k).translate(typeof D=="function"?-D.apply(this,arguments):-D,typeof V=="function"?-V.apply(this,arguments):-V),G,l)},X,Y)};function w(A,D){return D=Math.max(a[0],Math.min(a[1],D)),D===A.k?A:new Ft(D,A.x,A.y)}function b(A,D,V){var X=D[0]-V[0]*A.k,Y=D[1]-V[1]*A.k;return X===A.x&&Y===A.y?A:new Ft(A.k,X,Y)}function C(A){return[(+A[0][0]+ +A[1][0])/2,(+A[0][1]+ +A[1][1])/2]}function E(A,D,V,X){A.on("start.zoom",function(){k(this,arguments).event(X).start()}).on("interrupt.zoom end.zoom",function(){k(this,arguments).event(X).end()}).tween("zoom",function(){var Y=this,G=arguments,F=k(Y,G).event(X),R=n.apply(Y,G),oe=V==null?C(R):typeof V=="function"?V.apply(Y,G):V,ie=Math.max(R[1][0]-R[0][0],R[1][1]-R[0][1]),Z=Y.__zoom,ae=typeof D=="function"?D.apply(Y,G):D,q=c(Z.invert(oe).concat(ie/Z.k),ae.invert(oe).concat(ie/ae.k));return function(ee){if(ee===1)ee=ae;else{var U=q(ee),ne=ie/U[2];ee=new Ft(ne,oe[0]-U[0]*ne,oe[1]-U[1]*ne)}F.zoom(null,ee)}})}function k(A,D,V){return!V&&A.__zooming||new T(A,D)}function T(A,D){this.that=A,this.args=D,this.active=0,this.sourceEvent=null,this.extent=n.apply(A,D),this.taps=0}T.prototype={event:function(A){return A&&(this.sourceEvent=A),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(A,D){return this.mouse&&A!=="mouse"&&(this.mouse[1]=D.invert(this.mouse[0])),this.touch0&&A!=="touch"&&(this.touch0[1]=D.invert(this.touch0[0])),this.touch1&&A!=="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(A){var D=gt(this.that).datum();d.call(A,this.that,new vS(A,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:d}),D)}};function x(A,...D){if(!e.apply(this,arguments))return;var V=k(this,D).event(A),X=this.__zoom,Y=Math.max(a[0],Math.min(a[1],X.k*Math.pow(2,r.apply(this,arguments)))),G=Nt(A);if(V.wheel)(V.mouse[0][0]!==G[0]||V.mouse[0][1]!==G[1])&&(V.mouse[1]=X.invert(V.mouse[0]=G)),clearTimeout(V.wheel);else{if(X.k===Y)return;V.mouse=[G,X.invert(G)],Hr(this),V.start()}To(A),V.wheel=setTimeout(F,h),V.zoom("mouse",o(b(w(X,Y),V.mouse[0],V.mouse[1]),V.extent,l));function F(){V.wheel=null,V.end()}}function $(A,...D){if(p||!e.apply(this,arguments))return;var V=A.currentTarget,X=k(this,D,!0).event(A),Y=gt(A.view).on("mousemove.zoom",oe,!0).on("mouseup.zoom",ie,!0),G=Nt(A,V),F=A.clientX,R=A.clientY;du(A.view),el(A),X.mouse=[G,this.__zoom.invert(G)],Hr(this),X.start();function oe(Z){if(To(Z),!X.moved){var ae=Z.clientX-F,q=Z.clientY-R;X.moved=ae*ae+q*q>y}X.event(Z).zoom("mouse",o(b(X.that.__zoom,X.mouse[0]=Nt(Z,V),X.mouse[1]),X.extent,l))}function ie(Z){Y.on("mousemove.zoom mouseup.zoom",null),uu(Z.view,X.moved),To(Z),X.event(Z).end()}}function K(A,...D){if(e.apply(this,arguments)){var V=this.__zoom,X=Nt(A.changedTouches?A.changedTouches[0]:A,this),Y=V.invert(X),G=V.k*(A.shiftKey?.5:2),F=o(b(w(V,G),X,Y),n.apply(this,D),l);To(A),s>0?gt(this).transition().duration(s).call(E,F,X,A):gt(this).call(_.transform,F,X,A)}}function j(A,...D){if(e.apply(this,arguments)){var V=A.touches,X=V.length,Y=k(this,D,A.changedTouches.length===X).event(A),G,F,R,oe;for(el(A),F=0;F<X;++F)R=V[F],oe=Nt(R,this),oe=[oe,this.__zoom.invert(oe),R.identifier],Y.touch0?!Y.touch1&&Y.touch0[2]!==oe[2]&&(Y.touch1=oe,Y.taps=0):(Y.touch0=oe,G=!0,Y.taps=1+!!f);f&&(f=clearTimeout(f)),G&&(Y.taps<2&&(u=oe[0],f=setTimeout(function(){f=null},m)),Hr(this),Y.start())}}function I(A,...D){if(this.__zooming){var V=k(this,D).event(A),X=A.changedTouches,Y=X.length,G,F,R,oe;for(To(A),G=0;G<Y;++G)F=X[G],R=Nt(F,this),V.touch0&&V.touch0[2]===F.identifier?V.touch0[0]=R:V.touch1&&V.touch1[2]===F.identifier&&(V.touch1[0]=R);if(F=V.that.__zoom,V.touch1){var ie=V.touch0[0],Z=V.touch0[1],ae=V.touch1[0],q=V.touch1[1],ee=(ee=ae[0]-ie[0])*ee+(ee=ae[1]-ie[1])*ee,U=(U=q[0]-Z[0])*U+(U=q[1]-Z[1])*U;F=w(F,Math.sqrt(ee/U)),R=[(ie[0]+ae[0])/2,(ie[1]+ae[1])/2],oe=[(Z[0]+q[0])/2,(Z[1]+q[1])/2]}else if(V.touch0)R=V.touch0[0],oe=V.touch0[1];else return;V.zoom("touch",o(b(F,R,oe),V.extent,l))}}function Q(A,...D){if(this.__zooming){var V=k(this,D).event(A),X=A.changedTouches,Y=X.length,G,F;for(el(A),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),G=0;G<Y;++G)F=X[G],V.touch0&&V.touch0[2]===F.identifier?delete V.touch0:V.touch1&&V.touch1[2]===F.identifier&&delete V.touch1;if(V.touch1&&!V.touch0&&(V.touch0=V.touch1,delete V.touch1),V.touch0)V.touch0[1]=this.__zoom.invert(V.touch0[0]);else if(V.end(),V.taps===2&&(F=Nt(F,this),Math.hypot(u[0]-F[0],u[1]-F[1])<g)){var R=gt(this).on("dblclick.zoom");R&&R.apply(this,arguments)}}}return _.wheelDelta=function(A){return arguments.length?(r=typeof A=="function"?A:Yr(+A),_):r},_.filter=function(A){return arguments.length?(e=typeof A=="function"?A:Yr(!!A),_):e},_.touchable=function(A){return arguments.length?(i=typeof A=="function"?A:Yr(!!A),_):i},_.extent=function(A){return arguments.length?(n=typeof A=="function"?A:Yr([[+A[0][0],+A[0][1]],[+A[1][0],+A[1][1]]]),_):n},_.scaleExtent=function(A){return arguments.length?(a[0]=+A[0],a[1]=+A[1],_):[a[0],a[1]]},_.translateExtent=function(A){return arguments.length?(l[0][0]=+A[0][0],l[1][0]=+A[1][0],l[0][1]=+A[0][1],l[1][1]=+A[1][1],_):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},_.constrain=function(A){return arguments.length?(o=A,_):o},_.duration=function(A){return arguments.length?(s=+A,_):s},_.interpolate=function(A){return arguments.length?(c=A,_):c},_.on=function(){var A=d.on.apply(d,arguments);return A===d?_:A},_.clickDistance=function(A){return arguments.length?(y=(A=+A)*A,_):Math.sqrt(y)},_.tapDistance=function(A){return arguments.length?(g=+A,_):g},_}var ge=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ge||{}),tl=(e=>(e.Partial="partial",e.Full="full",e))(tl||{}),fn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(fn||{}),qt=(e=>(e.Strict="strict",e.Loose="loose",e))(qt||{}),Wr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(Wr||{}),Po=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(Po||{}),Lu=(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))(Lu||{});const OS=["INPUT","SELECT","TEXTAREA"],$S=typeof document<"u"?document:null;function nl(e){var n,o;const r=((o=(n=e.composedPath)==null?void 0:n.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 OS.includes(r==null?void 0:r.nodeName)||i||!!a}function BS(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Uu(e,n,o,r){const i=n.replace("+",`
120
120
  `).replace(`
121
121
 
122
122
  `,`
123
123
  +`).split(`
124
- `).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===n.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 VS(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=RS(o.code,e);return Array.isArray(e)?e.some(i=>Uu(o[r],i,n,o.type==="keyup")):Uu(o[r],e,n,o.type==="keyup")}}function RS(e,n){return n.includes(e)?"code":"key"}function Oo(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??$S),r=t.shallowRef(t.toValue(e)===!0);let i=!1;const a=new Set;let l=c(t.toValue(e));t.watch(()=>t.toValue(e),(d,f)=>{typeof f=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),Yd(["blur","contextmenu"],s),Wd((...d)=>l(...d),d=>{var f,u;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=BS(d),(!i||i&&!p)&&nl(d))return;const y=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,g=(y==null?void 0:y.nodeName)==="BUTTON"||(y==null?void 0:y.nodeName)==="A";!m&&(i||!g)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Wd((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&nl(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.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"?VS(d,a):d}return r}const Ku="vue-flow__node-desc",ju="vue-flow__edge-desc",MS="vue-flow__aria-live",Gu=["Enter"," ","Escape"],Hn={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Xr(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Zr(e,n){const o=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),r=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(o*r)}function Jr(e){return{width:e.offsetWidth,height:e.offsetHeight}}function pn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function qu(e,n){return{x:pn(e.x,n[0][0],n[1][0]),y:pn(e.y,n[0][1],n[1][1])}}function zu(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function zt(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&&!zt(e)}function $o(e){return mn(e)&&"computedPosition"in e}function Qr(e){return!Number.isNaN(e)&&Number.isFinite(e)}function DS(e){return Qr(e.width)&&Qr(e.height)&&Qr(e.x)&&Qr(e.y)}function LS(e,n,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:t.markRaw({width:0,height:0}),computedPosition:t.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:Le(e.data)?e.data:{},events:t.markRaw(Le(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Hu(e,n,o){var r,i;const a={id:e.id.toString(),type:e.type??(n==null?void 0:n.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:Le(e.data)?e.data:{},events:t.markRaw(Le(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(n??a,e,{id:e.id.toString()})}function Yu(e,n,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 n.filter(s=>a.has(s.id))}function FS(...e){if(e.length===3){const[a,l,s]=e;return Yu(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>zt(a)&&a.source===r).map(a=>o.find(l=>mn(l)&&l.id===a.target))}function US(...e){if(e.length===3){const[a,l,s]=e;return Yu(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>zt(a)&&a.target===r).map(a=>o.find(l=>mn(l)&&l.id===a.source))}function Wu({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function KS(e,n){return n.some(o=>zt(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 ol({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function Bo({x:e,y:n},{x:o,y:r,zoom:i},a=!1,l=[1,1]){const s={x:(e-o)/i,y:(n-r)/i};return a?ti(s,l):s}function jS(e,n){return{x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x2,n.x2),y2:Math.max(e.y2,n.y2)}}function Xu({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function GS({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Zu(e){let n={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];n=jS(n,Xu({...r.computedPosition,...r.dimensions}))}return GS(n)}function Ju(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Bo(n,o),width:n.width/o.zoom,height:n.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=Zr(a,Xr(s)),h=u===null||p===null,y=r&&m>0,g=(u??0)*(p??0);(h||y||m>=g||s.dragging)&&l.push(s)}return l}function Qu(e,n){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 n.filter(r=>o.has(r.source)||o.has(r.target))}function ef(e,n,o,r,i,a=.1,l={x:0,y:0}){const s=n/(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=n/2-u*f+(l.x??0),h=o/2-p*f+(l.y??0);return{x:m,y:h,zoom:f}}function qS(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function tf(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:tf(o,n):!1}function Vo(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function nf(e,n,o){return e<n?pn(Math.abs(e-n),1,n)/n:e>o?-pn(Math.abs(e-o),1,n)/n:0}function of(e,n,o=15,r=40){const i=nf(e.x,r,n.width-r)*o,a=nf(e.y,r,n.height-r)*o;return[i,a]}function rl(e,n){if(n){const o=e.position.x+e.dimensions.width-n.dimensions.width,r=e.position.y+e.dimensions.height-n.dimensions.height;if(o>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof n.style=="function"?i={...n.style(n)}:n.style&&(i={...n.style}),i.width=i.width??`${n.dimensions.width}px`,i.height=i.height??`${n.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(n.position.x=n.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(n.position.y=n.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}n.dimensions.width=Number(i.width.toString().replace("px","")),n.dimensions.height=Number(i.height.toString().replace("px","")),typeof n.style=="function"?n.style=a=>{const l=n.style;return{...l(a),...i}}:n.style={...n.style,...i}}}}function rf(e,n){var o,r;const i=e.filter(l=>l.type==="add"||l.type==="remove");for(const l of i)if(l.type==="add")n.findIndex(c=>c.id===l.item.id)===-1&&n.push(l.item);else if(l.type==="remove"){const s=n.findIndex(c=>c.id===l.id);s!==-1&&n.splice(s,1)}const a=n.map(l=>l.id);for(const l of n)for(const s of e)if(s.id===l.id)switch(s.type){case"select":l.selected=s.selected;break;case"position":if($o(l)&&(typeof s.position<"u"&&(l.position=s.position),typeof s.dragging<"u"&&(l.dragging=s.dragging),l.expandParent&&l.parentNode)){const c=n[a.indexOf(l.parentNode)];c&&$o(c)&&rl(l,c)}break;case"dimensions":if($o(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=n[a.indexOf(l.parentNode)];c&&$o(c)&&(!!c.dimensions.width&&!!c.dimensions.height?rl(l,c):t.nextTick(()=>{rl(l,c)}))}break}return n}function Ht(e,n){return{id:e,type:"select",selected:n}}function af(e){return{item:e,type:"add"}}function lf(e){return{id:e,type:"remove"}}function sf(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function Yt(e,n=new Set,o=!1){const r=[];for(const[i,a]of e){const l=n.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(o&&(a.selected=l),r.push(Ht(a.id,l)))}return r}function me(e){const n=new Set;let o=!1;const r=()=>n.size>0;e&&(o=!0,n.add(e));const i=s=>{n.delete(s)};return{on:s=>{e&&o&&n.delete(e),n.add(s);const c=()=>{i(s),e&&o&&n.add(e)};return xr(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function cf(e,n,o){let r=e;do{if(r&&r.matches(n))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function zS(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!tf(c,r))&&(c.draggable||n&&typeof c.draggable>"u")&&s.push(t.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 il({id:e,dragItems:n,findNode:o}){const r=[];for(const i of n){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function df(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 HS(e,n,o){const[r,i,a,l]=typeof e!="string"?df(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 YS(e,n,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=HS(i,e,r);a&&(i=a)}else n(new qe(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]=df(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 WS({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function al(e,n,o,r,i){const a=WS(e.dimensions,YS(e,o,r,i)),l=qu(n,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 Yn(e,n,o=ge.Left,r=!1){const i=((n==null?void 0:n.x)??0)+e.computedPosition.x,a=((n==null?void 0:n.y)??0)+e.computedPosition.y,{width:l,height:s}=n??QS(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.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 uf(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function XS({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x+o,n.x+i),y2:Math.max(e.y+r,n.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const f=Xu({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 ZS(e,n,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=n(e.source),l=n(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 ff={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
124
+ `).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===n.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 VS(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=RS(o.code,e);return Array.isArray(e)?e.some(i=>Uu(o[r],i,n,o.type==="keyup")):Uu(o[r],e,n,o.type==="keyup")}}function RS(e,n){return n.includes(e)?"code":"key"}function Oo(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??$S),r=t.shallowRef(t.toValue(e)===!0);let i=!1;const a=new Set;let l=c(t.toValue(e));t.watch(()=>t.toValue(e),(d,f)=>{typeof f=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),Yd(["blur","contextmenu"],s),Wd((...d)=>l(...d),d=>{var f,u;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=BS(d),(!i||i&&!p)&&nl(d))return;const y=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,g=(y==null?void 0:y.nodeName)==="BUTTON"||(y==null?void 0:y.nodeName)==="A";!m&&(i||!g)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Wd((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&nl(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.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"?VS(d,a):d}return r}const Ku="vue-flow__node-desc",ju="vue-flow__edge-desc",MS="vue-flow__aria-live",Gu=["Enter"," ","Escape"],Hn={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Xr(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Zr(e,n){const o=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),r=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(o*r)}function Jr(e){return{width:e.offsetWidth,height:e.offsetHeight}}function pn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function qu(e,n){return{x:pn(e.x,n[0][0],n[1][0]),y:pn(e.y,n[0][1],n[1][1])}}function zu(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function zt(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&&!zt(e)}function $o(e){return mn(e)&&"computedPosition"in e}function Qr(e){return!Number.isNaN(e)&&Number.isFinite(e)}function DS(e){return Qr(e.width)&&Qr(e.height)&&Qr(e.x)&&Qr(e.y)}function FS(e,n,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:t.markRaw({width:0,height:0}),computedPosition:t.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:Fe(e.data)?e.data:{},events:t.markRaw(Fe(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Hu(e,n,o){var r,i;const a={id:e.id.toString(),type:e.type??(n==null?void 0:n.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:Fe(e.data)?e.data:{},events:t.markRaw(Fe(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(n??a,e,{id:e.id.toString()})}function Yu(e,n,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 n.filter(s=>a.has(s.id))}function LS(...e){if(e.length===3){const[a,l,s]=e;return Yu(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>zt(a)&&a.source===r).map(a=>o.find(l=>mn(l)&&l.id===a.target))}function US(...e){if(e.length===3){const[a,l,s]=e;return Yu(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>zt(a)&&a.target===r).map(a=>o.find(l=>mn(l)&&l.id===a.source))}function Wu({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function KS(e,n){return n.some(o=>zt(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 ol({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function Bo({x:e,y:n},{x:o,y:r,zoom:i},a=!1,l=[1,1]){const s={x:(e-o)/i,y:(n-r)/i};return a?ti(s,l):s}function jS(e,n){return{x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x2,n.x2),y2:Math.max(e.y2,n.y2)}}function Xu({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function GS({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Zu(e){let n={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];n=jS(n,Xu({...r.computedPosition,...r.dimensions}))}return GS(n)}function Ju(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Bo(n,o),width:n.width/o.zoom,height:n.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=Zr(a,Xr(s)),h=u===null||p===null,y=r&&m>0,g=(u??0)*(p??0);(h||y||m>=g||s.dragging)&&l.push(s)}return l}function Qu(e,n){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 n.filter(r=>o.has(r.source)||o.has(r.target))}function ef(e,n,o,r,i,a=.1,l={x:0,y:0}){const s=n/(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=n/2-u*f+(l.x??0),h=o/2-p*f+(l.y??0);return{x:m,y:h,zoom:f}}function qS(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function tf(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:tf(o,n):!1}function Vo(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function nf(e,n,o){return e<n?pn(Math.abs(e-n),1,n)/n:e>o?-pn(Math.abs(e-o),1,n)/n:0}function of(e,n,o=15,r=40){const i=nf(e.x,r,n.width-r)*o,a=nf(e.y,r,n.height-r)*o;return[i,a]}function rl(e,n){if(n){const o=e.position.x+e.dimensions.width-n.dimensions.width,r=e.position.y+e.dimensions.height-n.dimensions.height;if(o>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof n.style=="function"?i={...n.style(n)}:n.style&&(i={...n.style}),i.width=i.width??`${n.dimensions.width}px`,i.height=i.height??`${n.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(n.position.x=n.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(n.position.y=n.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}n.dimensions.width=Number(i.width.toString().replace("px","")),n.dimensions.height=Number(i.height.toString().replace("px","")),typeof n.style=="function"?n.style=a=>{const l=n.style;return{...l(a),...i}}:n.style={...n.style,...i}}}}function rf(e,n){var o,r;const i=e.filter(l=>l.type==="add"||l.type==="remove");for(const l of i)if(l.type==="add")n.findIndex(c=>c.id===l.item.id)===-1&&n.push(l.item);else if(l.type==="remove"){const s=n.findIndex(c=>c.id===l.id);s!==-1&&n.splice(s,1)}const a=n.map(l=>l.id);for(const l of n)for(const s of e)if(s.id===l.id)switch(s.type){case"select":l.selected=s.selected;break;case"position":if($o(l)&&(typeof s.position<"u"&&(l.position=s.position),typeof s.dragging<"u"&&(l.dragging=s.dragging),l.expandParent&&l.parentNode)){const c=n[a.indexOf(l.parentNode)];c&&$o(c)&&rl(l,c)}break;case"dimensions":if($o(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=n[a.indexOf(l.parentNode)];c&&$o(c)&&(!!c.dimensions.width&&!!c.dimensions.height?rl(l,c):t.nextTick(()=>{rl(l,c)}))}break}return n}function Ht(e,n){return{id:e,type:"select",selected:n}}function af(e){return{item:e,type:"add"}}function lf(e){return{id:e,type:"remove"}}function sf(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function Yt(e,n=new Set,o=!1){const r=[];for(const[i,a]of e){const l=n.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(o&&(a.selected=l),r.push(Ht(a.id,l)))}return r}function me(e){const n=new Set;let o=!1;const r=()=>n.size>0;e&&(o=!0,n.add(e));const i=s=>{n.delete(s)};return{on:s=>{e&&o&&n.delete(e),n.add(s);const c=()=>{i(s),e&&o&&n.add(e)};return xr(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function cf(e,n,o){let r=e;do{if(r&&r.matches(n))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function zS(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!tf(c,r))&&(c.draggable||n&&typeof c.draggable>"u")&&s.push(t.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 il({id:e,dragItems:n,findNode:o}){const r=[];for(const i of n){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function df(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 HS(e,n,o){const[r,i,a,l]=typeof e!="string"?df(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 YS(e,n,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=HS(i,e,r);a&&(i=a)}else n(new qe(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]=df(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 WS({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function al(e,n,o,r,i){const a=WS(e.dimensions,YS(e,o,r,i)),l=qu(n,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 Yn(e,n,o=ge.Left,r=!1){const i=((n==null?void 0:n.x)??0)+e.computedPosition.x,a=((n==null?void 0:n.y)??0)+e.computedPosition.y,{width:l,height:s}=n??QS(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.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 uf(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function XS({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x+o,n.x+i),y2:Math.max(e.y+r,n.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const f=Xu({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 ZS(e,n,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=n(e.source),l=n(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 ff={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
125
125
  Node: ${e}`,NODE_NOT_FOUND:e=>`Node not found
126
126
  Node: ${e}`,NODE_MISSING_PARENT:(e,n)=>`Node is missing a parent
127
127
  Node: ${e}
@@ -141,4 +141,4 @@ Edge: ${e}
141
141
  Source: ${n}
142
142
  Target: ${o}`,EDGE_ORPHANED:e=>`Edge was orphaned (suddenly missing source or target) and has been removed
143
143
  Edge: ${e}`,EDGE_NOT_FOUND:e=>`Edge not found
144
- 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 qe extends Error{constructor(n,...o){var r;super((r=ff[n])==null?void 0:r.call(ff,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function ll(e){return"clientX"in e}function JS(e){return"sourceEvent"in e}function At(e,n){const o=ll(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-((n==null?void 0:n.left)??0),y:i-((n==null?void 0:n.top)??0)}}const ei=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function QS(e){var n,o;return{width:((n=e.dimensions)==null?void 0:n.width)??e.width??0,height:((o=e.dimensions)==null?void 0:o.height)??e.height??0}}function ti(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const ex=()=>!0;function sl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function tx(e,n,o){const r=[],i={x:e.x-o,y:e.y-o,width:o*2,height:o*2};for(const a of n.values())Zr(i,Xr(a))>0&&r.push(a);return r}const nx=250;function ox(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=tx(e,o,n+nx);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}=Yn(d,u,u.position,!0),h=Math.sqrt((p-e.x)**2+(m-e.y)**2);h>n||(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 pf(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=ex},f,u,p){const m=a==="target",h=n?l.querySelector(`.${s}-flow__handle[data-id="${c}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:y,y:g}=At(e),_=l.elementFromPoint(y,g),w=_!=null&&_.classList.contains(`${s}-flow__handle`)?_:h,b={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const C=mf(void 0,w),E=w.getAttribute("data-nodeid"),k=w.getAttribute("data-handleid"),T=w.classList.contains("connectable"),x=w.classList.contains("connectableend");if(!E||!C)return b;const O={source:m?E:r,sourceHandle:m?k:i,target:m?r:E,targetHandle:m?i:k};b.connection=O;const K=T&&x&&(o===qt.Strict?m&&C==="source"||!m&&C==="target":E!==r||k!==i);b.isValid=K&&d(O,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(E)}),b.toHandle=n}return b}function mf(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function rx(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function ix(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function ax(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===qt.Strict?(l=d.handleBounds)==null?void 0:l[n]:[...((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,...Yn(d,u,u.position,!0)}:u}const cl={[ge.Left]:ge.Right,[ge.Right]:ge.Left,[ge.Top]:ge.Bottom,[ge.Bottom]:ge.Top},lx=["production","prod"];function ni(e,...n){gf()&&console.warn(`[Vue Flow]: ${e}`,...n)}function gf(){return!lx.includes(process.env.NODE_ENV||"")}function hf(e,n,o,r,i){const a=n.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,...Jr(l)}}):null}function dl(e,n,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&n)&&(r([e]),t.nextTick(()=>{l.blur()})):o([e])}function Le(e){return typeof t.unref(e)<"u"}function sx(e,n,o,r){if(!e||!e.source||!e.target)return o(new qe(De.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return zt(e)?i=e:i={...e,id:Wu(e)},i=Hu(i,void 0,r),KS(i,n)?!1:i}function cx(e,n,o,r,i){if(!n.source||!n.target)return i(new qe(De.EDGE_INVALID,e.id)),!1;if(!o)return i(new qe(De.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Wu(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function yf(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!mn(l)){o(new qe(De.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=LS(l,n(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=n(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new qe(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 _f(e,n,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,n)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,n)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,n))}}function ul(e,n,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}`;_f("source",c,f,e,i,l),_f("target",c,d,e,a,s)}}function bf(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function fl(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=zt(d)?d:sx(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new qe(De.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new qe(De.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new qe(De.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new qe(De.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Hu(f,m,a),sourceNode:u,targetNode:p})}return c}const wf=Symbol("vueFlow"),kf=Symbol("nodeId"),Ef=Symbol("nodeRef"),dx=Symbol("edgeId"),ux=Symbol("edgeRef"),oi=Symbol("slots");function Cf(e){const{vueFlowRef:n,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:y,selectNodesOnDrag:g,removeSelectedElements:_,addSelectedNodes:w,updateNodePositions:b,emits:C}=Ie(),{onStart:E,onDrag:k,onStop:T,onClick:x,el:O,disabled:Y,id:K,selectable:I,dragHandle:Q}=e,A=t.shallowRef(!1);let D=[],V,X=null,H={x:void 0,y:void 0},j={x:0,y:0},L=null,R=!1,oe=0,ie=!1;const Z=mx(),ae=({x:de,y:F})=>{H={x:de,y:F};let W=!1;if(D=D.map(N=>{const v={x:de-N.distance.x,y:F-N.distance.y},{computedPosition:S}=al(N,o.value?ti(v,r.value):v,C.error,l.value,N.parentNode?m(N.parentNode):void 0);return W=W||N.position.x!==S.x||N.position.y!==S.y,N.position=S,N}),!!W&&(b(D,!0,!0),A.value=!0,L)){const[N,v]=il({id:K,dragItems:D,findNode:m});k({event:L,node:N,nodes:v})}},G=()=>{if(!X)return;const[de,F]=of(j,X,f.value);if(de!==0||F!==0){const W={x:(H.x??0)-de/c.value.zoom,y:(H.y??0)-F/c.value.zoom};p({x:de,y:F})&&ae(W)}oe=requestAnimationFrame(G)},ee=(de,F)=>{R=!0;const W=m(K);!g.value&&!h.value&&W&&(W.selected||_()),W&&t.toValue(I)&&g.value&&dl(W,h.value,w,_,y,!1,F);const N=Z(de.sourceEvent);if(H=N,D=zS(a.value,u.value,N,m,K),D.length){const[v,S]=il({id:K,dragItems:D,findNode:m});E({event:de.sourceEvent,node:v,nodes:S})}},U=(de,F)=>{var W;de.sourceEvent.type==="touchmove"&&de.sourceEvent.touches.length>1||(s.value===0&&ee(de,F),H=Z(de.sourceEvent),X=((W=n.value)==null?void 0:W.getBoundingClientRect())||null,j=At(de.sourceEvent,X))},ne=(de,F)=>{const W=Z(de.sourceEvent);if(!ie&&R&&d.value&&(ie=!0,G()),!R){const N=W.xSnapped-(H.x??0),v=W.ySnapped-(H.y??0);Math.sqrt(N*N+v*v)>s.value&&ee(de,F)}(H.x!==W.xSnapped||H.y!==W.ySnapped)&&D.length&&R&&(L=de.sourceEvent,j=At(de.sourceEvent,X),ae(W))},re=de=>{let F=!1;if(!R&&!A.value&&!h.value){const W=de.sourceEvent,N=Z(W),v=N.xSnapped-(H.x??0),S=N.ySnapped-(H.y??0),P=Math.sqrt(v*v+S*S);P!==0&&P<=s.value&&(x==null||x(W),F=!0)}if(D.length&&!F){b(D,!1,!1);const[W,N]=il({id:K,dragItems:D,findNode:m});T({event:de.sourceEvent,node:W,nodes:N})}D=[],A.value=!1,ie=!1,R=!1,H={x:void 0,y:void 0},cancelAnimationFrame(oe)};return t.watch([()=>t.toValue(Y),O],([de,F],W,N)=>{if(F){const v=gt(F);de||(V=D1().on("start",S=>U(S,F)).on("drag",S=>ne(S,F)).on("end",S=>re(S)).filter(S=>{const P=S.target,$=t.toValue(Q);return!S.button&&(!i.value||!cf(P,`.${i.value}`,F)&&(!$||cf(P,$,F)))}),v.call(V)),N(()=>{v.on(".drag",null),V&&(V.on("start",null),V.on("drag",null),V.on("end",null))})}}),A}function fx(){return{doubleClick:me(),click:me(),mouseEnter:me(),mouseMove:me(),mouseLeave:me(),contextMenu:me(),updateStart:me(),update:me(),updateEnd:me()}}function px(e,n){const o=fx();return o.doubleClick.on(r=>{var i,a;n.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;n.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;n.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;n.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 mx(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Ie();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=JS(i)?i.sourceEvent:i,{x:c,y:d}=At(s,l),f=Bo({x:c,y:d},e.value),{x:u,y:p}=o.value?ti(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function ri(){return!0}function Nf({handleId:e,nodeId:n,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:y,findNode:g,panBy:_,startConnection:w,updateConnection:b,endConnection:C,emits:E,viewport:k,edges:T,nodes:x,isValidConnection:O,nodeLookup:Y}=Ie();let K=null,I=!1,Q=null;function A(V){var X;const H=t.toValue(o)==="target",j=ll(V),L=zu(V.target);if(j&&V.button===0||!j){let R=function(z){N=At(z,de),ae=ox(Bo(N,k.value,!1,[1,1]),f.value,Y.value,P),v||(S(),v=!0);const B=pf(z,{handle:ae,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:H?"target":"source",isValidConnection:Z,doc:L,lib:"vue",flowId:s,nodeLookup:Y.value},T.value,x.value,g);Q=B.handleDomNode,K=B.connection,I=ix(!!ae,B.isValid);const le={...M,isValid:I,to:B.toHandle&&I?ol({x:B.toHandle.x,y:B.toHandle.y},k.value):N,toHandle:B.toHandle,toPosition:I&&B.toHandle?B.toHandle.position:cl[P.position],toNode:B.toHandle?Y.value.get(B.toHandle.nodeId):null};if(!(I&&ae&&(M!=null&&M.toHandle)&&le.toHandle&&M.toHandle.type===le.toHandle.type&&M.toHandle.nodeId===le.toHandle.nodeId&&M.toHandle.id===le.toHandle.id&&M.to.x===le.to.x&&M.to.y===le.to.y)){if(b(ae&&I?ol({x:ae.x,y:ae.y},k.value):N,B.toHandle,rx(!!ae,I)),M=le,!ae&&!I&&!Q)return sl(W);K&&K.source!==K.target&&Q&&(sl(W),W=Q,Q.classList.add("connecting","vue-flow__handle-connecting"),Q.classList.toggle("valid",!!I),Q.classList.toggle("vue-flow__handle-valid",!!I))}},oe=function(z){(ae||Q)&&K&&I&&(a?a(z,K):E.connect(K)),E.connectEnd(z),i&&(l==null||l(z)),sl(W),cancelAnimationFrame(G),C(z),v=!1,I=!1,K=null,Q=null,L.removeEventListener("mousemove",R),L.removeEventListener("mouseup",oe),L.removeEventListener("touchmove",R),L.removeEventListener("touchend",oe)};const ie=g(t.toValue(n));let Z=t.toValue(r)||O.value||ri;!Z&&ie&&(Z=(H?ie.isValidSourcePos:ie.isValidTargetPos)||ri);let ae,G=0;const{x:ee,y:U}=At(V),ne=L==null?void 0:L.elementFromPoint(ee,U),re=mf(t.toValue(i),ne),de=(X=c.value)==null?void 0:X.getBoundingClientRect();if(!de||!re)return;const F=ax(t.toValue(n),re,t.toValue(e),Y.value,d.value);if(!F)return;let W,N=At(V,de),v=!1;const S=()=>{if(!h.value)return;const[z,B]=of(N,de,y.value);_({x:z,y:B}),G=requestAnimationFrame(S)},P={...F,nodeId:t.toValue(n),type:re,position:F.position},$=Y.value.get(t.toValue(n)),te={inProgress:!0,isValid:null,from:Yn($,P,ge.Left,!0),fromHandle:P,fromPosition:P.position,fromNode:$,to:N,toHandle:null,toPosition:cl[P.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:re,position:(ne==null?void 0:ne.getAttribute("data-handlepos"))||ge.Top,...N},{x:ee-de.left,y:U-de.top}),E.connectStart({event:V,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:re});let M=te;L.addEventListener("mousemove",R),L.addEventListener("mouseup",oe),L.addEventListener("touchmove",R),L.addEventListener("touchend",oe)}}function D(V){var X,H;if(!u.value)return;const j=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:V,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:ge.Top,...At(V)},void 0,!0);return}let L=t.toValue(r)||O.value||ri;const R=g(t.toValue(n));if(!L&&R&&(L=(j?R.isValidSourcePos:R.isValidTargetPos)||ri),R&&(typeof R.connectable>"u"?m.value:R.connectable)===!1)return;const oe=zu(V.target),ie=pf(V,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:ge.Top,...At(V)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:L,doc:oe,lib:"vue",flowId:s,nodeLookup:Y.value},T.value,x.value,g),Z=((X=ie.connection)==null?void 0:X.source)===((H=ie.connection)==null?void 0:H.target);ie.isValid&&ie.connection&&!Z&&E.connect(ie.connection),E.clickConnectEnd(V),C(V,!0)}return{handlePointerDown:A,handleClick:D}}function gx(){return t.inject(kf,"")}function vf(e){const n=e??gx()??"",o=t.inject(Ef,t.ref(null)),{findNode:r,edges:i,emits:a}=Ie(),l=r(n);return l||a.error(new qe(De.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>Qu([l],i.value))}}function hx(){return{doubleClick:me(),click:me(),mouseEnter:me(),mouseMove:me(),mouseLeave:me(),contextMenu:me(),dragStart:me(),drag:me(),dragStop:me()}}function yx(e,n){const o=hx();return o.doubleClick.on(r=>{var i,a;n.nodeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.nodeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.nodeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.nodeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.nodeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.nodeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.dragStart.on(r=>{var i,a;n.nodeDragStart(r),(a=(i=e.events)==null?void 0:i.dragStart)==null||a.call(i,r)}),o.drag.on(r=>{var i,a;n.nodeDrag(r),(a=(i=e.events)==null?void 0:i.drag)==null||a.call(i,r)}),o.dragStop.on(r=>{var i,a;n.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 Sf(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Ie();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,y=[];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:w}=al(g,_,s.error,n.value,g.parentNode?r(g.parentNode):void 0);y.push({id:g.id,position:w,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(y,!0,!1)}}const pl=.1,_x=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function Wt(){return ni("Viewport not initialized yet."),Promise.resolve(!1)}const bx={zoomIn:Wt,zoomOut:Wt,zoomTo:Wt,fitView:Wt,setCenter:Wt,fitBounds:Wt,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:Wt,setTransform:Wt,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function wx(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?vo:Lr).scaleBy(ml(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}=qu({x:-r,y:-i},e.translateExtent),u=zn.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?vo:Lr).transform(ml(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),u):s(!1)})}return t.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>n(1.2,i),zoomOut:i=>n(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?vo:Lr).scaleTo(ml(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:pl,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=Zu(s),{x:d,y:f,zoom:u}=ef(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??pl,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:pl})=>{const{x:l,y:s,zoom:c}=ef(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>Bo(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 Bo(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 ol(s,e.viewport)}return{x:0,y:0}}}:bx)}function ml(e,n=0,o=_x,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function kx(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let y,g,_=!!(o.nodes.value.length||o.edges.value.length);y=Un([e.modelValue,()=>{var w,b;return(b=(w=e.modelValue)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setElements(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Un([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,b])=>{var C;(C=e.modelValue)!=null&&C.value&&Array.isArray(e.modelValue.value)&&(y==null||y.pause(),e.modelValue.value=[...w,...b],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let y,g,_=!!o.nodes.value.length;y=Un([e.nodes,()=>{var w,b;return(b=(w=e.nodes)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setNodes(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Un([o.nodes,()=>o.nodes.value.length],([w])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(y==null||y.pause(),e.nodes.value=[...w],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let y,g,_=!!o.edges.value.length;y=Un([e.edges,()=>{var w,b;return(b=(w=e.edges)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setEdges(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Un([o.edges,()=>o.edges.value.length],([w])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(y==null||y.pause(),e.edges.value=[...w],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&Le(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&Le(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&Le(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&Le(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{Le(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const y=async g=>{let _=g;typeof n.autoConnect=="function"&&(_=await n.autoConnect(g)),_!==!1&&o.addEdges([_])};t.watch(()=>n.autoConnect,()=>{Le(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(g,_,w)=>{g?o.onConnect(y):o.hooks.value.connect.off(y),w(()=>{o.hooks.value.connect.off(y)})},{immediate:!0})})},m=()=>{const y=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const g of Object.keys(n)){const _=g;if(!y.includes(_)){const w=t.toRef(()=>n[_]),b=o[_];t.isRef(b)&&r.run(()=>{t.watch(w,C=>{Le(C)&&(b.value=C)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function Ex(){return{edgesChange:me(),nodesChange:me(),nodeDoubleClick:me(),nodeClick:me(),nodeMouseEnter:me(),nodeMouseMove:me(),nodeMouseLeave:me(),nodeContextMenu:me(),nodeDragStart:me(),nodeDrag:me(),nodeDragStop:me(),nodesInitialized:me(),miniMapNodeClick:me(),miniMapNodeDoubleClick:me(),miniMapNodeMouseEnter:me(),miniMapNodeMouseMove:me(),miniMapNodeMouseLeave:me(),connect:me(),connectStart:me(),connectEnd:me(),clickConnectStart:me(),clickConnectEnd:me(),paneReady:me(),init:me(),move:me(),moveStart:me(),moveEnd:me(),selectionDragStart:me(),selectionDrag:me(),selectionDragStop:me(),selectionContextMenu:me(),selectionStart:me(),selectionEnd:me(),viewportChangeStart:me(),viewportChange:me(),viewportChangeEnd:me(),paneScroll:me(),paneClick:me(),paneContextMenu:me(),paneMouseEnter:me(),paneMouseMove:me(),paneMouseLeave:me(),edgeContextMenu:me(),edgeMouseEnter:me(),edgeMouseMove:me(),edgeMouseLeave:me(),edgeDoubleClick:me(),edgeClick:me(),edgeUpdateStart:me(),edgeUpdate:me(),edgeUpdateEnd:me(),updateNodeInternals:me(),error:me(e=>ni(e.message))}}function Cx(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),xr(()=>{r.off(i)})}})}function xf(){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:tl.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:Po.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:qt.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:ei()?"Meta":"Control",zoomActivationKeyCode:ei()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:Ex(),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 Nx=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function vx(e,n,o){const r=wx(e),i=N=>{const v=N??[];e.hooks.updateNodeInternals.trigger(v)},a=N=>US(N,e.nodes,e.edges),l=N=>FS(N,e.nodes,e.edges),s=N=>Qu(N,e.edges),c=({id:N,type:v,nodeId:S})=>{var P;return Array.from(((P=e.connectionLookup.get(`${S}-${v}-${N??null}`))==null?void 0:P.values())??[])},d=N=>{if(N)return n.value.get(N)},f=N=>{if(N)return o.value.get(N)},u=(N,v,S)=>{var P,$;const J=[];for(const te of N){const M={id:te.id,type:"position",dragging:S,from:te.from};if(v&&(M.position=te.position,te.parentNode)){const z=d(te.parentNode);M.position={x:M.position.x-(((P=z==null?void 0:z.computedPosition)==null?void 0:P.x)??0),y:M.position.y-((($=z==null?void 0:z.computedPosition)==null?void 0:$.y)??0)}}J.push(M)}J!=null&&J.length&&e.hooks.nodesChange.trigger(J)},p=N=>{if(!e.vueFlowRef)return;const v=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!v)return;const S=window.getComputedStyle(v),{m22:P}=new window.DOMMatrixReadOnly(S.transform),$=[];for(const J of N){const te=J,M=d(te.id);if(M){const z=Jr(te.nodeElement);if(!!(z.width&&z.height&&(M.dimensions.width!==z.width||M.dimensions.height!==z.height||te.forceUpdate))){const le=te.nodeElement.getBoundingClientRect();M.dimensions=z,M.handleBounds.source=hf("source",te.nodeElement,le,P,M.id),M.handleBounds.target=hf("target",te.nodeElement,le,P,M.id),$.push({id:M.id,type:"dimensions",dimensions:z})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),$.length&&e.hooks.nodesChange.trigger($)},m=(N,v)=>{const S=new Set,P=new Set;for(const te of N)mn(te)?S.add(te.id):zt(te)&&P.add(te.id);const $=Yt(n.value,S,!0),J=Yt(o.value,P);if(e.multiSelectionActive){for(const te of S)$.push(Ht(te,v));for(const te of P)J.push(Ht(te,v))}$.length&&e.hooks.nodesChange.trigger($),J.length&&e.hooks.edgesChange.trigger(J)},h=N=>{if(e.multiSelectionActive){const v=N.map(S=>Ht(S.id,!0));e.hooks.nodesChange.trigger(v);return}e.hooks.nodesChange.trigger(Yt(n.value,new Set(N.map(v=>v.id)),!0)),e.hooks.edgesChange.trigger(Yt(o.value))},y=N=>{if(e.multiSelectionActive){const v=N.map(S=>Ht(S.id,!0));e.hooks.edgesChange.trigger(v);return}e.hooks.edgesChange.trigger(Yt(o.value,new Set(N.map(v=>v.id)))),e.hooks.nodesChange.trigger(Yt(n.value,new Set,!0))},g=N=>{m(N,!0)},_=N=>{const S=(N||e.nodes).map(P=>(P.selected=!1,Ht(P.id,!1)));e.hooks.nodesChange.trigger(S)},w=N=>{const S=(N||e.edges).map(P=>(P.selected=!1,Ht(P.id,!1)));e.hooks.edgesChange.trigger(S)},b=N=>{if(!N||!N.length)return m([],!1);const v=N.reduce((S,P)=>{const $=Ht(P.id,!1);return mn(P)?S.nodes.push($):S.edges.push($),S},{nodes:[],edges:[]});v.nodes.length&&e.hooks.nodesChange.trigger(v.nodes),v.edges.length&&e.hooks.edgesChange.trigger(v.edges)},C=N=>{var v;(v=e.d3Zoom)==null||v.scaleExtent([N,e.maxZoom]),e.minZoom=N},E=N=>{var v;(v=e.d3Zoom)==null||v.scaleExtent([e.minZoom,N]),e.maxZoom=N},k=N=>{var v;(v=e.d3Zoom)==null||v.translateExtent(N),e.translateExtent=N},T=N=>{e.nodeExtent=N,i()},x=N=>{var v;(v=e.d3Zoom)==null||v.clickDistance(N)},O=N=>{e.nodesDraggable=N,e.nodesConnectable=N,e.elementsSelectable=N},Y=N=>{const v=N instanceof Function?N(e.nodes):N;!e.initialized&&!v.length||(e.nodes=yf(v,d,e.hooks.error.trigger))},K=N=>{const v=N instanceof Function?N(e.edges):N;if(!e.initialized&&!v.length)return;const S=fl(v,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);ul(e.connectionLookup,o.value,S),e.edges=S},I=N=>{const v=N instanceof Function?N([...e.nodes,...e.edges]):N;!e.initialized&&!v.length||(Y(v.filter(mn)),K(v.filter(zt)))},Q=N=>{let v=N instanceof Function?N(e.nodes):N;v=Array.isArray(v)?v:[v];const S=yf(v,d,e.hooks.error.trigger),P=[];for(const $ of S)P.push(af($));P.length&&e.hooks.nodesChange.trigger(P)},A=N=>{let v=N instanceof Function?N(e.edges):N;v=Array.isArray(v)?v:[v];const S=fl(v,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),P=[];for(const $ of S)P.push(af($));P.length&&e.hooks.edgesChange.trigger(P)},D=(N,v=!0,S=!1)=>{const P=N instanceof Function?N(e.nodes):N,$=Array.isArray(P)?P:[P],J=[],te=[];function M(B){const le=s(B);for(const ce of le)(!Le(ce.deletable)||ce.deletable)&&te.push(sf(ce.id,ce.source,ce.target,ce.sourceHandle,ce.targetHandle))}function z(B){const le=[];for(const ce of e.nodes)ce.parentNode===B&&le.push(ce);if(le.length){for(const ce of le)J.push(lf(ce.id));v&&M(le);for(const ce of le)z(ce.id)}}for(const B of $){const le=typeof B=="string"?d(B):B;le&&(Le(le.deletable)&&!le.deletable||(J.push(lf(le.id)),v&&M([le]),S&&z(le.id)))}te.length&&e.hooks.edgesChange.trigger(te),J.length&&e.hooks.nodesChange.trigger(J)},V=N=>{const v=N instanceof Function?N(e.edges):N,S=Array.isArray(v)?v:[v],P=[];for(const $ of S){const J=typeof $=="string"?f($):$;J&&(Le(J.deletable)&&!J.deletable||P.push(sf(typeof $=="string"?$:$.id,J.source,J.target,J.sourceHandle,J.targetHandle)))}e.hooks.edgesChange.trigger(P)},X=(N,v,S=!0)=>{const P=f(N.id);if(!P)return!1;const $=e.edges.indexOf(P),J=cx(N,v,P,S,e.hooks.error.trigger);if(J){const[te]=fl([J],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((M,z)=>z===$?te:M),ul(e.connectionLookup,o.value,[te]),te}return!1},H=(N,v,S={replace:!1})=>{const P=f(N);if(!P)return;const $=typeof v=="function"?v(P):v;P.data=S.replace?$:{...P.data,...$}},j=N=>rf(N,e.nodes),L=N=>{const v=rf(N,e.edges);return ul(e.connectionLookup,o.value,v),v},R=(N,v,S={replace:!1})=>{const P=d(N);if(!P)return;const $=typeof v=="function"?v(P):v;S.replace?e.nodes.splice(e.nodes.indexOf(P),1,$):Object.assign(P,$)},oe=(N,v,S={replace:!1})=>{const P=d(N);if(!P)return;const $=typeof v=="function"?v(P):v;P.data=S.replace?$:{...P.data,...$}},ie=(N,v,S=!1)=>{S?e.connectionClickStartHandle=N:e.connectionStartHandle=N,e.connectionEndHandle=null,e.connectionStatus=null,v&&(e.connectionPosition=v)},Z=(N,v=null,S=null)=>{e.connectionStartHandle&&(e.connectionPosition=N,e.connectionEndHandle=v,e.connectionStatus=S)},ae=(N,v)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,v?e.connectionClickStartHandle=null:e.connectionStartHandle=null},G=N=>{const v=DS(N),S=v?null:$o(N)?N:d(N.id);return!v&&!S?[null,null,v]:[v?N:Xr(S),S,v]},ee=(N,v=!0,S=e.nodes)=>{const[P,$,J]=G(N);if(!P)return[];const te=[];for(const M of S||e.nodes){if(!J&&(M.id===$.id||!M.computedPosition))continue;const z=Xr(M),B=Zr(z,P);(v&&B>0||B>=Number(P.width)*Number(P.height))&&te.push(M)}return te},U=(N,v,S=!0)=>{const[P]=G(N);if(!P)return!1;const $=Zr(P,v);return S&&$>0||$>=Number(P.width)*Number(P.height)},ne=N=>{const{viewport:v,dimensions:S,d3Zoom:P,d3Selection:$,translateExtent:J}=e;if(!P||!$||!N.x&&!N.y)return!1;const te=zn.translate(v.x+N.x,v.y+N.y).scale(v.zoom),M=[[0,0],[S.width,S.height]],z=P.constrain()(te,M,J),B=e.viewport.x!==z.x||e.viewport.y!==z.y||e.viewport.zoom!==z.k;return P.transform($,z),B},re=N=>{const v=N instanceof Function?N(e):N,S=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];Le(v.defaultEdgeOptions)&&(e.defaultEdgeOptions=v.defaultEdgeOptions);const P=v.modelValue||v.nodes||v.edges?[]:void 0;P&&(v.modelValue&&P.push(...v.modelValue),v.nodes&&P.push(...v.nodes),v.edges&&P.push(...v.edges),I(P));const $=()=>{Le(v.maxZoom)&&E(v.maxZoom),Le(v.minZoom)&&C(v.minZoom),Le(v.translateExtent)&&k(v.translateExtent)};for(const J of Object.keys(v)){const te=J,M=v[te];![...Nx,...S].includes(te)&&Le(M)&&(e[te]=M)}Ba(()=>e.d3Zoom).not.toBeNull().then($),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:I,setNodes:Y,setEdges:K,addNodes:Q,addEdges:A,removeNodes:D,removeEdges:V,findNode:d,findEdge:f,updateEdge:X,updateEdgeData:H,updateNode:R,updateNodeData:oe,applyEdgeChanges:L,applyNodeChanges:j,addSelectedElements:g,addSelectedNodes:h,addSelectedEdges:y,setMinZoom:C,setMaxZoom:E,setTranslateExtent:k,setNodeExtent:T,setPaneClickDistance:x,removeSelectedElements:b,removeSelectedNodes:_,removeSelectedEdges:w,startConnection:ie,updateConnection:Z,endConnection:ae,setInteractive:O,setState:re,getIntersectingNodes:ee,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:U,panBy:ne,fitView:N=>r.value.fitView(N),zoomIn:N=>r.value.zoomIn(N),zoomOut:N=>r.value.zoomOut(N),zoomTo:(N,v)=>r.value.zoomTo(N,v),setViewport:(N,v)=>r.value.setViewport(N,v),setTransform:(N,v)=>r.value.setTransform(N,v),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(N,v,S)=>r.value.setCenter(N,v,S),fitBounds:(N,v)=>r.value.fitBounds(N,v),project:N=>r.value.project(N),screenToFlowCoordinate:N=>r.value.screenToFlowCoordinate(N),flowToScreenCoordinate:N=>r.value.flowToScreenCoordinate(N),toObject:()=>{const N=[],v=[];for(const S of e.nodes){const{computedPosition:P,handleBounds:$,selected:J,dimensions:te,isParent:M,resizing:z,dragging:B,events:le,...ce}=S;N.push(ce)}for(const S of e.edges){const{selected:P,sourceNode:$,targetNode:J,events:te,...M}=S;v.push(M)}return JSON.parse(JSON.stringify({nodes:N,edges:v,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:N=>new Promise(v=>{const{nodes:S,edges:P,position:$,zoom:J,viewport:te}=N;if(S&&Y(S),P&&K(P),te!=null&&te.x&&(te!=null&&te.y)||$){const M=(te==null?void 0:te.x)||$[0],z=(te==null?void 0:te.y)||$[1],B=(te==null?void 0:te.zoom)||J||e.viewport.zoom;return Ba(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:M,y:z,zoom:B}).then(()=>{v(!0)})})}else v(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const N=xf();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const v=zn.translate(N.defaultViewport.x??0,N.defaultViewport.y??0).scale(pn(N.defaultViewport.zoom??1,N.minZoom,N.maxZoom)),S=e.viewportRef.getBoundingClientRect(),P=[[0,0],[S.width,S.height]],$=e.d3Zoom.constrain()(v,P,N.translateExtent);e.d3Zoom.transform(e.d3Selection,$)}re(N)},$destroy:()=>{}}}const Sx=["data-id","data-handleid","data-nodeid","data-handlepos"],xx={name:"Handle",compatConfig:{MODE:3}},Xt=t.defineComponent({...xx,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:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Ie(),{id:m,node:h,nodeEl:y,connectedEdges:g}=vf(),_=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),C=t.toRef(()=>{var K,I,Q,A,D,V;return((K=l.value)==null?void 0:K.nodeId)===m&&((I=l.value)==null?void 0:I.id)===e.id&&((Q=l.value)==null?void 0:Q.type)===r.value||((A=c.value)==null?void 0:A.nodeId)===m&&((D=c.value)==null?void 0:D.id)===e.id&&((V=c.value)==null?void 0:V.type)===r.value}),E=t.toRef(()=>{var K,I,Q;return((K=s.value)==null?void 0:K.nodeId)===m&&((I=s.value)==null?void 0:I.id)===e.id&&((Q=s.value)==null?void 0:Q.type)===r.value}),{handlePointerDown:k,handleClick:T}=Nf({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),x=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(K=>{const I=K[`${r.value}Handle`];return K[r.value]!==m?!1:I?I===e.id:!0}):typeof e.connectable=="number"?g.value.filter(K=>{const I=K[`${r.value}Handle`];return K[r.value]!==m?!1:I?I===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,g.value):Le(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var K;if(!h.dimensions.width||!h.dimensions.height)return;const I=(K=h.handleBounds[r.value])==null?void 0:K.find(j=>j.id===e.id);if(!d.value||I)return;const Q=d.value.querySelector(".vue-flow__transformationpane");if(!y.value||!_.value||!Q||!e.id)return;const A=y.value.getBoundingClientRect(),D=_.value.getBoundingClientRect(),V=window.getComputedStyle(Q),{m22:X}=new window.DOMMatrixReadOnly(V.transform),H={id:e.id,position:e.position,x:(D.left-A.left)/X,y:(D.top-A.top)/X,type:r.value,nodeId:m,...Jr(_.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],H]});function O(K){const I=ll(K);x.value&&w.value&&(I&&K.button===0||!I)&&k(K)}function Y(K){!m||!s.value&&!w.value||x.value&&T(K)}return n({handleClick:T,handlePointerDown:k,onClick:Y,onPointerDown:O}),(K,I)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:_,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":K.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${K.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:x.value,connecting:E.value,connectablestart:w.value,connectableend:b.value,connectionindicator:x.value&&(w.value&&!C.value||b.value&&C.value)}]]),onMousedown:O,onTouchstartPassive:O,onClick:Y},[t.renderSlot(K.$slots,"default",{id:K.id})],42,Sx))}}),ii=function({sourcePosition:e=ge.Bottom,targetPosition:n=ge.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(Xt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(Xt,{type:"source",position:e,connectable:r,isValidConnection:a})]};ii.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],ii.inheritAttrs=!1,ii.compatConfig={MODE:3};const Ax=ii,ai=function({targetPosition:e=ge.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(Xt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};ai.props=["targetPosition","label","isValidTargetPos","connectable","data"],ai.inheritAttrs=!1,ai.compatConfig={MODE:3};const Ix=ai,li=function({sourcePosition:e=ge.Bottom,label:n,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??n;return[typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a]),t.h(Xt,{type:"source",position:e,connectable:o,isValidConnection:r})]};li.props=["sourcePosition","label","isValidSourcePos","connectable","data"],li.inheritAttrs=!1,li.compatConfig={MODE:3};const Tx=li,Px=["transform"],Ox=["width","height","x","y","rx","ry"],$x=["y"],Bx={name:"EdgeText",compatConfig:{MODE:3}},Vx=t.defineComponent({...Bx,props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(e){const n=t.ref({x:0,y:0,width:0,height:0}),o=t.ref(null),r=t.computed(()=>`translate(${e.x-n.value.width/2} ${e.y-n.value.height/2})`);t.onMounted(i),t.watch([()=>e.x,()=>e.y,o,()=>e.label],i);function i(){if(!o.value)return;const a=o.value.getBBox();(a.width!==n.value.width||a.height!==n.value.height)&&(n.value=a)}return(a,l)=>(t.openBlock(),t.createElementBlock("g",{transform:r.value,class:"vue-flow__edge-textwrapper"},[a.labelShowBg?(t.openBlock(),t.createElementBlock("rect",{key:0,class:"vue-flow__edge-textbg",width:`${n.value.width+2*a.labelBgPadding[0]}px`,height:`${n.value.height+2*a.labelBgPadding[1]}px`,x:-a.labelBgPadding[0],y:-a.labelBgPadding[1],style:t.normalizeStyle(a.labelBgStyle),rx:a.labelBgBorderRadius,ry:a.labelBgBorderRadius},null,12,Ox)):t.createCommentVNode("",!0),t.createElementVNode("text",t.mergeProps(a.$attrs,{ref_key:"el",ref:o,class:"vue-flow__edge-text",y:n.value.height/2,dy:"0.3em",style:a.labelStyle}),[t.renderSlot(a.$slots,"default",{},()=>[typeof a.label!="string"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.label),{key:0})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(t.toDisplayString(a.label),1)],64))])],16,$x)],8,Px))}}),Rx=["id","d","marker-end","marker-start"],Mx=["d","stroke-width"],Dx={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},si=t.defineComponent({...Dx,props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(e,{expose:n}){const o=t.ref(null),r=t.ref(null),i=t.ref(null),a=t.useAttrs();return n({pathEl:o,interactionEl:r,labelEl:i}),(l,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("path",t.mergeProps(t.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,Rx),l.interactionWidth?(t.openBlock(),t.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,Mx)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(Vx,{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"])):t.createCommentVNode("",!0)],64))}});function Af({sourceX:e,sourceY:n,targetX:o,targetY:r}){const i=Math.abs(o-e)/2,a=o<e?o+i:o-i,l=Math.abs(r-n)/2,s=r<n?r+l:r-l;return[a,s,i,l]}function If({sourceX:e,sourceY:n,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),u=Math.abs(d-n);return[c,d,f,u]}function ci(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Tf({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ge.Left:l=n-ci(n-r,a),s=o;break;case ge.Right:l=n+ci(r-n,a),s=o;break;case ge.Top:l=n,s=o-ci(o-i,a);break;case ge.Bottom:l=n,s=o+ci(i-o,a);break}return[l,s]}function Pf(e){const{sourceX:n,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,curvature:s=.25}=e,[c,d]=Tf({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Tf({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,h,y]=If({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,h,y]}function Of({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case ge.Left:case ge.Right:a=.5*(n+r),l=o;break;case ge.Top:case ge.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function $f(e){const{sourceX:n,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top}=e,[s,c]=Of({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Of({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,h]=If({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${n},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,h]}const Bf={[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 Lx({source:e,sourcePosition:n=ge.Bottom,target:o}){return n===ge.Left||n===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 Vf(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function Fx({source:e,sourcePosition:n=ge.Bottom,target:o,targetPosition:r=ge.Top,center:i,offset:a}){const l=Bf[n],s=Bf[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=Lx({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,y;const g={x:0,y:0},_={x:0,y:0},[w,b,C,E]=Af({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??w,y=i.y??b;const T=[{x:h,y:c.y},{x:h,y:d.y}],x=[{x:c.x,y},{x:d.x,y}];l[u]===p?m=u==="x"?T:x:m=u==="x"?x:T}else{const T=[{x:c.x,y:d.y}],x=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?x:T:m=l.y===p?T:x,n===r){const Q=Math.abs(e[u]-o[u]);if(Q<=a){const A=Math.min(a-1,a-Q);l[u]===p?g[u]=(c[u]>e[u]?-1:1)*A:_[u]=(d[u]>o[u]?-1:1)*A}}if(n!==r){const Q=u==="x"?"y":"x",A=l[u]===s[Q],D=c[Q]>d[Q],V=c[Q]<d[Q];(l[u]===1&&(!A&&D||A&&V)||l[u]!==1&&(!A&&V||A&&D))&&(m=u==="x"?T:x)}const O={x:c.x+g.x,y:c.y+g.y},Y={x:d.x+_.x,y:d.y+_.y},K=Math.max(Math.abs(O.x-m[0].x),Math.abs(Y.x-m[0].x)),I=Math.max(Math.abs(O.y-m[0].y),Math.abs(Y.y-m[0].y));K>=I?(h=(O.x+Y.x)/2,y=m[0].y):(h=m[0].x,y=(O.y+Y.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,y,C,E]}function Ux(e,n,o,r){const i=Math.min(Vf(e,n)/2,Vf(n,o)/2,r),{x:a,y:l}=n;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 gl(e){const{sourceX:n,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,y]=Fx({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((_,w,b)=>{let C;return b>0&&b<u.length-1?C=Ux(u[b-1],w,u[b+1],s):C=`${b===0?"M":"L"}${w.x} ${w.y}`,_+=C,_},""),p,m,h,y]}function Kx(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Af({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const jx=t.defineComponent({name:"StraightEdge",props:["label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Kx(e);return t.h(si,{path:o,labelX:r,labelY:i,...n,...e})}}}),Rf=t.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:n}){return()=>{const[o,r,i]=gl({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(si,{path:o,labelX:r,labelY:i,...n,...e})}}}),Gx=t.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:n}){return()=>t.h(Rf,{...e,...n,borderRadius:0})}}),qx=t.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:n}){return()=>{const[o,r,i]=Pf({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(si,{path:o,labelX:r,labelY:i,...n,...e})}}}),zx=t.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:n}){return()=>{const[o,r,i]=$f({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(si,{path:o,labelX:r,labelY:i,...n,...e})}}}),Hx={input:Tx,default:Ax,output:Ix},Yx={default:qx,straight:jx,step:Gx,smoothstep:Rf,simplebezier:zx};function Wx(e,n,o){const r=t.computed(()=>y=>n.value.get(y)),i=t.computed(()=>y=>o.value.get(y)),a=t.computed(()=>{const y={...Yx,...e.edgeTypes},g=Object.keys(y);for(const _ of e.edges)_.type&&!g.includes(_.type)&&(y[_.type]=_.type);return y}),l=t.computed(()=>{const y={...Hx,...e.nodeTypes},g=Object.keys(y);for(const _ of e.nodes)_.type&&!g.includes(_.type)&&(y[_.type]=_.type);return y}),s=t.computed(()=>e.onlyRenderVisibleElements?Ju(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const y=[];for(const g of e.edges){const _=n.value.get(g.source),w=n.value.get(g.target);XS({sourcePos:_.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:_.dimensions.width,sourceHeight:_.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&y.push(g)}return y}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const y=[];for(const g of e.nodes)g.selected&&y.push(g);return y}),u=t.computed(()=>{const y=[];for(const g of e.edges)g.selected&&y.push(g);return y}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const y=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&y.push(g);return y}),h=t.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 n;const o=(n=t.getCurrentInstance())==null?void 0:n.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(n,o){return this.flows.set(n,o)}get(n){return this.flows.get(n)}remove(n){return this.flows.delete(n)}create(n,o){const r=xf(),i=t.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=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=Wx(i,s,c),f=vx(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...HC(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Ie(e){const n=gn.getInstance(),o=t.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=t.inject(wf,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const h=g=>{d.applyNodeChanges(g)},y=g=>{d.applyEdgeChanges(g)};u?(d.onNodesChange(h),d.onEdgesChange(y)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(y)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(y)})},{immediate:!0}),xr(()=>{if(s){const u=n.get(s.id);u?u.$destroy():ni(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(wf,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new qe(De.USEVUEFLOW_OPTIONS))}return s}function Xx(e){const{emits:n,dimensions:o}=Ie();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Jr(i);(l.width===0||l.height===0)&&n.error(new qe(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)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const Zx={name:"UserSelection",compatConfig:{MODE:3}},Jx=t.defineComponent({...Zx,props:{userSelectionRect:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__selection vue-flow__container",style:t.normalizeStyle({width:`${n.userSelectionRect.width}px`,height:`${n.userSelectionRect.height}px`,transform:`translate(${n.userSelectionRect.x}px, ${n.userSelectionRect.y}px)`})},null,4))}}),Qx=["tabIndex"],eA={name:"NodesSelection",compatConfig:{MODE:3}},tA=t.defineComponent({...eA,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Ie(),s=Sf(),c=t.ref(null),d=Cf({el:c,onStart(h){n.selectionDragStart(h)},onDrag(h){n.selectionDrag(h)},onStop(h){n.selectionDragStop(h)}});t.onMounted(()=>{var h;a.value||(h=c.value)==null||h.focus({preventScroll:!0})});const f=t.computed(()=>Zu(r.value)),u=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(h){n.selectionContextMenu({event:h,nodes:r.value})}function m(h){a||Hn[h.key]&&(h.preventDefault(),s({x:Hn[h.key].x,y:Hn[h.key].y},h.shiftKey))}return(h,y)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(d)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(u.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,Qx)],6)):t.createCommentVNode("",!0)}});function nA(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const oA={name:"Pane",compatConfig:{MODE:3}},rA=t.defineComponent({...oA,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,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:y,multiSelectionKeyCode:g,multiSelectionActive:_,edgeLookup:w,nodeLookup:b,connectionLookup:C,defaultEdgeOptions:E,connectionStartHandle:k}=Ie(),T=t.ref(null),x=t.ref(new Set),O=t.ref(new Set),Y=t.ref(),K=t.toRef(()=>c.value&&(e.isSelecting||a.value)),I=t.toRef(()=>k.value!==null);let Q=!1,A=!1;const D=Oo(y,{actInsideInputWithModifier:!1}),V=Oo(g);t.watch(D,Z=>{Z&&(p(u.value),m(f.value),d.value=!1)}),t.watch(V,Z=>{_.value=Z});function X(Z,ae){return G=>{G.target===ae&&(Z==null||Z(G))}}function H(Z){if(Q||I.value){Q=!1;return}i.paneClick(Z),l(),d.value=!1}function j(Z){Z.preventDefault(),Z.stopPropagation(),i.paneContextMenu(Z)}function L(Z){i.paneScroll(Z)}function R(Z){var ae,G,ee;if(Y.value=(ae=n.value)==null?void 0:ae.getBoundingClientRect(),!c.value||!e.isSelecting||Z.button!==0||Z.target!==T.value||!Y.value)return;(ee=(G=Z.target)==null?void 0:G.setPointerCapture)==null||ee.call(G,Z.pointerId);const{x:U,y:ne}=nA(Z,Y.value);A=!0,Q=!1,l(),s.value={width:0,height:0,startX:U,startY:ne,x:U,y:ne},i.selectionStart(Z)}function oe(Z){var ae;if(!Y.value||!s.value)return;Q=!0;const{x:G,y:ee}=At(Z,Y.value),{startX:U=0,startY:ne=0}=s.value,re={startX:U,startY:ne,x:G<U?G:U,y:ee<ne?ee:ne,width:Math.abs(G-U),height:Math.abs(ee-ne)},de=x.value,F=O.value;x.value=new Set(Ju(o.value,re,r.value,h.value===tl.Partial,!0).map(N=>N.id)),O.value=new Set;const W=((ae=E.value)==null?void 0:ae.selectable)??!0;for(const N of x.value){const v=C.value.get(N);if(v)for(const{edgeId:S}of v.values()){const P=w.value.get(S);P&&(P.selectable??W)&&O.value.add(S)}}if(!bf(de,x.value)){const N=Yt(b.value,x.value,!0);i.nodesChange(N)}if(!bf(F,O.value)){const N=Yt(w.value,O.value);i.edgesChange(N)}s.value=re,a.value=!0,d.value=!1}function ie(Z){var ae;Z.button!==0||!A||((ae=Z.target)==null||ae.releasePointerCapture(Z.pointerId),!a.value&&s.value&&Z.target===T.value&&H(Z),a.value=!1,s.value=null,d.value=x.value.size>0,i.selectionEnd(Z),e.selectionKeyPressed&&(Q=!1),A=!1)}return(Z,ae)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:T,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:Z.isSelecting}]),onClick:ae[0]||(ae[0]=G=>K.value?void 0:X(H,T.value)(G)),onContextmenu:ae[1]||(ae[1]=G=>X(j,T.value)(G)),onWheelPassive:ae[2]||(ae[2]=G=>X(L,T.value)(G)),onPointerenter:ae[3]||(ae[3]=G=>K.value?void 0:t.unref(i).paneMouseEnter(G)),onPointerdown:ae[4]||(ae[4]=G=>K.value?R(G):t.unref(i).paneMouseMove(G)),onPointermove:ae[5]||(ae[5]=G=>K.value?oe(G):t.unref(i).paneMouseMove(G)),onPointerup:ae[6]||(ae[6]=G=>K.value?ie(G):void 0),onPointerleave:ae[7]||(ae[7]=G=>t.unref(i).paneMouseLeave(G))},[t.renderSlot(Z.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(Jx,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(d)&&t.unref(u).length?(t.openBlock(),t.createBlock(tA,{key:1})):t.createCommentVNode("",!0)],34))}}),iA={name:"Transform",compatConfig:{MODE:3}},aA=t.defineComponent({...iA,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Ie(),i=t.computed(()=>o.value?!r.value:!1),a=t.computed(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:t.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[t.renderSlot(l.$slots,"default")],4))}}),lA={name:"Viewport",compatConfig:{MODE:3}},sA=t.defineComponent({...lA,setup(e){const{minZoom:n,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:y,noWheelClassName:g,noPanClassName:_,emits:w,connectionStartHandle:b,userSelectionActive:C,paneDragging:E,d3Zoom:k,d3Selection:T,d3ZoomHandler:x,viewport:O,viewportRef:Y,paneClickDistance:K}=Ie();Xx(Y);const I=t.shallowRef(!1),Q=t.shallowRef(!1);let A=null,D=!1,V=0,X={x:0,y:0,zoom:0};const H=Oo(s),j=Oo(l),L=Oo(a),R=t.toRef(()=>(!j.value||j.value&&l.value===!0)&&(H.value||u.value)),oe=t.toRef(()=>H.value||c.value),ie=t.toRef(()=>j.value||l.value===!0&&R.value!==!0);t.onMounted(()=>{if(!Y.value){ni("Viewport element is missing");return}const ne=Y.value,re=ne.getBoundingClientRect(),de=PS().clickDistance(K.value).scaleExtent([n.value,o.value]).translateExtent(i.value),F=gt(ne).call(de),W=F.on("wheel.zoom"),N=zn.translate(r.value.x??0,r.value.y??0).scale(pn(r.value.zoom??1,n.value,o.value)),v=[[0,0],[re.width,re.height]],S=de.constrain()(N,v,i.value);de.transform(F,S),de.wheelDelta(ae),k.value=de,T.value=F,x.value=W,O.value={x:S.x,y:S.y,zoom:S.k},de.on("start",P=>{var $;if(!P.sourceEvent)return null;V=P.sourceEvent.button,I.value=!0;const J=ee(P.transform);(($=P.sourceEvent)==null?void 0:$.type)==="mousedown"&&(E.value=!0),X=J,w.viewportChangeStart(J),w.moveStart({event:P,flowTransform:J})}),de.on("end",P=>{if(!P.sourceEvent)return null;if(I.value=!1,E.value=!1,Z(R.value,V??0)&&!D&&w.paneContextMenu(P.sourceEvent),D=!1,G(X,P.transform)){const $=ee(P.transform);X=$,w.viewportChangeEnd($),w.moveEnd({event:P,flowTransform:$})}}),de.filter(P=>{var $;const J=L.value||h.value,te=m.value&&P.ctrlKey,M=P.button;if(M===1&&P.type==="mousedown"&&(U(P,"vue-flow__node")||U(P,"vue-flow__edge")))return!0;if(!R.value&&!J&&!oe.value&&!p.value&&!m.value||C.value||!p.value&&P.type==="dblclick"||U(P,g.value)&&P.type==="wheel"||U(P,_.value)&&(P.type!=="wheel"||oe.value&&P.type==="wheel"&&!L.value)||!m.value&&P.ctrlKey&&P.type==="wheel"||!J&&!oe.value&&!te&&P.type==="wheel")return!1;if(!m&&P.type==="touchstart"&&(($=P.touches)==null?void 0:$.length)>1)return P.preventDefault(),!1;if(!R.value&&(P.type==="mousedown"||P.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&M===0||Array.isArray(u.value)&&!u.value.includes(M)&&(P.type==="mousedown"||P.type==="touchstart"))return!1;const z=Array.isArray(u.value)&&u.value.includes(M)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!M||M<=1;return(!P.ctrlKey||H.value||P.type==="wheel")&&z}),t.watch([C,R],()=>{C.value&&!I.value?de.on("zoom",null):C.value||de.on("zoom",P=>{O.value={x:P.transform.x,y:P.transform.y,zoom:P.transform.k};const $=ee(P.transform);D=Z(R.value,V??0),w.viewportChange($),w.move({event:P,flowTransform:$})})},{immediate:!0}),t.watch([C,oe,d,L,m,y,g],()=>{oe.value&&!L.value&&!C.value?F.on("wheel.zoom",P=>{if(U(P,g.value))return!1;const $=L.value||h.value,J=m.value&&P.ctrlKey;if(!(!y.value||oe.value||$||J))return!1;P.preventDefault(),P.stopImmediatePropagation();const M=F.property("__zoom").k||1,z=ei();if(!H.value&&P.ctrlKey&&m.value&&z){const _e=Nt(P),be=ae(P),Ce=M*2**be;de.scaleTo(F,Ce,_e,P);return}const B=P.deltaMode===1?20:1;let le=d.value===Po.Vertical?0:P.deltaX*B,ce=d.value===Po.Horizontal?0:P.deltaY*B;!z&&P.shiftKey&&d.value!==Po.Vertical&&!le&&ce&&(le=ce,ce=0),de.translateBy(F,-(le/M)*f.value,-(ce/M)*f.value);const se=ee(F.property("__zoom"));A&&clearTimeout(A),Q.value?(w.move({event:P,flowTransform:se}),w.viewportChange(se),A=setTimeout(()=>{w.moveEnd({event:P,flowTransform:se}),w.viewportChangeEnd(se),Q.value=!1},150)):(Q.value=!0,w.moveStart({event:P,flowTransform:se}),w.viewportChangeStart(se))},{passive:!1}):typeof W<"u"&&F.on("wheel.zoom",function(P,$){const J=!y.value&&P.type==="wheel"&&!P.ctrlKey,te=L.value||h.value,M=m.value&&P.ctrlKey;if(!te&&!c.value&&!M&&P.type==="wheel"||J||U(P,g.value))return null;P.preventDefault(),W.call(this,P,$)},{passive:!1})},{immediate:!0})});function Z(ne,re){return re===2&&Array.isArray(ne)&&ne.includes(2)}function ae(ne){const re=ne.ctrlKey&&ei()?10:1;return-ne.deltaY*(ne.deltaMode===1?.05:ne.deltaMode?1:.002)*re}function G(ne,re){return ne.x!==re.x&&!Number.isNaN(re.x)||ne.y!==re.y&&!Number.isNaN(re.y)||ne.zoom!==re.k&&!Number.isNaN(re.k)}function ee(ne){return{x:ne.x,y:ne.y,zoom:ne.k}}function U(ne,re){return ne.target.closest(`.${re}`)}return(ne,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:Y,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(rA,{"is-selecting":ie.value,"selection-key-pressed":t.unref(j),class:t.normalizeClass({connecting:!!t.unref(b),dragging:t.unref(E),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(aA,null,{default:t.withCtx(()=>[t.renderSlot(ne.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),cA=["id"],dA=["id"],uA=["id"],fA={name:"A11yDescriptions",compatConfig:{MODE:3}},pA=t.defineComponent({...fA,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Ie();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Ku)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select a node. "+t.toDisplayString(t.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,cA),t.createElementVNode("div",{id:`${t.unref(ju)}-${t.unref(n)}`,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,dA),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(MS)}-${t.unref(n)}`,"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%)"}},t.toDisplayString(t.unref(r)),9,uA))],64))}});function mA(){const e=Ie();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function gA(e,n,o){return o===ge.Left?e-n:o===ge.Right?e+n:e}function hA(e,n,o){return o===ge.Top?e-n:o===ge.Bottom?e+n:e}const hl=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=ge.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:gA(n,e,r),cy:hA(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};hl.props=["radius","centerX","centerY","position","type"],hl.compatConfig={MODE:3};const Mf=hl,yA=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,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:y,edgesUpdatable:g,edgesFocusable:_,hooks:w}=Ie(),b=t.computed(()=>f(e.id)),{emit:C,on:E}=px(b.value,a),k=t.inject(oi),T=t.getCurrentInstance(),x=t.ref(!1),O=t.ref(!1),Y=t.ref(""),K=t.ref(null),I=t.ref("source"),Q=t.ref(null),A=t.toRef(()=>typeof b.value.selectable>"u"?y.value:b.value.selectable),D=t.toRef(()=>typeof b.value.updatable>"u"?g.value:b.value.updatable),V=t.toRef(()=>typeof b.value.focusable>"u"?_.value:b.value.focusable);t.provide(dx,e.id),t.provide(ux,Q);const X=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),H=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),j=t.computed(()=>{const v=b.value.type||"default",S=k==null?void 0:k[`edge-${v}`];if(S)return S;let P=b.value.template??c.value[v];if(typeof P=="string"&&T){const $=Object.keys(T.appContext.components);$&&$.includes(v)&&(P=t.resolveComponent(v,!1))}return P&&typeof P!="string"?P:(a.error(new qe(De.EDGE_TYPE_MISSING,P)),!1)}),{handlePointerDown:L}=Nf({nodeId:Y,handleId:K,type:I,isValidConnection:p,edgeUpdaterType:I,onEdgeUpdate:ie,onEdgeUpdateEnd:Z});return()=>{const v=u(b.value.source),S=u(b.value.target),P="pathOptions"in b.value?b.value.pathOptions:{};if(!v&&!S)return a.error(new qe(De.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!v)return a.error(new qe(De.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!S)return a.error(new qe(De.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||v.hidden||S.hidden)return null;let $;r.value===qt.Strict?$=v.handleBounds.source:$=[...v.handleBounds.source||[],...v.handleBounds.target||[]];const J=uf($,b.value.sourceHandle);let te;r.value===qt.Strict?te=S.handleBounds.target:te=[...S.handleBounds.target||[],...S.handleBounds.source||[]];const M=uf(te,b.value.targetHandle),z=(J==null?void 0:J.position)||ge.Bottom,B=(M==null?void 0:M.position)||ge.Top,{x:le,y:ce}=Yn(v,J,z),{x:se,y:_e}=Yn(S,M,B);return b.value.sourceX=le,b.value.sourceY=ce,b.value.targetX=se,b.value.targetY=_e,t.h("g",{ref:Q,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${j.value===!1?"default":b.value.type||"default"}`,s.value,X.value,{updating:x.value,selected:b.value.selected,animated:b.value.animated,inactive:!A.value&&!w.value.edgeClick.hasListeners()}],tabIndex:V.value?0:void 0,"aria-label":b.value.ariaLabel===null?void 0:b.value.ariaLabel??`Edge from ${b.value.source} to ${b.value.target}`,"aria-describedby":V.value?`${ju}-${n}`:void 0,"aria-roledescription":"edge",role:V.value?"group":"img",...b.value.domAttributes,onClick:G,onContextmenu:ee,onDblclick:U,onMouseenter:ne,onMousemove:re,onMouseleave:de,onKeyDown:V.value?N:void 0},[O.value?null:t.h(j.value===!1?c.value.default:j.value,{id:e.id,sourceNode:v,targetNode:S,source:b.value.source,target:b.value.target,type:b.value.type,updatable:D.value,selected:b.value.selected,animated:b.value.animated,label:b.value.label,labelStyle:b.value.labelStyle,labelShowBg:b.value.labelShowBg,labelBgStyle:b.value.labelBgStyle,labelBgPadding:b.value.labelBgPadding,labelBgBorderRadius:b.value.labelBgBorderRadius,data:b.value.data,events:{...b.value.events,...E},style:H.value,markerStart:`url('#${Vo(b.value.markerStart,n)}')`,markerEnd:`url('#${Vo(b.value.markerEnd,n)}')`,sourcePosition:z,targetPosition:B,sourceX:le,sourceY:ce,targetX:se,targetY:_e,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...P}),[D.value==="source"||D.value===!0?[t.h("g",{onMousedown:F,onMouseenter:R,onMouseout:oe},t.h(Mf,{position:z,centerX:le,centerY:ce,radius:i.value,type:"source","data-type":"source"}))]:null,D.value==="target"||D.value===!0?[t.h("g",{onMousedown:W,onMouseenter:R,onMouseout:oe},t.h(Mf,{position:B,centerX:se,centerY:_e,radius:i.value,type:"target","data-type":"target"}))]:null]])};function R(){x.value=!0}function oe(){x.value=!1}function ie(v,S){C.update({event:v,edge:b.value,connection:S})}function Z(v){C.updateEnd({event:v,edge:b.value}),O.value=!1}function ae(v,S){v.button===0&&(O.value=!0,Y.value=S?b.value.target:b.value.source,K.value=(S?b.value.targetHandle:b.value.sourceHandle)??null,I.value=S?"target":"source",C.updateStart({event:v,edge:b.value}),L(v))}function G(v){var S;const P={event:v,edge:b.value};A.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(S=Q.value)==null||S.blur()):o([b.value])),C.click(P)}function ee(v){C.contextMenu({event:v,edge:b.value})}function U(v){C.doubleClick({event:v,edge:b.value})}function ne(v){C.mouseEnter({event:v,edge:b.value})}function re(v){C.mouseMove({event:v,edge:b.value})}function de(v){C.mouseLeave({event:v,edge:b.value})}function F(v){ae(v,!0)}function W(v){ae(v,!1)}function N(v){var S;!h.value&&Gu.includes(v.key)&&A.value&&(v.key==="Escape"?((S=Q.value)==null||S.blur(),d([f(e.id)])):o([f(e.id)]))}}}),_A=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Ie(),p=(e=t.inject(oi))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return u((w=r.value)==null?void 0:w.nodeId)}),h=t.computed(()=>{var w;return u((w=i.value)==null?void 0:w.nodeId)??null}),y=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),g=t.computed(()=>c.value.markerStart?`url(#${Vo(c.value.markerStart,n)})`:""),_=t.computed(()=>c.value.markerEnd?`url(#${Vo(c.value.markerEnd,n)})`:"");return()=>{var w,b,C;if(!m.value||!r.value)return null;const E=r.value.id,k=r.value.type,T=m.value.handleBounds;let x=(T==null?void 0:T[k])??[];if(o.value===qt.Loose){const H=(T==null?void 0:T[k==="source"?"target":"source"])??[];x=[...x,...H]}if(!x)return null;const O=(E?x.find(H=>H.id===E):x[0])??null,Y=(O==null?void 0:O.position)??ge.Top,{x:K,y:I}=Yn(m.value,O,Y);let Q=null;h.value&&(o.value===qt.Strict?Q=((w=h.value.handleBounds[k==="source"?"target":"source"])==null?void 0:w.find(H=>{var j;return H.id===((j=i.value)==null?void 0:j.id)}))||null:Q=((b=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:b.find(H=>{var j;return H.id===((j=i.value)==null?void 0:j.id)}))||null);const A=((C=i.value)==null?void 0:C.position)??(Y?cl[Y]:null);if(!Y||!A)return null;const D=l.value??c.value.type??fn.Bezier;let V="";const X={sourceX:K,sourceY:I,sourcePosition:Y,targetX:y.value.x,targetY:y.value.y,targetPosition:A};return D===fn.Bezier?[V]=Pf(X):D===fn.Step?[V]=gl({...X,borderRadius:0}):D===fn.SmoothStep?[V]=gl(X):D===fn.SimpleBezier?[V]=$f(X):V=`M${K},${I} ${y.value.x},${y.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:K,sourceY:I,sourcePosition:Y,targetX:y.value.x,targetY:y.value.y,targetPosition:A,sourceNode:m.value,sourceHandle:O,targetNode:h.value,targetHandle:Q,markerEnd:_.value,markerStart:g.value,connectionStatus:d.value}):t.h("path",{d:V,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":_.value,"marker-start":g.value})))}}}),bA=["id","markerWidth","markerHeight","markerUnits","orient"],wA={name:"MarkerType",compatConfig:{MODE:3}},kA=t.defineComponent({...wA,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(n,o)=>(t.openBlock(),t.createElementBlock("marker",{id:n.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${n.width}`,markerHeight:`${n.height}`,markerUnits:n.markerUnits,orient:n.orient},[n.type===t.unref(Wr).ArrowClosed?(t.openBlock(),t.createElementBlock("polyline",{key:0,style:t.normalizeStyle({stroke:n.color,fill:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):t.createCommentVNode("",!0),n.type===t.unref(Wr).Arrow?(t.openBlock(),t.createElementBlock("polyline",{key:1,style:t.normalizeStyle({stroke:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):t.createCommentVNode("",!0)],8,bA))}}),EA={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},CA={name:"MarkerDefinitions",compatConfig:{MODE:3}},NA=t.defineComponent({...CA,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Ie(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=Vo(d,n);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)=>(t.openBlock(),t.createElementBlock("svg",EA,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(kA,{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))])]))}}),vA={name:"Edges",compatConfig:{MODE:3}},SA=t.defineComponent({...vA,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Ie();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(NA),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),l=>(t.openBlock(),t.createElementBlock("svg",{key:l.id,class:"vue-flow__edges vue-flow__container",style:t.normalizeStyle({zIndex:t.unref(ZS)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(yA),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(_A))],64))}}),xA=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,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:y,snapToGrid:g,snapGrid:_,nodeDragThreshold:w,nodesDraggable:b,elementsSelectable:C,nodesConnectable:E,nodesFocusable:k,hooks:T}=Ie(),x=t.ref(null);t.provide(Ef,x),t.provide(kf,e.id);const O=t.inject(oi),Y=t.getCurrentInstance(),K=Sf(),{node:I,parentNode:Q}=vf(e.id),{emit:A,on:D}=yx(I,l),V=t.toRef(()=>typeof I.draggable>"u"?b.value:I.draggable),X=t.toRef(()=>typeof I.selectable>"u"?C.value:I.selectable),H=t.toRef(()=>typeof I.connectable>"u"?E.value:I.connectable),j=t.toRef(()=>typeof I.focusable>"u"?k.value:I.focusable),L=t.computed(()=>X.value||V.value||T.value.nodeClick.hasListeners()||T.value.nodeDoubleClick.hasListeners()||T.value.nodeMouseEnter.hasListeners()||T.value.nodeMouseMove.hasListeners()||T.value.nodeMouseLeave.hasListeners()),R=t.toRef(()=>!!I.dimensions.width&&!!I.dimensions.height),oe=t.computed(()=>{const S=I.type||"default",P=O==null?void 0:O[`node-${S}`];if(P)return P;let $=I.template||u.value[S];if(typeof $=="string"&&Y){const J=Object.keys(Y.appContext.components);J&&J.includes(S)&&($=t.resolveComponent(S,!1))}return $&&typeof $!="string"?$:(l.error(new qe(De.NODE_TYPE_MISSING,$)),!1)}),ie=Cf({id:e.id,el:x,disabled:()=>!V.value,selectable:X,dragHandle:()=>I.dragHandle,onStart(S){A.dragStart(S)},onDrag(S){A.drag(S)},onStop(S){A.dragStop(S)},onClick(S){N(S)}}),Z=t.computed(()=>I.class instanceof Function?I.class(I):I.class),ae=t.computed(()=>{const S=(I.style instanceof Function?I.style(I):I.style)||{},P=I.width instanceof Function?I.width(I):I.width,$=I.height instanceof Function?I.height(I):I.height;return!S.width&&P&&(S.width=typeof P=="string"?P:`${P}px`),!S.height&&$&&(S.height=typeof $=="string"?$:`${$}px`),S}),G=t.toRef(()=>Number(I.zIndex??ae.value.zIndex??0));return f(S=>{(S.includes(e.id)||!S.length)&&U()}),t.onMounted(()=>{t.watch(()=>I.hidden,(S=!1,P,$)=>{!S&&x.value&&(e.resizeObserver.observe(x.value),$(()=>{x.value&&e.resizeObserver.unobserve(x.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>I.type,()=>I.sourcePosition,()=>I.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:x.value,forceUpdate:!0}])})}),t.watch([()=>I.position.x,()=>I.position.y,()=>{var S;return(S=Q.value)==null?void 0:S.computedPosition.x},()=>{var S;return(S=Q.value)==null?void 0:S.computedPosition.y},()=>{var S;return(S=Q.value)==null?void 0:S.computedPosition.z},G,()=>I.selected,()=>I.dimensions.height,()=>I.dimensions.width,()=>{var S;return(S=Q.value)==null?void 0:S.dimensions.height},()=>{var S;return(S=Q.value)==null?void 0:S.dimensions.width}],([S,P,$,J,te,M])=>{const z={x:S,y:P,z:M+(m.value&&I.selected?1e3:0)};typeof $<"u"&&typeof J<"u"?I.computedPosition=qS({x:$,y:J,z:te},z):I.computedPosition=z},{flush:"post",immediate:!0}),t.watch([()=>I.extent,p],([S,P],[$,J])=>{(S!==$||P!==J)&&ee()}),I.extent==="parent"||typeof I.extent=="object"&&"range"in I.extent&&I.extent.range==="parent"?Ba(()=>R).toBe(!0).then(ee):ee(),()=>I.hidden?null:t.h("div",{ref:x,"data-id":I.id,class:["vue-flow__node",`vue-flow__node-${oe.value===!1?"default":I.type||"default"}`,{[o.value]:V.value,dragging:ie==null?void 0:ie.value,draggable:V.value,selected:I.selected,selectable:X.value,parent:I.isParent},Z.value],style:{visibility:R.value?"visible":"hidden",zIndex:I.computedPosition.z??G.value,transform:`translate(${I.computedPosition.x}px,${I.computedPosition.y}px)`,pointerEvents:L.value?"all":"none",...ae.value},tabIndex:j.value?0:void 0,role:j.value?"group":void 0,"aria-describedby":h.value?void 0:`${Ku}-${n}`,"aria-label":I.ariaLabel,"aria-roledescription":"node",...I.domAttributes,onMouseenter:ne,onMousemove:re,onMouseleave:de,onContextmenu:F,onClick:N,onDblclick:W,onKeydown:v},[t.h(oe.value===!1?u.value.default:oe.value,{id:I.id,type:I.type,data:I.data,events:{...I.events,...D},selected:I.selected,resizing:I.resizing,dragging:ie.value,connectable:H.value,position:I.computedPosition,dimensions:I.dimensions,isValidTargetPos:I.isValidTargetPos,isValidSourcePos:I.isValidSourcePos,parent:I.parentNode,parentNodeId:I.parentNode,zIndex:I.computedPosition.z??G.value,targetPosition:I.targetPosition,sourcePosition:I.sourcePosition,label:I.label,dragHandle:I.dragHandle,onUpdateNodeInternals:U})]);function ee(){const S=I.computedPosition,{computedPosition:P,position:$}=al(I,g.value?ti(S,_.value):S,l.error,p.value,Q.value);(I.computedPosition.x!==P.x||I.computedPosition.y!==P.y)&&(I.computedPosition={...I.computedPosition,...P}),(I.position.x!==$.x||I.position.y!==$.y)&&(I.position=$)}function U(){x.value&&d([{id:e.id,nodeElement:x.value,forceUpdate:!0}])}function ne(S){ie!=null&&ie.value||A.mouseEnter({event:S,node:I})}function re(S){ie!=null&&ie.value||A.mouseMove({event:S,node:I})}function de(S){ie!=null&&ie.value||A.mouseLeave({event:S,node:I})}function F(S){return A.contextMenu({event:S,node:I})}function W(S){return A.doubleClick({event:S,node:I})}function N(S){X.value&&(!r.value||!V.value||w.value>0)&&dl(I,a.value,c,s,i,!1,x.value),A.click({event:S,node:I})}function v(S){if(!(nl(S)||h.value))if(Gu.includes(S.key)&&X.value){const P=S.key==="Escape";dl(I,a.value,c,s,i,P,x.value)}else V.value&&I.selected&&Hn[S.key]&&(S.preventDefault(),y.value=`Moved selected node ${S.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~I.position.x}, y: ${~~I.position.y}`,K({x:Hn[S.key].x,y:Hn[S.key].y},S.shiftKey))}}});function AA(e={includeHiddenNodes:!1}){const{nodes:n}=Ie();return t.computed(()=>{if(n.value.length===0)return!1;for(const o of n.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 IA={class:"vue-flow__nodes vue-flow__container"},TA={name:"Nodes",compatConfig:{MODE:3}},PA=t.defineComponent({...TA,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Ie(),i=AA(),a=t.ref();return t.watch(i,l=>{l&&t.nextTick(()=>{r.nodesInitialized(n.value)})},{immediate:!0}),t.onMounted(()=>{a.value=new ResizeObserver(l=>{const s=l.map(c=>({id:c.target.getAttribute("data-id"),nodeElement:c.target,forceUpdate:!0}));t.nextTick(()=>o(s))})}),t.onBeforeUnmount(()=>{var l;return(l=a.value)==null?void 0:l.disconnect()}),(l,s)=>(t.openBlock(),t.createElementBlock("div",IA,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,d,f,u)=>{const p=[c.id];if(u&&u.key===c.id&&t.isMemoSame(u,p))return u;const m=(t.openBlock(),t.createBlock(t.unref(xA),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):t.createCommentVNode("",!0)]))}});function OA(){const{emits:e}=Ie();t.onMounted(()=>{if(gf()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new qe(De.MISSING_STYLES))}})}const $A=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),BA={name:"VueFlow",compatConfig:{MODE:3}},Df=t.defineComponent({...BA,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:n,emit:o}){const r=e,i=t.useSlots(),a=Va(r,"modelValue",o),l=Va(r,"nodes",o),s=Va(r,"edges",o),c=Ie(r),d=kx({modelValue:a,nodes:l,edges:s},r,c);return Cx(o,c.hooks),mA(),OA(),t.provide(oi,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(sA,null,{default:t.withCtx(()=>[t.createVNode(SA),$A,t.createVNode(PA),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(pA)],512))}}),VA={name:"Panel",compatConfig:{MODE:3}},RA=t.defineComponent({...VA,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Ie(),r=t.computed(()=>`${n.position}`.split("-"));return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vue-flow__panel",r.value]),style:t.normalizeStyle({pointerEvents:t.unref(o)?"none":"all"})},[t.renderSlot(i.$slots,"default")],6))}});var Ft=(e=>(e.Lines="lines",e.Dots="dots",e))(Ft||{});const Lf=function({dimensions:e,size:n,color:o}){return t.h("path",{stroke:o,"stroke-width":n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},Ff=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};Ft.Lines+"",Ft.Dots+"";const MA={[Ft.Dots]:"#81818a",[Ft.Lines]:"#eee"},DA=["id","x","y","width","height","patternTransform"],LA={key:2,height:"100",width:"100"},FA=["fill"],UA=["x","y","fill"],KA={name:"Background",compatConfig:{MODE:3}},jA=t.defineComponent({...KA,props:{id:{},variant:{default:()=>Ft.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:n,viewport:o}=Ie(),r=t.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=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||MA[e.variant||Ft.Dots]);return(l,s)=>(t.openBlock(),t.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:t.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[t.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[t.createElementVNode("pattern",{id:i.value,x:t.unref(o).x%r.value.scaledGap[0],y:t.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"},[t.renderSlot(l.$slots,"pattern",{},()=>[l.variant===t.unref(Ft).Lines?(t.openBlock(),t.createBlock(t.unref(Lf),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(Ft).Dots?(t.openBlock(),t.createBlock(t.unref(Ff),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",LA,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,FA)])):t.createCommentVNode("",!0)])],8,DA)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,UA),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),GA={name:"ControlButton",compatConfig:{MODE:3}},qA=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},zA={class:"vue-flow__controls-button"};function HA(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",zA,[t.renderSlot(e.$slots,"default")])}const di=qA(GA,[["render",HA]]),YA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},WA=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function XA(e,n){return t.openBlock(),t.createElementBlock("svg",YA,WA)}const ZA={render:XA},JA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},QA=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function eI(e,n){return t.openBlock(),t.createElementBlock("svg",JA,QA)}const tI={render:eI},nI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},oI=[t.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 rI(e,n){return t.openBlock(),t.createElementBlock("svg",nI,oI)}const iI={render:rI},aI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},lI=[t.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 sI(e,n){return t.openBlock(),t.createElementBlock("svg",aI,lI)}const cI={render:sI},dI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},uI=[t.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 fI(e,n){return t.openBlock(),t.createElementBlock("svg",dI,uI)}const pI={render:fI},mI={name:"Controls",compatConfig:{MODE:3}},gI=t.defineComponent({...mI,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Fu.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Ie(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),h=t.toRef(()=>d.value.zoom>=u.value);function y(){l(),n("zoomIn")}function g(){s(),n("zoomOut")}function _(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(b,C)=>(t.openBlock(),t.createBlock(t.unref(RA),{class:"vue-flow__controls",position:b.position},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"top"),b.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(b.$slots,"control-zoom-in",{},()=>[t.createVNode(di,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(ZA))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(di,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(tI))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(di,{class:"vue-flow__controls-fitview",onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(iI))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(di,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(b.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(pI))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(cI))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),hI="44px",yI="220px",_I="366px",bI="52px",wI=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Uf="application/x-datakit+json";function kI(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var EI="\0",hn="\0",Kf="";let CI=class{constructor(n){Ke(this,"_isDirected",!0);Ke(this,"_isMultigraph",!1);Ke(this,"_isCompound",!1);Ke(this,"_label");Ke(this,"_defaultNodeLabelFn",()=>{});Ke(this,"_defaultEdgeLabelFn",()=>{});Ke(this,"_nodes",{});Ke(this,"_in",{});Ke(this,"_preds",{});Ke(this,"_out",{});Ke(this,"_sucs",{});Ke(this,"_edgeObjs",{});Ke(this,"_edgeLabels",{});Ke(this,"_nodeCount",0);Ke(this,"_edgeCount",0);Ke(this,"_parent");Ke(this,"_children");n&&(this._isDirected=Object.hasOwn(n,"directed")?n.directed:!0,this._isMultigraph=Object.hasOwn(n,"multigraph")?n.multigraph:!1,this._isCompound=Object.hasOwn(n,"compound")?n.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[hn]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(n){return this._label=n,this}graph(){return this._label}setDefaultNodeLabel(n){return this._defaultNodeLabelFn=n,typeof n!="function"&&(this._defaultNodeLabelFn=()=>n),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var n=this;return this.nodes().filter(o=>Object.keys(n._in[o]).length===0)}sinks(){var n=this;return this.nodes().filter(o=>Object.keys(n._out[o]).length===0)}setNodes(n,o){var r=arguments,i=this;return n.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(n,o){return Object.hasOwn(this._nodes,n)?(arguments.length>1&&(this._nodes[n]=o),this):(this._nodes[n]=arguments.length>1?o:this._defaultNodeLabelFn(n),this._isCompound&&(this._parent[n]=hn,this._children[n]={},this._children[hn][n]=!0),this._in[n]={},this._preds[n]={},this._out[n]={},this._sucs[n]={},++this._nodeCount,this)}node(n){return this._nodes[n]}hasNode(n){return Object.hasOwn(this._nodes,n)}removeNode(n){var o=this;if(Object.hasOwn(this._nodes,n)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[n],this._isCompound&&(this._removeFromParentsChildList(n),delete this._parent[n],this.children(n).forEach(function(i){o.setParent(i)}),delete this._children[n]),Object.keys(this._in[n]).forEach(r),delete this._in[n],delete this._preds[n],Object.keys(this._out[n]).forEach(r),delete this._out[n],delete this._sucs[n],--this._nodeCount}return this}setParent(n,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===n)throw new Error("Setting "+o+" as parent of "+n+" would create a cycle");this.setNode(o)}return this.setNode(n),this._removeFromParentsChildList(n),this._parent[n]=o,this._children[o][n]=!0,this}_removeFromParentsChildList(n){delete this._children[this._parent[n]][n]}parent(n){if(this._isCompound){var o=this._parent[n];if(o!==hn)return o}}children(n=hn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===hn)return this.nodes();if(this.hasNode(n))return[]}}predecessors(n){var o=this._preds[n];if(o)return Object.keys(o)}successors(n){var o=this._sucs[n];if(o)return Object.keys(o)}neighbors(n){var o=this.predecessors(n);if(o){const i=new Set(o);for(var r of this.successors(n))i.add(r);return Array.from(i.values())}}isLeaf(n){var o;return this.isDirected()?o=this.successors(n):o=this.neighbors(n),o.length===0}filterNodes(n){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]){n(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(n){return this._defaultEdgeLabelFn=n,typeof n!="function"&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,o){var r=this,i=arguments;return n.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var n,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(n=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(n=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),n=""+n,o=""+o,r!==void 0&&(r=""+r);var s=Ro(this._isDirected,n,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(n),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(n,o,r);var c=NI(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,jf(this._preds[o],n),jf(this._sucs[n],o),this._in[o][s]=c,this._out[n][s]=c,this._edgeCount++,this}edge(n,o,r){var i=arguments.length===1?yl(this._isDirected,arguments[0]):Ro(this._isDirected,n,o,r);return this._edgeLabels[i]}edgeAsObj(){const n=this.edge(...arguments);return typeof n!="object"?{label:n}:n}hasEdge(n,o,r){var i=arguments.length===1?yl(this._isDirected,arguments[0]):Ro(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?yl(this._isDirected,arguments[0]):Ro(this._isDirected,n,o,r),a=this._edgeObjs[i];return a&&(n=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],Gf(this._preds[o],n),Gf(this._sucs[n],o),delete this._in[o][i],delete this._out[n][i],this._edgeCount--),this}inEdges(n,o){var r=this._in[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.v===o):i}}outEdges(n,o){var r=this._out[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.w===o):i}}nodeEdges(n,o){var r=this.inEdges(n,o);if(r)return r.concat(this.outEdges(n,o))}};function jf(e,n){e[n]?e[n]++:e[n]=1}function Gf(e,n){--e[n]||delete e[n]}function Ro(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Kf+a+Kf+(r===void 0?EI:r)}function NI(e,n,o,r){var i=""+n,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 yl(e,n){return Ro(e,n.v,n.w,n.name)}var _l=CI,vI="2.2.4",SI={Graph:_l,version:vI},xI=_l,AI={write:II,read:OI};function II(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:TI(e),edges:PI(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function TI(e){return e.nodes().map(function(n){var o=e.node(n),r=e.parent(n),i={v:n};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function PI(e){return e.edges().map(function(n){var o=e.edge(n),r={v:n.v,w:n.w};return n.name!==void 0&&(r.name=n.name),o!==void 0&&(r.value=o),r})}function OI(e){var n=new xI(e.options).setGraph(e.value);return e.nodes.forEach(function(o){n.setNode(o.v,o.value),o.parent&&n.setParent(o.v,o.parent)}),e.edges.forEach(function(o){n.setEdge({v:o.v,w:o.w,name:o.name},o.value)}),n}var $I=BI;function BI(e){var n={},o=[],r;function i(a){Object.hasOwn(n,a)||(n[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 qf=class{constructor(){Ke(this,"_arr",[]);Ke(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];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(n,o){var r=this._keyIndices;if(n=String(n),!Object.hasOwn(r,n)){var i=this._arr,a=i.length;return r[n]=a,i.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var r=this._keyIndices[n];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(n){var o=this._arr,r=2*n,i=r+1,a=n;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!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,r=o[n].priority,i;n!==0&&(i=n>>1,!(o[i].priority<r));)this._swap(n,i),n=i}_swap(n,o){var r=this._arr,i=this._keyIndices,a=r[n],l=r[o];r[n]=l,r[o]=a,i[l.key]=n,i[a.key]=o}},VI=qf,zf=MI,RI=()=>1;function MI(e,n,o,r){return DI(e,String(n),o||RI,r||function(i){return e.outEdges(i)})}function DI(e,n,o,r){var i={},a=new VI,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===n?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 LI=zf,FI=UI;function UI(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=LI(e,i,n,o),r},{})}var Hf=KI;function KI(e){var n=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:n,index:n++};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 jI=Hf,GI=qI;function qI(e){return jI(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var zI=YI,HI=()=>1;function YI(e,n,o){return WI(e,n||HI,o||function(r){return e.outEdges(r)})}function WI(e,n,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=n(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 Yf(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new bl;Object.hasOwn(n,a)||(o[a]=!0,n[a]=!0,e.predecessors(a).forEach(i),delete o[a],r.push(a))}if(e.sinks().forEach(i),Object.keys(n).length!==e.nodeCount())throw new bl;return r}class bl extends Error{constructor(){super(...arguments)}}var Wf=Yf;Yf.CycleException=bl;var Xf=Wf,XI=ZI;function ZI(e){try{Xf(e)}catch(n){if(n instanceof Xf.CycleException)return!1;throw n}return!0}var Zf=JI;function JI(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?QI:eT,a=[],l={};return n.forEach(s=>{if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,r,l,a)}),a}function QI(e,n,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]),Jf(n(a[0]),l=>i.push([l,!1])))}}function eT(e,n,o,r){for(var i=[e];i.length>0;){var a=i.pop();Object.hasOwn(o,a)||(o[a]=!0,r.push(a),Jf(n(a),l=>i.push(l)))}}function Jf(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var tT=Zf,nT=oT;function oT(e,n){return tT(e,n,"post")}var rT=Zf,iT=aT;function aT(e,n){return rT(e,n,"pre")}var lT=_l,sT=qf,cT=dT;function dT(e,n){var o=new lT,r={},i=new sT,a;function l(c){var d=c.v===a?c.w:c.v,f=i.priority(d);if(f!==void 0){var u=n(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 uT={components:$I,dijkstra:zf,dijkstraAll:FI,findCycles:GI,floydWarshall:zI,isAcyclic:XI,postorder:nT,preorder:iT,prim:cT,tarjan:Hf,topsort:Wf},Qf=SI,_t={Graph:Qf.Graph,json:AI,alg:uT,version:Qf.version};let fT=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return ep(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&ep(n),n._next=o._next,o._next._prev=n,o._next=n,n._prev=o}toString(){let n=[],o=this._sentinel,r=o._prev;for(;r!==o;)n.push(JSON.stringify(r,pT)),r=r._prev;return"["+n.join(", ")+"]"}};function ep(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function pT(e,n){if(e!=="_next"&&e!=="_prev")return n}var mT=fT;let gT=_t.Graph,hT=mT;var yT=bT;let _T=()=>1;function bT(e,n){if(e.nodeCount()<=1)return[];let o=kT(e,n||_T);return wT(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function wT(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)wl(e,n,o,l);for(;l=i.dequeue();)wl(e,n,o,l);if(e.nodeCount()){for(let s=n.length-2;s>0;--s)if(l=n[s].dequeue(),l){r=r.concat(wl(e,n,o,l,!0));break}}}return r}function wl(e,n,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,kl(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,kl(n,o,d)}),e.removeNode(r.v),a}function kT(e,n){let o=new gT,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=n(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=ET(i+r+3).map(()=>new hT),l=r+1;return o.nodes().forEach(s=>{kl(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function kl(e,n,o){o.out?o.in?e[o.out-o.in+n].enqueue(o):e[e.length-1].enqueue(o):e[0].enqueue(o)}function ET(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let tp=_t.Graph;var Fe={addBorderNode:PT,addDummyNode:np,applyWithChunking:ui,asNonCompoundGraph:NT,buildLayerMatrix:AT,intersectRect:xT,mapValues:DT,maxRank:rp,normalizeRanks:IT,notime:VT,partition:$T,pick:MT,predecessorWeights:ST,range:ap,removeEmptyRanks:TT,simplify:CT,successorWeights:vT,time:BT,uniqueId:ip,zipObject:El};function np(e,n,o,r){for(var i=r;e.hasNode(i);)i=ip(r);return o.dummy=n,e.setNode(i,o),i}function CT(e){let n=new tp().setGraph(e.graph());return e.nodes().forEach(o=>n.setNode(o,e.node(o))),e.edges().forEach(o=>{let r=n.edge(o.v,o.w)||{weight:0,minlen:1},i=e.edge(o);n.setEdge(o.v,o.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),n}function NT(e){let n=new tp({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(o=>{e.children(o).length||n.setNode(o,e.node(o))}),e.edges().forEach(o=>{n.setEdge(o,e.edge(o))}),n}function vT(e){let n=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 El(e.nodes(),n)}function ST(e){let n=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 El(e.nodes(),n)}function xT(e,n){let o=e.x,r=e.y,i=n.x-o,a=n.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 AT(e){let n=ap(rp(e)+1).map(()=>[]);return e.nodes().forEach(o=>{let r=e.node(o),i=r.rank;i!==void 0&&(n[i][r.order]=o)}),n}function IT(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=ui(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function TT(e){let n=e.nodes().map(l=>e.node(l).rank),o=ui(Math.min,n),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 PT(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),np(e,"border",i,n)}function OT(e,n=op){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const op=65535;function ui(e,n){if(n.length>op){const o=OT(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function rp(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return ui(Math.max,o)}function $T(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function BT(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function VT(e,n){return n()}let RT=0;function ip(e){var n=++RT;return e+(""+n)}function ap(e,n,o=1){n==null&&(n=e,e=0);let r=a=>a<n;o<0&&(r=a=>n<a);const i=[];for(let a=e;r(a);a+=o)i.push(a);return i}function MT(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function DT(e,n){let o=n;return typeof n=="string"&&(o=r=>r[n]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function El(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let LT=yT,FT=Fe.uniqueId;var UT={run:KT,undo:GT};function KT(e){(e.graph().acyclicer==="greedy"?LT(e,o(e)):jT(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,FT("rev"))});function o(r){return i=>r.edge(i).weight}}function jT(e){let n=[],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)?n.push(l):i(l.w)}),delete o[a])}return e.nodes().forEach(i),n}function GT(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.reversed){e.removeEdge(n);let r=o.forwardName;delete o.reversed,delete o.forwardName,e.setEdge(n.w,n.v,o,r)}})}let qT=Fe;var zT={run:HT,undo:WT};function HT(e){e.graph().dummyChains=[],e.edges().forEach(n=>YT(e,n))}function YT(e,n){let o=n.v,r=e.node(o).rank,i=n.w,a=e.node(i).rank,l=n.name,s=e.edge(n),c=s.labelRank;if(a===r+1)return;e.removeEdge(n);let d,f,u;for(u=0,++r;r<a;++u,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},d=qT.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 WT(e){e.graph().dummyChains.forEach(n=>{let o=e.node(n),r=o.edgeLabel,i;for(e.setEdge(o.edgeObj,r);o.dummy;)i=e.successors(n)[0],e.removeNode(n),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),n=i,o=e.node(n)})}const{applyWithChunking:XT}=Fe;var fi={longestPath:ZT,slack:JT};function ZT(e){var n={};function o(r){var i=e.node(r);if(Object.hasOwn(n,r))return i.rank;n[r]=!0;let a=e.outEdges(r).map(s=>s==null?Number.POSITIVE_INFINITY:o(s.w)-e.edge(s).minlen);var l=XT(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function JT(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var QT=_t.Graph,pi=fi.slack,lp=eP;function eP(e){var n=new QT({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;tP(n,e)<r;)i=nP(n,e),a=n.hasNode(i.v)?pi(e,i):-pi(e,i),oP(n,e,a);return n}function tP(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!pi(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function nP(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=pi(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function oP(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var rP=lp,sp=fi.slack,iP=fi.longestPath,aP=_t.alg.preorder,lP=_t.alg.postorder,sP=Fe.simplify,cP=yn;yn.initLowLimValues=Nl,yn.initCutValues=Cl,yn.calcCutValue=cp,yn.leaveEdge=up,yn.enterEdge=fp,yn.exchangeEdges=pp;function yn(e){e=sP(e),iP(e);var n=rP(e);Nl(n),Cl(n,e);for(var o,r;o=up(n);)r=fp(n,e,o),pp(n,e,o,r)}function Cl(e,n){var o=lP(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>dP(e,n,r))}function dP(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=cp(e,n,o)}function cp(e,n,o){var r=e.node(o),i=r.parent,a=!0,l=n.edge(o,i),s=0;return l||(a=!1,l=n.edge(i,o)),s=l.weight,n.nodeEdges(o).forEach(c=>{var d=c.v===o,f=d?c.w:c.v;if(f!==i){var u=d===a,p=n.edge(c).weight;if(s+=u?p:-p,fP(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function Nl(e,n){arguments.length<2&&(n=e.nodes()[0]),dp(e,{},1,n)}function dp(e,n,o,r,i){var a=o,l=e.node(r);return n[r]=!0,e.neighbors(r).forEach(s=>{Object.hasOwn(n,s)||(o=dp(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function up(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function fp(e,n,o){var r=o.v,i=o.w;n.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=n.edges().filter(f=>c===mp(e,e.node(f.v),s)&&c!==mp(e,e.node(f.w),s));return d.reduce((f,u)=>sp(n,u)<sp(n,f)?u:f)}function pp(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),Nl(e),Cl(e,n),uP(e,n)}function uP(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=aP(e,o);r=r.slice(1),r.forEach(i=>{var a=e.node(i).parent,l=n.edge(i,a),s=!1;l||(l=n.edge(a,i),s=!0),n.node(i).rank=n.node(a).rank+(s?l.minlen:-l.minlen)})}function fP(e,n,o){return e.hasEdge(n,o)}function mp(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var pP=fi,gp=pP.longestPath,mP=lp,gP=cP,hP=yP;function yP(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":hp(e);break;case"tight-tree":bP(e);break;case"longest-path":_P(e);break;case"none":break;default:hp(e)}}var _P=gp;function bP(e){gp(e),mP(e)}function hp(e){gP(e)}var wP=kP;function kP(e){let n=CP(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=EP(e,n,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 EP(e,n,o,r){let i=[],a=[],l=Math.min(n[o].low,n[r].low),s=Math.max(n[o].lim,n[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function CP(e){let n={},o=0;function r(i){let a=o;e.children(i).forEach(r),n[i]={low:a,lim:o++}}return e.children().forEach(r),n}let mi=Fe;var NP={run:vP,cleanup:AP};function vP(e){let n=mi.addDummyNode(e,"root",{},"_root"),o=SP(e),r=Object.values(o),i=mi.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=xP(e)+1;e.children().forEach(s=>yp(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function yp(e,n,o,r,i,a,l){let s=e.children(l);if(!s.length){l!==n&&e.setEdge(n,l,{weight:0,minlen:o});return}let c=mi.addBorderNode(e,"_bt"),d=mi.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{yp(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,y=p.borderTop?r:2*r,g=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:y,minlen:g,nestingEdge:!0}),e.setEdge(h,d,{weight:y,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function SP(e){var n={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),n[r]=i}return e.children().forEach(r=>o(r,1)),n}function xP(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function AP(e){var n=e.graph();e.removeNode(n.nestingRoot),delete n.nestingRoot,e.edges().forEach(o=>{var r=e.edge(o);r.nestingEdge&&e.removeEdge(o)})}let IP=Fe;var TP=PP;function PP(e){function n(o){let r=e.children(o),i=e.node(o);if(r.length&&r.forEach(n),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,l=i.maxRank+1;a<l;++a)_p(e,"borderLeft","_bl",o,i,a),_p(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function _p(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=IP.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var OP={adjust:$P,undo:BP};function $P(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&bp(e)}function BP(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&VP(e),(n==="lr"||n==="rl")&&(RP(e),bp(e))}function bp(e){e.nodes().forEach(n=>wp(e.node(n))),e.edges().forEach(n=>wp(e.edge(n)))}function wp(e){let n=e.width;e.width=e.height,e.height=n}function VP(e){e.nodes().forEach(n=>vl(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(vl),Object.hasOwn(o,"y")&&vl(o)})}function vl(e){e.y=-e.y}function RP(e){e.nodes().forEach(n=>Sl(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(Sl),Object.hasOwn(o,"x")&&Sl(o)})}function Sl(e){let n=e.x;e.x=e.y,e.y=n}let kp=Fe;var MP=DP;function DP(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=kp.applyWithChunking(Math.max,r),a=kp.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[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 LP=Fe.zipObject;var FP=UP;function UP(e,n){let o=0;for(let r=1;r<n.length;++r)o+=KP(e,n[r-1],n[r]);return o}function KP(e,n,o){let r=LP(o,o.map((d,f)=>f)),i=n.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 jP=GP;function GP(e,n=[]){return n.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 qP=Fe;var zP=HP;function HP(e,n){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)}),n.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 YP(r)}function YP(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&WP(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();n.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return n.filter(i=>!i.merged).map(i=>qP.pick(i,["vs","i","barycenter","weight"]))}function WP(e,n){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),n.weight&&(o+=n.barycenter*n.weight,r+=n.weight),e.vs=n.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(n.i,e.i),n.merged=!0}let XP=Fe;var ZP=JP;function JP(e,n){let o=XP.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(QP(!!n)),c=Ep(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Ep(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Ep(e,n,o){let r;for(;n.length&&(r=n[n.length-1]).i<=o;)n.pop(),e.push(r.vs),o++;return o}function QP(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let eO=jP,tO=zP,nO=ZP;var oO=Cp;function Cp(e,n,o,r){let i=e.children(n),a=e.node(n),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=eO(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Cp(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&iO(p,m)}});let f=tO(d,o);rO(f,c);let u=nO(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 rO(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function iO(e,n){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+n.barycenter*n.weight)/(e.weight+n.weight),e.weight+=n.weight):(e.barycenter=n.barycenter,e.weight=n.weight)}let aO=_t.Graph,lO=Fe;var sO=cO;function cO(e,n,o){let r=dO(e),i=new aO({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===n||l.minRank<=n&&n<=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[n],borderRight:l.borderRight[n]}))}),i}function dO(e){for(var n;e.hasNode(n=lO.uniqueId("_root")););return n}var uO=fO;function fO(e,n,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){n.setEdge(c,l);return}l=s}})}let pO=MP,mO=FP,gO=oO,hO=sO,yO=uO,_O=_t.Graph,gi=Fe;var bO=Np;function Np(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,Np);return}let o=gi.maxRank(e),r=vp(e,gi.range(1,o+1),"inEdges"),i=vp(e,gi.range(o-1,-1,-1),"outEdges"),a=pO(e);if(Sp(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){wO(c%2?r:i,c%4>=2),a=gi.buildLayerMatrix(e);let f=mO(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Sp(e,s)}function vp(e,n,o){return n.map(function(r){return hO(e,r,o)})}function wO(e,n){let o=new _O;e.forEach(function(r){let i=r.graph().root,a=gO(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),yO(r,o,a.vs)})}function Sp(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let kO=_t.Graph,Ut=Fe;var EO={positionX:$O};function CO(e,n){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=vO(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(y=>{let g=e.node(y),_=g.order;(_<l||m<_)&&!(g.dummy&&e.node(h).dummy)&&xp(o,y,h)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function NO(e,n){let o={};function r(a,l,s,c,d){let f;Ut.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)&&xp(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 n.length&&n.reduce(i),o}function vO(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function xp(e,n,o){if(n>o){let i=n;n=o,o=i}let r=e[n];r||(e[n]=r={}),r[o]=!0}function SO(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function xO(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),n.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]&&!SO(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function AO(e,n,o,r,i){let a={},l=IO(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),y={};for(;h;)y[h]?u(h):(y[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,y)=>Math.min(h,a[y.w]-l.edge(y)),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 IO(e,n,o,r){let i=new kO,a=e.graph(),l=BO(a.nodesep,a.edgesep,r);return n.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 TO(e,n){return Object.values(n).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=VO(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 PO(e,n){let o=Object.values(n),r=Ut.applyWithChunking(Math.min,o),i=Ut.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let d=Object.values(c),f=r-Ut.applyWithChunking(Math.min,d);l!=="l"&&(f=i-Ut.applyWithChunking(Math.max,d)),f&&(e[s]=Ut.mapValues(c,u=>u+f))})})}function OO(e,n){return Ut.mapValues(e.ul,(o,r)=>{if(n)return e[n.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function $O(e){let n=Ut.buildLayerMatrix(e),o=Object.assign(CO(e,n),NO(e,n)),r={},i;["u","d"].forEach(l=>{i=l==="u"?n:Object.values(n).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=xO(e,i,o,c),f=AO(e,i,d.root,d.align,s==="r");s==="r"&&(f=Ut.mapValues(f,u=>-u)),r[l+s]=f})});let a=TO(e,r);return PO(r,a),OO(r,e.graph().align)}function BO(e,n,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?n:e)/2,c+=(s.dummy?n: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 VO(e,n){return e.node(n).width}let Ap=Fe,RO=EO.positionX;var MO=DO;function DO(e){e=Ap.asNonCompoundGraph(e),LO(e),Object.entries(RO(e)).forEach(([n,o])=>e.node(n).x=o)}function LO(e){let n=Ap.buildLayerMatrix(e),o=e.graph().ranksep,r=0;n.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 Ip=UT,Tp=zT,FO=hP,UO=Fe.normalizeRanks,KO=wP,jO=Fe.removeEmptyRanks,Pp=NP,GO=TP,Op=OP,qO=bO,zO=MO,ut=Fe,HO=_t.Graph;var YO=WO;function WO(e,n){let o=n&&n.debugTiming?ut.time:ut.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>i$(e));o(" runLayout",()=>XO(r,o,n)),o(" updateInputGraph",()=>ZO(e,r))})}function XO(e,n,o){n(" makeSpaceForEdgeLabels",()=>a$(e)),n(" removeSelfEdges",()=>g$(e)),n(" acyclic",()=>Ip.run(e)),n(" nestingGraph.run",()=>Pp.run(e)),n(" rank",()=>FO(ut.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>l$(e)),n(" removeEmptyRanks",()=>jO(e)),n(" nestingGraph.cleanup",()=>Pp.cleanup(e)),n(" normalizeRanks",()=>UO(e)),n(" assignRankMinMax",()=>s$(e)),n(" removeEdgeLabelProxies",()=>c$(e)),n(" normalize.run",()=>Tp.run(e)),n(" parentDummyChains",()=>KO(e)),n(" addBorderSegments",()=>GO(e)),n(" order",()=>qO(e,o)),n(" insertSelfEdges",()=>h$(e)),n(" adjustCoordinateSystem",()=>Op.adjust(e)),n(" position",()=>zO(e)),n(" positionSelfEdges",()=>y$(e)),n(" removeBorderNodes",()=>m$(e)),n(" normalize.undo",()=>Tp.undo(e)),n(" fixupEdgeLabelCoords",()=>f$(e)),n(" undoCoordinateSystem",()=>Op.undo(e)),n(" translateGraph",()=>d$(e)),n(" assignNodeIntersects",()=>u$(e)),n(" reversePoints",()=>p$(e)),n(" acyclic.undo",()=>Ip.undo(e))}function ZO(e,n){e.nodes().forEach(o=>{let r=e.node(o),i=n.node(o);r&&(r.x=i.x,r.y=i.y,r.rank=i.rank,n.children(o).length&&(r.width=i.width,r.height=i.height))}),e.edges().forEach(o=>{let r=e.edge(o),i=n.edge(o);r.points=i.points,Object.hasOwn(i,"x")&&(r.x=i.x,r.y=i.y)}),e.graph().width=n.graph().width,e.graph().height=n.graph().height}let JO=["nodesep","edgesep","ranksep","marginx","marginy"],QO={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},e$=["acyclicer","ranker","rankdir","align"],t$=["width","height","rank"],$p={width:0,height:0},n$=["minlen","weight","width","height","labeloffset"],o$={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},r$=["labelpos"];function i$(e){let n=new HO({multigraph:!0,compound:!0}),o=Al(e.graph());return n.setGraph(Object.assign({},QO,xl(o,JO),ut.pick(o,e$))),e.nodes().forEach(r=>{let i=Al(e.node(r));const a=xl(i,t$);Object.keys($p).forEach(l=>{a[l]===void 0&&(a[l]=$p[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=Al(e.edge(r));n.setEdge(r,Object.assign({},o$,xl(i,n$),ut.pick(i,r$)))}),n}function a$(e){let n=e.graph();n.ranksep/=2,e.edges().forEach(o=>{let r=e.edge(o);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(n.rankdir==="TB"||n.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function l$(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.width&&o.height){let r=e.node(n.v),a={rank:(e.node(n.w).rank-r.rank)/2+r.rank,e:n};ut.addDummyNode(e,"edge-proxy",a,"_ep")}})}function s$(e){let n=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,n=Math.max(n,r.maxRank))}),e.graph().maxRank=n}function c$(e){e.nodes().forEach(n=>{let o=e.node(n);o.dummy==="edge-proxy"&&(e.edge(o.e).labelRank=o.rank,e.removeNode(n))})}function d$(e){let n=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;n=Math.min(n,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)}),n-=l,r-=s,e.nodes().forEach(d=>{let f=e.node(d);f.x-=n,f.y-=r}),e.edges().forEach(d=>{let f=e.edge(d);f.points.forEach(u=>{u.x-=n,u.y-=r}),Object.hasOwn(f,"x")&&(f.x-=n),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-n+l,a.height=i-r+s}function u$(e){e.edges().forEach(n=>{let o=e.edge(n),r=e.node(n.v),i=e.node(n.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(ut.intersectRect(r,a)),o.points.push(ut.intersectRect(i,l))})}function f$(e){e.edges().forEach(n=>{let o=e.edge(n);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 p$(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function m$(e){e.nodes().forEach(n=>{if(e.children(n).length){let o=e.node(n),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(n=>{e.node(n).dummy==="border"&&e.removeNode(n)})}function g$(e){e.edges().forEach(n=>{if(n.v===n.w){var o=e.node(n.v);o.selfEdges||(o.selfEdges=[]),o.selfEdges.push({e:n,label:e.edge(n)}),e.removeEdge(n)}})}function h$(e){var n=ut.buildLayerMatrix(e);n.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{ut.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 y$(e){e.nodes().forEach(n=>{var o=e.node(n);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(n),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 xl(e,n){return ut.mapValues(ut.pick(e,n),Number)}function Al(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let _$=Fe,b$=_t.Graph;var w$={debugOrdering:k$};function k$(e){let n=_$.buildLayerMatrix(e),o=new b$({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)),n.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 E$="1.1.5",C$={graphlib:_t,layout:YO,debug:w$,util:{time:Fe.time,notime:Fe.notime},version:E$};const Bp=kI(C$);function N$(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(sc,e);return o=>n(o)}const Mo={padding:80,gaps:{nodes:40,edges:80,ranks:40}},v$=1600,S$=1.2,x$=0,Vp=Symbol("confirm-modal");function hi(e,n,o){const r=n?Gt(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Do(e,n){const o=n(e.source),r=n(e.target);return[hi(o,e.sourceField,"output"),hi(r,e.targetField,"input")]}function Il(e,n,o,r,i){const a=i(e),l=i(o);return[hi(a,n,"output"),hi(l,r,"input")]}function A$(e){t.provide(Vp,e)}function Rp(){return t.inject(Vp,void 0)}function I$(){const e=Rp();if(!e)throw new Error("Confirm modal not provided");return e}function Mp(e){const n=e.match(/^(input|output)s@(.*)$/);if(n)return{io:n[1],field:n[2]}}function T$(){const e={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};return[r=>{e.x1=Math.min(e.x1,r.x),e.y1=Math.min(e.y1,r.y),e.x2=Math.max(e.x2,r.x+r.width),e.y2=Math.max(e.y2,r.y+r.height)},()=>{const r={...e};return r.x1>r.x2&&(r.x1=r.x2=0),r.y1>r.y2&&(r.y1=r.y2=0),r}]}const[P$,O$]=Je.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Mo.padding,gaps:s=Mo.gaps}=r,{nodes:c=Mo.gaps.nodes,edges:d=Mo.gaps.edges,ranks:f=Mo.gaps.ranks}=s,u=Ie(o),p=rt(),m=Rp(),h=N$(),{i18n:{t:y}}=ve(),{findNode:g,fitView:_,onNodeClick:w,onNodeDragStop:b,onEdgeClick:C,onConnect:E,onNodesChange:k,onEdgesChange:T,onEdgeUpdate:x,deleteKeyCode:O}=u;O.value=["Delete","Backspace"];const{state:Y,commit:K,moveNode:I,selectNode:Q,removeNode:A,getNodeById:D,connectEdge:V,disconnectEdge:X,getInEdgesByNodeId:H,commit:j,undo:L}=p;function R(U,ne){const re=D(U.source),de=D(U.target);return!!(re&&de&&re.phase===ne&&de.phase===ne)}const oe=t.computed(()=>Y.value.nodes.filter(U=>U.phase===n).map(U=>({id:U.id,type:"flow",position:U.position,data:U,deletable:!Md(U)}))),ie=t.computed(()=>Y.value.edges.filter(U=>R(U,n)).map(U=>{const ne=D(U.source),re=D(U.target);if(ne){if(!re)throw new Error(`Missing target node "${U.target}" for edge "${U.id}" in phase "${n}"`)}else throw new Error(`Missing source node "${U.source}" for edge "${U.id}" in phase "${n}"`);return{id:U.id,source:U.source,target:U.target,sourceHandle:U.sourceField?`outputs@${U.sourceField}`:"output",targetHandle:U.targetField?`inputs@${U.targetField}`:"input",markerEnd:Wr.ArrowClosed,data:U,updatable:!i}})),Z=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));w(({node:U})=>{console.debug("[useFlow] onNodeClick",t.toRaw(U))}),C(({edge:U})=>{console.debug("[useFlow] onEdgeClick",t.toRaw(U))});async function ae({source:U,sourceHandle:ne,target:re,targetHandle:de}){if(console.debug("[useFlow] onConnect",{source:U,sourceHandle:ne,target:re,targetHandle:de}),!ne||!de)return;const F=Mp(ne),W=Mp(de);if((F==null?void 0:F.io)==="input"||(W==null?void 0:W.io)==="output")return;const N=H(re);let v=!1,S=!1;const P=[],$=[],J=(W==null?void 0:W.io)==="input"?N.filter(z=>!z.targetField):N.filter(z=>!!z.targetField);J.length>0&&(v=!0,J.forEach(z=>{$.push(Do(z,D)),X(z.id,!1)}));const te=(W==null?void 0:W.io)==="input"?N.filter(z=>z.targetField===W.field):N.filter(z=>!z.targetField);if(te.length>0){if(te.some(B=>B.source===U&&B.target===re&&B.targetField===(W==null?void 0:W.field)&&B.sourceField===(F==null?void 0:F.field)))return;S=!0,te.forEach(B=>{$.push(Do(B,D)),X(B.id,!1)})}const M=V({source:U,sourceField:F==null?void 0:F.field,target:re,targetField:W==null?void 0:W.field},!1);if(P.push(Il(U,F==null?void 0:F.field,re,W==null?void 0:W.field,D)),j(),M){if(v||S){if(!m)throw new Error("Expected confirm modal to be provided here when reachable");await m(y(v?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),P,$)||L()}}else L(),h({message:y("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"})}E(ae),k(U=>{U.filter(ne=>ne.type==="select").sort((ne,re)=>ne.selected===re.selected?0:ne.selected?1:-1).forEach(ne=>{Q(ne.selected?ne.id:void 0)}),U.forEach(ne=>{ne.type==="remove"&&A(ne.id,!0)})}),b(({node:U})=>{U&&I(U.id,U.position)}),T(U=>{U.forEach(ne=>{ne.type==="remove"&&X(ne.id,!0)})}),x(({connection:U})=>ae(U));function G(){let U,ne;const re=[],de=B=>{switch(B.data.name){case"request":{if(n!=="request")throw new Error(`Unexpected request node in ${n} phase`);if(U)throw new Error("Duplicated request node in request phase");return U=B,!0}case"service_request":{if(n!=="request")throw new Error(`Unexpected service_request node in ${n} phase`);if(ne)throw new Error("Duplicated service_request node in request phase");return ne=B,!0}case"service_response":{if(n!=="response")throw new Error(`Unexpected service_response node in ${n} phase`);if(ne)throw new Error("Duplicated service_response node in response phase");return ne=B,!0}case"response":{if(n!=="response")throw new Error(`Unexpected response node in ${n} phase`);if(U)throw new Error("Duplicated response node in response phase");return U=B,!0}default:return re.push(B),!1}};let F;for(const B of oe.value)if(!de(B)&&re.length>0){F||(F=new Bp.graphlib.Graph({multigraph:!0}),F.setGraph({rankdir:n==="request"?"LR":"RL",nodesep:c,edgesep:d,ranksep:f}));const le=g(B.id);if(!le)throw new Error(`Node ${B.id} is missing from the graph in ${n} phase`);F.setNode(B.id,{width:le.dimensions.width,height:le.dimensions.height})}if(!U||!ne)throw new Error(`One or more implicit nodes are missing from ${n} phase`);const W=g(U.id),N=g(ne.id);if(!W||!N)throw new Error(`One or more implicit nodes are missing from the graph in ${n} phase`);if(re.length>0){if(!F)throw new Error("dagreGraph should be defined here if reachable");const B=new Set([U.id,ne.id]);for(const le of ie.value)!B.has(le.source)&&!B.has(le.target)&&F.setEdge(le.source,le.target,{points:[]});Bp.layout(F)}const[v,S]=T$(),P=B=>({x:B.x-B.width/2,y:B.y-B.height/2,width:B.width,height:B.height});if(re.length>0){if(!F)throw new Error("dagreGraph should be defined here if reachable");for(const B of re){const le=F.node(B.id),ce=P(le);v(ce),I(B.data.id,{x:ce.x,y:ce.y},!1)}}const $=S(),J=$.x2-$.x1,te=$.y2-$.y1,M=Math.max(0,Math.min(t.toValue(a==null?void 0:a.width)??Number.POSITIVE_INFINITY,v$)-J-2*c-W.dimensions.width-N.dimensions.width-2*l),z=$.y1+te/2;I(U.data.id,{x:$.x1-c-M/2-W.dimensions.width,y:z-W.dimensions.height/2},!1),I(ne.data.id,{x:$.x2+c+M/2,y:z-N.dimensions.height/2},!1),K()}function ee(U){_({...Z.value,...U})}return{vueFlowStore:u,editorStore:p,readonly:i,nodes:oe,edges:ie,autoLayout:G,fitViewParams:Z,fitView:ee}}),Wn="{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}},yi=Object.keys(_n).filter(e=>e.includes(Wn)).map(e=>e.replace(Wn,""));function Tl(e){if(!e||!Fo(e))return;const n=yi.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Wn,"")}function Lo(e){if(!e)return null;const n=yi.find(o=>e.startsWith(o));return n||e}function Fo(e){return e?yi.some(n=>e.startsWith(n)):!1}function Dp(e){return e?Fo(e)?Lo(e)+Wn:e:null}function Pl(e){var o;if(!e)return!1;const n=Dp(e);return n?((o=_n[n])==null?void 0:o.readable)??!1:!1}function Ol(e){var o;if(!e)return!1;const n=Dp(e);return n?((o=_n[n])==null?void 0:o.writable)??!1:!1}const _i=we(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ge.Left},size:{default:()=>Number.parseFloat(Dw)},type:{}},setup(e){t.useCssVars(o=>({"753622c4":o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[o.type,o.position===t.unref(ge).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Lp=t.defineComponent({__name:"NodeBadge",props:{type:{},size:{}},setup(e){const n=t.computed(()=>{var i;if(!Vt(e.type))return((i=Cr[e.type])==null?void 0:i.icon)??void 0}),o=t.computed(()=>xC(e.type)),r=t.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=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(l,{appearance:r.value,size:i.size},{icon:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value)))]),default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:1},8,["appearance","size"])}}}),$$={class:"body"},B$={class:"info-line"},V$={class:"name-and-error"},R$={class:"name"},M$={class:"input-handles"},D$={class:"handle"},L$={class:"handle-label-wrapper"},F$={class:"handle-label-wrapper"},U$={class:"handle-label text"},K$={class:"output-handles"},j$={class:"handle"},G$={class:"handle-label-wrapper"},q$={class:"handle-label-wrapper"},z$={class:"handle-label"},Fp=we(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean}},setup(e){const{t:n}=Re.createI18n("en-us",je),o=O$(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,toggleExpanded:a}=rt(),l=t.computed(()=>Ia(e.data.type)),s=t.computed(()=>r(e.data.id).every(C=>C.targetField===void 0)),c=t.computed(()=>i(e.data.id).every(C=>C.sourceField===void 0)),d=t.computed(()=>e.data.expanded.input??!1),f=t.computed(()=>e.data.expanded.output??!1),u=t.computed(()=>{var C,E;if(e.data.type==="property"){const k=(C=e.data.config)==null?void 0:C.property;return Ol(k)}return(E=l.value.io)==null?void 0:E.input}),p=t.computed(()=>{var C,E;if(e.data.type==="property"){const k=(C=e.data.config)==null?void 0:C.property;return Pl(k)}return(E=l.value.io)==null?void 0:E.output}),m=t.computed(()=>Md(e.data)),h=t.computed(()=>e.data.phase==="response"),y=t.computed(()=>e.data.phase==="request"?ge.Left:ge.Right),g=t.computed(()=>e.data.phase==="request"?ge.Right:ge.Left),_=t.computed(()=>m.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),w=t.computed(()=>m.value?Ow:$w);function b(C){o!=null&&o.readonly||C==="input"&&!s.value||C==="output"&&!c.value||a(e.data.id,C)}return t.watch(s,C=>{C||a(e.data.id,"input",!0,!1)},{immediate:!0}),t.watch(c,C=>{C||a(e.data.id,"output",!0,!1)},{immediate:!0}),(C,E)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flow-node",{reversed:h.value,implicit:m.value}])},[t.createElementVNode("div",$$,[t.createElementVNode("div",B$,[t.createElementVNode("div",V$,[C.error?(t.openBlock(),t.createBlock(t.unref(ke.WarningIcon),{key:0,class:"error-icon",color:t.unref(xc),size:16},null,8,["color"])):t.createCommentVNode("",!0),t.createElementVNode("div",R$,t.toDisplayString(_.value),1)]),m.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Lp,{key:0,size:"small",type:C.data.type},null,8,["type"]))]),t.renderSlot(C.$slots,"default",{},void 0,!0)]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:h.value}])},[t.createElementVNode("div",M$,[u.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",D$,[t.createVNode(t.unref(Xt),{id:"input",position:y.value,type:"target"},null,8,["position"]),t.createElementVNode("div",L$,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label",{"has-fields":C.data.fields.input.length>0,collapsible:s.value}])},[E[2]||(E[2]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),C.data.fields.input.length>0?(t.openBlock(),t.createElementBlock("div",{key:0,class:"icon",onClick:E[0]||(E[0]=t.withModifiers(k=>b("input"),["stop"]))},[d.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ke.UnfoldMoreIcon),{key:0,size:t.unref(fo)},null,8,["size"])),d.value?(t.openBlock(),t.createBlock(t.unref(ke.UnfoldLessIcon),{key:1,color:s.value?void 0:t.unref(Ac),size:t.unref(fo)},null,8,["color","size"])):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],2),d.value?(t.openBlock(),t.createBlock(_i,{key:0,color:w.value,position:y.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),d.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(C.data.fields.input,(k,T)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${k.id}`,class:"handle indented"},[t.createVNode(t.unref(Xt),{id:`inputs@${k.id}`,position:y.value,type:"target"},null,8,["id","position"]),t.createElementVNode("div",F$,[t.createElementVNode("div",U$,t.toDisplayString(k.name),1),t.createVNode(_i,{color:w.value,position:y.value,type:T<C.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)]),t.createElementVNode("div",K$,[p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",j$,[t.createElementVNode("div",G$,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label text",{"has-fields":C.data.fields.output.length>0,collapsible:c.value}])},[E[3]||(E[3]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),C.data.fields.output.length>0?(t.openBlock(),t.createElementBlock("div",{key:0,class:"icon",onClick:E[1]||(E[1]=t.withModifiers(k=>b("output"),["stop"]))},[f.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ke.UnfoldMoreIcon),{key:0,size:t.unref(fo)},null,8,["size"])),f.value?(t.openBlock(),t.createBlock(t.unref(ke.UnfoldLessIcon),{key:1,color:c.value?void 0:t.unref(Ac),size:t.unref(fo)},null,8,["color","size"])):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],2),f.value?(t.openBlock(),t.createBlock(_i,{key:0,color:w.value,position:g.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Xt),{id:"output",position:g.value,type:"source"},null,8,["position"])]),f.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(C.data.fields.output,(k,T)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${k.id}`,class:"handle indented"},[t.createElementVNode("div",q$,[t.createElementVNode("div",z$,t.toDisplayString(k.name),1),t.createVNode(_i,{color:w.value,position:g.value,type:T<C.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Xt),{id:`outputs@${k.id}`,position:g.value,type:"source"},null,8,["id","position"])]))),128)):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)])],2)],2))}}),[["__scopeId","data-v-e55b53e2"]]),Up=we(t.defineComponent({__name:"EditorCanvasFlow",props:{flowId:{},phase:{},readonly:{type:Boolean}},emits:["initialized"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=Je.useElementBounding(i),{vueFlowStore:l,editorStore:s,nodes:c,edges:d,autoLayout:f,fitViewParams:u,fitView:p}=P$({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.readonly}),{addNode:m,selectNode:h,propertiesPanelOpen:y,newCreatedNodeId:g,invalidConfigNodeIds:_}=s,{project:w,vueFlowRef:b,addSelectedNodes:C,getNodes:E}=l;async function k(Y){h(Y),await t.nextTick();const K=E.value.find(I=>I.id===Y);C(K?[K]:[])}function T(){e.readonly||(y.value=!0)}function x(Y){var L,R;if(e.readonly)return;const K=(L=Y.dataTransfer)==null?void 0:L.getData(Uf);if(!K)return;Y.preventDefault();const I=JSON.parse(K);if(I.action!=="create-node")return;const{top:Q=0,left:A=0}=((R=b.value)==null?void 0:R.getBoundingClientRect())||{},D=w({x:Y.clientX-A,y:Y.clientY-Q}),{type:V,anchor:X}=I.data,H={type:V,phase:e.phase,position:{x:D.x-X.offsetX,y:D.y-X.offsetY}},j=m(H);k(j),j&&(g.value=j,y.value=!0)}const O=()=>{f(),t.nextTick(()=>p())};return n({autoLayout:f,fitView:p}),(Y,K)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Df),{id:Y.flowId,class:t.normalizeClass(["flow",{readonly:Y.readonly}]),edges:t.unref(d),"elements-selectable":!Y.readonly,"max-zoom":t.unref(S$),"min-zoom":t.unref(x$),"multi-selection-key-code":null,nodes:t.unref(c),"nodes-connectable":!Y.readonly,"nodes-draggable":!Y.readonly,"pan-on-drag":Y.readonly?!1:void 0,"pan-on-scroll":Y.readonly?!1:void 0,"zoom-on-double-click":Y.readonly?!1:void 0,"zoom-on-pinch":Y.readonly?!1:void 0,"zoom-on-scroll":Y.readonly?!1:void 0,onDragover:K[0]||(K[0]=t.withModifiers(()=>{},["prevent"])),onDrop:K[1]||(K[1]=I=>x(I)),onNodeClick:T,onNodesInitialized:K[2]||(K[2]=I=>r("initialized"))},{"node-flow":t.withCtx(I=>[t.createVNode(Fp,{data:I.data,error:t.unref(_).has(I.data.id)},null,8,["data","error"])]),default:t.withCtx(()=>[t.createVNode(t.unref(jA)),Y.readonly?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(gI),{key:0,"fit-view-params":t.unref(u),position:"bottom-left","show-interactive":!1},{default:t.withCtx(()=>[t.createElementVNode("button",{class:"vue-flow__controls-button vue-flow__controls-interactive custom",onClick:O},[t.createVNode(t.unref(ke.SparklesIcon),{size:18})])]),_:1},8,["fit-view-params"]))]),_:1},8,["id","class","edges","elements-selectable","max-zoom","min-zoom","nodes","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"])],512))}}),[["__scopeId","data-v-f5036b92"]]),Kp=we(t.defineComponent({__name:"EditorCanvas",props:{readonly:{type:Boolean},resizable:{type:Boolean}},setup(e,{expose:n}){const o=t.ref([!1,!1]),{state:r}=rt(),i=t.useId(),a=`${i}-request`,l=`${i}-response`,s=t.useTemplateRef("flowPanels"),c=t.useTemplateRef("requestLabel"),d=t.useTemplateRef("requestCanvasContainer"),f=t.useTemplateRef("requestFlow"),u=t.useTemplateRef("resizeHandle"),p=t.useTemplateRef("responseLabel"),m=t.useTemplateRef("responseCanvasContainer"),h=t.useTemplateRef("responseFlow"),y=Je.useElementBounding(s),g=Je.useElementBounding(c),_=Je.useElementBounding(d),w=Je.useElementBounding(u),b=Je.useElementBounding(p),C=Je.useElementBounding(m),E=t.computed(()=>Math.max(30,y.height.value*.03)),k=t.computed(()=>_.height.value<E.value),T=t.computed(()=>C.height.value<E.value),x=t.ref("50%"),O=t.ref("50%"),Y=()=>{e.resizable&&(k.value?(x.value="50%",O.value="50%"):(x.value="0",O.value="100%"))},K=()=>{e.resizable&&(T.value?(x.value="50%",O.value="50%"):(x.value="100%",O.value="0"))},I=t.computed(()=>y.height.value-g.height.value-w.height.value-b.height.value),{isDragging:Q}=Je.useDraggable(u,{onMove(V){if(!e.resizable)return;const X=Math.max(0,V.y-_.top.value),H=Math.min(1,Math.max(0,X/I.value));x.value=`${H*100}%`,O.value=`${(1-H)*100}%`},onEnd(){e.resizable&&(_.height.value<E.value?(x.value="0",O.value="100%"):C.height.value<E.value&&(x.value="100%",O.value="0"))}}),A=()=>{t.nextTick(()=>{var V,X;(V=f.value)==null||V.fitView(),(X=h.value)==null||X.fitView()})},D=t.watch(o,([V,X])=>{var H,j;V&&X&&(r.value.isEditing||((H=f.value)==null||H.autoLayout(),(j=h.value)==null||j.autoLayout()),A(),D.stop())},{deep:!0});return n({fitView:A}),(V,X)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:s,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:c,class:t.normalizeClass(["label request",{resizable:V.resizable}]),onClick:Y},[V.resizable?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:k.value}])},null,8,["class"])):t.createCommentVNode("",!0),X[2]||(X[2]=t.createElementVNode("div",{class:"label-content"}," Request ",-1))],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:d,class:t.normalizeClass(["canvas",{dragging:t.unref(Q)}]),style:t.normalizeStyle({flexBasis:x.value})},[t.createVNode(Up,{ref_key:"requestFlow",ref:f,"flow-id":a,phase:"request",readonly:V.readonly,onInitialized:X[0]||(X[0]=H=>o.value[0]=!0)},null,8,["readonly"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:u,class:t.normalizeClass(["resize-handle",{resizable:V.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:p,class:t.normalizeClass(["label response",{dragging:t.unref(Q),resizable:V.resizable}]),onClick:K},[V.resizable?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:T.value}])},null,8,["class"])):t.createCommentVNode("",!0),X[3]||(X[3]=t.createElementVNode("div",{class:"label-content"}," Response ",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:m,class:t.normalizeClass(["canvas response",{dragging:t.unref(Q)}]),style:t.normalizeStyle({flexBasis:O.value})},[t.createVNode(Up,{ref_key:"responseFlow",ref:h,"flow-id":l,phase:"response",readonly:V.readonly,onInitialized:X[1]||(X[1]=H=>o.value[1]=!0)},null,8,["readonly"])],6)],512))}}),[["__scopeId","data-v-b130861e"]]),H$={class:"dk-confirm-modal-body"},Y$={class:"dk-confirm-modal-connections"},W$=we(t.defineComponent({__name:"ConflictConnectionConfirmModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=ve(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,h,y){return l.value=m,s.value=h??[],c.value=y??[],a.value=!0,await new Promise(g=>{d=g})}return n({open:p}),(m,h)=>{const y=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(y,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:m.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:u},{default:t.withCtx(()=>[t.createElementVNode("div",H$,[t.createElementVNode("p",null,t.toDisplayString(l.value),1),t.createElementVNode("p",null,t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),t.createElementVNode("div",Y$,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([g,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${_}`},[t.createVNode(t.unref(ke.AddIcon),{color:t.unref(Bw)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),h[0]||(h[0]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(_),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([g,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${_}`},[t.createVNode(t.unref(ke.RemoveIcon),{color:t.unref(xc)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),h[1]||(h[1]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(_),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-c4d58082"]]),X$={class:"dk-editor-nav"},Z$={class:"top"},J$={class:"bottom"},Q$=we(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Re.createI18n("en-us",je),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:ke.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=Oa(),l=t.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=t.ref(!1);function c(){a.value=!a.value}return(d,f)=>(t.openBlock(),t.createElementBlock("nav",X$,[t.createElementVNode("div",Z$,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:h})=>t.createVNode(t.unref(Te.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:h},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(da)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",J$,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(u=>s.value=!0,["self"]))},[t.createVNode(t.unref(Te.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Te.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(da)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(ke.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(da)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-4498cfce"]]),eB={class:"dk-editor-main"},tB={class:"header"},nB={class:"actions"},oB={ref:"canvasContainer",class:"body"},rB=we(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Re.createI18n("en-us",je),{modalOpen:o}=rt();function r(){o.value=!1}return(i,a)=>(t.openBlock(),t.createElementBlock("div",eB,[t.createElementVNode("header",tB,[t.createElementVNode("div",nB,[t.createVNode(t.unref(Te.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.view_docs"))+" ",1),t.createVNode(t.unref(ke.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Te.KButton),{onClick:r},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.done")),1)]),_:1})])]),t.createElementVNode("div",oB,[t.createVNode(Kp,{resizable:""})],512)]))}}),[["__scopeId","data-v-2abb236d"]]),iB={class:"icon"},aB={class:"content"},lB={class:"title"},sB={class:"description"},cB=we(t.defineComponent({__name:"NodePanelItem",props:{type:{}},setup(e){const{summary:n,icon:o}=Cr[e.type];return(r,i)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${r.type}`]:!0}])},[t.createElementVNode("div",iB,[t.createVNode(t.unref(o),{size:16})]),t.createElementVNode("div",aB,[t.createElementVNode("div",lB,t.toDisplayString(r.type),1),t.createElementVNode("div",sB,t.toDisplayString(t.unref(n)),1)])],2))}}),[["__scopeId","data-v-e75cecee"]]),dB={class:"dk-node-panel"},uB={class:"title"},fB={class:"node-list"},pB={"aria-hidden":"true",class:"preview",inert:""},mB=we(t.defineComponent({__name:"NodePanel",setup(e){const{t:n}=Re.createI18n("en-us",je),{createNode:o}=rt(),r=`dk-drag-preview-${t.useId()}`,i=t.shallowRef(),a=t.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var x,O;const d=s.currentTarget,{left:f,top:u,width:p,height:m}=d.getBoundingClientRect(),h=s.clientX-f,y=s.clientY-u;i.value=o({type:c}),await t.nextTick();const g=document.querySelector(`#${r}`)||d,_=g.cloneNode(!0),{offsetWidth:w,offsetHeight:b}=g;Object.assign(_.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${b}px`,boxSizing:"border-box"}),document.body.appendChild(_);const C=h/p,E=y/m,k={ratioX:C,ratioY:E,offsetX:w*C,offsetY:b*E},T={action:"create-node",data:{type:c,anchor:k}};(x=s.dataTransfer)==null||x.setData(Uf,JSON.stringify(T)),(O=s.dataTransfer)==null||O.setDragImage(_,k.offsetX,k.offsetY),requestAnimationFrame(()=>{_.remove(),i.value=void 0})};return(s,c)=>{const d=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",dB,[t.createElementVNode("h3",uB,[t.createVNode(d,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])]),t.createElementVNode("div",fB,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(Cr)),f=>(t.openBlock(),t.createBlock(cB,{key:f,draggable:"true",type:f,onDragstart:u=>l(u,f)},null,8,["type","onDragstart"]))),128))]),t.createElementVNode("div",pB,[t.createVNode(t.unref(Df),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(Fp,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-8e8421d3"]]),gB=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(kt,{items:t.unref(Zi)([...t.unref(wI)]),name:n.name},null,8,["items","name"]))}}),hB=we(t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Ve(),{i18n:o}=ve(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(dt,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock(kt,{key:l,class:"dk-inputs-field-indent",clearable:"",items:i.items,name:l,placeholder:t.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-a849b44b"]]),yB=["data-testid"],_B={class:"dk-inputs-map-field-entry-body"},bB={class:"dk-inputs-map-field-entry-content"},wB={class:"dk-inputs-map-field-indent"},kB=we(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},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:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l,field:s}=ia(o,r),{i18n:{t:c}}=ve(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(E,k="key"){var T;d.value&&(await t.nextTick(),(T=d.value.querySelector(`[data-${k}-input="${E}"]`))==null||T.focus())}function h(){const{id:E}=a(),k=i.value.findIndex(({key:T})=>!T);m(k===-1?i.value.length-1:k),f.value=E}function y(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function _(E){if(w(E)){E.key=p,delete u.value[E.id];return}if(E.id===f.value){if(E.key.trim()==="")return;r("add:field",E.key,E.value),f.value=null}else r("rename:field",p,E.key);p=E.key}function w(E){delete u.value[E.id];const k=o.fieldNameValidator("input",p,E.key);if(k)return u.value[E.id]=k,k}function b(E){w(E)}function C(E,k){E.id!==f.value&&r("change:inputs",E.key,k)}return(E,k)=>{const T=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),O=t.resolveComponent("KInput"),Y=t.resolveComponent("KSelect"),K=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(T,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(I,Q)=>(t.openBlock(),t.createElementBlock("div",{key:I.id,class:"dk-inputs-map-field-entry dk-inputs-map-field-indent","data-testid":`ff-kv-container-${t.unref(s).path.value}.${Q}`},[t.createVNode(x,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${Q}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),t.createElementVNode("div",_B,[t.createElementVNode("div",bB,[t.createVNode(O,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${Q}`,modelValue:I.key,"onUpdate:modelValue":[A=>I.key=A,A=>w(I)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Q,"data-testid":`ff-key-${t.unref(s).path.value}.${Q}`,error:!!u.value[I.id],"error-message":u.value[I.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:A=>b(I),onChange:A=>_(I),onFocus:A=>g(I)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(Y,{modelValue:I.value,"onUpdate:modelValue":A=>I.value=A,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${Q}`,items:E.items,placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:A=>C(I,(A==null?void 0:A.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","placeholder","onChange"])]),t.createVNode(K,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${Q}`,icon:"",onClick:A=>y(I)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,yB))),128)),t.createElementVNode("div",wB,[t.createVNode(K,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])])],512))}}}),[["__scopeId","data-v-685121cd"]]),Xn=t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=Ve(),{i18n:i}=ve(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?hB:kB: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)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(r)("input")?(t.openBlock(),t.createBlock(kt,{key:0,clearable:"","enable-filtering":"",items:p.items,label:"Inputs",name:"input",placeholder:t.unref(i).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},null,8,["items","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:1,"field-name-validator":p.fieldNameValidator,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},null,8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),EB={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"},CB={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 NB(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function Zn(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Jn(e){const{i18n:{t:n}}=ve(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function jp(e,n){const{i18n:{t:o}}=ve();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function vB(e=0,n=1/0,o){const{i18n:{t:r}}=ve();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function Gp(e){const{i18n:{t:n}}=ve();return function(r){if(!NB(r))return e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",e):"Value must be a number"}}function qp(e,n){const{i18n:{t:o}}=ve();return function(i){if(i==null)return;const a=Gp(n)(i);if(a)return a;const l=Number(i);switch(e){case"float":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",n):"Invalid float format";return Number.isFinite(l)?void 0:s()}case"integer":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",n):"Invalid integer format";return Number.isInteger(l)?void 0:s()}default:return}}}function zp(e=-1/0,n=1/0,o){const{i18n:{t:r}}=ve();return function(a){if(a==null)return;const l=Gp(o)(a);if(l)return l;const s=Number(a);if(s<e||s>n)return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:e,max:n}):`Value must be between ${e} and ${n}`}}function SB(e,n){const{state:o}=rt(),{i18n:{t:r}}=ve();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function xB(e,n,o){const{i18n:{t:r}}=ve();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function AB(){const{i18n:{t:e}}=ve();return function(o){if(Aa(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Hp(e){const{i18n:{t:n}}=ve(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Zn(Jn(o),jp("identifier",o),AB(),SB(e,o))}function IB(e){const{i18n:{t:n}}=ve(),{getNodeById:o}=rt();return function(i,a,l){const s={fieldName:n(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return Zn(Jn(s),xB(i,o(e),l))(a)}}function TB(e){const n=t.ref({}),o=t.computed(()=>Object.values(n.value).every(l=>!l)),r={};Object.keys(e).forEach(l=>{const s=e[l],c=u=>{const p=typeof u=="function"?u():u,m=s(p);return n.value[l]=m,m},d=()=>{n.value[l]=void 0},f=u=>(d(),c(u));r[l]={handleChange:f,handleBlur:f,validate:f,isValid:t.computed(()=>n.value[l]===void 0),error:t.computed(()=>n.value[l])}});function i(){n.value={}}function a(l){var s;for(const c of Object.keys(e)){const d=l[c],f=typeof d=="function"?d():d;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function bi(e){const{validationConfig:n,getValidationData:o,skipValidationOnMount:r,toggleNodeValid:i}=e,a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>TB(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const h in a.value)m[h]=p[h];return m}function f(u,p){return{onBlur:()=>{const m=o(),h=s.value[u];h&&h.handleBlur(m[u])},onUpdate:()=>{const m=o(),h=s.value[u];h&&h.handleChange(m[u]),p==null||p()},error:t.computed(()=>{const m=s.value[u];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[u];return m?m.error.value??"":""})}}return t.onMounted(()=>{r!=null&&r.value||d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;i(!p)}catch{}}),t.watch(()=>c.value,i,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function bn(e,n){const{state:o,renameNode:r,getNodeById:i,addField:a,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:d,connectEdge:f,newCreatedNodeId:u,invalidConfigNodeIds:p,undo:m,commit:h}=rt(),{i18n:{t:y}}=ve(),g=I$();let _=!1;t.watch(o,async()=>{_=!0,await t.nextTick(),_=!1},{immediate:!0,deep:!0}),console.log("state",o.value),window.store=rt();const w=t.computed(()=>{const R=i(e);if(!R)throw new Error("Node not existed");return R}),b=t.computed(()=>{const oe=o.value.edges.filter(ie=>ie.target===e).reduce((ie,Z)=>{var ne,re;const ae=i(Z.source),G=(ne=Gt(ae,"output",Z.sourceField))==null?void 0:ne.id,ee=(re=Gt(w.value,"input",Z.targetField))==null?void 0:re.name,U=ae.id+(G?`.${G}`:"");return ee?ie.inputs={...ie.inputs,[ee]:U}:ie.input=U,ie},{});return w.value.fields.input.forEach(ie=>{oe.inputs||(oe.inputs={}),oe.inputs[ie.name]||(oe.inputs[ie.name]=null)}),{...w.value.config,...oe,name:w.value.name}}),C=R=>{r(e,R??"",!0,`${e}:rename`)},E=(R,oe=!0)=>{if(_)return;if(!n)throw new Error("getFormInnerData is not defined");const ie=oc(n(),["name","input","inputs"]),Z=R?`update:${e}:${R}`:void 0;c(e,ie,oe,Z)},k=(R,oe)=>{const ie=Fn(w.value,R,oe);if(!ie)throw new Error(`Field with name "${oe}" not found in node "${w.value.name}"`);return ie},T=(R,oe,ie)=>{const Z=!!ie;a(e,R,oe,!Z),Z&&I(oe,ie)},x=(R,oe,ie)=>{if(_)return;const Z=k(R,oe).id;l(e,Z,ie)},O=(R,oe)=>{const ie=k(R,oe).id;s(e,ie)},Y=t.computed(()=>o.value.edges.filter(R=>R.target===e&&!R.targetField)[0]),K=t.computed(()=>o.value.edges.filter(R=>R.target===e&&R.targetField)),I=async(R,oe)=>{if(_)return;const ie=oe==null,Z=k("input",R).id;if(ie){const F=K.value.find(W=>W.targetField===Z);F&&d(F.id);return}const{nodeId:ae,fieldId:G}=Dd(oe),ee=k("input",R).id,U=[];Y.value&&(U.push(Do(Y.value,i)),d(Y.value.id,!1));const ne=K.value.find(F=>F.targetField===Z);ne&&(U.push(Do(ne,i)),d(ne.id,!1)),f({source:ae,sourceField:G,target:e,targetField:ee},!1);const re=Il(ae,G,e,ee,i);h(),!(U[0]&&re&&U[0][1]===re[1])&&U.length>0&&(await g(y("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[re],U)||m())},Q=async R=>{if(_)return;if(R==null){Y.value&&d(Y.value.id);return}const ie=[];for(const ee of K.value)ie.push(Do(ee,i)),d(ee.id,!1);const{nodeId:Z,fieldId:ae}=Dd(R);f({source:Z,sourceField:ae,target:e,targetField:void 0},!1);const G=Il(Z,ae,e,void 0,i);h(),ie.length>0&&(await g(y("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[G],ie)||m())},A=R=>{const oe=[...o.value.edges,{source:R,target:e}];return Pa(Sr(oe))},D=t.computed(()=>{var oe,ie;const R=[];for(const Z of o.value.nodes)if((oe=Ia(Z.type).io)!=null&&oe.output&&Z.fields.output&&Z.id!==e&&!(Z.type==="property"&&!Pl((ie=Z.config)==null?void 0:ie.property))&&!A(Z.id)){R.push({value:Z.id,label:Z.name});for(const G of Z.fields.output)R.push({value:`${Z.id}.${G.id}`,label:`${Z.name}.${G.name}`})}return R}),V=t.computed(()=>w.value.fields.input.map(R=>R.name)||[]),X=t.computed(()=>u.value===e);function H(R){p.value.delete(e),R||p.value.add(e)}const j=IB(e);function L(R,oe,ie){const Z=i(e);if(!Z)throw new Error("Node not found when validating field name");const ae=Fn(Z,R,oe);return j(R,ie,ae==null?void 0:ae.id)}return{formData:b,inputOptions:D,inputEdge:Y,inputsEdges:K,inputsFieldNames:V,skipValidationOnMount:X,currentNode:w,setName:C,setConfig:E,addField:T,renameFieldByName:x,removeFieldByName:O,setInputs:I,setInput:Q,nameValidator:Hp(e),fieldNameValidator:L,toggleNodeValid:H}}function wn(e){const{getSchema:n}=Ve();return t.computed(()=>{if(Vt(e))switch(e){case"response":return CB;case"service_request":return EB}try{const l=n().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 Uo=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=ve(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 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 t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.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:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),PB=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=ve(),o=t.useTemplateRef("form"),r=wn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,skipValidationOnMount:p,toggleNodeValid:m,fieldNameValidator:h}=bn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:y}=bi({validationConfig:{url:Zn(Jn({fieldName:"URL"}),jp("url",{fieldName:"URL"})),timeout:Zn(qp("integer",{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}),zp(0,2147483646,{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),skipValidationOnMount:p,toggleNodeValid:m}),g=y("url",()=>l("url")),_=y("timeout",()=>l("timeout"));return(w,b)=>{const C=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Uo,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(C,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),t.createVNode(On,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,name:"url",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(gB,{name:"method","onUpdate:modelValue":b[0]||(b[0]=E=>t.unref(l)())}),t.createVNode($n,{error:t.unref(_).error.value,"error-message":t.unref(_).errorMessage.value,label:t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout",onBlur:t.unref(_).onBlur,"onUpdate:modelValue":t.unref(_).onUpdate},null,8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(On,{name:"ssl_server_name","onUpdate:modelValue":b[1]||(b[1]=E=>t.unref(l)("ssl_server_name"))}),t.createVNode(Xn,{"field-name-validator":t.unref(h),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),OB=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=wn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=bn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),$B=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=wn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=bn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),BB=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=ve(),o=t.useTemplateRef("form"),r=wn("jq"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,addField:f,removeFieldByName:u,renameFieldByName:p,inputsFieldNames:m,nameValidator:h,skipValidationOnMount:y,toggleNodeValid:g,fieldNameValidator:_}=bn(e.nodeId,()=>o.value.getInnerData());function w(x,O){f("input",x,O)}function b(x){u("input",x)}function C(x,O){p("input",x,O)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:k}=bi({validationConfig:{jq:Zn(Jn({fieldName:E}),vB(1,10240,{fieldName:E}))},getValidationData:()=>({jq:i.value.jq}),skipValidationOnMount:y,toggleNodeValid:g}),T=k("jq",()=>l("jq"));return(x,O)=>{const Y=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Uo,{name:t.unref(i).name,validate:t.unref(h),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(Y,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),t.createVNode(On,{error:t.unref(T).error.value,help:t.unref(T).errorMessage.value,label:t.unref(E),multiline:"",name:"jq",resizable:"",rows:"2",onBlur:t.unref(T).onBlur,"onUpdate:modelValue":t.unref(T).onUpdate},null,8,["error","help","label","onBlur","onUpdate:modelValue"]),t.createVNode(Xn,{"field-name-validator":t.unref(_),"field-names":t.unref(m),items:t.unref(s),"onAdd:field":w,"onChange:input":t.unref(d),"onChange:inputs":t.unref(c),"onRemove:field":b,"onRename:field":C},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),VB=we(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},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:n}){const o=e,r=n,i=t.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=ia(o,r,!1),{i18n:d}=ve(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(E,k="key"){var T;f.value&&(await t.nextTick(),(T=f.value.querySelector(`[data-${k}-input="${E}"]`))==null||T.focus())}function h(){const E=l(),k=a.value.findIndex(({key:T})=>!T);m(k===-1?a.value.length-1:k),u.value=E}function y(E){var k;E.id===((k=u.value)==null?void 0:k.id)&&(u.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function _(E){var k;if(b(E)){E.key=p,delete i.value[E.id];return}if(E.id===((k=u.value)==null?void 0:k.id)){if(E.key.trim()==="")return;u.value=null,r("add:field",E.key,E.value)}else r("rename:field",p,E.key);p=E.key}function w(E,k){var x;if(k.id===((x=u.value)==null?void 0:x.id))return;const T=E.target.value.trim();r("change:value",k.key,T)}function b(E){delete i.value[E.id];const k=o.fieldNameValidator("output",p,E.key);if(k)return i.value[E.id]=k,k}function C(E){b(E)}return t.watchEffect(()=>{u.value&&!a.value.some(E=>E.id===u.value.id)&&a.value.push(u.value)}),(E,k)=>{const T=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),O=t.resolveComponent("KButton"),Y=t.resolveComponent("KInput"),K=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(T,{key:0,appearance:"danger",message:t.unref(c).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[t.createVNode(x,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(I,Q)=>(t.openBlock(),t.createBlock(K,{key:I.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${Q}`},{actions:t.withCtx(()=>[t.createVNode(O,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${Q}`,icon:"",onClick:A=>y(I)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(Y,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${Q}`,modelValue:I.key,"onUpdate:modelValue":[A=>I.key=A,A=>b(I)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Q,"data-testid":`ff-key-${t.unref(c).path.value}.${Q}`,error:!!i.value[I.id],"error-message":i.value[I.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:A=>C(I),onChange:A=>_(I),onFocus:A=>g(I)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(Y,{modelValue:I.value,"onUpdate:modelValue":A=>I.value=A,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${Q}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:A=>w(A,I)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(O,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!u.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-9f3f9fea"]]);function RB(e){const n={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?n[o]=JSON.stringify(r):n[o]=String(r);return n}function wi(e){const n={};for(const[o,r]of Object.entries(e))if(r!=null){n[o]=r;try{r==="null"?n[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(n[o]=JSON.parse(r))}catch{}}return n}function MB(e,n,o){const r={};for(const i of Object.keys(e))i===n?r[o]=e[n]:r[i]=e[i];return r}const DB=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=rt(),{fieldNameValidator:c}=bn(e.nodeId),d=wn("static"),f=Hp(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(C=>C.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const h=t.computed(()=>{var x;if(!u.value)return{};const b=((x=u.value.config)==null?void 0:x.values)??{},C={},E=o(u.value.id).map(O=>O.sourceField).filter(Boolean).map(O=>Gt(u.value,"output",O)).map(O=>O==null?void 0:O.name).filter(Boolean),k=u.value.fields.output.map(O=>O.name);return new Set([...E,...k]).forEach(O=>{if(O in b){C[O]=b[O];return}C[O]=""}),{name:u.value.name,values:RB(C)}});function y(b,C){if(!u.value)throw new Error("No selected node");if(r(e.nodeId,"output",b,!C),C){const E={values:wi({...h.value.values,[b]:C})};l(e.nodeId,E)}}function g(b,C){if(!u.value)throw new Error("No selected node");const E=Fn(u.value,"output",b);if(!E)throw new Error("No field found to rename");const k={values:wi(MB(h.value.values??{},b,C))};l(e.nodeId,k,!1),i(e.nodeId,E.id,C)}function _(b){var k;if(!u.value)throw new Error("No selected node");const C=Fn(u.value,"output",b);if(!C)throw new Error("No field found to delete");a((k=u.value)==null?void 0:k.id,C.id,!0,!1);const E={values:wi({...h.value.values})};delete E.values[b],l(e.nodeId,E)}function w(b,C){if(!u.value)throw new Error("No selected node");const E={...h.value.values};E[b]=C;const k={values:wi(E)};l(e.nodeId,k)}return(b,C)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>{var E;return[t.createVNode(Uo,{name:((E=u.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(VB,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":y,"onChange:value":w,"onRemove:field":_,"onRename:field":g},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),LB={class:"dk-kong-property-item"},FB={class:"property-type"},UB={class:"property-badges"},KB=we(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=ve(),r=e,i=n,{formData:a}=Ve(),l=t.ref(Lo(a.property)),s=t.computed(()=>Fo(a.property)),c=t.ref(Tl(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(_n).map(([m])=>{var g;const h=Fo(m)?(g=a.property)==null?void 0:g.startsWith(m.replace(Wn,"")):a.property===m;return{label:h&&c.value?m.replace(Wn,c.value):m,value:m,selected:h}}));function u(m){const h=yi.find(y=>{var g;return(g=a.property)==null?void 0:g.startsWith(y)});h&&(a.property=h+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Lo(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Lo(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=Tl(m),l.value=Lo(m)}),(m,h)=>{const y=t.resolveComponent("KBadge"),g=t.resolveComponent("KSelect"),_=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(g,{key:d.value,"enable-filtering":"",error:!m.validators.property.isValid.value,help:m.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:h[0]||(h[0]=w=>m.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",LB,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",FB,t.toDisplayString(t.unref(_n)[w.value].dataType),1)]),t.createElementVNode("div",UB,[t.unref(_n)[w.value].readable?(t.openBlock(),t.createBlock(y,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(_n)[w.value].writable?(t.openBlock(),t.createBlock(y,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(_,{key:0,"model-value":c.value,"onUpdate:modelValue":[h[1]||(h[1]=w=>c.value=w),u],error:!m.validators.key.isValid.value,"error-message":m.validators.key.error.value,label:"key",required:"",onBlur:h[2]||(h[2]=w=>m.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),jB=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=rt(),a=wn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,skipValidationOnMount:y,fieldNameValidator:g}=bn(e.nodeId,()=>n.value.getInnerData()),_=t.computed(()=>Ol(l.value.property));function w(C){var k;const E=(k=o.value)==null?void 0:k.id;if(!E)throw new Error("Expected selectedNode to be defined");Pl(C)||i(E,!1),Ol(C)||r(E,!1),c()}const{fields:b}=bi({validationConfig:()=>({property:Jn({fieldName:"Property"}),key:Fo(l.value.property)?Jn({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:Tl(l.value.property)}),skipValidationOnMount:y,toggleNodeValid:h});return(C,E)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(Uo,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(kt,{name:"content_type","onUpdate:modelValue":t.unref(c)},null,8,["onUpdate:modelValue"]),t.createVNode(KB,{validators:t.unref(b),"onUpdate:modelValue":w,"onUpdate:propertyKey":E[0]||(E[0]=k=>t.unref(c)("property-key"))},null,8,["validators"]),_.value?(t.openBlock(),t.createBlock(Xn,{key:0,"field-name-validator":t.unref(g),"field-names":t.unref(p),items:t.unref(d),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),GB=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=wn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,skipValidationOnMount:p,fieldNameValidator:m}=bn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:h}=bi({validationConfig:{status:Zn(qp("integer",{fieldName:"Status"}),zp(200,255,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),skipValidationOnMount:p,toggleNodeValid:u}),y=h("status",()=>a("status"));return(g,_)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Uo,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode($n,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"status",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(ra,{name:"warn_headers_sent","onUpdate:modelValue":_[0]||(_[0]=w=>t.unref(a)())}),t.createVNode(Xn,{"field-name-validator":t.unref(m),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),qB=["innerHTML"],zB=we(t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:()=>_I},offsetTop:{default:()=>bI},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=rt(),o=t.computed(()=>e.nodeId&&n(e.nodeId)),r=t.computed(()=>{var i;switch((i=o.value)==null?void 0:i.type){case"call":return PB;case"service_request":return OB;case"response":return $B;case"jq":return BB;case"static":return DB;case"property":return jB;case"exit":return GB;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Te.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":i.maxWidth,"offset-top":i.offsetTop,visible:i.visible,onClose:a[0]||(a[0]=l=>i.$emit("close"))},t.createSlots({default:t.withCtx(()=>[o.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(Ct)(o.value.type)},null,8,qB)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:i.nodeId,class:"dk-node-properties-panel-form","node-id":i.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Lp,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible"]))}}),[["__scopeId","data-v-1bb64727"]]),HB={class:"dk-editor-content"},YB={class:"header"},WB={class:"title"},XB={class:"body"},ZB={class:"node-selection-panel"},JB={class:"main"},QB=we(t.defineComponent({__name:"EditorContent",setup(e){const{t:n}=Re.createI18n("en-us",je),{sidePanelExpanded:o}=Oa(),{propertiesPanelOpen:r,selectedNode:i,newCreatedNodeId:a}=rt();function l(){r.value=!1,a.value=null}return t.watch(i,s=>{s||l(),(!s||s.id!==a.value)&&(a.value=null)}),(s,c)=>{var d;return t.openBlock(),t.createElementBlock("div",HB,[t.createElementVNode("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o)}])},[t.createElementVNode("header",YB,[t.createElementVNode("h2",WB,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",XB,[t.createElementVNode("div",ZB,[t.createVNode(mB)])])],2),t.createElementVNode("div",JB,[t.createVNode(rB)]),t.createVNode(zB,{"node-id":(d=t.unref(i))==null?void 0:d.id,visible:t.unref(r),onClose:l},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-0e99b201"]]),eV={key:0,class:"dk-editor-modal"},tV=we(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(l=>({be550f98:t.unref(yI),"2eb355b0":t.unref(hI)}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal");A$(async(...l)=>{o.value=!0;const s=await r.value.open(...l);return o.value=!1,s});const i=Je.useScrollLock(document);t.watch(n,l=>{i.value=!!l},{immediate:!0});function a(){n.value=!1}return(l,s)=>n.value?(t.openBlock(),t.createElementBlock("div",eV,[t.createVNode(Q$,{class:"nav",onBack:a}),t.createVNode(QB,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(W$,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-2aca1995"]]),nV={class:"dk-flow-editor"},oV={class:"flow-panels-container"},rV={class:"overlay"},iV={class:"field"},aV=we(t.defineComponent({__name:"FlowEditor",props:{config:{},uiData:{},isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){var s,c;const{t:o}=Re.createI18n("en-us",je),r=n,i=t.useTemplateRef("flowPanels");function a(d,f){r("change",{...e.config,nodes:d},{...e.uiData,nodes:f})}const{modalOpen:l}=MC(((s=e.config)==null?void 0:s.nodes)??[],((c=e.uiData)==null?void 0:c.nodes)??[],{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{var d;l.value||(d=i.value)==null||d.fitView()}),(d,f)=>{const u=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",nV,[t.createElementVNode("div",oV,[t.createVNode(Kp,{ref_key:"flowPanels",ref:i,readonly:""},null,512),t.createElementVNode("div",rV,[t.createVNode(u,{appearance:"secondary",class:"button-open-editor",onClick:f[0]||(f[0]=p=>l.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(ke.ExpandIcon))]),_:1})])]),t.createVNode(tV,{open:t.unref(l),"onUpdate:open":f[1]||(f[1]=p=>t.isRef(l)?l.value=p:null)},null,8,["open"]),t.createElementVNode("div",iV,[t.createVNode(ra,{name:"config.debug"})])])}}}),[["__scopeId","data-v-615e9dae"]]),lV=["innerHTML"],sV=t.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:n}=Re.createI18n("en-us",je),o=e,r=t.inject(lc.DATAKIT_ENABLE_FLOW_EDITOR,!1),{editorMode:i}=Oa(),a=t.computed(()=>r?i.value:"code"),l={flow:ke.DesignIcon,code:ke.CodeblockIcon},s=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}],c=t.computed(()=>{switch(i.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}}),d=t.ref({...o.model.config}),f=t.ref();function u(y){for(const g in y.config)g!=="nodes"&&(d.value[g]=y.config[g])}function p(y){var g;o.onFormChange({config:y}),(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!0}),d.value=y}function m(y,g){p(y),f.value=g}function h(y){var g;(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!1,error:y})}return(y,g)=>(t.openBlock(),t.createBlock(ok,t.mergeProps(o,{class:"dk-form"}),t.createSlots({default:t.withCtx(_=>[t.createVNode(mt,t.mergeProps(_,{data:{config:d.value},tag:"div",onChange:u}),{default:t.withCtx(()=>[a.value==="flow"?(t.openBlock(),t.createBlock(aV,{key:0,config:d.value,"is-editing":y.isEditing,"ui-data":f.value,onChange:m},null,8,["config","is-editing","ui-data"])):a.value==="code"?(t.openBlock(),t.createBlock(SC,{key:1,class:"code-editor",config:d.value,editing:y.isEditing,onChange:p,onError:h},null,8,["config","editing"])):t.createCommentVNode("",!0)]),_:2},1040,["data"])]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:c.value},null,8,lV)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Te.KSegmentedControl),{modelValue:t.unref(i),"onUpdate:modelValue":g[0]||(g[0]=_=>t.isRef(i)?i.value=_:null),options:s},{"option-label":t.withCtx(({option:_})=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l[_.value]))),t.createTextVNode(" "+t.toDisplayString(_.label),1)]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1040))}}),Yp=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))typeof o=="string"&&(e[n]=o.split(/\s*,\s*/).filter(Boolean))},Wp=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},cV=we(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=$e.useI18n(),l={prepareFormData:c=>{var f,u;const d=xn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Wp(p.headers),Wp(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=xn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Yp(p.headers),Yp(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(mt,{class:"ai-mcp-config-form",config:l,data:c.data,schema:c.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{tools:t.withCtx(({name:f})=>[t.createVNode(hr,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(la)]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-7cb4b052"]]),Xp=Object.freeze(Object.defineProperty({__proto__:null,AIMcpForm:t.defineComponent({__name:"AIMcpForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(sa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(cV,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:sV,RequestCalloutForm:iw,ServiceProtectionForm:Jw},Symbol.toStringTag,{value:"Module"})),dV={class:"kong-ui-entities-plugin-form"},uV={key:1,class:"entity-form"},fV={class:"plugin-config-empty-state"},pV=we(t.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:n}){var Z,ae;const o=Object.keys(Ne.sharedForms),r=Object.keys(Xp);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,a=e,{axiosInstance:l}=ue.useAxios((Z=a.config)==null?void 0:Z.axiosRequestConfig),{parseSchema:s}=$e.useSchemas({entityId:((ae=a.entityMap.focusedEntity)==null?void 0:ae.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}=$e.usePluginHelpers(),m=$e.useExperimentalFreeForms(),{objectsAreEqual:h}=ue.useHelpers(),{i18n:{t:y}}=ve(),g=(G,ee)=>{let U=`${a.config.apiBaseUrl}${Be.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?U=U.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(U=U.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),U=U.replace(/{entity}/gi,G),U=U.replace(/{id}/gi,ee),U},_=G=>{let ee=`${a.config.apiBaseUrl}${Be.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?ee=ee.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(ee=ee.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),ee=ee.replace(/{entity}/gi,G),ee},w=(G,ee)=>{const U=g(G,ee);return l.get(U)},b=(G,ee)=>{const U=_(G);return a.config.app==="konnect"?l.get(U).then(ne=>{const{data:{data:re}}=ne;if(delete ee.size,delete ee.offset,re.length&&Object.keys(ee).length===1){const de=Object.keys(ee)[0],F=re.filter(W=>W[de]?!!W[de].toLowerCase().includes(ee[de].toLowerCase()):!1);ne.data.data=F}return ne}):l.get(U,{params:ee})};t.provide(Ne.FORMS_API_KEY,{getOne:w,getAll:b}),t.provide(Ne.FORMS_CONFIG,a.config);const C=t.ref(""),E=t.ref(""),k=t.ref(null),T=t.ref({}),x=t.reactive({}),O=t.reactive({}),Y=t.computed(()=>{var G;return(G=k.value)==null?void 0:G.options}),K=t.ref(!1),I=t.ref(),Q=(G,ee)=>{K.value=G??"",I.value=ee},A=G=>{var ee;(ee=I.value)==null||ee.call(I,G),K.value=!1},D=()=>{var F,W;const G={...a.schema},ee=O,U=x,ne=Object.keys(ee),re={};if(!u(T.value))for(let N=0;N<((W=(F=T.value)==null?void 0:F.fields)==null?void 0:W.length);N++)G[T.value.fields[N].model]=T.value.fields[N];Ne.customFields.forEach(N=>{G[N]&&(G[N].fields.forEach(v=>{v.fields&&v.fields.forEach(S=>{G[S.model]=S}),v.model&&(G[v.model]=v)}),delete G[N])}),ne.forEach(N=>{var B;if(!G[N]){N==="partials"&&(re[N]=ee[N]);return}const v=G[N];let S=ee[N];const P=U[N],$=Array.isArray(S)?"array":typeof S,J=v?v.valueType:null,te=v?v.valueArrayType:null,M=v?v.transform:null;if(S==null&&P==null&&!v.submitWhenNull)return;if(v){if(J&&$!==J)switch(J){case"array":$==="string"&&S.length&&(S=S.split(",").map(le=>{if(le=le.trim(),te==="string")return String(le);if(te==="number")return Number(le);if(te==="boolean"){if(typeof le=="string")return le.toLowerCase()==="true"||le==="1";if(typeof le=="number")return le===1}return le})),(!S||!S.length)&&(S=v.submitWhenNull?null:[]);break;case"number":S=Number(S);break;case"boolean":$==="string"&&(S=S.toLowerCase()==="true"||S==="1"),$==="number"&&(S=S===1);break;case"string":S=S==null?"":String(S);break}else J==="array"&&(!S||!S.length?S=v.submitWhenNull?null:[]:((B=v.inputAttributes)==null?void 0:B.type)==="number"&&(S=S.map(le=>Number(le))));if(v.type==="array"&&v.nestedFields){const le=ce=>{Object.keys(ce).forEach(se=>{ce[se]&&typeof ce[se]=="object"&&!Array.isArray(ce[se])&&ce[se]!==null?le(ce[se]):(ce[se]===void 0||ce[se]===null||typeof ce[se]=="number"&&isNaN(ce[se])||typeof ce[se]=="string"&&ce[se].trim().length===0)&&delete ce[se]})};S&&typeof S=="object"&&le(S)}v.type==="object-advanced"&&v.fields&&S!==null&&(Object.entries(S).length===0?S=null:Object.keys(S).forEach(le=>{Array.isArray(S[le])||(S[le]=S[le].split(","))}))}let z=c(N);if(v.fieldNameHasDashes){const[le,...ce]=z.split(".").reverse();z=[le.replace(/_/g,"-"),...ce].reverse().join(".")}if(J==="object-expand"){let le;[z,le]=z.split(".");let ce={};re[z]&&(ce=re[z]),ce[le]=S,S=ce}P!==void 0&&S===""&&S!==P?re[z]=J==="object"?{}:null:v.type==="checklist"&&S===""?re[z]=[]:S!==""&&(re[z]=S),re[z]=M?M(S):re[z],p(z,re)});const de=d(re);return E.value&&Object.assign(de,L.value),de},V=(G,ee={})=>{f(O,ee,G,a.editing),i("model-updated",{model:O,originalModel:x,data:D()})},X=(G,ee)=>{var re;const U={[ee]:G};typeof((re=a.schema[ee])==null?void 0:re.modelTransformer)=="function"&&(U[ee]=a.schema[ee].modelTransformer(G));const ne=Object.assign({},O,U);Object.assign(O,ne),i("model-updated",{model:O,originalModel:x,data:D()})},H=G=>{i("validity-change",G)},j=(G,ee)=>{Object.keys(G).forEach(U=>{var W,N;let ne=ee?`${ee}-${U}`:U,re=a.schema[ne];if(!re){const v=ee?`${ee}-${U.replace(/-/g,"_")}`:U.replace(/-/g,"_");(W=a.schema[v])!=null&&W.fieldNameHasDashes&&(ne=v,re=a.schema[ne]),ee&&((N=a.schema[ee])==null?void 0:N.keyFromObject)===U&&(ne=ee,re=a.schema[ne])}const de=G[U],F=typeof de;if(re&&re.type==="object-advanced"&&!de){O[ne]={},x[ne]={};return}if(Array.isArray(de)){O[ne]=JSON.parse(JSON.stringify(de)),x[ne]=JSON.parse(JSON.stringify(de));return}if(F==="object"&&de&&!de.length)return j(de,ne);if(F==="object"&&de&&de.length&&re.type==="input"){O[ne]=de.join(", "),x[ne]=de.join(", ");return}O[ne]=de,x[ne]=de}),i("model-updated",{model:O,originalModel:x,data:D()})},L=t.shallowRef(a.record),R=G=>{L.value=G,i("model-updated",{model:{...O,...G},originalModel:x,data:D()})},oe=t.ref(!0),ie=()=>{var G;if(a.record&&a.schema&&(j({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)&&j({consumer_id:a.record.consumer_id||a.record.consumer}),j(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)&&j({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&&V("redis",{partials:a.record.partials}),E.value?R(a.record):j(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const ee={};for(const U in a.entityMap){const ne=a.entityMap[U].id,re=a.entityMap[U].idField,de=re==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(re).replace("_","-"));Object.prototype.hasOwnProperty.call(O,de)&&(ee[de]=ne)}j(ee)}if((G=a.entityMap.consumer)!=null&&G.id&&a.schema&&a.credential){const ee={};Object.prototype.hasOwnProperty.call(O,"consumer")&&(ee.consumer=a.entityMap.consumer.id),j(ee)}oe.value=!1};return t.watch(oe,G=>{i("loading",G)}),t.watch(()=>a.schema,(G,ee)=>{var ne,re;if(h(G||{},ee||{}))return;const U=s(G);Object.assign(O,U.model),T.value={fields:(re=(ne=T.value)==null?void 0:ne.fields)==null?void 0:re.map(de=>({...de,disabled:de.disabled||!1}))},Object.assign(x,JSON.parse(JSON.stringify(U.model))),E.value=ac(U.model.name,m),C.value=Ne.getSharedFormName(U.model.name),ie()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var G,ee;k.value=s(a.schema),Object.assign(O,((G=k.value)==null?void 0:G.model)||{}),T.value=((ee=k.value)==null?void 0:ee.schema)||{},ie()}),(G,ee)=>{var ne;const U=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",dV,[oe.value?(t.openBlock(),t.createBlock(U,{key:0,type:"form"})):O.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",uV,[E.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(Xp[E.value]),{key:0,"form-model":O,"form-options":Y.value,"form-schema":T.value,"is-editing":e.editing,model:e.record,"on-form-change":R,"on-model-updated":X,"on-validity-change":H,schema:e.rawSchema,onGlobalAction:ee[0]||(ee[0]=(re,de)=>G.$emit("globalAction",re,de))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(re=>[re.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Xo.VaultSecretPickerProvider),t.mergeProps({key:0},re,{onOpen:Q}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):C.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Ne.sharedForms)[C.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":O,"form-options":Y.value,"form-schema":T.value,"is-editing":e.editing,"on-model-updated":X,"on-partial-toggled":V,"show-new-partial-modal":re=>G.$emit("showNewPartialModal",re)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(re=>[re.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Xo.VaultSecretPickerProvider),t.mergeProps({key:0},re,{onOpen:Q}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(t.openBlock(),t.createBlock(t.unref(Ne.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:O,options:Y.value,schema:T.value,onModelUpdated:X,onPartialToggled:V,onRefreshModel:D,onShowNewPartialModal:ee[1]||(ee[1]=re=>G.$emit("showNewPartialModal",re))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",fV,t.toDisplayString(t.unref(y)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ne=t.unref(It)[O.name])!=null&&ne.fieldRules&&(a.config.isNewOtelSchema||O.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(d0,{rules:t.unref(It)[O.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(re=>[re.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Xo.VaultSecretPickerProvider),t.mergeProps({key:0},re,{onOpen:Q}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Xo.VaultSecretPicker),{config:a.config,setup:K.value,onCancel:ee[2]||(ee[2]=()=>K.value=!1),onProceed:A},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-780e65cb"]]),mV={key:1},gV=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,o)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",mV,[t.renderSlot(n.$slots,"default")]))}}),hV={class:"kong-ui-entities-plugin-form-container"},yV={key:0},_V={class:"plugin-form-actions"},bV=we(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},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:n}){var te;const o=n,r=e,i=Qn.useRouter(),{i18n:{t:a}}=$e.useI18n(),{customSchemas:l,typedefs:s}=$e.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=$e.usePluginHelpers(),{getMessageFromError:d}=ue.useErrors(),{capitalize:f}=ue.useStringHelpers(),{objectsAreEqual:u}=ue.useHelpers(),{axiosInstance:p}=ue.useAxios((te=r.config)==null?void 0:te.axiosRequestConfig),m=t.ref(!1),h=t.computed(()=>!!r.pluginId),y=t.computed(()=>r.pluginId?ue.EntityBaseFormType.Edit:ue.EntityBaseFormType.Create),g=t.ref(void 0),_=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),C=t.ref({}),E=t.ref(),k=t.ref();t.provide(Ic,{redisType:E,redisPath:k,isEditing:h.value});const T=t.ref(!1),x=t.reactive({enabled:!0,protocols:[],tags:[]}),O=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),Y=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&Y.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const K=t.ref(""),I=t.computed(()=>{if(w.value){let M=Be.form[r.config.app].credential[y.value];return M=M.replace(/{resourceEndpoint}/gi,V.value),M}return r.config.entityType&&r.config.entityId?Be.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):Be.form[r.config.app].edit.all}),Q=()=>{m.value=!m.value},A=t.computed(()=>{var se,_e,be,Ce,xe,pe,fe,ot;const M=r.config.entityType==="consumers"&&r.config.entityId||((_e=(se=b.value)==null?void 0:se.consumer)==null?void 0:_e.id),z=r.config.entityType==="consumer_groups"&&r.config.entityId||((Ce=(be=b.value)==null?void 0:be.consumer_group)==null?void 0:Ce.id),B=r.config.entityType==="services"&&r.config.entityId||((pe=(xe=b.value)==null?void 0:xe.service)==null?void 0:pe.id),le=r.config.entityType==="routes"&&r.config.entityId||((ot=(fe=b.value)==null?void 0:fe.route)==null?void 0:ot.id);if(!(M||z||B||le))return{global:{entity:q.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ce={};return B&&(ce.service={entity:q.PluginScope.SERVICE,entityEndpoint:"services",id:B,idField:Zt.SERVICE}),le&&(ce.route={entity:q.PluginScope.ROUTE,entityEndpoint:"routes",id:le,idField:Zt.ROUTE}),M&&(ce.consumer={entity:q.PluginScope.CONSUMER,entityEndpoint:"consumers",id:M,idField:Zt.CONSUMER}),z&&(ce.consumer_group={entity:q.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:z,idField:Zt.CONSUMER_GROUP}),r.config.entityType&&(ce.focusedEntity={entity:q.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:Zt[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),ce}),D=t.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||y.value===ue.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}),V=t.computed(()=>{var B;const M=r.developer?"developers":"consumers",z=((B=Nn[r.pluginType])==null?void 0:B.endpoint)||"/plugins";return`${M}/${r.config.entityId}${r.developer?"/credentials":""}${z}`}),X=M=>{const z=Array.from(new Set(M.map(B=>typeof B)));return z.length>1?"string":z[0]},H=(M,z,B,le)=>{var be,Ce;let ce=z&&z.fields||[];const se=l[r.pluginType],_e=(Ce=(be=Nn[r.pluginType])==null?void 0:be.schema)==null?void 0:Ce.fields;return Array.isArray(ce)&&(ce=ce.reduce((xe,pe)=>{const fe=Object.keys(pe)[0];return fe.match(/-/g)?xe[fe.replace(/-/g,"_")]={...pe[fe],fieldNameHasDashes:!0}:xe[fe]=pe[fe],xe},{})),Object.keys(ce).sort().forEach(xe=>{var Ko,jo,Go,qo,zo,Ho,Yo;const pe=ce[xe];pe.type==="set"&&(pe.type="array");const fe=M?`${M}-${xe}`:`${xe}`;if((Ko=se==null?void 0:se.fieldsToDelete)!=null&&Ko.includes(fe)){ic(B,fe);return}if(Object.prototype.hasOwnProperty.call(pe,"overwrite")||pe.hidden)return;if(pe.type==="table")return H(fe,pe.schema,B);if(pe.fields)return le&&pe.type==="record"?(B[fe]={type:"object",model:xe,schema:{fields:Object.values(H(fe,pe,{},!0))}},B):H(fe,pe,B);if(B[fe]={id:fe,model:xe},B[fe].type=pe.type==="boolean"?"checkbox":"input",B[fe].required=pe.required,B[fe].referenceable=pe.referenceable,fe.startsWith("config-"))if(!le&&pe.type==="array"&&(K.value=fe),le&&K.value&&fe.startsWith(K.value)){const Ee=fe.slice(K.value.length+1);B[fe].label=Ee.split("-").map(c).join(".")}else B[fe].label=c(fe);if((M==="config"||M.startsWith("config-"))&&(jo=ce[xe])!=null&&jo.description&&(B[fe].help=Wo.marked.parse(ce[xe].description,{mangle:!1,headerIds:!1})),pe.type==="map"){if(B[fe].type="object-advanced",B[fe].values=pe.values,pe.values.type==="array"){const{type:Ee}=pe.values.elements||{};B[fe].schema={fields:[{schema:{fields:[{...Pe,model:fe,valueArrayType:Ee==="integer"?"number":Ee||"string",inputAttributes:{...Pe.inputAttributes,type:Ee==="integer"?"number":"text",inputMode:Ee==="integer"?"numeric":"text"}}]}}]}}else pe.values.fields&&(B[fe].schema={fields:[{type:"object",model:"object",schema:{fields:pe.values.fields.map(Ee=>{const Ye=Object.keys(Ee)[0];return{model:Ye,type:"input",label:f(Ye),placeholder:Ye,inputType:Ee[Ye].type}})}}]});return B}if(pe.enum&&pe.type==="array"&&(B[fe].type="checklist",B[fe].values=pe.enum,B[fe].multi=!0,B[fe].multiSelect=!0),pe.one_of&&pe.type!=="array"&&(B[fe].type="select",B[fe].values=pe.one_of,B[fe].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),pe.elements&&pe.type==="array"){const Ee=pe.elements;if(B[fe].referenceable=Ee.referenceable,B[fe].elements=Ee,["string","integer","number"].includes(Ee.type)&&!Ee.one_of){const{id:Ye,help:Ue,label:Se,hint:Ze,values:at,referenceable:kn,model:En}=B[fe],{inputAttributes:ki,...pR}=JSON.parse(JSON.stringify(Pe));ki.type=Ee.type==="string"?"text":"number",B[fe]={id:Ye,help:Ue,label:Se,hint:Ze,values:at,referenceable:kn,model:En,inputAttributes:ki,...pR}}}if(pe.hint&&(B[fe].hint=pe.hint),se&&!se.overwriteDefault&&Object.keys(se).forEach(Ee=>{if(Ee===fe){const{help:Ye,label:Ue,hint:Se,values:Ze,referenceable:at,elements:kn}=B[fe],{help:En,...ki}=se[Ee];B[fe]={help:Ye,label:Ue,hint:Se,values:Ze,referenceable:at,elements:kn,...ki},typeof En=="string"&&(B[fe].help=Wo.marked.parse(En,{mangle:!1,headerIds:!1}))}}),pe.type==="array"&&((Go=pe.elements)==null?void 0:Go.type)==="record"&&Array.isArray(pe.elements.fields)){let Ee={};for(const Ue of pe.elements.fields)Ee={...Ee,...Ue};const Ye=(Ho=(zo=(qo=B[fe])==null?void 0:qo.items)==null?void 0:zo.schema)==null?void 0:Ho.fields;if(Array.isArray(Ye))for(const Ue of B[fe].items.schema.fields){const Se=(Yo=Ee[Ue.model])==null?void 0:Yo.description;Ue.help===void 0&&typeof Se=="string"&&(Ue.help=Wo.marked.parse(Se,{mangle:!1,headerIds:!1}))}if(Ye||(B[fe].type="array",B[fe].newElementButtonLabelClasses="kong-form-new-element-button-label",B[fe].fieldClasses="array-card-container-wrapper",B[fe].itemContainerComponent="FieldArrayCardContainer",B[fe].items={type:"object",schema:{fields:Object.values(H(fe,pe.elements,{},!0))}},B[fe].items.schema.fields.forEach(Ue=>{var Se,Ze;for(const at of pe.elements.fields){const kn=Object.keys(at)[0],En=((Ze=(Se=Ue.id)==null?void 0:Se.split)==null?void 0:Ze.call(Se,"-"))??[];if(En[En.length-1]===kn){Ue.model=kn,Ue.label=c(kn);break}}}),pe.elements.type==="record"&&(B[fe].nestedFields=!0)),!B[fe].nestedFields)B[fe].items.default=()=>pe.elements.fields.reduce((Ue,Se)=>{const Ze=Object.keys(Se)[0];return Ue[Ze]=Se[Ze].default,Ue},{});else{const Ue=(Se,Ze)=>{if(Se.type==="object"){Se.model&&(Ze[Se.model]={});for(const at of Se.schema.fields)Ue(at,Se.model?Ze[Se.model]:Ze)}else Se.model&&(Ze[Se.model]=Se.default)};B[fe].items.default=()=>{const Se={};return Ue(B[fe].items,Se),Se}}}if(w.value&&_e){for(let Ee=0;Ee<_e.length;Ee++)if(_e[Ee][fe]){B[fe]={...B[fe],..._e[Ee][fe]};break}}if(pe.required&&pe.type!=="boolean"&&(B[fe].required=!0,B[fe].selectOptions={hideNoneSelectedText:!0}),pe.required&&pe.type==="boolean"&&(B[fe].default=pe.default??!1),pe.default!=null&&typeof pe.default!="object"&&pe.default!=="function"&&(B[fe].default=pe.default),B[fe].type==="input"){["string","number"].includes(typeof B[fe].default)&&r.config.app==="konnect"&&(B[fe].placeholder=`Default: ${B[fe].default===""?"<empty string>":B[fe].default}`);const{type:Ee}=pe.elements||{};Ee&&(B[fe].valueArrayType=Ee==="integer"?"number":Ee),B[fe].inputType=pe.type==="array"||pe.type==="string"?pe.encrypted?"password":"text":pe.type}let ot="string";pe.enum?ot=X(pe.enum):pe.type==="boolean"?ot="boolean":pe.type==="number"||pe.type==="integer"?(ot="number",B[fe].inputType="number"):pe.type==="array"?(ot="array",B[fe].default=pe.default,pe.len_min>0&&(B[fe].submitWhenNull=!0)):pe.type==="foreign"?ot="object":pe.default&&Array.isArray(pe.default)?(ot="array",B[fe].valueArrayType=X(pe.default)):pe.default&&(ot=typeof pe.default),B[fe].valueType=ot,pe.fieldNameHasDashes&&(B[fe].fieldNameHasDashes=!0)}),B},j=()=>{var xe,pe,fe,ot,Ko,jo,Go,qo,zo,Ho,Yo,Ee;const M=((xe=It[r.pluginType])==null?void 0:xe.scope.includes(q.PluginScope.SERVICE))??!0,z=((pe=It[r.pluginType])==null?void 0:pe.scope.includes(q.PluginScope.ROUTE))??!0,B=((fe=It[r.pluginType])==null?void 0:fe.scope.includes(q.PluginScope.CONSUMER))??!0,le=r.config.disableConsumerGroupScope?!1:((ot=It[r.pluginType])==null?void 0:ot.scope.includes(q.PluginScope.CONSUMER_GROUP))??!0,ce=r.config.entityType==="consumers"&&!!r.config.entityId||!!((jo=(Ko=b.value)==null?void 0:Ko.consumer)!=null&&jo.id),se=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((qo=(Go=b.value)==null?void 0:Go.consumer_group)!=null&&qo.id),_e=r.config.entityType==="services"&&!!r.config.entityId||!!((Ho=(zo=b.value)==null?void 0:zo.service)!=null&&Ho.id),be=r.config.entityType==="routes"&&!!r.config.entityId||!!((Ee=(Yo=b.value)==null?void 0:Yo.route)!=null&&Ee.id),Ce=[];if(M&&Ce.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:_e&&r.disableScopeSelection}),z&&Ce.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}),B&&Ce.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:ce&&r.disableScopeSelection}),le&&Ce.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}),Ce.length){const Ye=[...M?["service"]:[],...z?["route"]:[],...B?["consumer"]:[],...le?["consumer_group"]:[]],Se=Ye.splice(Ye.length-2,2).map(at=>a(at==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${at}.plural`)).join(`${Ye.length>0?",":""} and/or `),Ze=["Specific",[...Ye.length>0?[Ye.map(at=>a(at==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${at}.plural`)).join(", ")]:[],Se].join(", ")].join(" ");D.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Ze,fields:[]}),D.selectionGroup.fields[1].fields=Ce}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(D,l[r.pluginType].formSchema)},L=t.computed(()=>!u(O.fields,x,!0)),R=t.computed(()=>!$.value&&!T.value&&(y.value===ue.EntityBaseFormType.Create||L.value)),oe=t.ref(!1),ie=t.ref(),Z=M=>{r.credential&&M.password&&(M.password=""),O.fields.id=(M==null?void 0:M.id)||void 0,ie.value=M==null?void 0:M.ordering,Object.assign(x,O.fields),b.value=M,oe.value=!0},ae=t.ref({}),G=M=>{var z;O.fields=M.model,O.fields.id=((z=b.value)==null?void 0:z.id)||void 0,Object.assign(x,M.originalModel),ae.value=M.data,r.isWizardStep&&o("model-updated",{model:O.fields,data:M.data,resourceEndpoint:V.value})},ee=t.ref(new Map),U=t.computed(()=>[O.clientErrorMessage,O.serverErrorMessage].filter(Boolean).join("; ")),ne=M=>{M.valid?ee.value.delete(M.model):ee.value.set(M.model,M.error),O.clientErrorMessage=[...ee.value.entries()].map(([z,B])=>`${z}: ${typeof B=="string"?B:d(B)}`).join("; "),O.clientErrorMessage&&(O.serverErrorMessage="")};t.watch([A,oe],(M,z)=>{const B=M[0]!==z[0],le=M[1],ce=z[1];if(!w.value&&y.value===ue.EntityBaseFormType.Edit&&(B||le&&le!==ce)){const se=H("config",C.value,D);W.value&&(se._isCustomPlugin=!0),E.value&&(se._supported_redis_partial_type=E.value),_.value=se}},{deep:!0});const re=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},de=t.computed(()=>{let M=`${r.config.apiBaseUrl}${Be.form[r.config.app].validate}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{id}/gi,r.pluginId),M}),F=t.computed(()=>{const M=r.config.entityType&&r.config.entityId&&!r.developer,z=w.value?Be.form[r.config.app].credential[y.value]:Be.form[r.config.app][y.value][M?"forEntity":"all"];let B=`${r.config.apiBaseUrl}${z}`;return r.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),B=B.replace(/{resourceEndpoint}/gi,V.value),B=B.replace(/{id}/gi,r.pluginId),B=B.replace(/{entityType}/gi,r.config.entityType||""),B=B.replace(/{entityId}/gi,r.config.entityId||""),B}),W=t.computed(()=>!Object.keys(It).includes(r.pluginType)),N=t.computed(()=>{const M=ae.value;if(w.value){for(const z in q.PluginScope){const B=q.PluginScope[z];M[B]&&!M[B].id&&(M[B]={id:r.config.entityId})}delete M.created_at}return ae.value.partials&&k.value&&ic(M,k.value),M}),v=async()=>{if(!O.clientErrorMessage&&!r.isWizardStep)try{O.isReadonly=!0;let M;const z=JSON.parse(JSON.stringify(N.value)),B=l[r.pluginType];typeof(B==null?void 0:B.shamefullyTransformPayload)=="function"&&B.shamefullyTransformPayload({originalModel:x,model:O.fields,payload:z,schema:_.value}),!w.value&&!W.value&&await p.post(de.value,z),y.value==="create"?M=await p.post(F.value,z):y.value==="edit"&&(M=r.config.app==="konnect"||E.value&&z.partials?await p.put(F.value,Object.assign({ordering:ie.value},z)):await p.patch(F.value,z)),Object.assign(x,O.fields),o("update",M==null?void 0:M.data)}catch(M){O.serverErrorMessage=d(M),o("error",M)}finally{O.isReadonly=!1}},S=t.computed(()=>{var le;const M=w.value?(le=Nn[r.pluginType])==null?void 0:le.schemaEndpoint:r.pluginType,z=w.value?Be.form[r.config.app].credentialSchema:Be.form[r.config.app].pluginSchema;let B=`${r.config.apiBaseUrl}${z}`;return r.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),B=B.replace(/{plugin}/gi,M),B}),P=t.ref(""),$=t.ref(!1),J=t.ref("");return t.onBeforeMount(async()=>{var M,z,B,le;$.value=!0;try{if(w.value&&r.config.app==="konnect"){const ce=(M=Nn[r.pluginType])==null?void 0:M.schemaEndpoint,se=pm[ce];P.value=ce,_.value=H("",se,{}),$.value=!1}else{const ce=r.schema??(await p.get(S.value)).data;if(g.value=ce,ce)if(w.value)_.value=H("",ce,{}),$.value=!1;else{const se=ce.fields.find(be=>be.config);C.value=se?se.config:ce,ce.supported_partials&&(E.value=Object.keys(ce.supported_partials).find(be=>[Jo.REDIS_CE,Jo.REDIS_EE].includes(be)),k.value=(z=ce.supported_partials[E.value])==null?void 0:z[0]),j();const _e=(B=ce.fields.find(be=>be.protocols))==null?void 0:B.protocols;if(_e){const{default:be=[],elements:Ce={}}=_e;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"),(le=Ce.one_of)!=null&&le.length&&(D.protocols.values=Ce.one_of.map(xe=>({label:xe,value:xe})))}if(oe.value||y.value===ue.EntityBaseFormType.Create){const be=H("config",C.value,D);E.value&&(be._supported_redis_partial_type=E.value),W.value&&(be._isCustomPlugin=!0),_.value=be}}}}catch(ce){console.error(ce),J.value=d(ce),o("error:fetch-schema",ce)}finally{$.value=!1}}),(M,z)=>{const B=t.resolveComponent("KSkeleton"),le=t.resolveComponent("KEmptyState"),ce=t.resolveComponent("KButton"),se=t.resolveComponent("KTabs"),_e=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",hV,[$.value?(t.openBlock(),t.createBlock(B,{key:0,type:"form"})):J.value?(t.openBlock(),t.createBlock(le,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(a)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ue.EntityBaseForm),{key:2,"can-submit":R.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"error-message":U.value,"fetch-url":I.value,"form-fields":N.value,"is-readonly":O.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:re,"onFetch:error":z[4]||(z[4]=be=>M.$emit("error",be)),"onFetch:success":Z,onLoading:z[5]||(z[5]=be=>M.$emit("loading",be))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",yV)):(t.openBlock(),t.createBlock(gV,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",_V,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ce,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:z[3]||(z[3]=be=>Q())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(ce,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:O.isReadonly,onClick:re},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(ce,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!R.value||O.isReadonly,type:"submit",onClick:v},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:v},null,32),t.createVNode(pV,{config:e.config,credential:w.value,editing:y.value===t.unref(ue.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,"entity-map":A.value,"raw-schema":g.value,record:b.value,schema:_.value,onGlobalAction:z[0]||(z[0]=(be,Ce)=>M.$emit("globalAction",be,Ce)),onLoading:z[1]||(z[1]=be=>T.value=be),onModelUpdated:G,onShowNewPartialModal:z[2]||(z[2]=be=>M.$emit("showNewPartialModal",be)),onValidityChange:ne},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"])),t.createVNode(_e,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(a)("view_configuration.title"),visible:m.value,onClose:Q},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(se,{"data-testid":"form-view-configuration-slideout-tabs",tabs:Y.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ue.JsonCodeBlock),{config:e.config,"entity-record":N.value,"fetcher-url":F.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ue.YamlCodeBlock),{"entity-record":N.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ue.TerraformCodeBlock),{"credential-type":P.value,"entity-record":N.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-420ab237"]]),wV={class:"kong-ui-entities-plugins-list"},kV={class:"button-row"},EV={class:"empty-state-icon-gateway"},CV={class:"name-cell-wrapper"},NV={class:"info-wrapper"},vV={key:0,class:"info-name"},SV={key:1,class:"info-name"},xV={key:2,class:"info-type"},AV={key:1},IV=we(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var S,P;const o=$e.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=$e.useI18n(),l=Qn.useRouter(),{axiosInstance:s}=ue.useAxios((S=i.config)==null?void 0:S.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ue.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var $;return(($=i.config)==null?void 0:$.entityType)==="consumers"}),m=t.computed(()=>{var $;return(($=i.config)==null?void 0:$.entityType)==="consumer_groups"}),h=i.config.app==="konnect"||ue.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),y=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(P=i.config)!=null&&P.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,w=t.computed(()=>{var J,te,M,z;let $=i.config.entityType?`${i.config.apiBaseUrl}${Be.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Be.list[i.config.app].all}`;return i.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,((J=i.config)==null?void 0:J.controlPlaneId)||""):i.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,(te=i.config)!=null&&te.workspace?`/${i.config.workspace}`:"")),$.replace(/{entityType}/gi,((M=i.config)==null?void 0:M.entityType)||"").replace(/{entityId}/gi,((z=i.config)==null?void 0:z.entityId)||"")}),b=t.ref(""),C=t.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:E,fetcherState:k,fetcherCacheKey:T}=ue.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),x=()=>{b.value=""},O=()=>{T.value++},Y=t.ref(null),K=$=>{var te,M,z,B;const J=[];return((te=$.route)!=null&&te.id||$.route_id)&&J.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((M=$.service)!=null&&M.id||$.service_id)&&J.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((z=$.consumer)!=null&&z.id||$.consumer_id)&&J.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((B=$.consumer_group)!=null&&B.id||$.consumer_group_id)&&J.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),J.length?J:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},I=async($,J)=>{var te;return $===null?!1:await((te=i.canRetrieveScopedEntity)==null?void 0:te.call(i,$,J.id))},Q=($,J)=>{var M,z,B,le,ce;let te=null;switch($){case"route":te=(M=J.route)==null?void 0:M.id;break;case"service":te=(z=J.service)==null?void 0:z.id;break;case"consumer":te=(B=J.consumer)==null?void 0:B.id;break;case"consumer_group":te=(le=J.consumer_group)==null?void 0:le.id;break}te&&((ce=i.config)!=null&&ce.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute($,te))},A=t.ref(!1),D=t.ref(null),V=t.computed(()=>{const $={action:"disable",id:"",name:""};if(D.value){const{enabled:J,id:te,name:M}=D.value;$.action=J?"disable":"enable",$.id=te,$.name=o.getDisplayName(M)||te}return $}),X=$=>{A.value=!0,D.value=$},H=()=>{A.value=!1,D.value=null},j=async()=>{var M,z,B,le,ce,se,_e,be;if(!await((M=i.canEdit)==null?void 0:M.call(i,D.value))||!D.value)return;let J=`${i.config.apiBaseUrl}${(ce=Be.item[i.config.app])==null?void 0:ce[(z=i.config)!=null&&z.entityType?"forEntity":"all"].replace(/{entityType}/gi,((B=i.config)==null?void 0:B.entityType)||"").replace(/{entityId}/gi,((le=i.config)==null?void 0:le.entityId)||"")}`.replace(/{id}/gi,D.value.id||"");i.config.app==="konnect"?J=J.replace(/{controlPlaneId}/gi,((se=i.config)==null?void 0:se.controlPlaneId)||""):i.config.app==="kongManager"&&(J=J.replace(/\/{workspace}/gi,(_e=i.config)!=null&&_e.workspace?`/${i.config.workspace}`:""));const te=!D.value.enabled;try{const{data:Ce}=((be=i.config)==null?void 0:be.app)==="konnect"?await s.put(J,{...D.value,enabled:te},{timeout:12e4}):await s.patch(J,{...D.value,enabled:te},{timeout:12e4});r("toggle-enabled",te,Ce),D.value.enabled=te}catch(Ce){r("error",Ce)}},L=async($,J)=>{const te=$.id;if(!await J(te)){r("copy:error",{entity:$,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:$,field:"id",message:a("copy.success",{val:te})})},R=async($,J)=>{const te=JSON.stringify($);if(!await J(te)){r("copy:error",{entity:$,message:a("errors.copy")});return}r("copy:success",{entity:$,message:a("copy.success_brief")})},oe=async $=>{var te;await((te=i.canRetrieve)==null?void 0:te.call(i,$))&&l.push(i.config.getViewRoute($))},ie=$=>({label:a("actions.view"),to:i.config.getViewRoute($)}),Z=$=>({label:a("actions.edit"),to:i.config.getEditRoute($)}),ae=$=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute($)}),G=t.ref(void 0),ee=t.ref(!1),U=t.ref(!1),ne=t.ref(""),re=ue.useDeleteUrlBuilder(i.config,w.value),de=$=>{G.value=$,ee.value=!0},F=()=>{ee.value=!1},W=async()=>{var $,J,te;if(($=G.value)!=null&&$.id){U.value=!0;try{await s.delete(re(G.value.id)),U.value=!1,ee.value=!1,T.value++,r("delete:success",G.value)}catch(M){ne.value=((te=(J=M.response)==null?void 0:J.data)==null?void 0:te.message)||M.message||a("errors.delete"),r("error",M)}finally{U.value=!1}}},N=()=>{l.push(i.config.createRoute)};t.watch(k,$=>{var J,te,M;if($.status===ue.FetcherStatus.Error){Y.value={title:a("errors.general")},(M=(te=(J=$.error)==null?void 0:J.response)==null?void 0:te.data)!=null&&M.message&&(Y.value.message=$.error.response.data.message),r("error",$.error);return}Y.value=null});const v=t.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 t.onBeforeMount(async()=>{await i.canCreate()&&(v.value.title=a("plugins.list.empty_state.title"),v.value.ctaText=a("actions.create"))}),($,J)=>{const te=t.resolveComponent("KButton"),M=t.resolveComponent("KBadge"),z=t.resolveComponent("KTruncate"),B=t.resolveComponent("KInputSwitch"),le=t.resolveComponent("KDropdownItem"),ce=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",wV,[t.createVNode(t.unref(ue.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":y.value,"empty-state-options":v.value,"enable-entity-actions":"","error-message":Y.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(T),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(_),title:e.title,"title-tag":e.titleTag,onClearSearchInput:x,"onClick:row":J[4]||(J[4]=se=>oe(se)),onSort:O,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ue.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":J[0]||(J[0]=se=>b.value=se),config:C.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",kV,[!u.value&&f.value?(t.openBlock(),t.createBlock(te,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:J[1]||(J[1]=se=>$.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(te,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:se})=>[t.createElementVNode("div",CV,[t.createVNode(t.unref(to.PluginIcon),{class:"plugin-icon",name:se.name,size:24},null,8,["name"]),t.createElementVNode("div",NV,[se.instance_name?(t.openBlock(),t.createElementBlock("span",vV,t.toDisplayString(se.instance_name),1)):(t.openBlock(),t.createElementBlock("span",SV,t.toDisplayString(t.unref(o).getDisplayName(se.name)),1)),se.instance_name?(t.openBlock(),t.createElementBlock("span",xV,t.toDisplayString(t.unref(o).getDisplayName(se.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:se})=>[K(se).length>0?(t.openBlock(),t.createBlock(z,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(K(se),_e=>(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:_e.badgeText,"auth-function":()=>I(_e.type,se),"force-show":""},{default:t.withCtx(({isAllowed:be})=>[t.createVNode(M,{class:t.normalizeClass(be||"disabled"),onClick:t.withModifiers(Ce=>be&&_e.type&&Q(_e.type,se),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_e.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",AV,"-"))]),enabled:t.withCtx(({row:se})=>[t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(se)&&await e.canToggle(se)),"force-show":""},{default:t.withCtx(({isAllowed:_e})=>{var be,Ce;return[t.createElementVNode("div",{onClick:J[3]||(J[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(B,{disabled:!_e,"disabled-tooltip-text":!_e&&((Ce=(be=e.config).getToggleDisabledTooltip)==null?void 0:Ce.call(be,se))||void 0,"model-value":se.enabled,onClick:t.withModifiers(xe=>_e&&X(se),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:se})=>[t.createVNode(M,{appearance:t.unref(tc)(se)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(tc)(se)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:se})=>[t.createVNode(t.unref(ue.TableTags),{tags:se},null,8,["tags"])]),actions:t.withCtx(({row:se})=>[t.createVNode(ce,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(le,{"data-testid":"action-entity-copy-id",onClick:be=>L(se,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(ce,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(le,{"data-testid":"action-entity-copy-json",onClick:be=>R(se,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(se)},{default:t.withCtx(()=>[t.createVNode(le,{"data-testid":"action-entity-view","has-divider":"",item:ie(se)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canEdit(se)},{default:t.withCtx(()=>[t.createVNode(le,{"data-testid":"action-entity-edit",item:Z(se)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(se)},{default:t.withCtx(()=>[ae(se)?(t.openBlock(),t.createBlock(le,{key:0,"data-testid":"action-entity-config-dyn-order",item:ae(se)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canDelete(se)},{default:t.withCtx(()=>[t.createVNode(le,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_e=>de(se)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var se;return[t.createVNode(t.unref(ue.EntityEmptyState),{"action-button-text":t.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:t.unref(a)("plugins.list.empty_state_v2.description"),"learn-more":e.config.app==="konnect",title:t.unref(a)("plugins.list.empty_state_v2.title"),"onClick:create":N,"onClick:learnMore":J[2]||(J[2]=_e=>$.$emit("click:learn-more"))},t.createSlots({image:t.withCtx(()=>[t.createElementVNode("div",EV,[t.createVNode(t.unref(ke.PlugIcon),{color:t.unref(Vw),size:t.unref(Mw)},null,8,["color","size"])])]),_:2},[(se=e.config)!=null&&se.isControlPlaneGroup?{name:"message",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.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"]),t.createVNode(t.unref(ue.EntityToggleModal),{action:V.value.action,"entity-id":V.value.id,"entity-name":V.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":j,visible:A.value,onCancel:H,onProceed:H},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ue.EntityDeleteModal),{"action-pending":U.value,description:t.unref(a)("delete.description"),"entity-name":G.value&&(G.value.instance_name||G.value.name||G.value.id),"entity-type":t.unref(ue.EntityTypes).Plugin,error:ne.value,title:t.unref(a)("delete.title"),visible:ee.value,onCancel:F,onProceed:W},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-3f031caf"]]),TV={class:"plugin-select-card-wrapper"},PV=["data-testid"],OV={class:"plugin-card-header"},$V={class:"plugin-card-title"},BV={key:0,class:"plugin-card-actions"},VV=["data-testid","title"],RV={key:0,class:"plugin-card-text"},MV={key:0},DV=["title"],$l=we(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=Qn.useRouter(),{i18n:{t:a}}=$e.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.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=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===q.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},y=(_,w)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(_,w))},g=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;p.value&&_.createCustomRoute?i.push(_.createCustomRoute):m.value&&d()}};return(_,w)=>{const b=t.resolveComponent("KButton"),C=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),k=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",TV,[t.createVNode(k,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:w[1]||(w[1]=T=>s.value||m.value?void 0:f())},[t.createElementVNode("div",OV,[t.createElementVNode("div",$V,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",BV,[t.createVNode(E,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{size:t.unref(Rw)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(C,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(T=>y(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(C,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(h,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[t.createVNode(t.unref(to.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?(t.openBlock(),t.createElementBlock("div",RV,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",MV,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,DV)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,VV),t.createElementVNode("div",{class:"plugin-card-footer",onClick:g},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,PV)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),LV=we(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var h;const o=e,r=n,{i18nT:i,i18n:{t:a}}=$e.useI18n(),{getMessageFromError:l}=ue.useErrors(),{axiosInstance:s}=ue.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var y;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((y=o.plugin)==null?void 0:y.name)||a("delete.custom_plugin")})}),d=t.ref(!1),f=t.ref(""),u=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const y=o.plugin.customPluginType==="streaming"?Be.select[o.config.app].streamingCustomPluginItem:Be.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${y}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var y,g,_,w;if(d.value=!0,f.value="",!(!((y=o.plugin)!=null&&y.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:C}=b;(C==null?void 0:C.status)===400&&((w=(_=C.data)==null?void 0:_.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(y,g)=>{const _=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ue.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(ue.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[0]=b=>y.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(w,{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]=b=>y.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(_,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[1]=b=>y.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),FV={class:"custom-plugins-grid"},UV={class:"empty-state-title"},KV={class:"empty-state-description"},Bl=310,jV=we(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=$e.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=$e.usePluginHelpers(),s=t.ref(!0),c=E=>{r("plugin-clicked",E)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const E=JSON.parse(JSON.stringify(o.pluginList))[q.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:q.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(E):E}),f=t.ref(!1),u=t.ref(null),p=E=>{f.value=!0,u.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var k;E&&(r("revalidate"),r("delete:success",((k=u.value)==null?void 0:k.name)||"")),f.value=!1,u.value=null},h=t.ref(Bl),y=t.ref(null),g=t.ref(null),_=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),w=t.ref(!1),b=()=>{h.value=Math.max(a(g.value),Bl),C()},C=()=>{var E,k;(E=g.value)!=null&&E.length&&(w.value=l(y.value,(k=g.value)==null?void 0:k.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(g.value),Bl),C(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(E,k)=>{const T=t.resolveComponent("KEmptyState"),x=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",FV,[d.value.length?(t.openBlock(),t.createBlock(x,{key:1,modelValue:s.value,"onUpdate:modelValue":k[0]||(k[0]=O=>s.value=O),class:"custom-plugins-collapse","data-testid":`${t.unref(q.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(q.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:t.normalizeStyle(_.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(O,Y)=>(t.openBlock(),t.createBlock($l,{key:`plugin-card-${Y}`,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:O,onCustomPluginDelete:K=>p(O),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[w.value?void 0:{name:"trigger",fn:t.withCtx(()=>[k[2]||(k[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(T,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",UV,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",KV,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(LV,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:k[1]||(k[1]=O=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Vl=310,Zp=we(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const o=t.useModel(e,"modelValue"),r=e,i=n,{i18n:{t:a}}=$e.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=$e.usePluginHelpers(),c=t.ref(Vl),d=t.ref(null),f=t.ref(null),u=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),Vl),h()},h=()=>{var y,g;(y=f.value)!=null&&y.length&&(p.value=s(d.value,(g=f.value)==null?void 0:g.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),Vl),h(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(y,g)=>{const _=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(_,{modelValue:o.value,"onUpdate:modelValue":g[0]||(g[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(u.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock($l,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:b=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[g[1]||(g[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),GV={class:"plugin-select-grid"},qV={class:"empty-state-title"},zV={class:"empty-state-description"},Rl=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=$e.useI18n(),a=t.ref(!1),l=t.ref(Fl),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[q.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",GV,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",qV,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",zV,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(Zp,{key:1,modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=p=>a.value=p),config:e.config,name:o.highlightedPluginsTitle||t.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"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Ll),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Zp,{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"])])):t.createCommentVNode("",!0)],64))),256))])}}}),HV={class:"kong-ui-entities-plugin-select-form"},YV={class:"plugins-filter-input-container"},WV={key:0},XV={key:3,"aria-live":"polite",class:"plugins-results-container"},ZV={"data-testid":"kong-tab"},JV={class:"tab-description"},QV={"data-testid":"custom-tab"},eR={class:"tab-description"},tR=we(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var j;const o=e,r=n,i=Qn.useRoute(),a=Qn.useRouter(),{i18n:{t:l}}=$e.useI18n(),{pluginMetaData:s}=$e.usePluginMetaData(),{getMessageFromError:c}=ue.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ue.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),y=t.ref([]),g=t.ref([]),_=t.ref({}),w=t.ref([]),{axiosInstance:b}=ue.useAxios((j=o.config)==null?void 0:j.axiosRequestConfig),C=t.computed(()=>_.value?Object.entries(_.value).filter(([L])=>L!==q.PluginGroup.CUSTOM_PLUGINS).reduce((L,[,R])=>{for(const oe of R)L[oe.id]=oe;return L},{}):{}),E=t.computed(()=>{var oe;if(!_.value)return{};const L=u.value.toLowerCase(),R=JSON.parse(JSON.stringify(_.value));for(const ie in _.value){const Z=((oe=_.value[ie])==null?void 0:oe.filter(ae=>ae.name.toLowerCase().includes(L)||ae.id.toLowerCase().includes(L)||ae.group.toLowerCase().includes(L)))||[];Z.length?R[ie]=Z:delete R[ie]}return R}),k=t.computed(()=>o.highlightedPluginIds.reduce((L,R)=>{const oe=C.value[R];return oe&&L.push(oe),L},[])),T=t.computed(()=>Object.keys(E.value).length>0),x=t.computed(()=>Object.keys(_.value).length>0&&!T.value),O=t.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)}]:[]),Y=t.computed(()=>{var R;let L=O.value.length&&((i==null?void 0:i.hash)||((R=O.value[0])==null?void 0:R.hash))||"";return L==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(L="#kong"),L}),K=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...y.value])].filter(L=>!o.ignoredPlugins.includes(L)).filter(L=>o.config.entityType&&(o.config.entityType==="services"&&s[L]&&!s[L].scope.includes(q.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[L]&&!s[L].scope.includes(q.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[L]&&!s[L].scope.includes(q.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[L]&&!s[L].scope.includes(q.PluginScope.CONSUMER))?!1:L).reduce((L,R)=>{var G;const oe=s[R]&&s[R].name||R,ie={...s[R],id:R,name:oe,available:y.value.includes(R),disabledMessage:"",group:((G=s[R])==null?void 0:G.group)||q.PluginGroup.CUSTOM_PLUGINS};ie.group===q.PluginGroup.CUSTOM_PLUGINS&&(ie.customPluginType=g.value.find(ee=>ee.name===R)?"streaming":"schema"),o.disabledPlugins&&(ie.disabledMessage=o.disabledPlugins[R]);const Z=ie.group||l("plugins.select.misc_plugins");let ae=L[Z];return ae||(ae=[]),ae.push(ie),ae.sort(d("name")),L[Z]=ae,L},{}),I=t.computed(()=>{var R;let L=`${o.config.apiBaseUrl}${Be.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(L=((R=o.config.gatewayInfo)==null?void 0:R.edition)==="community"?`${o.config.apiBaseUrl}${Be.select[o.config.app].availablePluginsForOss}`:L.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),L}),Q=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let L=`${o.config.apiBaseUrl}${Be.select[o.config.app].streamingCustomPlugins}`;return L=L.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),L}return null}),A=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let L=`${o.config.apiBaseUrl}${Be.list[o.config.app].forEntity}`;return o.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),L.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),D=L=>{a.replace({hash:L,query:i.query})};t.watch(()=>o.disabledPlugins,(L,R)=>{!f(L,R)&&!p.value&&(_.value=K())}),t.watch(()=>o.ignoredPlugins,(L,R)=>{!f(L,R)&&!p.value&&(_.value=K())}),t.watch(p,L=>{r("loading",L)});const V=t.ref(!1),X=t.ref(!1),H=t.ref(!1);return t.onBeforeMount(async()=>{V.value=await o.canCreateCustomPlugin(),X.value=await o.canEditCustomPlugin(),H.value=await o.canDeleteCustomPlugin()}),t.onMounted(async()=>{try{const{data:L}=await b.get(I.value);if(o.config.app==="konnect"){const{names:R}=L;if(y.value=R||[],Q.value){const{data:oe}=await b.get(Q.value);g.value=oe.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:R}}=L;y.value=R?Object.keys(R):[]}}catch(L){m.value=!0,h.value=c(L)}if(A.value)try{const{data:{data:L}}=await b.get(A.value);if(L!=null&&L.length){const R=L.reduce((oe,ie)=>(ie.name&&oe.push(ie.name),oe),[]);w.value=w.value.concat(R)}}catch{}m.value||(_.value=K()),p.value=!1}),(L,R)=>{const oe=t.resolveComponent("KInput"),ie=t.resolveComponent("KSkeletonBox"),Z=t.resolveComponent("KSkeleton"),ae=t.resolveComponent("KEmptyState"),G=t.resolveComponent("KTooltip"),ee=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",HV,[t.createElementVNode("div",YV,[t.createVNode(oe,{modelValue:u.value,"onUpdate:modelValue":R[0]||(R[0]=U=>u.value=U),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(t.openBlock(),t.createElementBlock("section",WV,[t.createVNode(ie,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(Z,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(ae,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(h.value),1)]),_:1})):x.value&&u.value?(t.openBlock(),t.createBlock(ae,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(l)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",XV,[O.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(ee,{key:0,modelValue:Y.value,"onUpdate:modelValue":R[5]||(R[5]=U=>Y.value=U),"data-testid":"plugins-tabs",tabs:O.value,onChange:D},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",ZV,[t.createElementVNode("p",JV,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Rl,{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":E.value,onPluginClicked:R[1]||(R[1]=U=>L.$emit("plugin-clicked",U))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",QV,[t.createElementVNode("p",eR,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(jV,{"can-create-custom-plugin":V.value,"can-delete-custom-plugin":H.value,"can-edit-custom-plugin":X.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":R[2]||(R[2]=U=>L.$emit("delete-custom:success",U)),onPluginClicked:R[3]||(R[3]=U=>L.$emit("plugin-clicked",U)),onRevalidate:R[4]||(R[4]=()=>_.value=K())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(G,{"max-width":"300",text:t.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(Rl,{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":E.value,onPluginClicked:R[6]||(R[6]=U=>L.$emit("plugin-clicked",U))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-c18b2b5c"]]),nR={class:"kong-ui-entity-plugin-config-card"},oR={class:"name-cell-wrapper"},rR={class:"info-name"},iR={key:0},aR={key:0},lR={key:0},sR={key:0},cR={key:0},Ml="config",dR=we(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var w;const o=n,r=e,{i18n:{t:i}}=$e.useI18n(),a=$e.usePluginMetaData(),{setFieldType:l}=$e.usePluginHelpers(),{getPropValue:s}=ue.useHelpers(),c=t.computed(()=>{var b;return(b=Be.item[r.config.app])==null?void 0:b[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"")}),d=t.computed(()=>{var E,k;const b={},C=((E=y.value)==null?void 0:E.fields)||[];for(let T=0;T<C.length;T++){const x=y.value.fields[T],O=(k=Object.keys(x))==null?void 0:k[0];l(b,O,x[O])}return{...b,instance_name:{section:ue.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ue.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ue.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ue.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ue.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ue.ConfigurationSchemaType.BadgeTag,section:ue.ConfigurationSchemaSection.Basic,order:7}}}),f=t.computed(()=>{var C,E,k;if(!((C=y.value)!=null&&C.fields))return[];const b=(E=y.value.fields)==null?void 0:E.find(T=>{var O;return((O=Object.keys(T))==null?void 0:O[0])===Ml});return((k=b==null?void 0:b[Ml])==null?void 0:k.fields)||[]}),u=t.computed(()=>{var C,E;const b={};if(!f.value)return b;for(let k=0;k<((C=f.value)==null?void 0:C.length);k++){const T=f.value[k],x=(E=Object.keys(T))==null?void 0:E[0],O=T[x];O.required&&(b[x]={order:1}),l(b,x,O)}return b}),{getMessageFromError:p}=ue.useErrors(),{axiosInstance:m}=ue.useAxios((w=r.config)==null?void 0:w.axiosRequestConfig),h=t.computed(()=>{var C,E;let b=`${r.config.apiBaseUrl}${Be.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?b=b.replace(/{controlPlaneId}/gi,((C=r.config)==null?void 0:C.controlPlaneId)||""):r.config.app==="kongManager"&&(b=b.replace(/\/{workspace}/gi,(E=r.config)!=null&&E.workspace?`/${r.config.workspace}`:"")),b=b.replace(/{plugin}/gi,r.config.pluginType),b}),y=t.ref({});ue.useSchemaProvider(y);const g=t.ref(!1),_=t.ref("");return t.onBeforeMount(async()=>{g.value=!0;try{const{data:b}=await m.get(h.value);y.value=b}catch(b){_.value=p(b),o("error:fetch-schema",b)}finally{g.value=!1}}),(b,C)=>{const E=t.resolveComponent("KSkeleton"),k=t.resolveComponent("KEmptyState"),T=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",nR,[g.value?(t.openBlock(),t.createBlock(E,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):_.value?(t.openBlock(),t.createBlock(k,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(_.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ue.EntityBaseConfigCard),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":Ml,"plugin-config-schema":u.value,"onFetch:error":C[0]||(C[0]=x=>b.$emit("fetch:error",x)),"onFetch:success":C[1]||(C[1]=x=>b.$emit("fetch:success",x)),onLoading:C[2]||(C[2]=x=>b.$emit("loading",x))},{name:t.withCtx(x=>[t.createElementVNode("div",oR,[t.createVNode(t.unref(to.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",x),size:24},null,8,["name"]),t.createElementVNode("span",rR,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",x))),1)])]),consumer:t.withCtx(x=>[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",x).id,value:t.unref(s)("rowValue",x).id,type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>b.$emit("navigation-click",t.unref(s)("rowValue",x).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",x).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",iR,"–"))]),route:t.withCtx(x=>[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",x).id,value:t.unref(s)("rowValue",x).id,type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>b.$emit("navigation-click",t.unref(s)("rowValue",x).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",x).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",aR,"–"))]),service:t.withCtx(x=>[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",x).id,value:t.unref(s)("rowValue",x).id,type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>b.$emit("navigation-click",t.unref(s)("rowValue",x).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",x).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",lR,"–"))]),consumer_group:t.withCtx(x=>[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",x).id,value:t.unref(s)("rowValue",x).id,type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>b.$emit("navigation-click",t.unref(s)("rowValue",x).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",x).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",sR,"–"))]),partials:t.withCtx(x=>{var O,Y,K,I,Q,A,D,V,X;return[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:(Y=(O=t.unref(s)("rowValue",x))==null?void 0:O[0])==null?void 0:Y.id,value:((I=(K=t.unref(s)("rowValue",x))==null?void 0:K[0])==null?void 0:I.id)+((A=(Q=t.unref(s)("rowValue",x))==null?void 0:Q[0])!=null&&A.name?"/"+((V=(D=t.unref(s)("rowValue",x))==null?void 0:D[0])==null?void 0:V.name):""),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var H,j;return b.$emit("navigation-click",(j=(H=t.unref(s)("rowValue",x))==null?void 0:H[0])==null?void 0:j.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"partial-copy-uuid",text:(X=t.unref(s)("rowValue",x))==null?void 0:X[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",cR,"–"))]}),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-53806ec8"]]),{usePluginMetaData:uR,useProvideExperimentalFreeForms:fR}=$e;Object.defineProperty(he,"PluginGroup",{enumerable:!0,get:()=>q.PluginGroup}),Object.defineProperty(he,"PluginScope",{enumerable:!0,get:()=>q.PluginScope}),Object.defineProperty(he,"PluginIcon",{enumerable:!0,get:()=>to.PluginIcon}),Object.defineProperty(he,"getPluginIconURL",{enumerable:!0,get:()=>to.getPluginIconURL}),he.EXPERIMENTAL_FREE_FORM_PROVIDER=Xi,he.EntityTypeIdField=Zt,he.FEATURE_FLAGS=lc,he.PLUGIN_GROUPS_COLLAPSE_STATUS=Fl,he.PluginConfigCard=dR,he.PluginForm=bV,he.PluginGroupArray=Ll,he.PluginList=IV,he.PluginPartialType=Jo,he.PluginSelect=tR,he.PluginSelectCard=$l,he.PluginSelectGrid=Rl,he.TOASTER_PROVIDER=sc,he.pluginEndpoints=Be,he.usePluginMetaData=uR,he.useProvideExperimentalFreeForms=fR,Object.defineProperty(he,Symbol.toStringTag,{value:"Module"})});
144
+ 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 qe extends Error{constructor(n,...o){var r;super((r=ff[n])==null?void 0:r.call(ff,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function ll(e){return"clientX"in e}function JS(e){return"sourceEvent"in e}function At(e,n){const o=ll(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-((n==null?void 0:n.left)??0),y:i-((n==null?void 0:n.top)??0)}}const ei=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function QS(e){var n,o;return{width:((n=e.dimensions)==null?void 0:n.width)??e.width??0,height:((o=e.dimensions)==null?void 0:o.height)??e.height??0}}function ti(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const ex=()=>!0;function sl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function tx(e,n,o){const r=[],i={x:e.x-o,y:e.y-o,width:o*2,height:o*2};for(const a of n.values())Zr(i,Xr(a))>0&&r.push(a);return r}const nx=250;function ox(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=tx(e,o,n+nx);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}=Yn(d,u,u.position,!0),h=Math.sqrt((p-e.x)**2+(m-e.y)**2);h>n||(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 pf(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=ex},f,u,p){const m=a==="target",h=n?l.querySelector(`.${s}-flow__handle[data-id="${c}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:y,y:g}=At(e),_=l.elementFromPoint(y,g),w=_!=null&&_.classList.contains(`${s}-flow__handle`)?_:h,b={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const C=mf(void 0,w),E=w.getAttribute("data-nodeid"),k=w.getAttribute("data-handleid"),T=w.classList.contains("connectable"),x=w.classList.contains("connectableend");if(!E||!C)return b;const $={source:m?E:r,sourceHandle:m?k:i,target:m?r:E,targetHandle:m?i:k};b.connection=$;const j=T&&x&&(o===qt.Strict?m&&C==="source"||!m&&C==="target":E!==r||k!==i);b.isValid=j&&d($,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(E)}),b.toHandle=n}return b}function mf(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function rx(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function ix(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function ax(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===qt.Strict?(l=d.handleBounds)==null?void 0:l[n]:[...((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,...Yn(d,u,u.position,!0)}:u}const cl={[ge.Left]:ge.Right,[ge.Right]:ge.Left,[ge.Top]:ge.Bottom,[ge.Bottom]:ge.Top},lx=["production","prod"];function ni(e,...n){gf()&&console.warn(`[Vue Flow]: ${e}`,...n)}function gf(){return!lx.includes(process.env.NODE_ENV||"")}function hf(e,n,o,r,i){const a=n.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,...Jr(l)}}):null}function dl(e,n,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&n)&&(r([e]),t.nextTick(()=>{l.blur()})):o([e])}function Fe(e){return typeof t.unref(e)<"u"}function sx(e,n,o,r){if(!e||!e.source||!e.target)return o(new qe(De.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return zt(e)?i=e:i={...e,id:Wu(e)},i=Hu(i,void 0,r),KS(i,n)?!1:i}function cx(e,n,o,r,i){if(!n.source||!n.target)return i(new qe(De.EDGE_INVALID,e.id)),!1;if(!o)return i(new qe(De.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Wu(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function yf(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!mn(l)){o(new qe(De.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=FS(l,n(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=n(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new qe(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 _f(e,n,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,n)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,n)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,n))}}function ul(e,n,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}`;_f("source",c,f,e,i,l),_f("target",c,d,e,a,s)}}function bf(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function fl(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=zt(d)?d:sx(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new qe(De.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new qe(De.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new qe(De.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new qe(De.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Hu(f,m,a),sourceNode:u,targetNode:p})}return c}const wf=Symbol("vueFlow"),kf=Symbol("nodeId"),Ef=Symbol("nodeRef"),dx=Symbol("edgeId"),ux=Symbol("edgeRef"),oi=Symbol("slots");function Cf(e){const{vueFlowRef:n,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:y,selectNodesOnDrag:g,removeSelectedElements:_,addSelectedNodes:w,updateNodePositions:b,emits:C}=Ie(),{onStart:E,onDrag:k,onStop:T,onClick:x,el:$,disabled:K,id:j,selectable:I,dragHandle:Q}=e,A=t.shallowRef(!1);let D=[],V,X=null,Y={x:void 0,y:void 0},G={x:0,y:0},F=null,R=!1,oe=0,ie=!1;const Z=mx(),ae=({x:de,y:L})=>{Y={x:de,y:L};let W=!1;if(D=D.map(N=>{const v={x:de-N.distance.x,y:L-N.distance.y},{computedPosition:S}=al(N,o.value?ti(v,r.value):v,C.error,l.value,N.parentNode?m(N.parentNode):void 0);return W=W||N.position.x!==S.x||N.position.y!==S.y,N.position=S,N}),!!W&&(b(D,!0,!0),A.value=!0,F)){const[N,v]=il({id:j,dragItems:D,findNode:m});k({event:F,node:N,nodes:v})}},q=()=>{if(!X)return;const[de,L]=of(G,X,f.value);if(de!==0||L!==0){const W={x:(Y.x??0)-de/c.value.zoom,y:(Y.y??0)-L/c.value.zoom};p({x:de,y:L})&&ae(W)}oe=requestAnimationFrame(q)},ee=(de,L)=>{R=!0;const W=m(j);!g.value&&!h.value&&W&&(W.selected||_()),W&&t.toValue(I)&&g.value&&dl(W,h.value,w,_,y,!1,L);const N=Z(de.sourceEvent);if(Y=N,D=zS(a.value,u.value,N,m,j),D.length){const[v,S]=il({id:j,dragItems:D,findNode:m});E({event:de.sourceEvent,node:v,nodes:S})}},U=(de,L)=>{var W;de.sourceEvent.type==="touchmove"&&de.sourceEvent.touches.length>1||(s.value===0&&ee(de,L),Y=Z(de.sourceEvent),X=((W=n.value)==null?void 0:W.getBoundingClientRect())||null,G=At(de.sourceEvent,X))},ne=(de,L)=>{const W=Z(de.sourceEvent);if(!ie&&R&&d.value&&(ie=!0,q()),!R){const N=W.xSnapped-(Y.x??0),v=W.ySnapped-(Y.y??0);Math.sqrt(N*N+v*v)>s.value&&ee(de,L)}(Y.x!==W.xSnapped||Y.y!==W.ySnapped)&&D.length&&R&&(F=de.sourceEvent,G=At(de.sourceEvent,X),ae(W))},re=de=>{let L=!1;if(!R&&!A.value&&!h.value){const W=de.sourceEvent,N=Z(W),v=N.xSnapped-(Y.x??0),S=N.ySnapped-(Y.y??0),P=Math.sqrt(v*v+S*S);P!==0&&P<=s.value&&(x==null||x(W),L=!0)}if(D.length&&!L){b(D,!1,!1);const[W,N]=il({id:j,dragItems:D,findNode:m});T({event:de.sourceEvent,node:W,nodes:N})}D=[],A.value=!1,ie=!1,R=!1,Y={x:void 0,y:void 0},cancelAnimationFrame(oe)};return t.watch([()=>t.toValue(K),$],([de,L],W,N)=>{if(L){const v=gt(L);de||(V=DN().on("start",S=>U(S,L)).on("drag",S=>ne(S,L)).on("end",S=>re(S)).filter(S=>{const P=S.target,O=t.toValue(Q);return!S.button&&(!i.value||!cf(P,`.${i.value}`,L)&&(!O||cf(P,O,L)))}),v.call(V)),N(()=>{v.on(".drag",null),V&&(V.on("start",null),V.on("drag",null),V.on("end",null))})}}),A}function fx(){return{doubleClick:me(),click:me(),mouseEnter:me(),mouseMove:me(),mouseLeave:me(),contextMenu:me(),updateStart:me(),update:me(),updateEnd:me()}}function px(e,n){const o=fx();return o.doubleClick.on(r=>{var i,a;n.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;n.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;n.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;n.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 mx(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Ie();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=JS(i)?i.sourceEvent:i,{x:c,y:d}=At(s,l),f=Bo({x:c,y:d},e.value),{x:u,y:p}=o.value?ti(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function ri(){return!0}function Nf({handleId:e,nodeId:n,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:y,findNode:g,panBy:_,startConnection:w,updateConnection:b,endConnection:C,emits:E,viewport:k,edges:T,nodes:x,isValidConnection:$,nodeLookup:K}=Ie();let j=null,I=!1,Q=null;function A(V){var X;const Y=t.toValue(o)==="target",G=ll(V),F=zu(V.target);if(G&&V.button===0||!G){let R=function(H){N=At(H,de),ae=ox(Bo(N,k.value,!1,[1,1]),f.value,K.value,P),v||(S(),v=!0);const B=pf(H,{handle:ae,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:Y?"target":"source",isValidConnection:Z,doc:F,lib:"vue",flowId:s,nodeLookup:K.value},T.value,x.value,g);Q=B.handleDomNode,j=B.connection,I=ix(!!ae,B.isValid);const le={...M,isValid:I,to:B.toHandle&&I?ol({x:B.toHandle.x,y:B.toHandle.y},k.value):N,toHandle:B.toHandle,toPosition:I&&B.toHandle?B.toHandle.position:cl[P.position],toNode:B.toHandle?K.value.get(B.toHandle.nodeId):null};if(!(I&&ae&&(M!=null&&M.toHandle)&&le.toHandle&&M.toHandle.type===le.toHandle.type&&M.toHandle.nodeId===le.toHandle.nodeId&&M.toHandle.id===le.toHandle.id&&M.to.x===le.to.x&&M.to.y===le.to.y)){if(b(ae&&I?ol({x:ae.x,y:ae.y},k.value):N,B.toHandle,rx(!!ae,I)),M=le,!ae&&!I&&!Q)return sl(W);j&&j.source!==j.target&&Q&&(sl(W),W=Q,Q.classList.add("connecting","vue-flow__handle-connecting"),Q.classList.toggle("valid",!!I),Q.classList.toggle("vue-flow__handle-valid",!!I))}},oe=function(H){(ae||Q)&&j&&I&&(a?a(H,j):E.connect(j)),E.connectEnd(H),i&&(l==null||l(H)),sl(W),cancelAnimationFrame(q),C(H),v=!1,I=!1,j=null,Q=null,F.removeEventListener("mousemove",R),F.removeEventListener("mouseup",oe),F.removeEventListener("touchmove",R),F.removeEventListener("touchend",oe)};const ie=g(t.toValue(n));let Z=t.toValue(r)||$.value||ri;!Z&&ie&&(Z=(Y?ie.isValidSourcePos:ie.isValidTargetPos)||ri);let ae,q=0;const{x:ee,y:U}=At(V),ne=F==null?void 0:F.elementFromPoint(ee,U),re=mf(t.toValue(i),ne),de=(X=c.value)==null?void 0:X.getBoundingClientRect();if(!de||!re)return;const L=ax(t.toValue(n),re,t.toValue(e),K.value,d.value);if(!L)return;let W,N=At(V,de),v=!1;const S=()=>{if(!h.value)return;const[H,B]=of(N,de,y.value);_({x:H,y:B}),q=requestAnimationFrame(S)},P={...L,nodeId:t.toValue(n),type:re,position:L.position},O=K.value.get(t.toValue(n)),te={inProgress:!0,isValid:null,from:Yn(O,P,ge.Left,!0),fromHandle:P,fromPosition:P.position,fromNode:O,to:N,toHandle:null,toPosition:cl[P.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:re,position:(ne==null?void 0:ne.getAttribute("data-handlepos"))||ge.Top,...N},{x:ee-de.left,y:U-de.top}),E.connectStart({event:V,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:re});let M=te;F.addEventListener("mousemove",R),F.addEventListener("mouseup",oe),F.addEventListener("touchmove",R),F.addEventListener("touchend",oe)}}function D(V){var X,Y;if(!u.value)return;const G=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:V,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:ge.Top,...At(V)},void 0,!0);return}let F=t.toValue(r)||$.value||ri;const R=g(t.toValue(n));if(!F&&R&&(F=(G?R.isValidSourcePos:R.isValidTargetPos)||ri),R&&(typeof R.connectable>"u"?m.value:R.connectable)===!1)return;const oe=zu(V.target),ie=pf(V,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:ge.Top,...At(V)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:F,doc:oe,lib:"vue",flowId:s,nodeLookup:K.value},T.value,x.value,g),Z=((X=ie.connection)==null?void 0:X.source)===((Y=ie.connection)==null?void 0:Y.target);ie.isValid&&ie.connection&&!Z&&E.connect(ie.connection),E.clickConnectEnd(V),C(V,!0)}return{handlePointerDown:A,handleClick:D}}function gx(){return t.inject(kf,"")}function vf(e){const n=e??gx()??"",o=t.inject(Ef,t.ref(null)),{findNode:r,edges:i,emits:a}=Ie(),l=r(n);return l||a.error(new qe(De.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>Qu([l],i.value))}}function hx(){return{doubleClick:me(),click:me(),mouseEnter:me(),mouseMove:me(),mouseLeave:me(),contextMenu:me(),dragStart:me(),drag:me(),dragStop:me()}}function yx(e,n){const o=hx();return o.doubleClick.on(r=>{var i,a;n.nodeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.nodeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.nodeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.nodeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.nodeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.nodeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.dragStart.on(r=>{var i,a;n.nodeDragStart(r),(a=(i=e.events)==null?void 0:i.dragStart)==null||a.call(i,r)}),o.drag.on(r=>{var i,a;n.nodeDrag(r),(a=(i=e.events)==null?void 0:i.drag)==null||a.call(i,r)}),o.dragStop.on(r=>{var i,a;n.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 Sf(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Ie();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,y=[];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:w}=al(g,_,s.error,n.value,g.parentNode?r(g.parentNode):void 0);y.push({id:g.id,position:w,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(y,!0,!1)}}const pl=.1,_x=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function Wt(){return ni("Viewport not initialized yet."),Promise.resolve(!1)}const bx={zoomIn:Wt,zoomOut:Wt,zoomTo:Wt,fitView:Wt,setCenter:Wt,fitBounds:Wt,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:Wt,setTransform:Wt,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function wx(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?vo:Fr).scaleBy(ml(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}=qu({x:-r,y:-i},e.translateExtent),u=zn.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?vo:Fr).transform(ml(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),u):s(!1)})}return t.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>n(1.2,i),zoomOut:i=>n(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?vo:Fr).scaleTo(ml(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:pl,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=Zu(s),{x:d,y:f,zoom:u}=ef(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??pl,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:pl})=>{const{x:l,y:s,zoom:c}=ef(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>Bo(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 Bo(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 ol(s,e.viewport)}return{x:0,y:0}}}:bx)}function ml(e,n=0,o=_x,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function kx(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let y,g,_=!!(o.nodes.value.length||o.edges.value.length);y=Un([e.modelValue,()=>{var w,b;return(b=(w=e.modelValue)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setElements(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Un([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,b])=>{var C;(C=e.modelValue)!=null&&C.value&&Array.isArray(e.modelValue.value)&&(y==null||y.pause(),e.modelValue.value=[...w,...b],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let y,g,_=!!o.nodes.value.length;y=Un([e.nodes,()=>{var w,b;return(b=(w=e.nodes)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setNodes(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Un([o.nodes,()=>o.nodes.value.length],([w])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(y==null||y.pause(),e.nodes.value=[...w],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let y,g,_=!!o.edges.value.length;y=Un([e.edges,()=>{var w,b;return(b=(w=e.edges)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setEdges(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Un([o.edges,()=>o.edges.value.length],([w])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(y==null||y.pause(),e.edges.value=[...w],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&Fe(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&Fe(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&Fe(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&Fe(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{Fe(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const y=async g=>{let _=g;typeof n.autoConnect=="function"&&(_=await n.autoConnect(g)),_!==!1&&o.addEdges([_])};t.watch(()=>n.autoConnect,()=>{Fe(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(g,_,w)=>{g?o.onConnect(y):o.hooks.value.connect.off(y),w(()=>{o.hooks.value.connect.off(y)})},{immediate:!0})})},m=()=>{const y=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const g of Object.keys(n)){const _=g;if(!y.includes(_)){const w=t.toRef(()=>n[_]),b=o[_];t.isRef(b)&&r.run(()=>{t.watch(w,C=>{Fe(C)&&(b.value=C)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function Ex(){return{edgesChange:me(),nodesChange:me(),nodeDoubleClick:me(),nodeClick:me(),nodeMouseEnter:me(),nodeMouseMove:me(),nodeMouseLeave:me(),nodeContextMenu:me(),nodeDragStart:me(),nodeDrag:me(),nodeDragStop:me(),nodesInitialized:me(),miniMapNodeClick:me(),miniMapNodeDoubleClick:me(),miniMapNodeMouseEnter:me(),miniMapNodeMouseMove:me(),miniMapNodeMouseLeave:me(),connect:me(),connectStart:me(),connectEnd:me(),clickConnectStart:me(),clickConnectEnd:me(),paneReady:me(),init:me(),move:me(),moveStart:me(),moveEnd:me(),selectionDragStart:me(),selectionDrag:me(),selectionDragStop:me(),selectionContextMenu:me(),selectionStart:me(),selectionEnd:me(),viewportChangeStart:me(),viewportChange:me(),viewportChangeEnd:me(),paneScroll:me(),paneClick:me(),paneContextMenu:me(),paneMouseEnter:me(),paneMouseMove:me(),paneMouseLeave:me(),edgeContextMenu:me(),edgeMouseEnter:me(),edgeMouseMove:me(),edgeMouseLeave:me(),edgeDoubleClick:me(),edgeClick:me(),edgeUpdateStart:me(),edgeUpdate:me(),edgeUpdateEnd:me(),updateNodeInternals:me(),error:me(e=>ni(e.message))}}function Cx(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),xr(()=>{r.off(i)})}})}function xf(){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:tl.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:Po.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:qt.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:ei()?"Meta":"Control",zoomActivationKeyCode:ei()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:Ex(),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 Nx=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function vx(e,n,o){const r=wx(e),i=N=>{const v=N??[];e.hooks.updateNodeInternals.trigger(v)},a=N=>US(N,e.nodes,e.edges),l=N=>LS(N,e.nodes,e.edges),s=N=>Qu(N,e.edges),c=({id:N,type:v,nodeId:S})=>{var P;return Array.from(((P=e.connectionLookup.get(`${S}-${v}-${N??null}`))==null?void 0:P.values())??[])},d=N=>{if(N)return n.value.get(N)},f=N=>{if(N)return o.value.get(N)},u=(N,v,S)=>{var P,O;const J=[];for(const te of N){const M={id:te.id,type:"position",dragging:S,from:te.from};if(v&&(M.position=te.position,te.parentNode)){const H=d(te.parentNode);M.position={x:M.position.x-(((P=H==null?void 0:H.computedPosition)==null?void 0:P.x)??0),y:M.position.y-(((O=H==null?void 0:H.computedPosition)==null?void 0:O.y)??0)}}J.push(M)}J!=null&&J.length&&e.hooks.nodesChange.trigger(J)},p=N=>{if(!e.vueFlowRef)return;const v=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!v)return;const S=window.getComputedStyle(v),{m22:P}=new window.DOMMatrixReadOnly(S.transform),O=[];for(const J of N){const te=J,M=d(te.id);if(M){const H=Jr(te.nodeElement);if(!!(H.width&&H.height&&(M.dimensions.width!==H.width||M.dimensions.height!==H.height||te.forceUpdate))){const le=te.nodeElement.getBoundingClientRect();M.dimensions=H,M.handleBounds.source=hf("source",te.nodeElement,le,P,M.id),M.handleBounds.target=hf("target",te.nodeElement,le,P,M.id),O.push({id:M.id,type:"dimensions",dimensions:H})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),O.length&&e.hooks.nodesChange.trigger(O)},m=(N,v)=>{const S=new Set,P=new Set;for(const te of N)mn(te)?S.add(te.id):zt(te)&&P.add(te.id);const O=Yt(n.value,S,!0),J=Yt(o.value,P);if(e.multiSelectionActive){for(const te of S)O.push(Ht(te,v));for(const te of P)J.push(Ht(te,v))}O.length&&e.hooks.nodesChange.trigger(O),J.length&&e.hooks.edgesChange.trigger(J)},h=N=>{if(e.multiSelectionActive){const v=N.map(S=>Ht(S.id,!0));e.hooks.nodesChange.trigger(v);return}e.hooks.nodesChange.trigger(Yt(n.value,new Set(N.map(v=>v.id)),!0)),e.hooks.edgesChange.trigger(Yt(o.value))},y=N=>{if(e.multiSelectionActive){const v=N.map(S=>Ht(S.id,!0));e.hooks.edgesChange.trigger(v);return}e.hooks.edgesChange.trigger(Yt(o.value,new Set(N.map(v=>v.id)))),e.hooks.nodesChange.trigger(Yt(n.value,new Set,!0))},g=N=>{m(N,!0)},_=N=>{const S=(N||e.nodes).map(P=>(P.selected=!1,Ht(P.id,!1)));e.hooks.nodesChange.trigger(S)},w=N=>{const S=(N||e.edges).map(P=>(P.selected=!1,Ht(P.id,!1)));e.hooks.edgesChange.trigger(S)},b=N=>{if(!N||!N.length)return m([],!1);const v=N.reduce((S,P)=>{const O=Ht(P.id,!1);return mn(P)?S.nodes.push(O):S.edges.push(O),S},{nodes:[],edges:[]});v.nodes.length&&e.hooks.nodesChange.trigger(v.nodes),v.edges.length&&e.hooks.edgesChange.trigger(v.edges)},C=N=>{var v;(v=e.d3Zoom)==null||v.scaleExtent([N,e.maxZoom]),e.minZoom=N},E=N=>{var v;(v=e.d3Zoom)==null||v.scaleExtent([e.minZoom,N]),e.maxZoom=N},k=N=>{var v;(v=e.d3Zoom)==null||v.translateExtent(N),e.translateExtent=N},T=N=>{e.nodeExtent=N,i()},x=N=>{var v;(v=e.d3Zoom)==null||v.clickDistance(N)},$=N=>{e.nodesDraggable=N,e.nodesConnectable=N,e.elementsSelectable=N},K=N=>{const v=N instanceof Function?N(e.nodes):N;!e.initialized&&!v.length||(e.nodes=yf(v,d,e.hooks.error.trigger))},j=N=>{const v=N instanceof Function?N(e.edges):N;if(!e.initialized&&!v.length)return;const S=fl(v,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);ul(e.connectionLookup,o.value,S),e.edges=S},I=N=>{const v=N instanceof Function?N([...e.nodes,...e.edges]):N;!e.initialized&&!v.length||(K(v.filter(mn)),j(v.filter(zt)))},Q=N=>{let v=N instanceof Function?N(e.nodes):N;v=Array.isArray(v)?v:[v];const S=yf(v,d,e.hooks.error.trigger),P=[];for(const O of S)P.push(af(O));P.length&&e.hooks.nodesChange.trigger(P)},A=N=>{let v=N instanceof Function?N(e.edges):N;v=Array.isArray(v)?v:[v];const S=fl(v,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),P=[];for(const O of S)P.push(af(O));P.length&&e.hooks.edgesChange.trigger(P)},D=(N,v=!0,S=!1)=>{const P=N instanceof Function?N(e.nodes):N,O=Array.isArray(P)?P:[P],J=[],te=[];function M(B){const le=s(B);for(const ce of le)(!Fe(ce.deletable)||ce.deletable)&&te.push(sf(ce.id,ce.source,ce.target,ce.sourceHandle,ce.targetHandle))}function H(B){const le=[];for(const ce of e.nodes)ce.parentNode===B&&le.push(ce);if(le.length){for(const ce of le)J.push(lf(ce.id));v&&M(le);for(const ce of le)H(ce.id)}}for(const B of O){const le=typeof B=="string"?d(B):B;le&&(Fe(le.deletable)&&!le.deletable||(J.push(lf(le.id)),v&&M([le]),S&&H(le.id)))}te.length&&e.hooks.edgesChange.trigger(te),J.length&&e.hooks.nodesChange.trigger(J)},V=N=>{const v=N instanceof Function?N(e.edges):N,S=Array.isArray(v)?v:[v],P=[];for(const O of S){const J=typeof O=="string"?f(O):O;J&&(Fe(J.deletable)&&!J.deletable||P.push(sf(typeof O=="string"?O:O.id,J.source,J.target,J.sourceHandle,J.targetHandle)))}e.hooks.edgesChange.trigger(P)},X=(N,v,S=!0)=>{const P=f(N.id);if(!P)return!1;const O=e.edges.indexOf(P),J=cx(N,v,P,S,e.hooks.error.trigger);if(J){const[te]=fl([J],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((M,H)=>H===O?te:M),ul(e.connectionLookup,o.value,[te]),te}return!1},Y=(N,v,S={replace:!1})=>{const P=f(N);if(!P)return;const O=typeof v=="function"?v(P):v;P.data=S.replace?O:{...P.data,...O}},G=N=>rf(N,e.nodes),F=N=>{const v=rf(N,e.edges);return ul(e.connectionLookup,o.value,v),v},R=(N,v,S={replace:!1})=>{const P=d(N);if(!P)return;const O=typeof v=="function"?v(P):v;S.replace?e.nodes.splice(e.nodes.indexOf(P),1,O):Object.assign(P,O)},oe=(N,v,S={replace:!1})=>{const P=d(N);if(!P)return;const O=typeof v=="function"?v(P):v;P.data=S.replace?O:{...P.data,...O}},ie=(N,v,S=!1)=>{S?e.connectionClickStartHandle=N:e.connectionStartHandle=N,e.connectionEndHandle=null,e.connectionStatus=null,v&&(e.connectionPosition=v)},Z=(N,v=null,S=null)=>{e.connectionStartHandle&&(e.connectionPosition=N,e.connectionEndHandle=v,e.connectionStatus=S)},ae=(N,v)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,v?e.connectionClickStartHandle=null:e.connectionStartHandle=null},q=N=>{const v=DS(N),S=v?null:$o(N)?N:d(N.id);return!v&&!S?[null,null,v]:[v?N:Xr(S),S,v]},ee=(N,v=!0,S=e.nodes)=>{const[P,O,J]=q(N);if(!P)return[];const te=[];for(const M of S||e.nodes){if(!J&&(M.id===O.id||!M.computedPosition))continue;const H=Xr(M),B=Zr(H,P);(v&&B>0||B>=Number(P.width)*Number(P.height))&&te.push(M)}return te},U=(N,v,S=!0)=>{const[P]=q(N);if(!P)return!1;const O=Zr(P,v);return S&&O>0||O>=Number(P.width)*Number(P.height)},ne=N=>{const{viewport:v,dimensions:S,d3Zoom:P,d3Selection:O,translateExtent:J}=e;if(!P||!O||!N.x&&!N.y)return!1;const te=zn.translate(v.x+N.x,v.y+N.y).scale(v.zoom),M=[[0,0],[S.width,S.height]],H=P.constrain()(te,M,J),B=e.viewport.x!==H.x||e.viewport.y!==H.y||e.viewport.zoom!==H.k;return P.transform(O,H),B},re=N=>{const v=N instanceof Function?N(e):N,S=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];Fe(v.defaultEdgeOptions)&&(e.defaultEdgeOptions=v.defaultEdgeOptions);const P=v.modelValue||v.nodes||v.edges?[]:void 0;P&&(v.modelValue&&P.push(...v.modelValue),v.nodes&&P.push(...v.nodes),v.edges&&P.push(...v.edges),I(P));const O=()=>{Fe(v.maxZoom)&&E(v.maxZoom),Fe(v.minZoom)&&C(v.minZoom),Fe(v.translateExtent)&&k(v.translateExtent)};for(const J of Object.keys(v)){const te=J,M=v[te];![...Nx,...S].includes(te)&&Fe(M)&&(e[te]=M)}Ba(()=>e.d3Zoom).not.toBeNull().then(O),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:I,setNodes:K,setEdges:j,addNodes:Q,addEdges:A,removeNodes:D,removeEdges:V,findNode:d,findEdge:f,updateEdge:X,updateEdgeData:Y,updateNode:R,updateNodeData:oe,applyEdgeChanges:F,applyNodeChanges:G,addSelectedElements:g,addSelectedNodes:h,addSelectedEdges:y,setMinZoom:C,setMaxZoom:E,setTranslateExtent:k,setNodeExtent:T,setPaneClickDistance:x,removeSelectedElements:b,removeSelectedNodes:_,removeSelectedEdges:w,startConnection:ie,updateConnection:Z,endConnection:ae,setInteractive:$,setState:re,getIntersectingNodes:ee,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:U,panBy:ne,fitView:N=>r.value.fitView(N),zoomIn:N=>r.value.zoomIn(N),zoomOut:N=>r.value.zoomOut(N),zoomTo:(N,v)=>r.value.zoomTo(N,v),setViewport:(N,v)=>r.value.setViewport(N,v),setTransform:(N,v)=>r.value.setTransform(N,v),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(N,v,S)=>r.value.setCenter(N,v,S),fitBounds:(N,v)=>r.value.fitBounds(N,v),project:N=>r.value.project(N),screenToFlowCoordinate:N=>r.value.screenToFlowCoordinate(N),flowToScreenCoordinate:N=>r.value.flowToScreenCoordinate(N),toObject:()=>{const N=[],v=[];for(const S of e.nodes){const{computedPosition:P,handleBounds:O,selected:J,dimensions:te,isParent:M,resizing:H,dragging:B,events:le,...ce}=S;N.push(ce)}for(const S of e.edges){const{selected:P,sourceNode:O,targetNode:J,events:te,...M}=S;v.push(M)}return JSON.parse(JSON.stringify({nodes:N,edges:v,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:N=>new Promise(v=>{const{nodes:S,edges:P,position:O,zoom:J,viewport:te}=N;if(S&&K(S),P&&j(P),te!=null&&te.x&&(te!=null&&te.y)||O){const M=(te==null?void 0:te.x)||O[0],H=(te==null?void 0:te.y)||O[1],B=(te==null?void 0:te.zoom)||J||e.viewport.zoom;return Ba(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:M,y:H,zoom:B}).then(()=>{v(!0)})})}else v(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const N=xf();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const v=zn.translate(N.defaultViewport.x??0,N.defaultViewport.y??0).scale(pn(N.defaultViewport.zoom??1,N.minZoom,N.maxZoom)),S=e.viewportRef.getBoundingClientRect(),P=[[0,0],[S.width,S.height]],O=e.d3Zoom.constrain()(v,P,N.translateExtent);e.d3Zoom.transform(e.d3Selection,O)}re(N)},$destroy:()=>{}}}const Sx=["data-id","data-handleid","data-nodeid","data-handlepos"],xx={name:"Handle",compatConfig:{MODE:3}},Xt=t.defineComponent({...xx,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:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Ie(),{id:m,node:h,nodeEl:y,connectedEdges:g}=vf(),_=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),C=t.toRef(()=>{var j,I,Q,A,D,V;return((j=l.value)==null?void 0:j.nodeId)===m&&((I=l.value)==null?void 0:I.id)===e.id&&((Q=l.value)==null?void 0:Q.type)===r.value||((A=c.value)==null?void 0:A.nodeId)===m&&((D=c.value)==null?void 0:D.id)===e.id&&((V=c.value)==null?void 0:V.type)===r.value}),E=t.toRef(()=>{var j,I,Q;return((j=s.value)==null?void 0:j.nodeId)===m&&((I=s.value)==null?void 0:I.id)===e.id&&((Q=s.value)==null?void 0:Q.type)===r.value}),{handlePointerDown:k,handleClick:T}=Nf({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),x=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(j=>{const I=j[`${r.value}Handle`];return j[r.value]!==m?!1:I?I===e.id:!0}):typeof e.connectable=="number"?g.value.filter(j=>{const I=j[`${r.value}Handle`];return j[r.value]!==m?!1:I?I===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,g.value):Fe(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var j;if(!h.dimensions.width||!h.dimensions.height)return;const I=(j=h.handleBounds[r.value])==null?void 0:j.find(G=>G.id===e.id);if(!d.value||I)return;const Q=d.value.querySelector(".vue-flow__transformationpane");if(!y.value||!_.value||!Q||!e.id)return;const A=y.value.getBoundingClientRect(),D=_.value.getBoundingClientRect(),V=window.getComputedStyle(Q),{m22:X}=new window.DOMMatrixReadOnly(V.transform),Y={id:e.id,position:e.position,x:(D.left-A.left)/X,y:(D.top-A.top)/X,type:r.value,nodeId:m,...Jr(_.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],Y]});function $(j){const I=ll(j);x.value&&w.value&&(I&&j.button===0||!I)&&k(j)}function K(j){!m||!s.value&&!w.value||x.value&&T(j)}return n({handleClick:T,handlePointerDown:k,onClick:K,onPointerDown:$}),(j,I)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:_,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":j.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${j.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:x.value,connecting:E.value,connectablestart:w.value,connectableend:b.value,connectionindicator:x.value&&(w.value&&!C.value||b.value&&C.value)}]]),onMousedown:$,onTouchstartPassive:$,onClick:K},[t.renderSlot(j.$slots,"default",{id:j.id})],42,Sx))}}),ii=function({sourcePosition:e=ge.Bottom,targetPosition:n=ge.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(Xt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(Xt,{type:"source",position:e,connectable:r,isValidConnection:a})]};ii.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],ii.inheritAttrs=!1,ii.compatConfig={MODE:3};const Ax=ii,ai=function({targetPosition:e=ge.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(Xt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};ai.props=["targetPosition","label","isValidTargetPos","connectable","data"],ai.inheritAttrs=!1,ai.compatConfig={MODE:3};const Ix=ai,li=function({sourcePosition:e=ge.Bottom,label:n,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??n;return[typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a]),t.h(Xt,{type:"source",position:e,connectable:o,isValidConnection:r})]};li.props=["sourcePosition","label","isValidSourcePos","connectable","data"],li.inheritAttrs=!1,li.compatConfig={MODE:3};const Tx=li,Px=["transform"],Ox=["width","height","x","y","rx","ry"],$x=["y"],Bx={name:"EdgeText",compatConfig:{MODE:3}},Vx=t.defineComponent({...Bx,props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(e){const n=t.ref({x:0,y:0,width:0,height:0}),o=t.ref(null),r=t.computed(()=>`translate(${e.x-n.value.width/2} ${e.y-n.value.height/2})`);t.onMounted(i),t.watch([()=>e.x,()=>e.y,o,()=>e.label],i);function i(){if(!o.value)return;const a=o.value.getBBox();(a.width!==n.value.width||a.height!==n.value.height)&&(n.value=a)}return(a,l)=>(t.openBlock(),t.createElementBlock("g",{transform:r.value,class:"vue-flow__edge-textwrapper"},[a.labelShowBg?(t.openBlock(),t.createElementBlock("rect",{key:0,class:"vue-flow__edge-textbg",width:`${n.value.width+2*a.labelBgPadding[0]}px`,height:`${n.value.height+2*a.labelBgPadding[1]}px`,x:-a.labelBgPadding[0],y:-a.labelBgPadding[1],style:t.normalizeStyle(a.labelBgStyle),rx:a.labelBgBorderRadius,ry:a.labelBgBorderRadius},null,12,Ox)):t.createCommentVNode("",!0),t.createElementVNode("text",t.mergeProps(a.$attrs,{ref_key:"el",ref:o,class:"vue-flow__edge-text",y:n.value.height/2,dy:"0.3em",style:a.labelStyle}),[t.renderSlot(a.$slots,"default",{},()=>[typeof a.label!="string"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.label),{key:0})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(t.toDisplayString(a.label),1)],64))])],16,$x)],8,Px))}}),Rx=["id","d","marker-end","marker-start"],Mx=["d","stroke-width"],Dx={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},si=t.defineComponent({...Dx,props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(e,{expose:n}){const o=t.ref(null),r=t.ref(null),i=t.ref(null),a=t.useAttrs();return n({pathEl:o,interactionEl:r,labelEl:i}),(l,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("path",t.mergeProps(t.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,Rx),l.interactionWidth?(t.openBlock(),t.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,Mx)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(Vx,{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"])):t.createCommentVNode("",!0)],64))}});function Af({sourceX:e,sourceY:n,targetX:o,targetY:r}){const i=Math.abs(o-e)/2,a=o<e?o+i:o-i,l=Math.abs(r-n)/2,s=r<n?r+l:r-l;return[a,s,i,l]}function If({sourceX:e,sourceY:n,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),u=Math.abs(d-n);return[c,d,f,u]}function ci(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Tf({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ge.Left:l=n-ci(n-r,a),s=o;break;case ge.Right:l=n+ci(r-n,a),s=o;break;case ge.Top:l=n,s=o-ci(o-i,a);break;case ge.Bottom:l=n,s=o+ci(i-o,a);break}return[l,s]}function Pf(e){const{sourceX:n,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,curvature:s=.25}=e,[c,d]=Tf({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Tf({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,h,y]=If({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,h,y]}function Of({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case ge.Left:case ge.Right:a=.5*(n+r),l=o;break;case ge.Top:case ge.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function $f(e){const{sourceX:n,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top}=e,[s,c]=Of({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Of({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,h]=If({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${n},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,h]}const Bf={[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 Fx({source:e,sourcePosition:n=ge.Bottom,target:o}){return n===ge.Left||n===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 Vf(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function Lx({source:e,sourcePosition:n=ge.Bottom,target:o,targetPosition:r=ge.Top,center:i,offset:a}){const l=Bf[n],s=Bf[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=Fx({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,y;const g={x:0,y:0},_={x:0,y:0},[w,b,C,E]=Af({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??w,y=i.y??b;const T=[{x:h,y:c.y},{x:h,y:d.y}],x=[{x:c.x,y},{x:d.x,y}];l[u]===p?m=u==="x"?T:x:m=u==="x"?x:T}else{const T=[{x:c.x,y:d.y}],x=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?x:T:m=l.y===p?T:x,n===r){const Q=Math.abs(e[u]-o[u]);if(Q<=a){const A=Math.min(a-1,a-Q);l[u]===p?g[u]=(c[u]>e[u]?-1:1)*A:_[u]=(d[u]>o[u]?-1:1)*A}}if(n!==r){const Q=u==="x"?"y":"x",A=l[u]===s[Q],D=c[Q]>d[Q],V=c[Q]<d[Q];(l[u]===1&&(!A&&D||A&&V)||l[u]!==1&&(!A&&V||A&&D))&&(m=u==="x"?T:x)}const $={x:c.x+g.x,y:c.y+g.y},K={x:d.x+_.x,y:d.y+_.y},j=Math.max(Math.abs($.x-m[0].x),Math.abs(K.x-m[0].x)),I=Math.max(Math.abs($.y-m[0].y),Math.abs(K.y-m[0].y));j>=I?(h=($.x+K.x)/2,y=m[0].y):(h=m[0].x,y=($.y+K.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,y,C,E]}function Ux(e,n,o,r){const i=Math.min(Vf(e,n)/2,Vf(n,o)/2,r),{x:a,y:l}=n;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 gl(e){const{sourceX:n,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,y]=Lx({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((_,w,b)=>{let C;return b>0&&b<u.length-1?C=Ux(u[b-1],w,u[b+1],s):C=`${b===0?"M":"L"}${w.x} ${w.y}`,_+=C,_},""),p,m,h,y]}function Kx(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Af({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const jx=t.defineComponent({name:"StraightEdge",props:["label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Kx(e);return t.h(si,{path:o,labelX:r,labelY:i,...n,...e})}}}),Rf=t.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:n}){return()=>{const[o,r,i]=gl({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(si,{path:o,labelX:r,labelY:i,...n,...e})}}}),Gx=t.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:n}){return()=>t.h(Rf,{...e,...n,borderRadius:0})}}),qx=t.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:n}){return()=>{const[o,r,i]=Pf({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(si,{path:o,labelX:r,labelY:i,...n,...e})}}}),zx=t.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:n}){return()=>{const[o,r,i]=$f({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(si,{path:o,labelX:r,labelY:i,...n,...e})}}}),Hx={input:Tx,default:Ax,output:Ix},Yx={default:qx,straight:jx,step:Gx,smoothstep:Rf,simplebezier:zx};function Wx(e,n,o){const r=t.computed(()=>y=>n.value.get(y)),i=t.computed(()=>y=>o.value.get(y)),a=t.computed(()=>{const y={...Yx,...e.edgeTypes},g=Object.keys(y);for(const _ of e.edges)_.type&&!g.includes(_.type)&&(y[_.type]=_.type);return y}),l=t.computed(()=>{const y={...Hx,...e.nodeTypes},g=Object.keys(y);for(const _ of e.nodes)_.type&&!g.includes(_.type)&&(y[_.type]=_.type);return y}),s=t.computed(()=>e.onlyRenderVisibleElements?Ju(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const y=[];for(const g of e.edges){const _=n.value.get(g.source),w=n.value.get(g.target);XS({sourcePos:_.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:_.dimensions.width,sourceHeight:_.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&y.push(g)}return y}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const y=[];for(const g of e.nodes)g.selected&&y.push(g);return y}),u=t.computed(()=>{const y=[];for(const g of e.edges)g.selected&&y.push(g);return y}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const y=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&y.push(g);return y}),h=t.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 n;const o=(n=t.getCurrentInstance())==null?void 0:n.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(n,o){return this.flows.set(n,o)}get(n){return this.flows.get(n)}remove(n){return this.flows.delete(n)}create(n,o){const r=xf(),i=t.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=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=Wx(i,s,c),f=vx(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...HC(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Ie(e){const n=gn.getInstance(),o=t.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=t.inject(wf,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const h=g=>{d.applyNodeChanges(g)},y=g=>{d.applyEdgeChanges(g)};u?(d.onNodesChange(h),d.onEdgesChange(y)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(y)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(y)})},{immediate:!0}),xr(()=>{if(s){const u=n.get(s.id);u?u.$destroy():ni(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(wf,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new qe(De.USEVUEFLOW_OPTIONS))}return s}function Xx(e){const{emits:n,dimensions:o}=Ie();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Jr(i);(l.width===0||l.height===0)&&n.error(new qe(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)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const Zx={name:"UserSelection",compatConfig:{MODE:3}},Jx=t.defineComponent({...Zx,props:{userSelectionRect:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__selection vue-flow__container",style:t.normalizeStyle({width:`${n.userSelectionRect.width}px`,height:`${n.userSelectionRect.height}px`,transform:`translate(${n.userSelectionRect.x}px, ${n.userSelectionRect.y}px)`})},null,4))}}),Qx=["tabIndex"],eA={name:"NodesSelection",compatConfig:{MODE:3}},tA=t.defineComponent({...eA,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Ie(),s=Sf(),c=t.ref(null),d=Cf({el:c,onStart(h){n.selectionDragStart(h)},onDrag(h){n.selectionDrag(h)},onStop(h){n.selectionDragStop(h)}});t.onMounted(()=>{var h;a.value||(h=c.value)==null||h.focus({preventScroll:!0})});const f=t.computed(()=>Zu(r.value)),u=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(h){n.selectionContextMenu({event:h,nodes:r.value})}function m(h){a||Hn[h.key]&&(h.preventDefault(),s({x:Hn[h.key].x,y:Hn[h.key].y},h.shiftKey))}return(h,y)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(d)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(u.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,Qx)],6)):t.createCommentVNode("",!0)}});function nA(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const oA={name:"Pane",compatConfig:{MODE:3}},rA=t.defineComponent({...oA,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,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:y,multiSelectionKeyCode:g,multiSelectionActive:_,edgeLookup:w,nodeLookup:b,connectionLookup:C,defaultEdgeOptions:E,connectionStartHandle:k}=Ie(),T=t.ref(null),x=t.ref(new Set),$=t.ref(new Set),K=t.ref(),j=t.toRef(()=>c.value&&(e.isSelecting||a.value)),I=t.toRef(()=>k.value!==null);let Q=!1,A=!1;const D=Oo(y,{actInsideInputWithModifier:!1}),V=Oo(g);t.watch(D,Z=>{Z&&(p(u.value),m(f.value),d.value=!1)}),t.watch(V,Z=>{_.value=Z});function X(Z,ae){return q=>{q.target===ae&&(Z==null||Z(q))}}function Y(Z){if(Q||I.value){Q=!1;return}i.paneClick(Z),l(),d.value=!1}function G(Z){Z.preventDefault(),Z.stopPropagation(),i.paneContextMenu(Z)}function F(Z){i.paneScroll(Z)}function R(Z){var ae,q,ee;if(K.value=(ae=n.value)==null?void 0:ae.getBoundingClientRect(),!c.value||!e.isSelecting||Z.button!==0||Z.target!==T.value||!K.value)return;(ee=(q=Z.target)==null?void 0:q.setPointerCapture)==null||ee.call(q,Z.pointerId);const{x:U,y:ne}=nA(Z,K.value);A=!0,Q=!1,l(),s.value={width:0,height:0,startX:U,startY:ne,x:U,y:ne},i.selectionStart(Z)}function oe(Z){var ae;if(!K.value||!s.value)return;Q=!0;const{x:q,y:ee}=At(Z,K.value),{startX:U=0,startY:ne=0}=s.value,re={startX:U,startY:ne,x:q<U?q:U,y:ee<ne?ee:ne,width:Math.abs(q-U),height:Math.abs(ee-ne)},de=x.value,L=$.value;x.value=new Set(Ju(o.value,re,r.value,h.value===tl.Partial,!0).map(N=>N.id)),$.value=new Set;const W=((ae=E.value)==null?void 0:ae.selectable)??!0;for(const N of x.value){const v=C.value.get(N);if(v)for(const{edgeId:S}of v.values()){const P=w.value.get(S);P&&(P.selectable??W)&&$.value.add(S)}}if(!bf(de,x.value)){const N=Yt(b.value,x.value,!0);i.nodesChange(N)}if(!bf(L,$.value)){const N=Yt(w.value,$.value);i.edgesChange(N)}s.value=re,a.value=!0,d.value=!1}function ie(Z){var ae;Z.button!==0||!A||((ae=Z.target)==null||ae.releasePointerCapture(Z.pointerId),!a.value&&s.value&&Z.target===T.value&&Y(Z),a.value=!1,s.value=null,d.value=x.value.size>0,i.selectionEnd(Z),e.selectionKeyPressed&&(Q=!1),A=!1)}return(Z,ae)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:T,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:Z.isSelecting}]),onClick:ae[0]||(ae[0]=q=>j.value?void 0:X(Y,T.value)(q)),onContextmenu:ae[1]||(ae[1]=q=>X(G,T.value)(q)),onWheelPassive:ae[2]||(ae[2]=q=>X(F,T.value)(q)),onPointerenter:ae[3]||(ae[3]=q=>j.value?void 0:t.unref(i).paneMouseEnter(q)),onPointerdown:ae[4]||(ae[4]=q=>j.value?R(q):t.unref(i).paneMouseMove(q)),onPointermove:ae[5]||(ae[5]=q=>j.value?oe(q):t.unref(i).paneMouseMove(q)),onPointerup:ae[6]||(ae[6]=q=>j.value?ie(q):void 0),onPointerleave:ae[7]||(ae[7]=q=>t.unref(i).paneMouseLeave(q))},[t.renderSlot(Z.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(Jx,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(d)&&t.unref(u).length?(t.openBlock(),t.createBlock(tA,{key:1})):t.createCommentVNode("",!0)],34))}}),iA={name:"Transform",compatConfig:{MODE:3}},aA=t.defineComponent({...iA,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Ie(),i=t.computed(()=>o.value?!r.value:!1),a=t.computed(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:t.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[t.renderSlot(l.$slots,"default")],4))}}),lA={name:"Viewport",compatConfig:{MODE:3}},sA=t.defineComponent({...lA,setup(e){const{minZoom:n,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:y,noWheelClassName:g,noPanClassName:_,emits:w,connectionStartHandle:b,userSelectionActive:C,paneDragging:E,d3Zoom:k,d3Selection:T,d3ZoomHandler:x,viewport:$,viewportRef:K,paneClickDistance:j}=Ie();Xx(K);const I=t.shallowRef(!1),Q=t.shallowRef(!1);let A=null,D=!1,V=0,X={x:0,y:0,zoom:0};const Y=Oo(s),G=Oo(l),F=Oo(a),R=t.toRef(()=>(!G.value||G.value&&l.value===!0)&&(Y.value||u.value)),oe=t.toRef(()=>Y.value||c.value),ie=t.toRef(()=>G.value||l.value===!0&&R.value!==!0);t.onMounted(()=>{if(!K.value){ni("Viewport element is missing");return}const ne=K.value,re=ne.getBoundingClientRect(),de=PS().clickDistance(j.value).scaleExtent([n.value,o.value]).translateExtent(i.value),L=gt(ne).call(de),W=L.on("wheel.zoom"),N=zn.translate(r.value.x??0,r.value.y??0).scale(pn(r.value.zoom??1,n.value,o.value)),v=[[0,0],[re.width,re.height]],S=de.constrain()(N,v,i.value);de.transform(L,S),de.wheelDelta(ae),k.value=de,T.value=L,x.value=W,$.value={x:S.x,y:S.y,zoom:S.k},de.on("start",P=>{var O;if(!P.sourceEvent)return null;V=P.sourceEvent.button,I.value=!0;const J=ee(P.transform);((O=P.sourceEvent)==null?void 0:O.type)==="mousedown"&&(E.value=!0),X=J,w.viewportChangeStart(J),w.moveStart({event:P,flowTransform:J})}),de.on("end",P=>{if(!P.sourceEvent)return null;if(I.value=!1,E.value=!1,Z(R.value,V??0)&&!D&&w.paneContextMenu(P.sourceEvent),D=!1,q(X,P.transform)){const O=ee(P.transform);X=O,w.viewportChangeEnd(O),w.moveEnd({event:P,flowTransform:O})}}),de.filter(P=>{var O;const J=F.value||h.value,te=m.value&&P.ctrlKey,M=P.button;if(M===1&&P.type==="mousedown"&&(U(P,"vue-flow__node")||U(P,"vue-flow__edge")))return!0;if(!R.value&&!J&&!oe.value&&!p.value&&!m.value||C.value||!p.value&&P.type==="dblclick"||U(P,g.value)&&P.type==="wheel"||U(P,_.value)&&(P.type!=="wheel"||oe.value&&P.type==="wheel"&&!F.value)||!m.value&&P.ctrlKey&&P.type==="wheel"||!J&&!oe.value&&!te&&P.type==="wheel")return!1;if(!m&&P.type==="touchstart"&&((O=P.touches)==null?void 0:O.length)>1)return P.preventDefault(),!1;if(!R.value&&(P.type==="mousedown"||P.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&M===0||Array.isArray(u.value)&&!u.value.includes(M)&&(P.type==="mousedown"||P.type==="touchstart"))return!1;const H=Array.isArray(u.value)&&u.value.includes(M)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!M||M<=1;return(!P.ctrlKey||Y.value||P.type==="wheel")&&H}),t.watch([C,R],()=>{C.value&&!I.value?de.on("zoom",null):C.value||de.on("zoom",P=>{$.value={x:P.transform.x,y:P.transform.y,zoom:P.transform.k};const O=ee(P.transform);D=Z(R.value,V??0),w.viewportChange(O),w.move({event:P,flowTransform:O})})},{immediate:!0}),t.watch([C,oe,d,F,m,y,g],()=>{oe.value&&!F.value&&!C.value?L.on("wheel.zoom",P=>{if(U(P,g.value))return!1;const O=F.value||h.value,J=m.value&&P.ctrlKey;if(!(!y.value||oe.value||O||J))return!1;P.preventDefault(),P.stopImmediatePropagation();const M=L.property("__zoom").k||1,H=ei();if(!Y.value&&P.ctrlKey&&m.value&&H){const _e=Nt(P),be=ae(P),Ce=M*2**be;de.scaleTo(L,Ce,_e,P);return}const B=P.deltaMode===1?20:1;let le=d.value===Po.Vertical?0:P.deltaX*B,ce=d.value===Po.Horizontal?0:P.deltaY*B;!H&&P.shiftKey&&d.value!==Po.Vertical&&!le&&ce&&(le=ce,ce=0),de.translateBy(L,-(le/M)*f.value,-(ce/M)*f.value);const se=ee(L.property("__zoom"));A&&clearTimeout(A),Q.value?(w.move({event:P,flowTransform:se}),w.viewportChange(se),A=setTimeout(()=>{w.moveEnd({event:P,flowTransform:se}),w.viewportChangeEnd(se),Q.value=!1},150)):(Q.value=!0,w.moveStart({event:P,flowTransform:se}),w.viewportChangeStart(se))},{passive:!1}):typeof W<"u"&&L.on("wheel.zoom",function(P,O){const J=!y.value&&P.type==="wheel"&&!P.ctrlKey,te=F.value||h.value,M=m.value&&P.ctrlKey;if(!te&&!c.value&&!M&&P.type==="wheel"||J||U(P,g.value))return null;P.preventDefault(),W.call(this,P,O)},{passive:!1})},{immediate:!0})});function Z(ne,re){return re===2&&Array.isArray(ne)&&ne.includes(2)}function ae(ne){const re=ne.ctrlKey&&ei()?10:1;return-ne.deltaY*(ne.deltaMode===1?.05:ne.deltaMode?1:.002)*re}function q(ne,re){return ne.x!==re.x&&!Number.isNaN(re.x)||ne.y!==re.y&&!Number.isNaN(re.y)||ne.zoom!==re.k&&!Number.isNaN(re.k)}function ee(ne){return{x:ne.x,y:ne.y,zoom:ne.k}}function U(ne,re){return ne.target.closest(`.${re}`)}return(ne,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:K,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(rA,{"is-selecting":ie.value,"selection-key-pressed":t.unref(G),class:t.normalizeClass({connecting:!!t.unref(b),dragging:t.unref(E),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(aA,null,{default:t.withCtx(()=>[t.renderSlot(ne.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),cA=["id"],dA=["id"],uA=["id"],fA={name:"A11yDescriptions",compatConfig:{MODE:3}},pA=t.defineComponent({...fA,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Ie();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Ku)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select a node. "+t.toDisplayString(t.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,cA),t.createElementVNode("div",{id:`${t.unref(ju)}-${t.unref(n)}`,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,dA),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(MS)}-${t.unref(n)}`,"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%)"}},t.toDisplayString(t.unref(r)),9,uA))],64))}});function mA(){const e=Ie();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function gA(e,n,o){return o===ge.Left?e-n:o===ge.Right?e+n:e}function hA(e,n,o){return o===ge.Top?e-n:o===ge.Bottom?e+n:e}const hl=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=ge.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:gA(n,e,r),cy:hA(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};hl.props=["radius","centerX","centerY","position","type"],hl.compatConfig={MODE:3};const Mf=hl,yA=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,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:y,edgesUpdatable:g,edgesFocusable:_,hooks:w}=Ie(),b=t.computed(()=>f(e.id)),{emit:C,on:E}=px(b.value,a),k=t.inject(oi),T=t.getCurrentInstance(),x=t.ref(!1),$=t.ref(!1),K=t.ref(""),j=t.ref(null),I=t.ref("source"),Q=t.ref(null),A=t.toRef(()=>typeof b.value.selectable>"u"?y.value:b.value.selectable),D=t.toRef(()=>typeof b.value.updatable>"u"?g.value:b.value.updatable),V=t.toRef(()=>typeof b.value.focusable>"u"?_.value:b.value.focusable);t.provide(dx,e.id),t.provide(ux,Q);const X=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),Y=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),G=t.computed(()=>{const v=b.value.type||"default",S=k==null?void 0:k[`edge-${v}`];if(S)return S;let P=b.value.template??c.value[v];if(typeof P=="string"&&T){const O=Object.keys(T.appContext.components);O&&O.includes(v)&&(P=t.resolveComponent(v,!1))}return P&&typeof P!="string"?P:(a.error(new qe(De.EDGE_TYPE_MISSING,P)),!1)}),{handlePointerDown:F}=Nf({nodeId:K,handleId:j,type:I,isValidConnection:p,edgeUpdaterType:I,onEdgeUpdate:ie,onEdgeUpdateEnd:Z});return()=>{const v=u(b.value.source),S=u(b.value.target),P="pathOptions"in b.value?b.value.pathOptions:{};if(!v&&!S)return a.error(new qe(De.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!v)return a.error(new qe(De.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!S)return a.error(new qe(De.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||v.hidden||S.hidden)return null;let O;r.value===qt.Strict?O=v.handleBounds.source:O=[...v.handleBounds.source||[],...v.handleBounds.target||[]];const J=uf(O,b.value.sourceHandle);let te;r.value===qt.Strict?te=S.handleBounds.target:te=[...S.handleBounds.target||[],...S.handleBounds.source||[]];const M=uf(te,b.value.targetHandle),H=(J==null?void 0:J.position)||ge.Bottom,B=(M==null?void 0:M.position)||ge.Top,{x:le,y:ce}=Yn(v,J,H),{x:se,y:_e}=Yn(S,M,B);return b.value.sourceX=le,b.value.sourceY=ce,b.value.targetX=se,b.value.targetY=_e,t.h("g",{ref:Q,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${G.value===!1?"default":b.value.type||"default"}`,s.value,X.value,{updating:x.value,selected:b.value.selected,animated:b.value.animated,inactive:!A.value&&!w.value.edgeClick.hasListeners()}],tabIndex:V.value?0:void 0,"aria-label":b.value.ariaLabel===null?void 0:b.value.ariaLabel??`Edge from ${b.value.source} to ${b.value.target}`,"aria-describedby":V.value?`${ju}-${n}`:void 0,"aria-roledescription":"edge",role:V.value?"group":"img",...b.value.domAttributes,onClick:q,onContextmenu:ee,onDblclick:U,onMouseenter:ne,onMousemove:re,onMouseleave:de,onKeyDown:V.value?N:void 0},[$.value?null:t.h(G.value===!1?c.value.default:G.value,{id:e.id,sourceNode:v,targetNode:S,source:b.value.source,target:b.value.target,type:b.value.type,updatable:D.value,selected:b.value.selected,animated:b.value.animated,label:b.value.label,labelStyle:b.value.labelStyle,labelShowBg:b.value.labelShowBg,labelBgStyle:b.value.labelBgStyle,labelBgPadding:b.value.labelBgPadding,labelBgBorderRadius:b.value.labelBgBorderRadius,data:b.value.data,events:{...b.value.events,...E},style:Y.value,markerStart:`url('#${Vo(b.value.markerStart,n)}')`,markerEnd:`url('#${Vo(b.value.markerEnd,n)}')`,sourcePosition:H,targetPosition:B,sourceX:le,sourceY:ce,targetX:se,targetY:_e,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...P}),[D.value==="source"||D.value===!0?[t.h("g",{onMousedown:L,onMouseenter:R,onMouseout:oe},t.h(Mf,{position:H,centerX:le,centerY:ce,radius:i.value,type:"source","data-type":"source"}))]:null,D.value==="target"||D.value===!0?[t.h("g",{onMousedown:W,onMouseenter:R,onMouseout:oe},t.h(Mf,{position:B,centerX:se,centerY:_e,radius:i.value,type:"target","data-type":"target"}))]:null]])};function R(){x.value=!0}function oe(){x.value=!1}function ie(v,S){C.update({event:v,edge:b.value,connection:S})}function Z(v){C.updateEnd({event:v,edge:b.value}),$.value=!1}function ae(v,S){v.button===0&&($.value=!0,K.value=S?b.value.target:b.value.source,j.value=(S?b.value.targetHandle:b.value.sourceHandle)??null,I.value=S?"target":"source",C.updateStart({event:v,edge:b.value}),F(v))}function q(v){var S;const P={event:v,edge:b.value};A.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(S=Q.value)==null||S.blur()):o([b.value])),C.click(P)}function ee(v){C.contextMenu({event:v,edge:b.value})}function U(v){C.doubleClick({event:v,edge:b.value})}function ne(v){C.mouseEnter({event:v,edge:b.value})}function re(v){C.mouseMove({event:v,edge:b.value})}function de(v){C.mouseLeave({event:v,edge:b.value})}function L(v){ae(v,!0)}function W(v){ae(v,!1)}function N(v){var S;!h.value&&Gu.includes(v.key)&&A.value&&(v.key==="Escape"?((S=Q.value)==null||S.blur(),d([f(e.id)])):o([f(e.id)]))}}}),_A=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Ie(),p=(e=t.inject(oi))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return u((w=r.value)==null?void 0:w.nodeId)}),h=t.computed(()=>{var w;return u((w=i.value)==null?void 0:w.nodeId)??null}),y=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),g=t.computed(()=>c.value.markerStart?`url(#${Vo(c.value.markerStart,n)})`:""),_=t.computed(()=>c.value.markerEnd?`url(#${Vo(c.value.markerEnd,n)})`:"");return()=>{var w,b,C;if(!m.value||!r.value)return null;const E=r.value.id,k=r.value.type,T=m.value.handleBounds;let x=(T==null?void 0:T[k])??[];if(o.value===qt.Loose){const Y=(T==null?void 0:T[k==="source"?"target":"source"])??[];x=[...x,...Y]}if(!x)return null;const $=(E?x.find(Y=>Y.id===E):x[0])??null,K=($==null?void 0:$.position)??ge.Top,{x:j,y:I}=Yn(m.value,$,K);let Q=null;h.value&&(o.value===qt.Strict?Q=((w=h.value.handleBounds[k==="source"?"target":"source"])==null?void 0:w.find(Y=>{var G;return Y.id===((G=i.value)==null?void 0:G.id)}))||null:Q=((b=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:b.find(Y=>{var G;return Y.id===((G=i.value)==null?void 0:G.id)}))||null);const A=((C=i.value)==null?void 0:C.position)??(K?cl[K]:null);if(!K||!A)return null;const D=l.value??c.value.type??fn.Bezier;let V="";const X={sourceX:j,sourceY:I,sourcePosition:K,targetX:y.value.x,targetY:y.value.y,targetPosition:A};return D===fn.Bezier?[V]=Pf(X):D===fn.Step?[V]=gl({...X,borderRadius:0}):D===fn.SmoothStep?[V]=gl(X):D===fn.SimpleBezier?[V]=$f(X):V=`M${j},${I} ${y.value.x},${y.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:j,sourceY:I,sourcePosition:K,targetX:y.value.x,targetY:y.value.y,targetPosition:A,sourceNode:m.value,sourceHandle:$,targetNode:h.value,targetHandle:Q,markerEnd:_.value,markerStart:g.value,connectionStatus:d.value}):t.h("path",{d:V,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":_.value,"marker-start":g.value})))}}}),bA=["id","markerWidth","markerHeight","markerUnits","orient"],wA={name:"MarkerType",compatConfig:{MODE:3}},kA=t.defineComponent({...wA,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(n,o)=>(t.openBlock(),t.createElementBlock("marker",{id:n.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${n.width}`,markerHeight:`${n.height}`,markerUnits:n.markerUnits,orient:n.orient},[n.type===t.unref(Wr).ArrowClosed?(t.openBlock(),t.createElementBlock("polyline",{key:0,style:t.normalizeStyle({stroke:n.color,fill:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):t.createCommentVNode("",!0),n.type===t.unref(Wr).Arrow?(t.openBlock(),t.createElementBlock("polyline",{key:1,style:t.normalizeStyle({stroke:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):t.createCommentVNode("",!0)],8,bA))}}),EA={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},CA={name:"MarkerDefinitions",compatConfig:{MODE:3}},NA=t.defineComponent({...CA,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Ie(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=Vo(d,n);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)=>(t.openBlock(),t.createElementBlock("svg",EA,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(kA,{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))])]))}}),vA={name:"Edges",compatConfig:{MODE:3}},SA=t.defineComponent({...vA,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Ie();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(NA),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),l=>(t.openBlock(),t.createElementBlock("svg",{key:l.id,class:"vue-flow__edges vue-flow__container",style:t.normalizeStyle({zIndex:t.unref(ZS)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(yA),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(_A))],64))}}),xA=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,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:y,snapToGrid:g,snapGrid:_,nodeDragThreshold:w,nodesDraggable:b,elementsSelectable:C,nodesConnectable:E,nodesFocusable:k,hooks:T}=Ie(),x=t.ref(null);t.provide(Ef,x),t.provide(kf,e.id);const $=t.inject(oi),K=t.getCurrentInstance(),j=Sf(),{node:I,parentNode:Q}=vf(e.id),{emit:A,on:D}=yx(I,l),V=t.toRef(()=>typeof I.draggable>"u"?b.value:I.draggable),X=t.toRef(()=>typeof I.selectable>"u"?C.value:I.selectable),Y=t.toRef(()=>typeof I.connectable>"u"?E.value:I.connectable),G=t.toRef(()=>typeof I.focusable>"u"?k.value:I.focusable),F=t.computed(()=>X.value||V.value||T.value.nodeClick.hasListeners()||T.value.nodeDoubleClick.hasListeners()||T.value.nodeMouseEnter.hasListeners()||T.value.nodeMouseMove.hasListeners()||T.value.nodeMouseLeave.hasListeners()),R=t.toRef(()=>!!I.dimensions.width&&!!I.dimensions.height),oe=t.computed(()=>{const S=I.type||"default",P=$==null?void 0:$[`node-${S}`];if(P)return P;let O=I.template||u.value[S];if(typeof O=="string"&&K){const J=Object.keys(K.appContext.components);J&&J.includes(S)&&(O=t.resolveComponent(S,!1))}return O&&typeof O!="string"?O:(l.error(new qe(De.NODE_TYPE_MISSING,O)),!1)}),ie=Cf({id:e.id,el:x,disabled:()=>!V.value,selectable:X,dragHandle:()=>I.dragHandle,onStart(S){A.dragStart(S)},onDrag(S){A.drag(S)},onStop(S){A.dragStop(S)},onClick(S){N(S)}}),Z=t.computed(()=>I.class instanceof Function?I.class(I):I.class),ae=t.computed(()=>{const S=(I.style instanceof Function?I.style(I):I.style)||{},P=I.width instanceof Function?I.width(I):I.width,O=I.height instanceof Function?I.height(I):I.height;return!S.width&&P&&(S.width=typeof P=="string"?P:`${P}px`),!S.height&&O&&(S.height=typeof O=="string"?O:`${O}px`),S}),q=t.toRef(()=>Number(I.zIndex??ae.value.zIndex??0));return f(S=>{(S.includes(e.id)||!S.length)&&U()}),t.onMounted(()=>{t.watch(()=>I.hidden,(S=!1,P,O)=>{!S&&x.value&&(e.resizeObserver.observe(x.value),O(()=>{x.value&&e.resizeObserver.unobserve(x.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>I.type,()=>I.sourcePosition,()=>I.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:x.value,forceUpdate:!0}])})}),t.watch([()=>I.position.x,()=>I.position.y,()=>{var S;return(S=Q.value)==null?void 0:S.computedPosition.x},()=>{var S;return(S=Q.value)==null?void 0:S.computedPosition.y},()=>{var S;return(S=Q.value)==null?void 0:S.computedPosition.z},q,()=>I.selected,()=>I.dimensions.height,()=>I.dimensions.width,()=>{var S;return(S=Q.value)==null?void 0:S.dimensions.height},()=>{var S;return(S=Q.value)==null?void 0:S.dimensions.width}],([S,P,O,J,te,M])=>{const H={x:S,y:P,z:M+(m.value&&I.selected?1e3:0)};typeof O<"u"&&typeof J<"u"?I.computedPosition=qS({x:O,y:J,z:te},H):I.computedPosition=H},{flush:"post",immediate:!0}),t.watch([()=>I.extent,p],([S,P],[O,J])=>{(S!==O||P!==J)&&ee()}),I.extent==="parent"||typeof I.extent=="object"&&"range"in I.extent&&I.extent.range==="parent"?Ba(()=>R).toBe(!0).then(ee):ee(),()=>I.hidden?null:t.h("div",{ref:x,"data-id":I.id,class:["vue-flow__node",`vue-flow__node-${oe.value===!1?"default":I.type||"default"}`,{[o.value]:V.value,dragging:ie==null?void 0:ie.value,draggable:V.value,selected:I.selected,selectable:X.value,parent:I.isParent},Z.value],style:{visibility:R.value?"visible":"hidden",zIndex:I.computedPosition.z??q.value,transform:`translate(${I.computedPosition.x}px,${I.computedPosition.y}px)`,pointerEvents:F.value?"all":"none",...ae.value},tabIndex:G.value?0:void 0,role:G.value?"group":void 0,"aria-describedby":h.value?void 0:`${Ku}-${n}`,"aria-label":I.ariaLabel,"aria-roledescription":"node",...I.domAttributes,onMouseenter:ne,onMousemove:re,onMouseleave:de,onContextmenu:L,onClick:N,onDblclick:W,onKeydown:v},[t.h(oe.value===!1?u.value.default:oe.value,{id:I.id,type:I.type,data:I.data,events:{...I.events,...D},selected:I.selected,resizing:I.resizing,dragging:ie.value,connectable:Y.value,position:I.computedPosition,dimensions:I.dimensions,isValidTargetPos:I.isValidTargetPos,isValidSourcePos:I.isValidSourcePos,parent:I.parentNode,parentNodeId:I.parentNode,zIndex:I.computedPosition.z??q.value,targetPosition:I.targetPosition,sourcePosition:I.sourcePosition,label:I.label,dragHandle:I.dragHandle,onUpdateNodeInternals:U})]);function ee(){const S=I.computedPosition,{computedPosition:P,position:O}=al(I,g.value?ti(S,_.value):S,l.error,p.value,Q.value);(I.computedPosition.x!==P.x||I.computedPosition.y!==P.y)&&(I.computedPosition={...I.computedPosition,...P}),(I.position.x!==O.x||I.position.y!==O.y)&&(I.position=O)}function U(){x.value&&d([{id:e.id,nodeElement:x.value,forceUpdate:!0}])}function ne(S){ie!=null&&ie.value||A.mouseEnter({event:S,node:I})}function re(S){ie!=null&&ie.value||A.mouseMove({event:S,node:I})}function de(S){ie!=null&&ie.value||A.mouseLeave({event:S,node:I})}function L(S){return A.contextMenu({event:S,node:I})}function W(S){return A.doubleClick({event:S,node:I})}function N(S){X.value&&(!r.value||!V.value||w.value>0)&&dl(I,a.value,c,s,i,!1,x.value),A.click({event:S,node:I})}function v(S){if(!(nl(S)||h.value))if(Gu.includes(S.key)&&X.value){const P=S.key==="Escape";dl(I,a.value,c,s,i,P,x.value)}else V.value&&I.selected&&Hn[S.key]&&(S.preventDefault(),y.value=`Moved selected node ${S.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~I.position.x}, y: ${~~I.position.y}`,j({x:Hn[S.key].x,y:Hn[S.key].y},S.shiftKey))}}});function AA(e={includeHiddenNodes:!1}){const{nodes:n}=Ie();return t.computed(()=>{if(n.value.length===0)return!1;for(const o of n.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 IA={class:"vue-flow__nodes vue-flow__container"},TA={name:"Nodes",compatConfig:{MODE:3}},PA=t.defineComponent({...TA,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Ie(),i=AA(),a=t.ref();return t.watch(i,l=>{l&&t.nextTick(()=>{r.nodesInitialized(n.value)})},{immediate:!0}),t.onMounted(()=>{a.value=new ResizeObserver(l=>{const s=l.map(c=>({id:c.target.getAttribute("data-id"),nodeElement:c.target,forceUpdate:!0}));t.nextTick(()=>o(s))})}),t.onBeforeUnmount(()=>{var l;return(l=a.value)==null?void 0:l.disconnect()}),(l,s)=>(t.openBlock(),t.createElementBlock("div",IA,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,d,f,u)=>{const p=[c.id];if(u&&u.key===c.id&&t.isMemoSame(u,p))return u;const m=(t.openBlock(),t.createBlock(t.unref(xA),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):t.createCommentVNode("",!0)]))}});function OA(){const{emits:e}=Ie();t.onMounted(()=>{if(gf()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new qe(De.MISSING_STYLES))}})}const $A=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),BA={name:"VueFlow",compatConfig:{MODE:3}},Df=t.defineComponent({...BA,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:n,emit:o}){const r=e,i=t.useSlots(),a=Va(r,"modelValue",o),l=Va(r,"nodes",o),s=Va(r,"edges",o),c=Ie(r),d=kx({modelValue:a,nodes:l,edges:s},r,c);return Cx(o,c.hooks),mA(),OA(),t.provide(oi,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(sA,null,{default:t.withCtx(()=>[t.createVNode(SA),$A,t.createVNode(PA),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(pA)],512))}}),VA={name:"Panel",compatConfig:{MODE:3}},RA=t.defineComponent({...VA,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Ie(),r=t.computed(()=>`${n.position}`.split("-"));return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vue-flow__panel",r.value]),style:t.normalizeStyle({pointerEvents:t.unref(o)?"none":"all"})},[t.renderSlot(i.$slots,"default")],6))}});var Lt=(e=>(e.Lines="lines",e.Dots="dots",e))(Lt||{});const Ff=function({dimensions:e,size:n,color:o}){return t.h("path",{stroke:o,"stroke-width":n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},Lf=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};Lt.Lines+"",Lt.Dots+"";const MA={[Lt.Dots]:"#81818a",[Lt.Lines]:"#eee"},DA=["id","x","y","width","height","patternTransform"],FA={key:2,height:"100",width:"100"},LA=["fill"],UA=["x","y","fill"],KA={name:"Background",compatConfig:{MODE:3}},jA=t.defineComponent({...KA,props:{id:{},variant:{default:()=>Lt.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:n,viewport:o}=Ie(),r=t.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=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||MA[e.variant||Lt.Dots]);return(l,s)=>(t.openBlock(),t.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:t.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[t.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[t.createElementVNode("pattern",{id:i.value,x:t.unref(o).x%r.value.scaledGap[0],y:t.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"},[t.renderSlot(l.$slots,"pattern",{},()=>[l.variant===t.unref(Lt).Lines?(t.openBlock(),t.createBlock(t.unref(Ff),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(Lt).Dots?(t.openBlock(),t.createBlock(t.unref(Lf),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",FA,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,LA)])):t.createCommentVNode("",!0)])],8,DA)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,UA),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),GA={name:"ControlButton",compatConfig:{MODE:3}},qA=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},zA={class:"vue-flow__controls-button"};function HA(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",zA,[t.renderSlot(e.$slots,"default")])}const di=qA(GA,[["render",HA]]),YA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},WA=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function XA(e,n){return t.openBlock(),t.createElementBlock("svg",YA,WA)}const ZA={render:XA},JA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},QA=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function eI(e,n){return t.openBlock(),t.createElementBlock("svg",JA,QA)}const tI={render:eI},nI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},oI=[t.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 rI(e,n){return t.openBlock(),t.createElementBlock("svg",nI,oI)}const iI={render:rI},aI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},lI=[t.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 sI(e,n){return t.openBlock(),t.createElementBlock("svg",aI,lI)}const cI={render:sI},dI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},uI=[t.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 fI(e,n){return t.openBlock(),t.createElementBlock("svg",dI,uI)}const pI={render:fI},mI={name:"Controls",compatConfig:{MODE:3}},gI=t.defineComponent({...mI,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Lu.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Ie(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),h=t.toRef(()=>d.value.zoom>=u.value);function y(){l(),n("zoomIn")}function g(){s(),n("zoomOut")}function _(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(b,C)=>(t.openBlock(),t.createBlock(t.unref(RA),{class:"vue-flow__controls",position:b.position},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"top"),b.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(b.$slots,"control-zoom-in",{},()=>[t.createVNode(di,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(ZA))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(di,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(tI))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(di,{class:"vue-flow__controls-fitview",onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(iI))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(di,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(b.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(pI))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(cI))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),hI="44px",yI="220px",_I="366px",bI="52px",wI=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Uf="application/x-datakit+json";function kI(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var EI="\0",hn="\0",Kf="";let CI=class{constructor(n){Ke(this,"_isDirected",!0);Ke(this,"_isMultigraph",!1);Ke(this,"_isCompound",!1);Ke(this,"_label");Ke(this,"_defaultNodeLabelFn",()=>{});Ke(this,"_defaultEdgeLabelFn",()=>{});Ke(this,"_nodes",{});Ke(this,"_in",{});Ke(this,"_preds",{});Ke(this,"_out",{});Ke(this,"_sucs",{});Ke(this,"_edgeObjs",{});Ke(this,"_edgeLabels",{});Ke(this,"_nodeCount",0);Ke(this,"_edgeCount",0);Ke(this,"_parent");Ke(this,"_children");n&&(this._isDirected=Object.hasOwn(n,"directed")?n.directed:!0,this._isMultigraph=Object.hasOwn(n,"multigraph")?n.multigraph:!1,this._isCompound=Object.hasOwn(n,"compound")?n.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[hn]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(n){return this._label=n,this}graph(){return this._label}setDefaultNodeLabel(n){return this._defaultNodeLabelFn=n,typeof n!="function"&&(this._defaultNodeLabelFn=()=>n),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var n=this;return this.nodes().filter(o=>Object.keys(n._in[o]).length===0)}sinks(){var n=this;return this.nodes().filter(o=>Object.keys(n._out[o]).length===0)}setNodes(n,o){var r=arguments,i=this;return n.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(n,o){return Object.hasOwn(this._nodes,n)?(arguments.length>1&&(this._nodes[n]=o),this):(this._nodes[n]=arguments.length>1?o:this._defaultNodeLabelFn(n),this._isCompound&&(this._parent[n]=hn,this._children[n]={},this._children[hn][n]=!0),this._in[n]={},this._preds[n]={},this._out[n]={},this._sucs[n]={},++this._nodeCount,this)}node(n){return this._nodes[n]}hasNode(n){return Object.hasOwn(this._nodes,n)}removeNode(n){var o=this;if(Object.hasOwn(this._nodes,n)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[n],this._isCompound&&(this._removeFromParentsChildList(n),delete this._parent[n],this.children(n).forEach(function(i){o.setParent(i)}),delete this._children[n]),Object.keys(this._in[n]).forEach(r),delete this._in[n],delete this._preds[n],Object.keys(this._out[n]).forEach(r),delete this._out[n],delete this._sucs[n],--this._nodeCount}return this}setParent(n,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===n)throw new Error("Setting "+o+" as parent of "+n+" would create a cycle");this.setNode(o)}return this.setNode(n),this._removeFromParentsChildList(n),this._parent[n]=o,this._children[o][n]=!0,this}_removeFromParentsChildList(n){delete this._children[this._parent[n]][n]}parent(n){if(this._isCompound){var o=this._parent[n];if(o!==hn)return o}}children(n=hn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===hn)return this.nodes();if(this.hasNode(n))return[]}}predecessors(n){var o=this._preds[n];if(o)return Object.keys(o)}successors(n){var o=this._sucs[n];if(o)return Object.keys(o)}neighbors(n){var o=this.predecessors(n);if(o){const i=new Set(o);for(var r of this.successors(n))i.add(r);return Array.from(i.values())}}isLeaf(n){var o;return this.isDirected()?o=this.successors(n):o=this.neighbors(n),o.length===0}filterNodes(n){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]){n(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(n){return this._defaultEdgeLabelFn=n,typeof n!="function"&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,o){var r=this,i=arguments;return n.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var n,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(n=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(n=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),n=""+n,o=""+o,r!==void 0&&(r=""+r);var s=Ro(this._isDirected,n,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(n),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(n,o,r);var c=NI(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,jf(this._preds[o],n),jf(this._sucs[n],o),this._in[o][s]=c,this._out[n][s]=c,this._edgeCount++,this}edge(n,o,r){var i=arguments.length===1?yl(this._isDirected,arguments[0]):Ro(this._isDirected,n,o,r);return this._edgeLabels[i]}edgeAsObj(){const n=this.edge(...arguments);return typeof n!="object"?{label:n}:n}hasEdge(n,o,r){var i=arguments.length===1?yl(this._isDirected,arguments[0]):Ro(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?yl(this._isDirected,arguments[0]):Ro(this._isDirected,n,o,r),a=this._edgeObjs[i];return a&&(n=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],Gf(this._preds[o],n),Gf(this._sucs[n],o),delete this._in[o][i],delete this._out[n][i],this._edgeCount--),this}inEdges(n,o){var r=this._in[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.v===o):i}}outEdges(n,o){var r=this._out[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.w===o):i}}nodeEdges(n,o){var r=this.inEdges(n,o);if(r)return r.concat(this.outEdges(n,o))}};function jf(e,n){e[n]?e[n]++:e[n]=1}function Gf(e,n){--e[n]||delete e[n]}function Ro(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Kf+a+Kf+(r===void 0?EI:r)}function NI(e,n,o,r){var i=""+n,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 yl(e,n){return Ro(e,n.v,n.w,n.name)}var _l=CI,vI="2.2.4",SI={Graph:_l,version:vI},xI=_l,AI={write:II,read:OI};function II(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:TI(e),edges:PI(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function TI(e){return e.nodes().map(function(n){var o=e.node(n),r=e.parent(n),i={v:n};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function PI(e){return e.edges().map(function(n){var o=e.edge(n),r={v:n.v,w:n.w};return n.name!==void 0&&(r.name=n.name),o!==void 0&&(r.value=o),r})}function OI(e){var n=new xI(e.options).setGraph(e.value);return e.nodes.forEach(function(o){n.setNode(o.v,o.value),o.parent&&n.setParent(o.v,o.parent)}),e.edges.forEach(function(o){n.setEdge({v:o.v,w:o.w,name:o.name},o.value)}),n}var $I=BI;function BI(e){var n={},o=[],r;function i(a){Object.hasOwn(n,a)||(n[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 qf=class{constructor(){Ke(this,"_arr",[]);Ke(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];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(n,o){var r=this._keyIndices;if(n=String(n),!Object.hasOwn(r,n)){var i=this._arr,a=i.length;return r[n]=a,i.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var r=this._keyIndices[n];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(n){var o=this._arr,r=2*n,i=r+1,a=n;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!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,r=o[n].priority,i;n!==0&&(i=n>>1,!(o[i].priority<r));)this._swap(n,i),n=i}_swap(n,o){var r=this._arr,i=this._keyIndices,a=r[n],l=r[o];r[n]=l,r[o]=a,i[l.key]=n,i[a.key]=o}},VI=qf,zf=MI,RI=()=>1;function MI(e,n,o,r){return DI(e,String(n),o||RI,r||function(i){return e.outEdges(i)})}function DI(e,n,o,r){var i={},a=new VI,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===n?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 FI=zf,LI=UI;function UI(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=FI(e,i,n,o),r},{})}var Hf=KI;function KI(e){var n=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:n,index:n++};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 jI=Hf,GI=qI;function qI(e){return jI(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var zI=YI,HI=()=>1;function YI(e,n,o){return WI(e,n||HI,o||function(r){return e.outEdges(r)})}function WI(e,n,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=n(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 Yf(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new bl;Object.hasOwn(n,a)||(o[a]=!0,n[a]=!0,e.predecessors(a).forEach(i),delete o[a],r.push(a))}if(e.sinks().forEach(i),Object.keys(n).length!==e.nodeCount())throw new bl;return r}class bl extends Error{constructor(){super(...arguments)}}var Wf=Yf;Yf.CycleException=bl;var Xf=Wf,XI=ZI;function ZI(e){try{Xf(e)}catch(n){if(n instanceof Xf.CycleException)return!1;throw n}return!0}var Zf=JI;function JI(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?QI:eT,a=[],l={};return n.forEach(s=>{if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,r,l,a)}),a}function QI(e,n,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]),Jf(n(a[0]),l=>i.push([l,!1])))}}function eT(e,n,o,r){for(var i=[e];i.length>0;){var a=i.pop();Object.hasOwn(o,a)||(o[a]=!0,r.push(a),Jf(n(a),l=>i.push(l)))}}function Jf(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var tT=Zf,nT=oT;function oT(e,n){return tT(e,n,"post")}var rT=Zf,iT=aT;function aT(e,n){return rT(e,n,"pre")}var lT=_l,sT=qf,cT=dT;function dT(e,n){var o=new lT,r={},i=new sT,a;function l(c){var d=c.v===a?c.w:c.v,f=i.priority(d);if(f!==void 0){var u=n(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 uT={components:$I,dijkstra:zf,dijkstraAll:LI,findCycles:GI,floydWarshall:zI,isAcyclic:XI,postorder:nT,preorder:iT,prim:cT,tarjan:Hf,topsort:Wf},Qf=SI,_t={Graph:Qf.Graph,json:AI,alg:uT,version:Qf.version};let fT=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return ep(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&ep(n),n._next=o._next,o._next._prev=n,o._next=n,n._prev=o}toString(){let n=[],o=this._sentinel,r=o._prev;for(;r!==o;)n.push(JSON.stringify(r,pT)),r=r._prev;return"["+n.join(", ")+"]"}};function ep(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function pT(e,n){if(e!=="_next"&&e!=="_prev")return n}var mT=fT;let gT=_t.Graph,hT=mT;var yT=bT;let _T=()=>1;function bT(e,n){if(e.nodeCount()<=1)return[];let o=kT(e,n||_T);return wT(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function wT(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)wl(e,n,o,l);for(;l=i.dequeue();)wl(e,n,o,l);if(e.nodeCount()){for(let s=n.length-2;s>0;--s)if(l=n[s].dequeue(),l){r=r.concat(wl(e,n,o,l,!0));break}}}return r}function wl(e,n,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,kl(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,kl(n,o,d)}),e.removeNode(r.v),a}function kT(e,n){let o=new gT,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=n(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=ET(i+r+3).map(()=>new hT),l=r+1;return o.nodes().forEach(s=>{kl(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function kl(e,n,o){o.out?o.in?e[o.out-o.in+n].enqueue(o):e[e.length-1].enqueue(o):e[0].enqueue(o)}function ET(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let tp=_t.Graph;var Le={addBorderNode:PT,addDummyNode:np,applyWithChunking:ui,asNonCompoundGraph:NT,buildLayerMatrix:AT,intersectRect:xT,mapValues:DT,maxRank:rp,normalizeRanks:IT,notime:VT,partition:$T,pick:MT,predecessorWeights:ST,range:ap,removeEmptyRanks:TT,simplify:CT,successorWeights:vT,time:BT,uniqueId:ip,zipObject:El};function np(e,n,o,r){for(var i=r;e.hasNode(i);)i=ip(r);return o.dummy=n,e.setNode(i,o),i}function CT(e){let n=new tp().setGraph(e.graph());return e.nodes().forEach(o=>n.setNode(o,e.node(o))),e.edges().forEach(o=>{let r=n.edge(o.v,o.w)||{weight:0,minlen:1},i=e.edge(o);n.setEdge(o.v,o.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),n}function NT(e){let n=new tp({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(o=>{e.children(o).length||n.setNode(o,e.node(o))}),e.edges().forEach(o=>{n.setEdge(o,e.edge(o))}),n}function vT(e){let n=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 El(e.nodes(),n)}function ST(e){let n=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 El(e.nodes(),n)}function xT(e,n){let o=e.x,r=e.y,i=n.x-o,a=n.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 AT(e){let n=ap(rp(e)+1).map(()=>[]);return e.nodes().forEach(o=>{let r=e.node(o),i=r.rank;i!==void 0&&(n[i][r.order]=o)}),n}function IT(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=ui(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function TT(e){let n=e.nodes().map(l=>e.node(l).rank),o=ui(Math.min,n),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 PT(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),np(e,"border",i,n)}function OT(e,n=op){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const op=65535;function ui(e,n){if(n.length>op){const o=OT(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function rp(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return ui(Math.max,o)}function $T(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function BT(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function VT(e,n){return n()}let RT=0;function ip(e){var n=++RT;return e+(""+n)}function ap(e,n,o=1){n==null&&(n=e,e=0);let r=a=>a<n;o<0&&(r=a=>n<a);const i=[];for(let a=e;r(a);a+=o)i.push(a);return i}function MT(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function DT(e,n){let o=n;return typeof n=="string"&&(o=r=>r[n]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function El(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let FT=yT,LT=Le.uniqueId;var UT={run:KT,undo:GT};function KT(e){(e.graph().acyclicer==="greedy"?FT(e,o(e)):jT(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,LT("rev"))});function o(r){return i=>r.edge(i).weight}}function jT(e){let n=[],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)?n.push(l):i(l.w)}),delete o[a])}return e.nodes().forEach(i),n}function GT(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.reversed){e.removeEdge(n);let r=o.forwardName;delete o.reversed,delete o.forwardName,e.setEdge(n.w,n.v,o,r)}})}let qT=Le;var zT={run:HT,undo:WT};function HT(e){e.graph().dummyChains=[],e.edges().forEach(n=>YT(e,n))}function YT(e,n){let o=n.v,r=e.node(o).rank,i=n.w,a=e.node(i).rank,l=n.name,s=e.edge(n),c=s.labelRank;if(a===r+1)return;e.removeEdge(n);let d,f,u;for(u=0,++r;r<a;++u,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},d=qT.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 WT(e){e.graph().dummyChains.forEach(n=>{let o=e.node(n),r=o.edgeLabel,i;for(e.setEdge(o.edgeObj,r);o.dummy;)i=e.successors(n)[0],e.removeNode(n),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),n=i,o=e.node(n)})}const{applyWithChunking:XT}=Le;var fi={longestPath:ZT,slack:JT};function ZT(e){var n={};function o(r){var i=e.node(r);if(Object.hasOwn(n,r))return i.rank;n[r]=!0;let a=e.outEdges(r).map(s=>s==null?Number.POSITIVE_INFINITY:o(s.w)-e.edge(s).minlen);var l=XT(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function JT(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var QT=_t.Graph,pi=fi.slack,lp=eP;function eP(e){var n=new QT({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;tP(n,e)<r;)i=nP(n,e),a=n.hasNode(i.v)?pi(e,i):-pi(e,i),oP(n,e,a);return n}function tP(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!pi(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function nP(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=pi(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function oP(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var rP=lp,sp=fi.slack,iP=fi.longestPath,aP=_t.alg.preorder,lP=_t.alg.postorder,sP=Le.simplify,cP=yn;yn.initLowLimValues=Nl,yn.initCutValues=Cl,yn.calcCutValue=cp,yn.leaveEdge=up,yn.enterEdge=fp,yn.exchangeEdges=pp;function yn(e){e=sP(e),iP(e);var n=rP(e);Nl(n),Cl(n,e);for(var o,r;o=up(n);)r=fp(n,e,o),pp(n,e,o,r)}function Cl(e,n){var o=lP(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>dP(e,n,r))}function dP(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=cp(e,n,o)}function cp(e,n,o){var r=e.node(o),i=r.parent,a=!0,l=n.edge(o,i),s=0;return l||(a=!1,l=n.edge(i,o)),s=l.weight,n.nodeEdges(o).forEach(c=>{var d=c.v===o,f=d?c.w:c.v;if(f!==i){var u=d===a,p=n.edge(c).weight;if(s+=u?p:-p,fP(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function Nl(e,n){arguments.length<2&&(n=e.nodes()[0]),dp(e,{},1,n)}function dp(e,n,o,r,i){var a=o,l=e.node(r);return n[r]=!0,e.neighbors(r).forEach(s=>{Object.hasOwn(n,s)||(o=dp(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function up(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function fp(e,n,o){var r=o.v,i=o.w;n.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=n.edges().filter(f=>c===mp(e,e.node(f.v),s)&&c!==mp(e,e.node(f.w),s));return d.reduce((f,u)=>sp(n,u)<sp(n,f)?u:f)}function pp(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),Nl(e),Cl(e,n),uP(e,n)}function uP(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=aP(e,o);r=r.slice(1),r.forEach(i=>{var a=e.node(i).parent,l=n.edge(i,a),s=!1;l||(l=n.edge(a,i),s=!0),n.node(i).rank=n.node(a).rank+(s?l.minlen:-l.minlen)})}function fP(e,n,o){return e.hasEdge(n,o)}function mp(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var pP=fi,gp=pP.longestPath,mP=lp,gP=cP,hP=yP;function yP(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":hp(e);break;case"tight-tree":bP(e);break;case"longest-path":_P(e);break;case"none":break;default:hp(e)}}var _P=gp;function bP(e){gp(e),mP(e)}function hp(e){gP(e)}var wP=kP;function kP(e){let n=CP(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=EP(e,n,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 EP(e,n,o,r){let i=[],a=[],l=Math.min(n[o].low,n[r].low),s=Math.max(n[o].lim,n[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function CP(e){let n={},o=0;function r(i){let a=o;e.children(i).forEach(r),n[i]={low:a,lim:o++}}return e.children().forEach(r),n}let mi=Le;var NP={run:vP,cleanup:AP};function vP(e){let n=mi.addDummyNode(e,"root",{},"_root"),o=SP(e),r=Object.values(o),i=mi.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=xP(e)+1;e.children().forEach(s=>yp(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function yp(e,n,o,r,i,a,l){let s=e.children(l);if(!s.length){l!==n&&e.setEdge(n,l,{weight:0,minlen:o});return}let c=mi.addBorderNode(e,"_bt"),d=mi.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{yp(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,y=p.borderTop?r:2*r,g=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:y,minlen:g,nestingEdge:!0}),e.setEdge(h,d,{weight:y,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function SP(e){var n={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),n[r]=i}return e.children().forEach(r=>o(r,1)),n}function xP(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function AP(e){var n=e.graph();e.removeNode(n.nestingRoot),delete n.nestingRoot,e.edges().forEach(o=>{var r=e.edge(o);r.nestingEdge&&e.removeEdge(o)})}let IP=Le;var TP=PP;function PP(e){function n(o){let r=e.children(o),i=e.node(o);if(r.length&&r.forEach(n),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,l=i.maxRank+1;a<l;++a)_p(e,"borderLeft","_bl",o,i,a),_p(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function _p(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=IP.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var OP={adjust:$P,undo:BP};function $P(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&bp(e)}function BP(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&VP(e),(n==="lr"||n==="rl")&&(RP(e),bp(e))}function bp(e){e.nodes().forEach(n=>wp(e.node(n))),e.edges().forEach(n=>wp(e.edge(n)))}function wp(e){let n=e.width;e.width=e.height,e.height=n}function VP(e){e.nodes().forEach(n=>vl(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(vl),Object.hasOwn(o,"y")&&vl(o)})}function vl(e){e.y=-e.y}function RP(e){e.nodes().forEach(n=>Sl(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(Sl),Object.hasOwn(o,"x")&&Sl(o)})}function Sl(e){let n=e.x;e.x=e.y,e.y=n}let kp=Le;var MP=DP;function DP(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=kp.applyWithChunking(Math.max,r),a=kp.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[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 FP=Le.zipObject;var LP=UP;function UP(e,n){let o=0;for(let r=1;r<n.length;++r)o+=KP(e,n[r-1],n[r]);return o}function KP(e,n,o){let r=FP(o,o.map((d,f)=>f)),i=n.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 jP=GP;function GP(e,n=[]){return n.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 qP=Le;var zP=HP;function HP(e,n){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)}),n.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 YP(r)}function YP(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&WP(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();n.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return n.filter(i=>!i.merged).map(i=>qP.pick(i,["vs","i","barycenter","weight"]))}function WP(e,n){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),n.weight&&(o+=n.barycenter*n.weight,r+=n.weight),e.vs=n.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(n.i,e.i),n.merged=!0}let XP=Le;var ZP=JP;function JP(e,n){let o=XP.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(QP(!!n)),c=Ep(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Ep(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Ep(e,n,o){let r;for(;n.length&&(r=n[n.length-1]).i<=o;)n.pop(),e.push(r.vs),o++;return o}function QP(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let eO=jP,tO=zP,nO=ZP;var oO=Cp;function Cp(e,n,o,r){let i=e.children(n),a=e.node(n),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=eO(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Cp(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&iO(p,m)}});let f=tO(d,o);rO(f,c);let u=nO(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 rO(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function iO(e,n){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+n.barycenter*n.weight)/(e.weight+n.weight),e.weight+=n.weight):(e.barycenter=n.barycenter,e.weight=n.weight)}let aO=_t.Graph,lO=Le;var sO=cO;function cO(e,n,o){let r=dO(e),i=new aO({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===n||l.minRank<=n&&n<=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[n],borderRight:l.borderRight[n]}))}),i}function dO(e){for(var n;e.hasNode(n=lO.uniqueId("_root")););return n}var uO=fO;function fO(e,n,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){n.setEdge(c,l);return}l=s}})}let pO=MP,mO=LP,gO=oO,hO=sO,yO=uO,_O=_t.Graph,gi=Le;var bO=Np;function Np(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,Np);return}let o=gi.maxRank(e),r=vp(e,gi.range(1,o+1),"inEdges"),i=vp(e,gi.range(o-1,-1,-1),"outEdges"),a=pO(e);if(Sp(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){wO(c%2?r:i,c%4>=2),a=gi.buildLayerMatrix(e);let f=mO(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Sp(e,s)}function vp(e,n,o){return n.map(function(r){return hO(e,r,o)})}function wO(e,n){let o=new _O;e.forEach(function(r){let i=r.graph().root,a=gO(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),yO(r,o,a.vs)})}function Sp(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let kO=_t.Graph,Ut=Le;var EO={positionX:$O};function CO(e,n){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=vO(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(y=>{let g=e.node(y),_=g.order;(_<l||m<_)&&!(g.dummy&&e.node(h).dummy)&&xp(o,y,h)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function NO(e,n){let o={};function r(a,l,s,c,d){let f;Ut.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)&&xp(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 n.length&&n.reduce(i),o}function vO(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function xp(e,n,o){if(n>o){let i=n;n=o,o=i}let r=e[n];r||(e[n]=r={}),r[o]=!0}function SO(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function xO(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),n.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]&&!SO(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function AO(e,n,o,r,i){let a={},l=IO(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),y={};for(;h;)y[h]?u(h):(y[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,y)=>Math.min(h,a[y.w]-l.edge(y)),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 IO(e,n,o,r){let i=new kO,a=e.graph(),l=BO(a.nodesep,a.edgesep,r);return n.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 TO(e,n){return Object.values(n).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=VO(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 PO(e,n){let o=Object.values(n),r=Ut.applyWithChunking(Math.min,o),i=Ut.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let d=Object.values(c),f=r-Ut.applyWithChunking(Math.min,d);l!=="l"&&(f=i-Ut.applyWithChunking(Math.max,d)),f&&(e[s]=Ut.mapValues(c,u=>u+f))})})}function OO(e,n){return Ut.mapValues(e.ul,(o,r)=>{if(n)return e[n.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function $O(e){let n=Ut.buildLayerMatrix(e),o=Object.assign(CO(e,n),NO(e,n)),r={},i;["u","d"].forEach(l=>{i=l==="u"?n:Object.values(n).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=xO(e,i,o,c),f=AO(e,i,d.root,d.align,s==="r");s==="r"&&(f=Ut.mapValues(f,u=>-u)),r[l+s]=f})});let a=TO(e,r);return PO(r,a),OO(r,e.graph().align)}function BO(e,n,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?n:e)/2,c+=(s.dummy?n: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 VO(e,n){return e.node(n).width}let Ap=Le,RO=EO.positionX;var MO=DO;function DO(e){e=Ap.asNonCompoundGraph(e),FO(e),Object.entries(RO(e)).forEach(([n,o])=>e.node(n).x=o)}function FO(e){let n=Ap.buildLayerMatrix(e),o=e.graph().ranksep,r=0;n.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 Ip=UT,Tp=zT,LO=hP,UO=Le.normalizeRanks,KO=wP,jO=Le.removeEmptyRanks,Pp=NP,GO=TP,Op=OP,qO=bO,zO=MO,ut=Le,HO=_t.Graph;var YO=WO;function WO(e,n){let o=n&&n.debugTiming?ut.time:ut.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>i$(e));o(" runLayout",()=>XO(r,o,n)),o(" updateInputGraph",()=>ZO(e,r))})}function XO(e,n,o){n(" makeSpaceForEdgeLabels",()=>a$(e)),n(" removeSelfEdges",()=>g$(e)),n(" acyclic",()=>Ip.run(e)),n(" nestingGraph.run",()=>Pp.run(e)),n(" rank",()=>LO(ut.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>l$(e)),n(" removeEmptyRanks",()=>jO(e)),n(" nestingGraph.cleanup",()=>Pp.cleanup(e)),n(" normalizeRanks",()=>UO(e)),n(" assignRankMinMax",()=>s$(e)),n(" removeEdgeLabelProxies",()=>c$(e)),n(" normalize.run",()=>Tp.run(e)),n(" parentDummyChains",()=>KO(e)),n(" addBorderSegments",()=>GO(e)),n(" order",()=>qO(e,o)),n(" insertSelfEdges",()=>h$(e)),n(" adjustCoordinateSystem",()=>Op.adjust(e)),n(" position",()=>zO(e)),n(" positionSelfEdges",()=>y$(e)),n(" removeBorderNodes",()=>m$(e)),n(" normalize.undo",()=>Tp.undo(e)),n(" fixupEdgeLabelCoords",()=>f$(e)),n(" undoCoordinateSystem",()=>Op.undo(e)),n(" translateGraph",()=>d$(e)),n(" assignNodeIntersects",()=>u$(e)),n(" reversePoints",()=>p$(e)),n(" acyclic.undo",()=>Ip.undo(e))}function ZO(e,n){e.nodes().forEach(o=>{let r=e.node(o),i=n.node(o);r&&(r.x=i.x,r.y=i.y,r.rank=i.rank,n.children(o).length&&(r.width=i.width,r.height=i.height))}),e.edges().forEach(o=>{let r=e.edge(o),i=n.edge(o);r.points=i.points,Object.hasOwn(i,"x")&&(r.x=i.x,r.y=i.y)}),e.graph().width=n.graph().width,e.graph().height=n.graph().height}let JO=["nodesep","edgesep","ranksep","marginx","marginy"],QO={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},e$=["acyclicer","ranker","rankdir","align"],t$=["width","height","rank"],$p={width:0,height:0},n$=["minlen","weight","width","height","labeloffset"],o$={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},r$=["labelpos"];function i$(e){let n=new HO({multigraph:!0,compound:!0}),o=Al(e.graph());return n.setGraph(Object.assign({},QO,xl(o,JO),ut.pick(o,e$))),e.nodes().forEach(r=>{let i=Al(e.node(r));const a=xl(i,t$);Object.keys($p).forEach(l=>{a[l]===void 0&&(a[l]=$p[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=Al(e.edge(r));n.setEdge(r,Object.assign({},o$,xl(i,n$),ut.pick(i,r$)))}),n}function a$(e){let n=e.graph();n.ranksep/=2,e.edges().forEach(o=>{let r=e.edge(o);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(n.rankdir==="TB"||n.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function l$(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.width&&o.height){let r=e.node(n.v),a={rank:(e.node(n.w).rank-r.rank)/2+r.rank,e:n};ut.addDummyNode(e,"edge-proxy",a,"_ep")}})}function s$(e){let n=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,n=Math.max(n,r.maxRank))}),e.graph().maxRank=n}function c$(e){e.nodes().forEach(n=>{let o=e.node(n);o.dummy==="edge-proxy"&&(e.edge(o.e).labelRank=o.rank,e.removeNode(n))})}function d$(e){let n=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;n=Math.min(n,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)}),n-=l,r-=s,e.nodes().forEach(d=>{let f=e.node(d);f.x-=n,f.y-=r}),e.edges().forEach(d=>{let f=e.edge(d);f.points.forEach(u=>{u.x-=n,u.y-=r}),Object.hasOwn(f,"x")&&(f.x-=n),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-n+l,a.height=i-r+s}function u$(e){e.edges().forEach(n=>{let o=e.edge(n),r=e.node(n.v),i=e.node(n.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(ut.intersectRect(r,a)),o.points.push(ut.intersectRect(i,l))})}function f$(e){e.edges().forEach(n=>{let o=e.edge(n);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 p$(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function m$(e){e.nodes().forEach(n=>{if(e.children(n).length){let o=e.node(n),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(n=>{e.node(n).dummy==="border"&&e.removeNode(n)})}function g$(e){e.edges().forEach(n=>{if(n.v===n.w){var o=e.node(n.v);o.selfEdges||(o.selfEdges=[]),o.selfEdges.push({e:n,label:e.edge(n)}),e.removeEdge(n)}})}function h$(e){var n=ut.buildLayerMatrix(e);n.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{ut.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 y$(e){e.nodes().forEach(n=>{var o=e.node(n);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(n),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 xl(e,n){return ut.mapValues(ut.pick(e,n),Number)}function Al(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let _$=Le,b$=_t.Graph;var w$={debugOrdering:k$};function k$(e){let n=_$.buildLayerMatrix(e),o=new b$({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)),n.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 E$="1.1.5",C$={graphlib:_t,layout:YO,debug:w$,util:{time:Le.time,notime:Le.notime},version:E$};const Bp=kI(C$);function N$(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(sc,e);return o=>n(o)}const Mo={padding:80,gaps:{nodes:40,edges:80,ranks:40}},v$=1600,S$=1.2,x$=0,Vp=Symbol("confirm-modal");function hi(e,n,o){const r=n?Gt(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Do(e,n){const o=n(e.source),r=n(e.target);return[hi(o,e.sourceField,"output"),hi(r,e.targetField,"input")]}function Il(e,n,o,r,i){const a=i(e),l=i(o);return[hi(a,n,"output"),hi(l,r,"input")]}function A$(e){t.provide(Vp,e)}function Rp(){return t.inject(Vp,void 0)}function I$(){const e=Rp();if(!e)throw new Error("Confirm modal not provided");return e}function Mp(e){const n=e.match(/^(input|output)s@(.*)$/);if(n)return{io:n[1],field:n[2]}}function T$(){const e={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};return[r=>{e.x1=Math.min(e.x1,r.x),e.y1=Math.min(e.y1,r.y),e.x2=Math.max(e.x2,r.x+r.width),e.y2=Math.max(e.y2,r.y+r.height)},()=>{const r={...e};return r.x1>r.x2&&(r.x1=r.x2=0),r.y1>r.y2&&(r.y1=r.y2=0),r}]}const[P$,O$]=Je.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Mo.padding,gaps:s=Mo.gaps}=r,{nodes:c=Mo.gaps.nodes,edges:d=Mo.gaps.edges,ranks:f=Mo.gaps.ranks}=s,u=Ie(o),p=rt(),m=Rp(),h=N$(),{i18n:{t:y}}=ve(),{findNode:g,fitView:_,onNodeClick:w,onNodeDragStop:b,onEdgeClick:C,onConnect:E,onNodesChange:k,onEdgesChange:T,onEdgeUpdate:x,deleteKeyCode:$}=u;$.value=["Delete","Backspace"];const{state:K,commit:j,moveNode:I,selectNode:Q,removeNode:A,getNodeById:D,connectEdge:V,disconnectEdge:X,getInEdgesByNodeId:Y,commit:G,undo:F}=p;function R(U,ne){const re=D(U.source),de=D(U.target);return!!(re&&de&&re.phase===ne&&de.phase===ne)}const oe=t.computed(()=>K.value.nodes.filter(U=>U.phase===n).map(U=>({id:U.id,type:"flow",position:U.position,data:U,deletable:!Md(U)}))),ie=t.computed(()=>K.value.edges.filter(U=>R(U,n)).map(U=>{const ne=D(U.source),re=D(U.target);if(ne){if(!re)throw new Error(`Missing target node "${U.target}" for edge "${U.id}" in phase "${n}"`)}else throw new Error(`Missing source node "${U.source}" for edge "${U.id}" in phase "${n}"`);return{id:U.id,source:U.source,target:U.target,sourceHandle:U.sourceField?`outputs@${U.sourceField}`:"output",targetHandle:U.targetField?`inputs@${U.targetField}`:"input",markerEnd:Wr.ArrowClosed,data:U,updatable:!i}})),Z=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));w(({node:U})=>{console.debug("[useFlow] onNodeClick",t.toRaw(U))}),C(({edge:U})=>{console.debug("[useFlow] onEdgeClick",t.toRaw(U))});async function ae({source:U,sourceHandle:ne,target:re,targetHandle:de}){if(console.debug("[useFlow] onConnect",{source:U,sourceHandle:ne,target:re,targetHandle:de}),!ne||!de)return;const L=Mp(ne),W=Mp(de);if((L==null?void 0:L.io)==="input"||(W==null?void 0:W.io)==="output")return;const N=Y(re);let v=!1,S=!1;const P=[],O=[],J=(W==null?void 0:W.io)==="input"?N.filter(H=>!H.targetField):N.filter(H=>!!H.targetField);J.length>0&&(v=!0,J.forEach(H=>{O.push(Do(H,D)),X(H.id,!1)}));const te=(W==null?void 0:W.io)==="input"?N.filter(H=>H.targetField===W.field):N.filter(H=>!H.targetField);if(te.length>0){if(te.some(B=>B.source===U&&B.target===re&&B.targetField===(W==null?void 0:W.field)&&B.sourceField===(L==null?void 0:L.field)))return;S=!0,te.forEach(B=>{O.push(Do(B,D)),X(B.id,!1)})}const M=V({source:U,sourceField:L==null?void 0:L.field,target:re,targetField:W==null?void 0:W.field},!1);if(P.push(Il(U,L==null?void 0:L.field,re,W==null?void 0:W.field,D)),G(),M){if(v||S){if(!m)throw new Error("Expected confirm modal to be provided here when reachable");await m(y(v?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),P,O)||F()}}else F(),h({message:y("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"})}E(ae),k(U=>{U.filter(ne=>ne.type==="select").sort((ne,re)=>ne.selected===re.selected?0:ne.selected?1:-1).forEach(ne=>{Q(ne.selected?ne.id:void 0)}),U.forEach(ne=>{ne.type==="remove"&&A(ne.id,!0)})}),b(({node:U})=>{U&&I(U.id,U.position)}),T(U=>{U.forEach(ne=>{ne.type==="remove"&&X(ne.id,!0)})}),x(({connection:U})=>ae(U));function q(){let U,ne;const re=[],de=B=>{switch(B.data.name){case"request":{if(n!=="request")throw new Error(`Unexpected request node in ${n} phase`);if(U)throw new Error("Duplicated request node in request phase");return U=B,!0}case"service_request":{if(n!=="request")throw new Error(`Unexpected service_request node in ${n} phase`);if(ne)throw new Error("Duplicated service_request node in request phase");return ne=B,!0}case"service_response":{if(n!=="response")throw new Error(`Unexpected service_response node in ${n} phase`);if(ne)throw new Error("Duplicated service_response node in response phase");return ne=B,!0}case"response":{if(n!=="response")throw new Error(`Unexpected response node in ${n} phase`);if(U)throw new Error("Duplicated response node in response phase");return U=B,!0}default:return re.push(B),!1}};let L;for(const B of oe.value)if(!de(B)&&re.length>0){L||(L=new Bp.graphlib.Graph({multigraph:!0}),L.setGraph({rankdir:n==="request"?"LR":"RL",nodesep:c,edgesep:d,ranksep:f}));const le=g(B.id);if(!le)throw new Error(`Node ${B.id} is missing from the graph in ${n} phase`);L.setNode(B.id,{width:le.dimensions.width,height:le.dimensions.height})}if(!U||!ne)throw new Error(`One or more implicit nodes are missing from ${n} phase`);const W=g(U.id),N=g(ne.id);if(!W||!N)throw new Error(`One or more implicit nodes are missing from the graph in ${n} phase`);if(re.length>0){if(!L)throw new Error("dagreGraph should be defined here if reachable");const B=new Set([U.id,ne.id]);for(const le of ie.value)!B.has(le.source)&&!B.has(le.target)&&L.setEdge(le.source,le.target,{points:[]});Bp.layout(L)}const[v,S]=T$(),P=B=>({x:B.x-B.width/2,y:B.y-B.height/2,width:B.width,height:B.height});if(re.length>0){if(!L)throw new Error("dagreGraph should be defined here if reachable");for(const B of re){const le=L.node(B.id),ce=P(le);v(ce),I(B.data.id,{x:ce.x,y:ce.y},!1)}}const O=S(),J=O.x2-O.x1,te=O.y2-O.y1,M=Math.max(0,Math.min(t.toValue(a==null?void 0:a.width)??Number.POSITIVE_INFINITY,v$)-J-2*c-W.dimensions.width-N.dimensions.width-2*l),H=O.y1+te/2;I(U.data.id,{x:O.x1-c-M/2-W.dimensions.width,y:H-W.dimensions.height/2},!1),I(ne.data.id,{x:O.x2+c+M/2,y:H-N.dimensions.height/2},!1),j()}function ee(U){_({...Z.value,...U})}return{vueFlowStore:u,editorStore:p,readonly:i,nodes:oe,edges:ie,autoLayout:q,fitViewParams:Z,fitView:ee}}),Wn="{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}},yi=Object.keys(_n).filter(e=>e.includes(Wn)).map(e=>e.replace(Wn,""));function Tl(e){if(!e||!Lo(e))return;const n=yi.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Wn,"")}function Fo(e){if(!e)return null;const n=yi.find(o=>e.startsWith(o));return n||e}function Lo(e){return e?yi.some(n=>e.startsWith(n)):!1}function Dp(e){return e?Lo(e)?Fo(e)+Wn:e:null}function Pl(e){var o;if(!e)return!1;const n=Dp(e);return n?((o=_n[n])==null?void 0:o.readable)??!1:!1}function Ol(e){var o;if(!e)return!1;const n=Dp(e);return n?((o=_n[n])==null?void 0:o.writable)??!1:!1}const _i=we(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ge.Left},size:{default:()=>Number.parseFloat(Dw)},type:{}},setup(e){t.useCssVars(o=>({"753622c4":o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[o.type,o.position===t.unref(ge).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Fp=t.defineComponent({__name:"NodeBadge",props:{type:{},size:{}},setup(e){const n=t.computed(()=>{var i;if(!Vt(e.type))return((i=Cr[e.type])==null?void 0:i.icon)??void 0}),o=t.computed(()=>xC(e.type)),r=t.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=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(l,{appearance:r.value,size:i.size},{icon:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value)))]),default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:1},8,["appearance","size"])}}}),$$={class:"body"},B$={class:"info-line"},V$={class:"name-and-error"},R$={class:"name"},M$={class:"input-handles"},D$={class:"handle"},F$={class:"handle-label-wrapper"},L$={class:"handle-label-wrapper"},U$={class:"handle-label text"},K$={class:"output-handles"},j$={class:"handle"},G$={class:"handle-label-wrapper"},q$={class:"handle-label-wrapper"},z$={class:"handle-label"},Lp=we(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean}},setup(e){const{t:n}=Re.createI18n("en-us",je),o=O$(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,toggleExpanded:a}=rt(),l=t.computed(()=>Ia(e.data.type)),s=t.computed(()=>r(e.data.id).every(C=>C.targetField===void 0)),c=t.computed(()=>i(e.data.id).every(C=>C.sourceField===void 0)),d=t.computed(()=>e.data.expanded.input??!1),f=t.computed(()=>e.data.expanded.output??!1),u=t.computed(()=>{var C,E;if(e.data.type==="property"){const k=(C=e.data.config)==null?void 0:C.property;return Ol(k)}return(E=l.value.io)==null?void 0:E.input}),p=t.computed(()=>{var C,E;if(e.data.type==="property"){const k=(C=e.data.config)==null?void 0:C.property;return Pl(k)}return(E=l.value.io)==null?void 0:E.output}),m=t.computed(()=>Md(e.data)),h=t.computed(()=>e.data.phase==="response"),y=t.computed(()=>e.data.phase==="request"?ge.Left:ge.Right),g=t.computed(()=>e.data.phase==="request"?ge.Right:ge.Left),_=t.computed(()=>m.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),w=t.computed(()=>m.value?Ow:$w);function b(C){o!=null&&o.readonly||C==="input"&&!s.value||C==="output"&&!c.value||a(e.data.id,C)}return t.watch(s,C=>{C||a(e.data.id,"input",!0,!1)},{immediate:!0}),t.watch(c,C=>{C||a(e.data.id,"output",!0,!1)},{immediate:!0}),(C,E)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flow-node",{reversed:h.value,implicit:m.value}])},[t.createElementVNode("div",$$,[t.createElementVNode("div",B$,[t.createElementVNode("div",V$,[C.error?(t.openBlock(),t.createBlock(t.unref(ke.WarningIcon),{key:0,class:"error-icon",color:t.unref(xc),size:16},null,8,["color"])):t.createCommentVNode("",!0),t.createElementVNode("div",R$,t.toDisplayString(_.value),1)]),m.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Fp,{key:0,size:"small",type:C.data.type},null,8,["type"]))]),t.renderSlot(C.$slots,"default",{},void 0,!0)]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:h.value}])},[t.createElementVNode("div",M$,[u.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",D$,[t.createVNode(t.unref(Xt),{id:"input",position:y.value,type:"target"},null,8,["position"]),t.createElementVNode("div",F$,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label",{"has-fields":C.data.fields.input.length>0,collapsible:s.value}])},[E[2]||(E[2]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),C.data.fields.input.length>0?(t.openBlock(),t.createElementBlock("div",{key:0,class:"icon",onClick:E[0]||(E[0]=t.withModifiers(k=>b("input"),["stop"]))},[d.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ke.UnfoldMoreIcon),{key:0,size:t.unref(fo)},null,8,["size"])),d.value?(t.openBlock(),t.createBlock(t.unref(ke.UnfoldLessIcon),{key:1,color:s.value?void 0:t.unref(Ac),size:t.unref(fo)},null,8,["color","size"])):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],2),d.value?(t.openBlock(),t.createBlock(_i,{key:0,color:w.value,position:y.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),d.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(C.data.fields.input,(k,T)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${k.id}`,class:"handle indented"},[t.createVNode(t.unref(Xt),{id:`inputs@${k.id}`,position:y.value,type:"target"},null,8,["id","position"]),t.createElementVNode("div",L$,[t.createElementVNode("div",U$,t.toDisplayString(k.name),1),t.createVNode(_i,{color:w.value,position:y.value,type:T<C.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)]),t.createElementVNode("div",K$,[p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",j$,[t.createElementVNode("div",G$,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label text",{"has-fields":C.data.fields.output.length>0,collapsible:c.value}])},[E[3]||(E[3]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),C.data.fields.output.length>0?(t.openBlock(),t.createElementBlock("div",{key:0,class:"icon",onClick:E[1]||(E[1]=t.withModifiers(k=>b("output"),["stop"]))},[f.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ke.UnfoldMoreIcon),{key:0,size:t.unref(fo)},null,8,["size"])),f.value?(t.openBlock(),t.createBlock(t.unref(ke.UnfoldLessIcon),{key:1,color:c.value?void 0:t.unref(Ac),size:t.unref(fo)},null,8,["color","size"])):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],2),f.value?(t.openBlock(),t.createBlock(_i,{key:0,color:w.value,position:g.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Xt),{id:"output",position:g.value,type:"source"},null,8,["position"])]),f.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(C.data.fields.output,(k,T)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${k.id}`,class:"handle indented"},[t.createElementVNode("div",q$,[t.createElementVNode("div",z$,t.toDisplayString(k.name),1),t.createVNode(_i,{color:w.value,position:g.value,type:T<C.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Xt),{id:`outputs@${k.id}`,position:g.value,type:"source"},null,8,["id","position"])]))),128)):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)])],2)],2))}}),[["__scopeId","data-v-e55b53e2"]]),Up=we(t.defineComponent({__name:"EditorCanvasFlow",props:{flowId:{},phase:{},readonly:{type:Boolean}},emits:["initialized"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=Je.useElementBounding(i),{vueFlowStore:l,editorStore:s,nodes:c,edges:d,autoLayout:f,fitViewParams:u,fitView:p}=P$({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.readonly}),{addNode:m,selectNode:h,propertiesPanelOpen:y,newCreatedNodeId:g,invalidConfigNodeIds:_}=s,{project:w,vueFlowRef:b,addSelectedNodes:C,getNodes:E}=l;async function k(K){h(K),await t.nextTick();const j=E.value.find(I=>I.id===K);C(j?[j]:[])}function T(){e.readonly||(y.value=!0)}function x(K){var F,R;if(e.readonly)return;const j=(F=K.dataTransfer)==null?void 0:F.getData(Uf);if(!j)return;K.preventDefault();const I=JSON.parse(j);if(I.action!=="create-node")return;const{top:Q=0,left:A=0}=((R=b.value)==null?void 0:R.getBoundingClientRect())||{},D=w({x:K.clientX-A,y:K.clientY-Q}),{type:V,anchor:X}=I.data,Y={type:V,phase:e.phase,position:{x:D.x-X.offsetX,y:D.y-X.offsetY}},G=m(Y);k(G),G&&(g.value=G,y.value=!0)}const $=()=>{f(),t.nextTick(()=>p())};return n({autoLayout:f,fitView:p}),(K,j)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Df),{id:K.flowId,class:t.normalizeClass(["flow",{readonly:K.readonly}]),edges:t.unref(d),"elements-selectable":!K.readonly,"max-zoom":t.unref(S$),"min-zoom":t.unref(x$),"multi-selection-key-code":null,nodes:t.unref(c),"nodes-connectable":!K.readonly,"nodes-draggable":!K.readonly,"pan-on-drag":K.readonly?!1:void 0,"pan-on-scroll":K.readonly?!1:void 0,"zoom-on-double-click":K.readonly?!1:void 0,"zoom-on-pinch":K.readonly?!1:void 0,"zoom-on-scroll":K.readonly?!1:void 0,onDragover:j[0]||(j[0]=t.withModifiers(()=>{},["prevent"])),onDrop:j[1]||(j[1]=I=>x(I)),onNodeClick:T,onNodesInitialized:j[2]||(j[2]=I=>r("initialized"))},{"node-flow":t.withCtx(I=>[t.createVNode(Lp,{data:I.data,error:t.unref(_).has(I.data.id)},null,8,["data","error"])]),default:t.withCtx(()=>[t.createVNode(t.unref(jA)),K.readonly?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(gI),{key:0,"fit-view-params":t.unref(u),position:"bottom-left","show-interactive":!1},{default:t.withCtx(()=>[t.createElementVNode("button",{class:"vue-flow__controls-button vue-flow__controls-interactive custom",onClick:$},[t.createVNode(t.unref(ke.SparklesIcon),{size:18})])]),_:1},8,["fit-view-params"]))]),_:1},8,["id","class","edges","elements-selectable","max-zoom","min-zoom","nodes","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"])],512))}}),[["__scopeId","data-v-f5036b92"]]),Kp=we(t.defineComponent({__name:"EditorCanvas",props:{readonly:{type:Boolean},resizable:{type:Boolean}},setup(e,{expose:n}){const o=t.ref([!1,!1]),{state:r}=rt(),i=t.useId(),a=`${i}-request`,l=`${i}-response`,s=t.useTemplateRef("flowPanels"),c=t.useTemplateRef("requestLabel"),d=t.useTemplateRef("requestCanvasContainer"),f=t.useTemplateRef("requestFlow"),u=t.useTemplateRef("resizeHandle"),p=t.useTemplateRef("responseLabel"),m=t.useTemplateRef("responseCanvasContainer"),h=t.useTemplateRef("responseFlow"),y=Je.useElementBounding(s),g=Je.useElementBounding(c),_=Je.useElementBounding(d),w=Je.useElementBounding(u),b=Je.useElementBounding(p),C=Je.useElementBounding(m),E=t.computed(()=>Math.max(30,y.height.value*.03)),k=t.computed(()=>_.height.value<E.value),T=t.computed(()=>C.height.value<E.value),x=t.ref("50%"),$=t.ref("50%"),K=()=>{e.resizable&&(k.value?(x.value="50%",$.value="50%"):(x.value="0",$.value="100%"))},j=()=>{e.resizable&&(T.value?(x.value="50%",$.value="50%"):(x.value="100%",$.value="0"))},I=t.computed(()=>y.height.value-g.height.value-w.height.value-b.height.value),{isDragging:Q}=Je.useDraggable(u,{onMove(V){if(!e.resizable)return;const X=Math.max(0,V.y-_.top.value),Y=Math.min(1,Math.max(0,X/I.value));x.value=`${Y*100}%`,$.value=`${(1-Y)*100}%`},onEnd(){e.resizable&&(_.height.value<E.value?(x.value="0",$.value="100%"):C.height.value<E.value&&(x.value="100%",$.value="0"))}}),A=()=>{t.nextTick(()=>{var V,X;(V=f.value)==null||V.fitView(),(X=h.value)==null||X.fitView()})},D=t.watch(o,([V,X])=>{var Y,G;V&&X&&(r.value.isEditing||((Y=f.value)==null||Y.autoLayout(),(G=h.value)==null||G.autoLayout()),A(),D.stop())},{deep:!0});return n({fitView:A}),(V,X)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:s,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:c,class:t.normalizeClass(["label request",{resizable:V.resizable}]),onClick:K},[V.resizable?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:k.value}])},null,8,["class"])):t.createCommentVNode("",!0),X[2]||(X[2]=t.createElementVNode("div",{class:"label-content"}," Request ",-1))],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:d,class:t.normalizeClass(["canvas",{dragging:t.unref(Q)}]),style:t.normalizeStyle({flexBasis:x.value})},[t.createVNode(Up,{ref_key:"requestFlow",ref:f,"flow-id":a,phase:"request",readonly:V.readonly,onInitialized:X[0]||(X[0]=Y=>o.value[0]=!0)},null,8,["readonly"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:u,class:t.normalizeClass(["resize-handle",{resizable:V.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:p,class:t.normalizeClass(["label response",{dragging:t.unref(Q),resizable:V.resizable}]),onClick:j},[V.resizable?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:T.value}])},null,8,["class"])):t.createCommentVNode("",!0),X[3]||(X[3]=t.createElementVNode("div",{class:"label-content"}," Response ",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:m,class:t.normalizeClass(["canvas response",{dragging:t.unref(Q)}]),style:t.normalizeStyle({flexBasis:$.value})},[t.createVNode(Up,{ref_key:"responseFlow",ref:h,"flow-id":l,phase:"response",readonly:V.readonly,onInitialized:X[1]||(X[1]=Y=>o.value[1]=!0)},null,8,["readonly"])],6)],512))}}),[["__scopeId","data-v-b130861e"]]),H$={class:"dk-confirm-modal-body"},Y$={class:"dk-confirm-modal-connections"},W$=we(t.defineComponent({__name:"ConflictConnectionConfirmModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=ve(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,h,y){return l.value=m,s.value=h??[],c.value=y??[],a.value=!0,await new Promise(g=>{d=g})}return n({open:p}),(m,h)=>{const y=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(y,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:m.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:u},{default:t.withCtx(()=>[t.createElementVNode("div",H$,[t.createElementVNode("p",null,t.toDisplayString(l.value),1),t.createElementVNode("p",null,t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),t.createElementVNode("div",Y$,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([g,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${_}`},[t.createVNode(t.unref(ke.AddIcon),{color:t.unref(Bw)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),h[0]||(h[0]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(_),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([g,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${_}`},[t.createVNode(t.unref(ke.RemoveIcon),{color:t.unref(xc)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),h[1]||(h[1]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(_),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-c4d58082"]]),X$={class:"dk-editor-nav"},Z$={class:"top"},J$={class:"bottom"},Q$=we(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Re.createI18n("en-us",je),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:ke.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=Oa(),l=t.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=t.ref(!1);function c(){a.value=!a.value}return(d,f)=>(t.openBlock(),t.createElementBlock("nav",X$,[t.createElementVNode("div",Z$,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:h})=>t.createVNode(t.unref(Te.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:h},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(da)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",J$,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(u=>s.value=!0,["self"]))},[t.createVNode(t.unref(Te.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Te.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(da)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(ke.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(da)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-4498cfce"]]),eB={class:"dk-editor-main"},tB={class:"header"},nB={class:"actions"},oB={ref:"canvasContainer",class:"body"},rB=we(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Re.createI18n("en-us",je),{modalOpen:o}=rt();function r(){o.value=!1}return(i,a)=>(t.openBlock(),t.createElementBlock("div",eB,[t.createElementVNode("header",tB,[t.createElementVNode("div",nB,[t.createVNode(t.unref(Te.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.view_docs"))+" ",1),t.createVNode(t.unref(ke.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Te.KButton),{onClick:r},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.done")),1)]),_:1})])]),t.createElementVNode("div",oB,[t.createVNode(Kp,{resizable:""})],512)]))}}),[["__scopeId","data-v-2abb236d"]]),iB={class:"icon"},aB={class:"content"},lB={class:"title"},sB={class:"description"},cB=we(t.defineComponent({__name:"NodePanelItem",props:{type:{}},setup(e){const{summary:n,icon:o}=Cr[e.type];return(r,i)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${r.type}`]:!0}])},[t.createElementVNode("div",iB,[t.createVNode(t.unref(o),{size:16})]),t.createElementVNode("div",aB,[t.createElementVNode("div",lB,t.toDisplayString(r.type),1),t.createElementVNode("div",sB,t.toDisplayString(t.unref(n)),1)])],2))}}),[["__scopeId","data-v-e75cecee"]]),dB={class:"dk-node-panel"},uB={class:"title"},fB={class:"node-list"},pB={"aria-hidden":"true",class:"preview",inert:""},mB=we(t.defineComponent({__name:"NodePanel",setup(e){const{t:n}=Re.createI18n("en-us",je),{createNode:o}=rt(),r=`dk-drag-preview-${t.useId()}`,i=t.shallowRef(),a=t.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var x,$;const d=s.currentTarget,{left:f,top:u,width:p,height:m}=d.getBoundingClientRect(),h=s.clientX-f,y=s.clientY-u;i.value=o({type:c}),await t.nextTick();const g=document.querySelector(`#${r}`)||d,_=g.cloneNode(!0),{offsetWidth:w,offsetHeight:b}=g;Object.assign(_.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${b}px`,boxSizing:"border-box"}),document.body.appendChild(_);const C=h/p,E=y/m,k={ratioX:C,ratioY:E,offsetX:w*C,offsetY:b*E},T={action:"create-node",data:{type:c,anchor:k}};(x=s.dataTransfer)==null||x.setData(Uf,JSON.stringify(T)),($=s.dataTransfer)==null||$.setDragImage(_,k.offsetX,k.offsetY),requestAnimationFrame(()=>{_.remove(),i.value=void 0})};return(s,c)=>{const d=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",dB,[t.createElementVNode("h3",uB,[t.createVNode(d,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])]),t.createElementVNode("div",fB,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(Cr)),f=>(t.openBlock(),t.createBlock(cB,{key:f,draggable:"true",type:f,onDragstart:u=>l(u,f)},null,8,["type","onDragstart"]))),128))]),t.createElementVNode("div",pB,[t.createVNode(t.unref(Df),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(Lp,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-8e8421d3"]]),gB=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(kt,{items:t.unref(Zi)([...t.unref(wI)]),name:n.name},null,8,["items","name"]))}}),hB=we(t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Ve(),{i18n:o}=ve(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(dt,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock(kt,{key:l,class:"dk-inputs-field-indent",clearable:"",items:i.items,name:l,placeholder:t.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-a849b44b"]]),yB=["data-testid"],_B={class:"dk-inputs-map-field-entry-body"},bB={class:"dk-inputs-map-field-entry-content"},wB={class:"dk-inputs-map-field-indent"},kB=we(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},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:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l,field:s}=ia(o,r),{i18n:{t:c}}=ve(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(E,k="key"){var T;d.value&&(await t.nextTick(),(T=d.value.querySelector(`[data-${k}-input="${E}"]`))==null||T.focus())}function h(){const{id:E}=a(),k=i.value.findIndex(({key:T})=>!T);m(k===-1?i.value.length-1:k),f.value=E}function y(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function _(E){if(w(E)){E.key=p,delete u.value[E.id];return}if(E.id===f.value){if(E.key.trim()==="")return;r("add:field",E.key,E.value),f.value=null}else r("rename:field",p,E.key);p=E.key}function w(E){delete u.value[E.id];const k=o.fieldNameValidator("input",p,E.key);if(k)return u.value[E.id]=k,k}function b(E){w(E)}function C(E,k){E.id!==f.value&&r("change:inputs",E.key,k)}return(E,k)=>{const T=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),$=t.resolveComponent("KInput"),K=t.resolveComponent("KSelect"),j=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(T,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(I,Q)=>(t.openBlock(),t.createElementBlock("div",{key:I.id,class:"dk-inputs-map-field-entry dk-inputs-map-field-indent","data-testid":`ff-kv-container-${t.unref(s).path.value}.${Q}`},[t.createVNode(x,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${Q}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),t.createElementVNode("div",_B,[t.createElementVNode("div",bB,[t.createVNode($,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${Q}`,modelValue:I.key,"onUpdate:modelValue":[A=>I.key=A,A=>w(I)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Q,"data-testid":`ff-key-${t.unref(s).path.value}.${Q}`,error:!!u.value[I.id],"error-message":u.value[I.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:A=>b(I),onChange:A=>_(I),onFocus:A=>g(I)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(K,{modelValue:I.value,"onUpdate:modelValue":A=>I.value=A,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${Q}`,items:E.items,placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:A=>C(I,(A==null?void 0:A.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","placeholder","onChange"])]),t.createVNode(j,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${Q}`,icon:"",onClick:A=>y(I)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,yB))),128)),t.createElementVNode("div",wB,[t.createVNode(j,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])])],512))}}}),[["__scopeId","data-v-685121cd"]]),Xn=t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=Ve(),{i18n:i}=ve(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?hB:kB: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)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(r)("input")?(t.openBlock(),t.createBlock(kt,{key:0,clearable:"","enable-filtering":"",items:p.items,label:"Inputs",name:"input",placeholder:t.unref(i).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},null,8,["items","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:1,"field-name-validator":p.fieldNameValidator,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},null,8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),EB={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"},CB={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 NB(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function Zn(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Jn(e){const{i18n:{t:n}}=ve(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function jp(e,n){const{i18n:{t:o}}=ve();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function vB(e=0,n=1/0,o){const{i18n:{t:r}}=ve();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function Gp(e){const{i18n:{t:n}}=ve();return function(r){if(!NB(r))return e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",e):"Value must be a number"}}function qp(e,n){const{i18n:{t:o}}=ve();return function(i){if(i==null)return;const a=Gp(n)(i);if(a)return a;const l=Number(i);switch(e){case"float":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",n):"Invalid float format";return Number.isFinite(l)?void 0:s()}case"integer":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",n):"Invalid integer format";return Number.isInteger(l)?void 0:s()}default:return}}}function zp(e=-1/0,n=1/0,o){const{i18n:{t:r}}=ve();return function(a){if(a==null)return;const l=Gp(o)(a);if(l)return l;const s=Number(a);if(s<e||s>n)return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:e,max:n}):`Value must be between ${e} and ${n}`}}function SB(e,n){const{state:o}=rt(),{i18n:{t:r}}=ve();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function xB(e,n,o){const{i18n:{t:r}}=ve();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function AB(){const{i18n:{t:e}}=ve();return function(o){if(Aa(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Hp(e){const{i18n:{t:n}}=ve(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Zn(Jn(o),jp("identifier",o),AB(),SB(e,o))}function IB(e){const{i18n:{t:n}}=ve(),{getNodeById:o}=rt();return function(i,a,l){const s={fieldName:n(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return Zn(Jn(s),xB(i,o(e),l))(a)}}function TB(e){const n=t.ref({}),o=t.computed(()=>Object.values(n.value).every(l=>!l)),r={};Object.keys(e).forEach(l=>{const s=e[l],c=u=>{const p=typeof u=="function"?u():u,m=s(p);return n.value[l]=m,m},d=()=>{n.value[l]=void 0},f=u=>(d(),c(u));r[l]={handleChange:f,handleBlur:f,validate:f,isValid:t.computed(()=>n.value[l]===void 0),error:t.computed(()=>n.value[l])}});function i(){n.value={}}function a(l){var s;for(const c of Object.keys(e)){const d=l[c],f=typeof d=="function"?d():d;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function bi(e){const{validationConfig:n,getValidationData:o,skipValidationOnMount:r,toggleNodeValid:i}=e,a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>TB(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const h in a.value)m[h]=p[h];return m}function f(u,p){return{onBlur:()=>{const m=o(),h=s.value[u];h&&h.handleBlur(m[u])},onUpdate:()=>{const m=o(),h=s.value[u];h&&h.handleChange(m[u]),p==null||p()},error:t.computed(()=>{const m=s.value[u];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[u];return m?m.error.value??"":""})}}return t.onMounted(()=>{r!=null&&r.value||d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;i(!p)}catch{}}),t.watch(()=>c.value,i,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function bn(e,n){const{state:o,renameNode:r,getNodeById:i,addField:a,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:d,connectEdge:f,newCreatedNodeId:u,invalidConfigNodeIds:p,undo:m,commit:h}=rt(),{i18n:{t:y}}=ve(),g=I$();let _=!1;t.watch(o,async()=>{_=!0,await t.nextTick(),_=!1},{immediate:!0,deep:!0}),console.log("state",o.value),window.store=rt();const w=t.computed(()=>{const R=i(e);if(!R)throw new Error("Node not existed");return R}),b=t.computed(()=>{const oe=o.value.edges.filter(ie=>ie.target===e).reduce((ie,Z)=>{var ne,re;const ae=i(Z.source),q=(ne=Gt(ae,"output",Z.sourceField))==null?void 0:ne.id,ee=(re=Gt(w.value,"input",Z.targetField))==null?void 0:re.name,U=ae.id+(q?`.${q}`:"");return ee?ie.inputs={...ie.inputs,[ee]:U}:ie.input=U,ie},{});return w.value.fields.input.forEach(ie=>{oe.inputs||(oe.inputs={}),oe.inputs[ie.name]||(oe.inputs[ie.name]=null)}),{...w.value.config,...oe,name:w.value.name}}),C=R=>{r(e,R??"",!0,`${e}:rename`)},E=(R,oe=!0)=>{if(_)return;if(!n)throw new Error("getFormInnerData is not defined");const ie=oc(n(),["name","input","inputs"]),Z=R?`update:${e}:${R}`:void 0;c(e,ie,oe,Z)},k=(R,oe)=>{const ie=Ln(w.value,R,oe);if(!ie)throw new Error(`Field with name "${oe}" not found in node "${w.value.name}"`);return ie},T=(R,oe,ie)=>{const Z=!!ie;a(e,R,oe,!Z),Z&&I(oe,ie)},x=(R,oe,ie)=>{if(_)return;const Z=k(R,oe).id;l(e,Z,ie)},$=(R,oe)=>{const ie=k(R,oe).id;s(e,ie)},K=t.computed(()=>o.value.edges.filter(R=>R.target===e&&!R.targetField)[0]),j=t.computed(()=>o.value.edges.filter(R=>R.target===e&&R.targetField)),I=async(R,oe)=>{if(_)return;const ie=oe==null,Z=k("input",R).id;if(ie){const L=j.value.find(W=>W.targetField===Z);L&&d(L.id);return}const{nodeId:ae,fieldId:q}=Dd(oe),ee=k("input",R).id,U=[];K.value&&(U.push(Do(K.value,i)),d(K.value.id,!1));const ne=j.value.find(L=>L.targetField===Z);ne&&(U.push(Do(ne,i)),d(ne.id,!1)),f({source:ae,sourceField:q,target:e,targetField:ee},!1);const re=Il(ae,q,e,ee,i);h(),!(U[0]&&re&&U[0][1]===re[1])&&U.length>0&&(await g(y("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[re],U)||m())},Q=async R=>{if(_)return;if(R==null){K.value&&d(K.value.id);return}const ie=[];for(const ee of j.value)ie.push(Do(ee,i)),d(ee.id,!1);const{nodeId:Z,fieldId:ae}=Dd(R);f({source:Z,sourceField:ae,target:e,targetField:void 0},!1);const q=Il(Z,ae,e,void 0,i);h(),ie.length>0&&(await g(y("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[q],ie)||m())},A=R=>{const oe=[...o.value.edges,{source:R,target:e}];return Pa(Sr(oe))},D=t.computed(()=>{var oe,ie;const R=[];for(const Z of o.value.nodes)if((oe=Ia(Z.type).io)!=null&&oe.output&&Z.fields.output&&Z.id!==e&&!(Z.type==="property"&&!Pl((ie=Z.config)==null?void 0:ie.property))&&!A(Z.id)){R.push({value:Z.id,label:Z.name});for(const q of Z.fields.output)R.push({value:`${Z.id}.${q.id}`,label:`${Z.name}.${q.name}`})}return R}),V=t.computed(()=>w.value.fields.input.map(R=>R.name)||[]),X=t.computed(()=>u.value===e);function Y(R){p.value.delete(e),R||p.value.add(e)}const G=IB(e);function F(R,oe,ie){const Z=i(e);if(!Z)throw new Error("Node not found when validating field name");const ae=Ln(Z,R,oe);return G(R,ie,ae==null?void 0:ae.id)}return{formData:b,inputOptions:D,inputEdge:K,inputsEdges:j,inputsFieldNames:V,skipValidationOnMount:X,currentNode:w,setName:C,setConfig:E,addField:T,renameFieldByName:x,removeFieldByName:$,setInputs:I,setInput:Q,nameValidator:Hp(e),fieldNameValidator:F,toggleNodeValid:Y}}function wn(e){const{getSchema:n}=Ve();return t.computed(()=>{if(Vt(e))switch(e){case"response":return CB;case"service_request":return EB}try{const l=n().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 Uo=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=ve(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 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 t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.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:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),PB=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=ve(),o=t.useTemplateRef("form"),r=wn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,skipValidationOnMount:p,toggleNodeValid:m,fieldNameValidator:h}=bn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:y}=bi({validationConfig:{url:Zn(Jn({fieldName:"URL"}),jp("url",{fieldName:"URL"})),timeout:Zn(qp("integer",{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}),zp(0,2147483646,{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),skipValidationOnMount:p,toggleNodeValid:m}),g=y("url",()=>l("url")),_=y("timeout",()=>l("timeout"));return(w,b)=>{const C=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Uo,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(C,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),t.createVNode(On,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,name:"url",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(gB,{name:"method","onUpdate:modelValue":b[0]||(b[0]=E=>t.unref(l)())}),t.createVNode($n,{error:t.unref(_).error.value,"error-message":t.unref(_).errorMessage.value,label:t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout",onBlur:t.unref(_).onBlur,"onUpdate:modelValue":t.unref(_).onUpdate},null,8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(On,{name:"ssl_server_name","onUpdate:modelValue":b[1]||(b[1]=E=>t.unref(l)("ssl_server_name"))}),t.createVNode(Xn,{"field-name-validator":t.unref(h),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),OB=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=wn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=bn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),$B=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=wn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=bn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),BB=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=ve(),o=t.useTemplateRef("form"),r=wn("jq"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,addField:f,removeFieldByName:u,renameFieldByName:p,inputsFieldNames:m,nameValidator:h,skipValidationOnMount:y,toggleNodeValid:g,fieldNameValidator:_}=bn(e.nodeId,()=>o.value.getInnerData());function w(x,$){f("input",x,$)}function b(x){u("input",x)}function C(x,$){p("input",x,$)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:k}=bi({validationConfig:{jq:Zn(Jn({fieldName:E}),vB(1,10240,{fieldName:E}))},getValidationData:()=>({jq:i.value.jq}),skipValidationOnMount:y,toggleNodeValid:g}),T=k("jq",()=>l("jq"));return(x,$)=>{const K=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Uo,{name:t.unref(i).name,validate:t.unref(h),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(K,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),t.createVNode(On,{error:t.unref(T).error.value,help:t.unref(T).errorMessage.value,label:t.unref(E),multiline:"",name:"jq",resizable:"",rows:"2",onBlur:t.unref(T).onBlur,"onUpdate:modelValue":t.unref(T).onUpdate},null,8,["error","help","label","onBlur","onUpdate:modelValue"]),t.createVNode(Xn,{"field-name-validator":t.unref(_),"field-names":t.unref(m),items:t.unref(s),"onAdd:field":w,"onChange:input":t.unref(d),"onChange:inputs":t.unref(c),"onRemove:field":b,"onRename:field":C},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),VB=we(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},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:n}){const o=e,r=n,i=t.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=ia(o,r,!1),{i18n:d}=ve(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(E,k="key"){var T;f.value&&(await t.nextTick(),(T=f.value.querySelector(`[data-${k}-input="${E}"]`))==null||T.focus())}function h(){const E=l(),k=a.value.findIndex(({key:T})=>!T);m(k===-1?a.value.length-1:k),u.value=E}function y(E){var k;E.id===((k=u.value)==null?void 0:k.id)&&(u.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function _(E){var k;if(b(E)){E.key=p,delete i.value[E.id];return}if(E.id===((k=u.value)==null?void 0:k.id)){if(E.key.trim()==="")return;u.value=null,r("add:field",E.key,E.value)}else r("rename:field",p,E.key);p=E.key}function w(E,k){var x;if(k.id===((x=u.value)==null?void 0:x.id))return;const T=E.target.value.trim();r("change:value",k.key,T)}function b(E){delete i.value[E.id];const k=o.fieldNameValidator("output",p,E.key);if(k)return i.value[E.id]=k,k}function C(E){b(E)}return t.watchEffect(()=>{u.value&&!a.value.some(E=>E.id===u.value.id)&&a.value.push(u.value)}),(E,k)=>{const T=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),$=t.resolveComponent("KButton"),K=t.resolveComponent("KInput"),j=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(T,{key:0,appearance:"danger",message:t.unref(c).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[t.createVNode(x,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(I,Q)=>(t.openBlock(),t.createBlock(j,{key:I.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${Q}`},{actions:t.withCtx(()=>[t.createVNode($,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${Q}`,icon:"",onClick:A=>y(I)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(K,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${Q}`,modelValue:I.key,"onUpdate:modelValue":[A=>I.key=A,A=>b(I)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Q,"data-testid":`ff-key-${t.unref(c).path.value}.${Q}`,error:!!i.value[I.id],"error-message":i.value[I.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:A=>C(I),onChange:A=>_(I),onFocus:A=>g(I)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(K,{modelValue:I.value,"onUpdate:modelValue":A=>I.value=A,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${Q}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:A=>w(A,I)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode($,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!u.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-9f3f9fea"]]);function RB(e){const n={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?n[o]=JSON.stringify(r):n[o]=String(r);return n}function wi(e){const n={};for(const[o,r]of Object.entries(e))if(r!=null){n[o]=r;try{r==="null"?n[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(n[o]=JSON.parse(r))}catch{}}return n}function MB(e,n,o){const r={};for(const i of Object.keys(e))i===n?r[o]=e[n]:r[i]=e[i];return r}const DB=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=rt(),{fieldNameValidator:c}=bn(e.nodeId),d=wn("static"),f=Hp(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(C=>C.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const h=t.computed(()=>{var $;if(!u.value)return{};const b=(($=u.value.config)==null?void 0:$.values)??{},C={},E=o(u.value.id).map(K=>K.sourceField).filter(Boolean).map(K=>Gt(u.value,"output",K)).map(K=>K==null?void 0:K.name).filter(Boolean),k=u.value.fields.output.map(K=>K.name),T=Object.keys(b);return new Set([...T,...E,...k]).forEach(K=>{if(K in b){C[K]=b[K];return}C[K]=""}),{name:u.value.name,values:RB(C)}});function y(b,C){if(!u.value)throw new Error("No selected node");const E=C!==void 0;if(r(e.nodeId,"output",b,!E),E){const k={values:wi({...h.value.values,[b]:C})};l(e.nodeId,k)}}function g(b,C){if(!u.value)throw new Error("No selected node");const E=Ln(u.value,"output",b);if(!E)throw new Error("No field found to rename");const k={values:wi(MB(h.value.values??{},b,C))};l(e.nodeId,k,!1),i(e.nodeId,E.id,C)}function _(b){var k;if(!u.value)throw new Error("No selected node");const C=Ln(u.value,"output",b);if(!C)throw new Error("No field found to delete");a((k=u.value)==null?void 0:k.id,C.id,!0,!1);const E={values:wi({...h.value.values})};delete E.values[b],l(e.nodeId,E)}function w(b,C){if(!u.value)throw new Error("No selected node");const E={...h.value.values};E[b]=C;const k={values:wi(E)};l(e.nodeId,k)}return(b,C)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>{var E;return[t.createVNode(Uo,{name:((E=u.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(VB,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":y,"onChange:value":w,"onRemove:field":_,"onRename:field":g},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),FB={class:"dk-kong-property-item"},LB={class:"property-type"},UB={class:"property-badges"},KB=we(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=ve(),r=e,i=n,{formData:a}=Ve(),l=t.ref(Fo(a.property)),s=t.computed(()=>Lo(a.property)),c=t.ref(Tl(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(_n).map(([m])=>{var g;const h=Lo(m)?(g=a.property)==null?void 0:g.startsWith(m.replace(Wn,"")):a.property===m;return{label:h&&c.value?m.replace(Wn,c.value):m,value:m,selected:h}}));function u(m){const h=yi.find(y=>{var g;return(g=a.property)==null?void 0:g.startsWith(y)});h&&(a.property=h+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Fo(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Fo(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=Tl(m),l.value=Fo(m)}),(m,h)=>{const y=t.resolveComponent("KBadge"),g=t.resolveComponent("KSelect"),_=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(g,{key:d.value,"enable-filtering":"",error:!m.validators.property.isValid.value,help:m.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:h[0]||(h[0]=w=>m.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",FB,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",LB,t.toDisplayString(t.unref(_n)[w.value].dataType),1)]),t.createElementVNode("div",UB,[t.unref(_n)[w.value].readable?(t.openBlock(),t.createBlock(y,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(_n)[w.value].writable?(t.openBlock(),t.createBlock(y,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(_,{key:0,"model-value":c.value,"onUpdate:modelValue":[h[1]||(h[1]=w=>c.value=w),u],error:!m.validators.key.isValid.value,"error-message":m.validators.key.error.value,label:"key",required:"",onBlur:h[2]||(h[2]=w=>m.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),jB=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=rt(),a=wn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,skipValidationOnMount:y,fieldNameValidator:g}=bn(e.nodeId,()=>n.value.getInnerData()),_=t.computed(()=>Ol(l.value.property));function w(C){var k;const E=(k=o.value)==null?void 0:k.id;if(!E)throw new Error("Expected selectedNode to be defined");Pl(C)||i(E,!1),Ol(C)||r(E,!1),c()}const{fields:b}=bi({validationConfig:()=>({property:Jn({fieldName:"Property"}),key:Lo(l.value.property)?Jn({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:Tl(l.value.property)}),skipValidationOnMount:y,toggleNodeValid:h});return(C,E)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(Uo,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(kt,{name:"content_type","onUpdate:modelValue":t.unref(c)},null,8,["onUpdate:modelValue"]),t.createVNode(KB,{validators:t.unref(b),"onUpdate:modelValue":w,"onUpdate:propertyKey":E[0]||(E[0]=k=>t.unref(c)("property-key"))},null,8,["validators"]),_.value?(t.openBlock(),t.createBlock(Xn,{key:0,"field-name-validator":t.unref(g),"field-names":t.unref(p),items:t.unref(d),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),GB=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=wn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,skipValidationOnMount:p,fieldNameValidator:m}=bn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:h}=bi({validationConfig:{status:Zn(qp("integer",{fieldName:"Status"}),zp(200,255,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),skipValidationOnMount:p,toggleNodeValid:u}),y=h("status",()=>a("status"));return(g,_)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Uo,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode($n,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"status",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(ra,{name:"warn_headers_sent","onUpdate:modelValue":_[0]||(_[0]=w=>t.unref(a)())}),t.createVNode(Xn,{"field-name-validator":t.unref(m),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),qB=["innerHTML"],zB=we(t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:()=>_I},offsetTop:{default:()=>bI},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=rt(),o=t.computed(()=>e.nodeId&&n(e.nodeId)),r=t.computed(()=>{var i;switch((i=o.value)==null?void 0:i.type){case"call":return PB;case"service_request":return OB;case"response":return $B;case"jq":return BB;case"static":return DB;case"property":return jB;case"exit":return GB;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Te.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":i.maxWidth,"offset-top":i.offsetTop,visible:i.visible,onClose:a[0]||(a[0]=l=>i.$emit("close"))},t.createSlots({default:t.withCtx(()=>[o.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(Ct)(o.value.type)},null,8,qB)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:i.nodeId,class:"dk-node-properties-panel-form","node-id":i.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Fp,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible"]))}}),[["__scopeId","data-v-1bb64727"]]),HB={class:"dk-editor-content"},YB={class:"header"},WB={class:"title"},XB={class:"body"},ZB={class:"node-selection-panel"},JB={class:"main"},QB=we(t.defineComponent({__name:"EditorContent",setup(e){const{t:n}=Re.createI18n("en-us",je),{sidePanelExpanded:o}=Oa(),{propertiesPanelOpen:r,selectedNode:i,newCreatedNodeId:a}=rt();function l(){r.value=!1,a.value=null}return t.watch(i,s=>{s||l(),(!s||s.id!==a.value)&&(a.value=null)}),(s,c)=>{var d;return t.openBlock(),t.createElementBlock("div",HB,[t.createElementVNode("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o)}])},[t.createElementVNode("header",YB,[t.createElementVNode("h2",WB,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",XB,[t.createElementVNode("div",ZB,[t.createVNode(mB)])])],2),t.createElementVNode("div",JB,[t.createVNode(rB)]),t.createVNode(zB,{"node-id":(d=t.unref(i))==null?void 0:d.id,visible:t.unref(r),onClose:l},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-0e99b201"]]),eV={key:0,class:"dk-editor-modal"},tV=we(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(l=>({be550f98:t.unref(yI),"2eb355b0":t.unref(hI)}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal");A$(async(...l)=>{o.value=!0;const s=await r.value.open(...l);return o.value=!1,s});const i=Je.useScrollLock(document);t.watch(n,l=>{i.value=!!l},{immediate:!0});function a(){n.value=!1}return(l,s)=>n.value?(t.openBlock(),t.createElementBlock("div",eV,[t.createVNode(Q$,{class:"nav",onBack:a}),t.createVNode(QB,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(W$,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-2aca1995"]]),nV={class:"dk-flow-editor"},oV={class:"flow-panels-container"},rV={class:"overlay"},iV={class:"field"},aV=we(t.defineComponent({__name:"FlowEditor",props:{config:{},uiData:{},isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){var s,c;const{t:o}=Re.createI18n("en-us",je),r=n,i=t.useTemplateRef("flowPanels");function a(d,f){r("change",{...e.config,nodes:d},{...e.uiData,nodes:f})}const{modalOpen:l}=MC(((s=e.config)==null?void 0:s.nodes)??[],((c=e.uiData)==null?void 0:c.nodes)??[],{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{var d;l.value||(d=i.value)==null||d.fitView()}),(d,f)=>{const u=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",nV,[t.createElementVNode("div",oV,[t.createVNode(Kp,{ref_key:"flowPanels",ref:i,readonly:""},null,512),t.createElementVNode("div",rV,[t.createVNode(u,{appearance:"secondary",class:"button-open-editor",onClick:f[0]||(f[0]=p=>l.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(ke.ExpandIcon))]),_:1})])]),t.createVNode(tV,{open:t.unref(l),"onUpdate:open":f[1]||(f[1]=p=>t.isRef(l)?l.value=p:null)},null,8,["open"]),t.createElementVNode("div",iV,[t.createVNode(ra,{name:"config.debug"})])])}}}),[["__scopeId","data-v-615e9dae"]]),lV=["innerHTML"],sV=t.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:n}=Re.createI18n("en-us",je),o=e,r=t.inject(lc.DATAKIT_ENABLE_FLOW_EDITOR,!1),{editorMode:i}=Oa(),a=t.computed(()=>r?i.value:"code"),l={flow:ke.DesignIcon,code:ke.CodeblockIcon},s=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}],c=t.computed(()=>{switch(i.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}}),d=t.ref({...o.model.config}),f=t.ref();function u(y){for(const g in y.config)g!=="nodes"&&(d.value[g]=y.config[g])}function p(y){var g;o.onFormChange({config:y}),(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!0}),d.value=y}function m(y,g){p(y),f.value=g}function h(y){var g;(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!1,error:y})}return(y,g)=>(t.openBlock(),t.createBlock(ok,t.mergeProps(o,{class:"dk-form"}),t.createSlots({default:t.withCtx(_=>[t.createVNode(mt,t.mergeProps(_,{data:{config:d.value},tag:"div",onChange:u}),{default:t.withCtx(()=>[a.value==="flow"?(t.openBlock(),t.createBlock(aV,{key:0,config:d.value,"is-editing":y.isEditing,"ui-data":f.value,onChange:m},null,8,["config","is-editing","ui-data"])):a.value==="code"?(t.openBlock(),t.createBlock(SC,{key:1,class:"code-editor",config:d.value,editing:y.isEditing,onChange:p,onError:h},null,8,["config","editing"])):t.createCommentVNode("",!0)]),_:2},1040,["data"])]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:c.value},null,8,lV)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Te.KSegmentedControl),{modelValue:t.unref(i),"onUpdate:modelValue":g[0]||(g[0]=_=>t.isRef(i)?i.value=_:null),options:s},{"option-label":t.withCtx(({option:_})=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l[_.value]))),t.createTextVNode(" "+t.toDisplayString(_.label),1)]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1040))}}),Yp=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))typeof o=="string"&&(e[n]=o.split(/\s*,\s*/).filter(Boolean))},Wp=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},cV=we(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=$e.useI18n(),l={prepareFormData:c=>{var f,u;const d=xn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Wp(p.headers),Wp(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=xn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Yp(p.headers),Yp(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(mt,{class:"ai-mcp-config-form",config:l,data:c.data,schema:c.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{tools:t.withCtx(({name:f})=>[t.createVNode(hr,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(la)]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-7cb4b052"]]),Xp=Object.freeze(Object.defineProperty({__proto__:null,AIMcpForm:t.defineComponent({__name:"AIMcpForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(sa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(cV,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:sV,RequestCalloutForm:iw,ServiceProtectionForm:Jw},Symbol.toStringTag,{value:"Module"})),dV={class:"kong-ui-entities-plugin-form"},uV={key:1,class:"entity-form"},fV={class:"plugin-config-empty-state"},pV=we(t.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:n}){var Z,ae;const o=Object.keys(Ne.sharedForms),r=Object.keys(Xp);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,a=e,{axiosInstance:l}=ue.useAxios((Z=a.config)==null?void 0:Z.axiosRequestConfig),{parseSchema:s}=$e.useSchemas({entityId:((ae=a.entityMap.focusedEntity)==null?void 0:ae.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}=$e.usePluginHelpers(),m=$e.useExperimentalFreeForms(),{objectsAreEqual:h}=ue.useHelpers(),{i18n:{t:y}}=ve(),g=(q,ee)=>{let U=`${a.config.apiBaseUrl}${Be.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?U=U.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(U=U.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),U=U.replace(/{entity}/gi,q),U=U.replace(/{id}/gi,ee),U},_=q=>{let ee=`${a.config.apiBaseUrl}${Be.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?ee=ee.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(ee=ee.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),ee=ee.replace(/{entity}/gi,q),ee},w=(q,ee)=>{const U=g(q,ee);return l.get(U)},b=(q,ee)=>{const U=_(q);return a.config.app==="konnect"?l.get(U).then(ne=>{const{data:{data:re}}=ne;if(delete ee.size,delete ee.offset,re.length&&Object.keys(ee).length===1){const de=Object.keys(ee)[0],L=re.filter(W=>W[de]?!!W[de].toLowerCase().includes(ee[de].toLowerCase()):!1);ne.data.data=L}return ne}):l.get(U,{params:ee})};t.provide(Ne.FORMS_API_KEY,{getOne:w,getAll:b}),t.provide(Ne.FORMS_CONFIG,a.config);const C=t.ref(""),E=t.ref(""),k=t.ref(null),T=t.ref({}),x=t.reactive({}),$=t.reactive({}),K=t.computed(()=>{var q;return(q=k.value)==null?void 0:q.options}),j=t.ref(!1),I=t.ref(),Q=(q,ee)=>{j.value=q??"",I.value=ee},A=q=>{var ee;(ee=I.value)==null||ee.call(I,q),j.value=!1},D=()=>{var L,W;const q={...a.schema},ee=$,U=x,ne=Object.keys(ee),re={};if(!u(T.value))for(let N=0;N<((W=(L=T.value)==null?void 0:L.fields)==null?void 0:W.length);N++)q[T.value.fields[N].model]=T.value.fields[N];Ne.customFields.forEach(N=>{q[N]&&(q[N].fields.forEach(v=>{v.fields&&v.fields.forEach(S=>{q[S.model]=S}),v.model&&(q[v.model]=v)}),delete q[N])}),ne.forEach(N=>{var B;if(!q[N]){N==="partials"&&(re[N]=ee[N]);return}const v=q[N];let S=ee[N];const P=U[N],O=Array.isArray(S)?"array":typeof S,J=v?v.valueType:null,te=v?v.valueArrayType:null,M=v?v.transform:null;if(S==null&&P==null&&!v.submitWhenNull)return;if(v){if(J&&O!==J)switch(J){case"array":O==="string"&&S.length&&(S=S.split(",").map(le=>{if(le=le.trim(),te==="string")return String(le);if(te==="number")return Number(le);if(te==="boolean"){if(typeof le=="string")return le.toLowerCase()==="true"||le==="1";if(typeof le=="number")return le===1}return le})),(!S||!S.length)&&(S=v.submitWhenNull?null:[]);break;case"number":S=Number(S);break;case"boolean":O==="string"&&(S=S.toLowerCase()==="true"||S==="1"),O==="number"&&(S=S===1);break;case"string":S=S==null?"":String(S);break}else J==="array"&&(!S||!S.length?S=v.submitWhenNull?null:[]:((B=v.inputAttributes)==null?void 0:B.type)==="number"&&(S=S.map(le=>Number(le))));if(v.type==="array"&&v.nestedFields){const le=ce=>{Object.keys(ce).forEach(se=>{ce[se]&&typeof ce[se]=="object"&&!Array.isArray(ce[se])&&ce[se]!==null?le(ce[se]):(ce[se]===void 0||ce[se]===null||typeof ce[se]=="number"&&isNaN(ce[se])||typeof ce[se]=="string"&&ce[se].trim().length===0)&&delete ce[se]})};S&&typeof S=="object"&&le(S)}v.type==="object-advanced"&&v.fields&&S!==null&&(Object.entries(S).length===0?S=null:Object.keys(S).forEach(le=>{Array.isArray(S[le])||(S[le]=S[le].split(","))}))}let H=c(N);if(v.fieldNameHasDashes){const[le,...ce]=H.split(".").reverse();H=[le.replace(/_/g,"-"),...ce].reverse().join(".")}if(J==="object-expand"){let le;[H,le]=H.split(".");let ce={};re[H]&&(ce=re[H]),ce[le]=S,S=ce}P!==void 0&&S===""&&S!==P?re[H]=J==="object"?{}:null:v.type==="checklist"&&S===""?re[H]=[]:S!==""&&(re[H]=S),re[H]=M?M(S):re[H],p(H,re)});const de=d(re);return E.value&&Object.assign(de,F.value),de},V=(q,ee={})=>{f($,ee,q,a.editing),i("model-updated",{model:$,originalModel:x,data:D()})},X=(q,ee)=>{var re;const U={[ee]:q};typeof((re=a.schema[ee])==null?void 0:re.modelTransformer)=="function"&&(U[ee]=a.schema[ee].modelTransformer(q));const ne=Object.assign({},$,U);Object.assign($,ne),i("model-updated",{model:$,originalModel:x,data:D()})},Y=q=>{i("validity-change",q)},G=(q,ee)=>{Object.keys(q).forEach(U=>{var W,N;let ne=ee?`${ee}-${U}`:U,re=a.schema[ne];if(!re){const v=ee?`${ee}-${U.replace(/-/g,"_")}`:U.replace(/-/g,"_");(W=a.schema[v])!=null&&W.fieldNameHasDashes&&(ne=v,re=a.schema[ne]),ee&&((N=a.schema[ee])==null?void 0:N.keyFromObject)===U&&(ne=ee,re=a.schema[ne])}const de=q[U],L=typeof de;if(re&&re.type==="object-advanced"&&!de){$[ne]={},x[ne]={};return}if(Array.isArray(de)){$[ne]=JSON.parse(JSON.stringify(de)),x[ne]=JSON.parse(JSON.stringify(de));return}if(L==="object"&&de&&!de.length)return G(de,ne);if(L==="object"&&de&&de.length&&re.type==="input"){$[ne]=de.join(", "),x[ne]=de.join(", ");return}$[ne]=de,x[ne]=de}),i("model-updated",{model:$,originalModel:x,data:D()})},F=t.shallowRef(a.record),R=q=>{F.value=q,i("model-updated",{model:{...$,...q},originalModel:x,data:D()})},oe=t.ref(!0),ie=()=>{var q;if(a.record&&a.schema&&(G({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)&&G({consumer_id:a.record.consumer_id||a.record.consumer}),G(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)&&G({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&&V("redis",{partials:a.record.partials}),E.value?R(a.record):G(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const ee={};for(const U in a.entityMap){const ne=a.entityMap[U].id,re=a.entityMap[U].idField,de=re==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(re).replace("_","-"));Object.prototype.hasOwnProperty.call($,de)&&(ee[de]=ne)}G(ee)}if((q=a.entityMap.consumer)!=null&&q.id&&a.schema&&a.credential){const ee={};Object.prototype.hasOwnProperty.call($,"consumer")&&(ee.consumer=a.entityMap.consumer.id),G(ee)}oe.value=!1};return t.watch(oe,q=>{i("loading",q)}),t.watch(()=>a.schema,(q,ee)=>{var ne,re;if(h(q||{},ee||{}))return;const U=s(q);Object.assign($,U.model),T.value={fields:(re=(ne=T.value)==null?void 0:ne.fields)==null?void 0:re.map(de=>({...de,disabled:de.disabled||!1}))},Object.assign(x,JSON.parse(JSON.stringify(U.model))),E.value=ac(U.model.name,m),C.value=Ne.getSharedFormName(U.model.name),ie()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var q,ee;k.value=s(a.schema),Object.assign($,((q=k.value)==null?void 0:q.model)||{}),T.value=((ee=k.value)==null?void 0:ee.schema)||{},ie()}),(q,ee)=>{var ne;const U=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",dV,[oe.value?(t.openBlock(),t.createBlock(U,{key:0,type:"form"})):$.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",uV,[E.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(Xp[E.value]),{key:0,"form-model":$,"form-options":K.value,"form-schema":T.value,"is-editing":e.editing,model:e.record,"on-form-change":R,"on-model-updated":X,"on-validity-change":Y,schema:e.rawSchema,onGlobalAction:ee[0]||(ee[0]=(re,de)=>q.$emit("globalAction",re,de))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(re=>[re.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Xo.VaultSecretPickerProvider),t.mergeProps({key:0},re,{onOpen:Q}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):C.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Ne.sharedForms)[C.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":$,"form-options":K.value,"form-schema":T.value,"is-editing":e.editing,"on-model-updated":X,"on-partial-toggled":V,"show-new-partial-modal":re=>q.$emit("showNewPartialModal",re)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(re=>[re.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Xo.VaultSecretPickerProvider),t.mergeProps({key:0},re,{onOpen:Q}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(t.openBlock(),t.createBlock(t.unref(Ne.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:$,options:K.value,schema:T.value,onModelUpdated:X,onPartialToggled:V,onRefreshModel:D,onShowNewPartialModal:ee[1]||(ee[1]=re=>q.$emit("showNewPartialModal",re))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",fV,t.toDisplayString(t.unref(y)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ne=t.unref(It)[$.name])!=null&&ne.fieldRules&&(a.config.isNewOtelSchema||$.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(d0,{rules:t.unref(It)[$.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(re=>[re.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Xo.VaultSecretPickerProvider),t.mergeProps({key:0},re,{onOpen:Q}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Xo.VaultSecretPicker),{config:a.config,setup:j.value,onCancel:ee[2]||(ee[2]=()=>j.value=!1),onProceed:A},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-780e65cb"]]),mV={key:1},gV=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,o)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",mV,[t.renderSlot(n.$slots,"default")]))}}),hV={class:"kong-ui-entities-plugin-form-container"},yV={key:0},_V={class:"plugin-form-actions"},bV=we(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},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:n}){var te;const o=n,r=e,i=Qn.useRouter(),{i18n:{t:a}}=$e.useI18n(),{customSchemas:l,typedefs:s}=$e.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=$e.usePluginHelpers(),{getMessageFromError:d}=ue.useErrors(),{capitalize:f}=ue.useStringHelpers(),{objectsAreEqual:u}=ue.useHelpers(),{axiosInstance:p}=ue.useAxios((te=r.config)==null?void 0:te.axiosRequestConfig),m=t.ref(!1),h=t.computed(()=>!!r.pluginId),y=t.computed(()=>r.pluginId?ue.EntityBaseFormType.Edit:ue.EntityBaseFormType.Create),g=t.ref(void 0),_=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),C=t.ref({}),E=t.ref(),k=t.ref();t.provide(Ic,{redisType:E,redisPath:k,isEditing:h.value});const T=t.ref(!1),x=t.reactive({enabled:!0,protocols:[],tags:[]}),$=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),K=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&K.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const j=t.ref(""),I=t.computed(()=>{if(w.value){let M=Be.form[r.config.app].credential[y.value];return M=M.replace(/{resourceEndpoint}/gi,V.value),M}return r.config.entityType&&r.config.entityId?Be.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):Be.form[r.config.app].edit.all}),Q=()=>{m.value=!m.value},A=t.computed(()=>{var se,_e,be,Ce,xe,pe,fe,ot;const M=r.config.entityType==="consumers"&&r.config.entityId||((_e=(se=b.value)==null?void 0:se.consumer)==null?void 0:_e.id),H=r.config.entityType==="consumer_groups"&&r.config.entityId||((Ce=(be=b.value)==null?void 0:be.consumer_group)==null?void 0:Ce.id),B=r.config.entityType==="services"&&r.config.entityId||((pe=(xe=b.value)==null?void 0:xe.service)==null?void 0:pe.id),le=r.config.entityType==="routes"&&r.config.entityId||((ot=(fe=b.value)==null?void 0:fe.route)==null?void 0:ot.id);if(!(M||H||B||le))return{global:{entity:z.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ce={};return B&&(ce.service={entity:z.PluginScope.SERVICE,entityEndpoint:"services",id:B,idField:Zt.SERVICE}),le&&(ce.route={entity:z.PluginScope.ROUTE,entityEndpoint:"routes",id:le,idField:Zt.ROUTE}),M&&(ce.consumer={entity:z.PluginScope.CONSUMER,entityEndpoint:"consumers",id:M,idField:Zt.CONSUMER}),H&&(ce.consumer_group={entity:z.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:H,idField:Zt.CONSUMER_GROUP}),r.config.entityType&&(ce.focusedEntity={entity:z.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:Zt[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),ce}),D=t.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||y.value===ue.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}),V=t.computed(()=>{var B;const M=r.developer?"developers":"consumers",H=((B=Nn[r.pluginType])==null?void 0:B.endpoint)||"/plugins";return`${M}/${r.config.entityId}${r.developer?"/credentials":""}${H}`}),X=M=>{const H=Array.from(new Set(M.map(B=>typeof B)));return H.length>1?"string":H[0]},Y=(M,H,B,le)=>{var be,Ce;let ce=H&&H.fields||[];const se=l[r.pluginType],_e=(Ce=(be=Nn[r.pluginType])==null?void 0:be.schema)==null?void 0:Ce.fields;return Array.isArray(ce)&&(ce=ce.reduce((xe,pe)=>{const fe=Object.keys(pe)[0];return fe.match(/-/g)?xe[fe.replace(/-/g,"_")]={...pe[fe],fieldNameHasDashes:!0}:xe[fe]=pe[fe],xe},{})),Object.keys(ce).sort().forEach(xe=>{var Ko,jo,Go,qo,zo,Ho,Yo;const pe=ce[xe];pe.type==="set"&&(pe.type="array");const fe=M?`${M}-${xe}`:`${xe}`;if((Ko=se==null?void 0:se.fieldsToDelete)!=null&&Ko.includes(fe)){ic(B,fe);return}if(Object.prototype.hasOwnProperty.call(pe,"overwrite")||pe.hidden)return;if(pe.type==="table")return Y(fe,pe.schema,B);if(pe.fields)return le&&pe.type==="record"?(B[fe]={type:"object",model:xe,schema:{fields:Object.values(Y(fe,pe,{},!0))}},B):Y(fe,pe,B);if(B[fe]={id:fe,model:xe},B[fe].type=pe.type==="boolean"?"checkbox":"input",B[fe].required=pe.required,B[fe].referenceable=pe.referenceable,fe.startsWith("config-"))if(!le&&pe.type==="array"&&(j.value=fe),le&&j.value&&fe.startsWith(j.value)){const Ee=fe.slice(j.value.length+1);B[fe].label=Ee.split("-").map(c).join(".")}else B[fe].label=c(fe);if((M==="config"||M.startsWith("config-"))&&(jo=ce[xe])!=null&&jo.description&&(B[fe].help=Wo.marked.parse(ce[xe].description,{mangle:!1,headerIds:!1})),pe.type==="map"){if(B[fe].type="object-advanced",B[fe].values=pe.values,pe.values.type==="array"){const{type:Ee}=pe.values.elements||{};B[fe].schema={fields:[{schema:{fields:[{...Pe,model:fe,valueArrayType:Ee==="integer"?"number":Ee||"string",inputAttributes:{...Pe.inputAttributes,type:Ee==="integer"?"number":"text",inputMode:Ee==="integer"?"numeric":"text"}}]}}]}}else pe.values.fields&&(B[fe].schema={fields:[{type:"object",model:"object",schema:{fields:pe.values.fields.map(Ee=>{const Ye=Object.keys(Ee)[0];return{model:Ye,type:"input",label:f(Ye),placeholder:Ye,inputType:Ee[Ye].type}})}}]});return B}if(pe.enum&&pe.type==="array"&&(B[fe].type="checklist",B[fe].values=pe.enum,B[fe].multi=!0,B[fe].multiSelect=!0),pe.one_of&&pe.type!=="array"&&(B[fe].type="select",B[fe].values=pe.one_of,B[fe].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),pe.elements&&pe.type==="array"){const Ee=pe.elements;if(B[fe].referenceable=Ee.referenceable,B[fe].elements=Ee,["string","integer","number"].includes(Ee.type)&&!Ee.one_of){const{id:Ye,help:Ue,label:Se,hint:Ze,values:at,referenceable:kn,model:En}=B[fe],{inputAttributes:ki,...pR}=JSON.parse(JSON.stringify(Pe));ki.type=Ee.type==="string"?"text":"number",B[fe]={id:Ye,help:Ue,label:Se,hint:Ze,values:at,referenceable:kn,model:En,inputAttributes:ki,...pR}}}if(pe.hint&&(B[fe].hint=pe.hint),se&&!se.overwriteDefault&&Object.keys(se).forEach(Ee=>{if(Ee===fe){const{help:Ye,label:Ue,hint:Se,values:Ze,referenceable:at,elements:kn}=B[fe],{help:En,...ki}=se[Ee];B[fe]={help:Ye,label:Ue,hint:Se,values:Ze,referenceable:at,elements:kn,...ki},typeof En=="string"&&(B[fe].help=Wo.marked.parse(En,{mangle:!1,headerIds:!1}))}}),pe.type==="array"&&((Go=pe.elements)==null?void 0:Go.type)==="record"&&Array.isArray(pe.elements.fields)){let Ee={};for(const Ue of pe.elements.fields)Ee={...Ee,...Ue};const Ye=(Ho=(zo=(qo=B[fe])==null?void 0:qo.items)==null?void 0:zo.schema)==null?void 0:Ho.fields;if(Array.isArray(Ye))for(const Ue of B[fe].items.schema.fields){const Se=(Yo=Ee[Ue.model])==null?void 0:Yo.description;Ue.help===void 0&&typeof Se=="string"&&(Ue.help=Wo.marked.parse(Se,{mangle:!1,headerIds:!1}))}if(Ye||(B[fe].type="array",B[fe].newElementButtonLabelClasses="kong-form-new-element-button-label",B[fe].fieldClasses="array-card-container-wrapper",B[fe].itemContainerComponent="FieldArrayCardContainer",B[fe].items={type:"object",schema:{fields:Object.values(Y(fe,pe.elements,{},!0))}},B[fe].items.schema.fields.forEach(Ue=>{var Se,Ze;for(const at of pe.elements.fields){const kn=Object.keys(at)[0],En=((Ze=(Se=Ue.id)==null?void 0:Se.split)==null?void 0:Ze.call(Se,"-"))??[];if(En[En.length-1]===kn){Ue.model=kn,Ue.label=c(kn);break}}}),pe.elements.type==="record"&&(B[fe].nestedFields=!0)),!B[fe].nestedFields)B[fe].items.default=()=>pe.elements.fields.reduce((Ue,Se)=>{const Ze=Object.keys(Se)[0];return Ue[Ze]=Se[Ze].default,Ue},{});else{const Ue=(Se,Ze)=>{if(Se.type==="object"){Se.model&&(Ze[Se.model]={});for(const at of Se.schema.fields)Ue(at,Se.model?Ze[Se.model]:Ze)}else Se.model&&(Ze[Se.model]=Se.default)};B[fe].items.default=()=>{const Se={};return Ue(B[fe].items,Se),Se}}}if(w.value&&_e){for(let Ee=0;Ee<_e.length;Ee++)if(_e[Ee][fe]){B[fe]={...B[fe],..._e[Ee][fe]};break}}if(pe.required&&pe.type!=="boolean"&&(B[fe].required=!0,B[fe].selectOptions={hideNoneSelectedText:!0}),pe.required&&pe.type==="boolean"&&(B[fe].default=pe.default??!1),pe.default!=null&&typeof pe.default!="object"&&pe.default!=="function"&&(B[fe].default=pe.default),B[fe].type==="input"){["string","number"].includes(typeof B[fe].default)&&r.config.app==="konnect"&&(B[fe].placeholder=`Default: ${B[fe].default===""?"<empty string>":B[fe].default}`);const{type:Ee}=pe.elements||{};Ee&&(B[fe].valueArrayType=Ee==="integer"?"number":Ee),B[fe].inputType=pe.type==="array"||pe.type==="string"?pe.encrypted?"password":"text":pe.type}let ot="string";pe.enum?ot=X(pe.enum):pe.type==="boolean"?ot="boolean":pe.type==="number"||pe.type==="integer"?(ot="number",B[fe].inputType="number"):pe.type==="array"?(ot="array",B[fe].default=pe.default,pe.len_min>0&&(B[fe].submitWhenNull=!0)):pe.type==="foreign"?ot="object":pe.default&&Array.isArray(pe.default)?(ot="array",B[fe].valueArrayType=X(pe.default)):pe.default&&(ot=typeof pe.default),B[fe].valueType=ot,pe.fieldNameHasDashes&&(B[fe].fieldNameHasDashes=!0)}),B},G=()=>{var xe,pe,fe,ot,Ko,jo,Go,qo,zo,Ho,Yo,Ee;const M=((xe=It[r.pluginType])==null?void 0:xe.scope.includes(z.PluginScope.SERVICE))??!0,H=((pe=It[r.pluginType])==null?void 0:pe.scope.includes(z.PluginScope.ROUTE))??!0,B=((fe=It[r.pluginType])==null?void 0:fe.scope.includes(z.PluginScope.CONSUMER))??!0,le=r.config.disableConsumerGroupScope?!1:((ot=It[r.pluginType])==null?void 0:ot.scope.includes(z.PluginScope.CONSUMER_GROUP))??!0,ce=r.config.entityType==="consumers"&&!!r.config.entityId||!!((jo=(Ko=b.value)==null?void 0:Ko.consumer)!=null&&jo.id),se=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((qo=(Go=b.value)==null?void 0:Go.consumer_group)!=null&&qo.id),_e=r.config.entityType==="services"&&!!r.config.entityId||!!((Ho=(zo=b.value)==null?void 0:zo.service)!=null&&Ho.id),be=r.config.entityType==="routes"&&!!r.config.entityId||!!((Ee=(Yo=b.value)==null?void 0:Yo.route)!=null&&Ee.id),Ce=[];if(M&&Ce.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:_e&&r.disableScopeSelection}),H&&Ce.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}),B&&Ce.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:ce&&r.disableScopeSelection}),le&&Ce.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}),Ce.length){const Ye=[...M?["service"]:[],...H?["route"]:[],...B?["consumer"]:[],...le?["consumer_group"]:[]],Se=Ye.splice(Ye.length-2,2).map(at=>a(at==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${at}.plural`)).join(`${Ye.length>0?",":""} and/or `),Ze=["Specific",[...Ye.length>0?[Ye.map(at=>a(at==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${at}.plural`)).join(", ")]:[],Se].join(", ")].join(" ");D.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Ze,fields:[]}),D.selectionGroup.fields[1].fields=Ce}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(D,l[r.pluginType].formSchema)},F=t.computed(()=>!u($.fields,x,!0)),R=t.computed(()=>!O.value&&!T.value&&(y.value===ue.EntityBaseFormType.Create||F.value)),oe=t.ref(!1),ie=t.ref(),Z=M=>{r.credential&&M.password&&(M.password=""),$.fields.id=(M==null?void 0:M.id)||void 0,ie.value=M==null?void 0:M.ordering,Object.assign(x,$.fields),b.value=M,oe.value=!0},ae=t.ref({}),q=M=>{var H;$.fields=M.model,$.fields.id=((H=b.value)==null?void 0:H.id)||void 0,Object.assign(x,M.originalModel),ae.value=M.data,r.isWizardStep&&o("model-updated",{model:$.fields,data:M.data,resourceEndpoint:V.value})},ee=t.ref(new Map),U=t.computed(()=>[$.clientErrorMessage,$.serverErrorMessage].filter(Boolean).join("; ")),ne=M=>{M.valid?ee.value.delete(M.model):ee.value.set(M.model,M.error),$.clientErrorMessage=[...ee.value.entries()].map(([H,B])=>`${H}: ${typeof B=="string"?B:d(B)}`).join("; "),$.clientErrorMessage&&($.serverErrorMessage="")};t.watch([A,oe],(M,H)=>{const B=M[0]!==H[0],le=M[1],ce=H[1];if(!w.value&&y.value===ue.EntityBaseFormType.Edit&&(B||le&&le!==ce)){const se=Y("config",C.value,D);W.value&&(se._isCustomPlugin=!0),E.value&&(se._supported_redis_partial_type=E.value),_.value=se}},{deep:!0});const re=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},de=t.computed(()=>{let M=`${r.config.apiBaseUrl}${Be.form[r.config.app].validate}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{id}/gi,r.pluginId),M}),L=t.computed(()=>{const M=r.config.entityType&&r.config.entityId&&!r.developer,H=w.value?Be.form[r.config.app].credential[y.value]:Be.form[r.config.app][y.value][M?"forEntity":"all"];let B=`${r.config.apiBaseUrl}${H}`;return r.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),B=B.replace(/{resourceEndpoint}/gi,V.value),B=B.replace(/{id}/gi,r.pluginId),B=B.replace(/{entityType}/gi,r.config.entityType||""),B=B.replace(/{entityId}/gi,r.config.entityId||""),B}),W=t.computed(()=>!Object.keys(It).includes(r.pluginType)),N=t.computed(()=>{const M=ae.value;if(w.value){for(const H in z.PluginScope){const B=z.PluginScope[H];M[B]&&!M[B].id&&(M[B]={id:r.config.entityId})}delete M.created_at}return ae.value.partials&&k.value&&ic(M,k.value),M}),v=async()=>{if(!$.clientErrorMessage&&!r.isWizardStep)try{$.isReadonly=!0;let M;const H=JSON.parse(JSON.stringify(N.value)),B=l[r.pluginType];typeof(B==null?void 0:B.shamefullyTransformPayload)=="function"&&B.shamefullyTransformPayload({originalModel:x,model:$.fields,payload:H,schema:_.value}),!w.value&&!W.value&&await p.post(de.value,H),y.value==="create"?M=await p.post(L.value,H):y.value==="edit"&&(M=r.config.app==="konnect"||E.value&&H.partials?await p.put(L.value,Object.assign({ordering:ie.value},H)):await p.patch(L.value,H)),Object.assign(x,$.fields),o("update",M==null?void 0:M.data)}catch(M){$.serverErrorMessage=d(M),o("error",M)}finally{$.isReadonly=!1}},S=t.computed(()=>{var le;const M=w.value?(le=Nn[r.pluginType])==null?void 0:le.schemaEndpoint:r.pluginType,H=w.value?Be.form[r.config.app].credentialSchema:Be.form[r.config.app].pluginSchema;let B=`${r.config.apiBaseUrl}${H}`;return r.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),B=B.replace(/{plugin}/gi,M),B}),P=t.ref(""),O=t.ref(!1),J=t.ref("");return t.onBeforeMount(async()=>{var M,H,B,le;O.value=!0;try{if(w.value&&r.config.app==="konnect"){const ce=(M=Nn[r.pluginType])==null?void 0:M.schemaEndpoint,se=pm[ce];P.value=ce,_.value=Y("",se,{}),O.value=!1}else{const ce=r.schema??(await p.get(S.value)).data;if(g.value=ce,ce)if(w.value)_.value=Y("",ce,{}),O.value=!1;else{const se=ce.fields.find(be=>be.config);C.value=se?se.config:ce,ce.supported_partials&&(E.value=Object.keys(ce.supported_partials).find(be=>[Jo.REDIS_CE,Jo.REDIS_EE].includes(be)),k.value=(H=ce.supported_partials[E.value])==null?void 0:H[0]),G();const _e=(B=ce.fields.find(be=>be.protocols))==null?void 0:B.protocols;if(_e){const{default:be=[],elements:Ce={}}=_e;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"),(le=Ce.one_of)!=null&&le.length&&(D.protocols.values=Ce.one_of.map(xe=>({label:xe,value:xe})))}if(oe.value||y.value===ue.EntityBaseFormType.Create){const be=Y("config",C.value,D);E.value&&(be._supported_redis_partial_type=E.value),W.value&&(be._isCustomPlugin=!0),_.value=be}}}}catch(ce){console.error(ce),J.value=d(ce),o("error:fetch-schema",ce)}finally{O.value=!1}}),(M,H)=>{const B=t.resolveComponent("KSkeleton"),le=t.resolveComponent("KEmptyState"),ce=t.resolveComponent("KButton"),se=t.resolveComponent("KTabs"),_e=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",hV,[O.value?(t.openBlock(),t.createBlock(B,{key:0,type:"form"})):J.value?(t.openBlock(),t.createBlock(le,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(a)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ue.EntityBaseForm),{key:2,"can-submit":R.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"error-message":U.value,"fetch-url":I.value,"form-fields":N.value,"is-readonly":$.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:re,"onFetch:error":H[4]||(H[4]=be=>M.$emit("error",be)),"onFetch:success":Z,onLoading:H[5]||(H[5]=be=>M.$emit("loading",be))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",yV)):(t.openBlock(),t.createBlock(gV,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",_V,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ce,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:H[3]||(H[3]=be=>Q())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(ce,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:$.isReadonly,onClick:re},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(ce,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!R.value||$.isReadonly,type:"submit",onClick:v},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:v},null,32),t.createVNode(pV,{config:e.config,credential:w.value,editing:y.value===t.unref(ue.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,"entity-map":A.value,"raw-schema":g.value,record:b.value,schema:_.value,onGlobalAction:H[0]||(H[0]=(be,Ce)=>M.$emit("globalAction",be,Ce)),onLoading:H[1]||(H[1]=be=>T.value=be),onModelUpdated:q,onShowNewPartialModal:H[2]||(H[2]=be=>M.$emit("showNewPartialModal",be)),onValidityChange:ne},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"])),t.createVNode(_e,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(a)("view_configuration.title"),visible:m.value,onClose:Q},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(se,{"data-testid":"form-view-configuration-slideout-tabs",tabs:K.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ue.JsonCodeBlock),{config:e.config,"entity-record":N.value,"fetcher-url":L.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ue.YamlCodeBlock),{"entity-record":N.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ue.TerraformCodeBlock),{"credential-type":P.value,"entity-record":N.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-420ab237"]]),wV={class:"kong-ui-entities-plugins-list"},kV={class:"button-row"},EV={class:"empty-state-icon-gateway"},CV={class:"name-cell-wrapper"},NV={class:"info-wrapper"},vV={key:0,class:"info-name"},SV={key:1,class:"info-name"},xV={key:2,class:"info-type"},AV={key:1},IV=we(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var S,P;const o=$e.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=$e.useI18n(),l=Qn.useRouter(),{axiosInstance:s}=ue.useAxios((S=i.config)==null?void 0:S.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ue.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var O;return((O=i.config)==null?void 0:O.entityType)==="consumers"}),m=t.computed(()=>{var O;return((O=i.config)==null?void 0:O.entityType)==="consumer_groups"}),h=i.config.app==="konnect"||ue.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),y=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(P=i.config)!=null&&P.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,w=t.computed(()=>{var J,te,M,H;let O=i.config.entityType?`${i.config.apiBaseUrl}${Be.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Be.list[i.config.app].all}`;return i.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,((J=i.config)==null?void 0:J.controlPlaneId)||""):i.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,(te=i.config)!=null&&te.workspace?`/${i.config.workspace}`:"")),O.replace(/{entityType}/gi,((M=i.config)==null?void 0:M.entityType)||"").replace(/{entityId}/gi,((H=i.config)==null?void 0:H.entityId)||"")}),b=t.ref(""),C=t.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:E,fetcherState:k,fetcherCacheKey:T}=ue.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),x=()=>{b.value=""},$=()=>{T.value++},K=t.ref(null),j=O=>{var te,M,H,B;const J=[];return((te=O.route)!=null&&te.id||O.route_id)&&J.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((M=O.service)!=null&&M.id||O.service_id)&&J.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((H=O.consumer)!=null&&H.id||O.consumer_id)&&J.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((B=O.consumer_group)!=null&&B.id||O.consumer_group_id)&&J.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),J.length?J:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},I=async(O,J)=>{var te;return O===null?!1:await((te=i.canRetrieveScopedEntity)==null?void 0:te.call(i,O,J.id))},Q=(O,J)=>{var M,H,B,le,ce;let te=null;switch(O){case"route":te=(M=J.route)==null?void 0:M.id;break;case"service":te=(H=J.service)==null?void 0:H.id;break;case"consumer":te=(B=J.consumer)==null?void 0:B.id;break;case"consumer_group":te=(le=J.consumer_group)==null?void 0:le.id;break}te&&((ce=i.config)!=null&&ce.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(O,te))},A=t.ref(!1),D=t.ref(null),V=t.computed(()=>{const O={action:"disable",id:"",name:""};if(D.value){const{enabled:J,id:te,name:M}=D.value;O.action=J?"disable":"enable",O.id=te,O.name=o.getDisplayName(M)||te}return O}),X=O=>{A.value=!0,D.value=O},Y=()=>{A.value=!1,D.value=null},G=async()=>{var M,H,B,le,ce,se,_e,be;if(!await((M=i.canEdit)==null?void 0:M.call(i,D.value))||!D.value)return;let J=`${i.config.apiBaseUrl}${(ce=Be.item[i.config.app])==null?void 0:ce[(H=i.config)!=null&&H.entityType?"forEntity":"all"].replace(/{entityType}/gi,((B=i.config)==null?void 0:B.entityType)||"").replace(/{entityId}/gi,((le=i.config)==null?void 0:le.entityId)||"")}`.replace(/{id}/gi,D.value.id||"");i.config.app==="konnect"?J=J.replace(/{controlPlaneId}/gi,((se=i.config)==null?void 0:se.controlPlaneId)||""):i.config.app==="kongManager"&&(J=J.replace(/\/{workspace}/gi,(_e=i.config)!=null&&_e.workspace?`/${i.config.workspace}`:""));const te=!D.value.enabled;try{const{data:Ce}=((be=i.config)==null?void 0:be.app)==="konnect"?await s.put(J,{...D.value,enabled:te},{timeout:12e4}):await s.patch(J,{...D.value,enabled:te},{timeout:12e4});r("toggle-enabled",te,Ce),D.value.enabled=te}catch(Ce){r("error",Ce)}},F=async(O,J)=>{const te=O.id;if(!await J(te)){r("copy:error",{entity:O,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:O,field:"id",message:a("copy.success",{val:te})})},R=async(O,J)=>{const te=JSON.stringify(O);if(!await J(te)){r("copy:error",{entity:O,message:a("errors.copy")});return}r("copy:success",{entity:O,message:a("copy.success_brief")})},oe=async O=>{var te;await((te=i.canRetrieve)==null?void 0:te.call(i,O))&&l.push(i.config.getViewRoute(O))},ie=O=>({label:a("actions.view"),to:i.config.getViewRoute(O)}),Z=O=>({label:a("actions.edit"),to:i.config.getEditRoute(O)}),ae=O=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(O)}),q=t.ref(void 0),ee=t.ref(!1),U=t.ref(!1),ne=t.ref(""),re=ue.useDeleteUrlBuilder(i.config,w.value),de=O=>{q.value=O,ee.value=!0},L=()=>{ee.value=!1},W=async()=>{var O,J,te;if((O=q.value)!=null&&O.id){U.value=!0;try{await s.delete(re(q.value.id)),U.value=!1,ee.value=!1,T.value++,r("delete:success",q.value)}catch(M){ne.value=((te=(J=M.response)==null?void 0:J.data)==null?void 0:te.message)||M.message||a("errors.delete"),r("error",M)}finally{U.value=!1}}},N=()=>{l.push(i.config.createRoute)};t.watch(k,O=>{var J,te,M;if(O.status===ue.FetcherStatus.Error){K.value={title:a("errors.general")},(M=(te=(J=O.error)==null?void 0:J.response)==null?void 0:te.data)!=null&&M.message&&(K.value.message=O.error.response.data.message),r("error",O.error);return}K.value=null});const v=t.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 t.onBeforeMount(async()=>{await i.canCreate()&&(v.value.title=a("plugins.list.empty_state.title"),v.value.ctaText=a("actions.create"))}),(O,J)=>{const te=t.resolveComponent("KButton"),M=t.resolveComponent("KBadge"),H=t.resolveComponent("KTruncate"),B=t.resolveComponent("KInputSwitch"),le=t.resolveComponent("KDropdownItem"),ce=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",wV,[t.createVNode(t.unref(ue.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":y.value,"empty-state-options":v.value,"enable-entity-actions":"","error-message":K.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(T),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(_),title:e.title,"title-tag":e.titleTag,onClearSearchInput:x,"onClick:row":J[4]||(J[4]=se=>oe(se)),onSort:$,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ue.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":J[0]||(J[0]=se=>b.value=se),config:C.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",kV,[!u.value&&f.value?(t.openBlock(),t.createBlock(te,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:J[1]||(J[1]=se=>O.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(te,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:se})=>[t.createElementVNode("div",CV,[t.createVNode(t.unref(to.PluginIcon),{class:"plugin-icon",name:se.name,size:24},null,8,["name"]),t.createElementVNode("div",NV,[se.instance_name?(t.openBlock(),t.createElementBlock("span",vV,t.toDisplayString(se.instance_name),1)):(t.openBlock(),t.createElementBlock("span",SV,t.toDisplayString(t.unref(o).getDisplayName(se.name)),1)),se.instance_name?(t.openBlock(),t.createElementBlock("span",xV,t.toDisplayString(t.unref(o).getDisplayName(se.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:se})=>[j(se).length>0?(t.openBlock(),t.createBlock(H,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(j(se),_e=>(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:_e.badgeText,"auth-function":()=>I(_e.type,se),"force-show":""},{default:t.withCtx(({isAllowed:be})=>[t.createVNode(M,{class:t.normalizeClass(be||"disabled"),onClick:t.withModifiers(Ce=>be&&_e.type&&Q(_e.type,se),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_e.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",AV,"-"))]),enabled:t.withCtx(({row:se})=>[t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(se)&&await e.canToggle(se)),"force-show":""},{default:t.withCtx(({isAllowed:_e})=>{var be,Ce;return[t.createElementVNode("div",{onClick:J[3]||(J[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(B,{disabled:!_e,"disabled-tooltip-text":!_e&&((Ce=(be=e.config).getToggleDisabledTooltip)==null?void 0:Ce.call(be,se))||void 0,"model-value":se.enabled,onClick:t.withModifiers(xe=>_e&&X(se),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:se})=>[t.createVNode(M,{appearance:t.unref(tc)(se)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(tc)(se)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:se})=>[t.createVNode(t.unref(ue.TableTags),{tags:se},null,8,["tags"])]),actions:t.withCtx(({row:se})=>[t.createVNode(ce,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(le,{"data-testid":"action-entity-copy-id",onClick:be=>F(se,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(ce,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(le,{"data-testid":"action-entity-copy-json",onClick:be=>R(se,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(se)},{default:t.withCtx(()=>[t.createVNode(le,{"data-testid":"action-entity-view","has-divider":"",item:ie(se)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canEdit(se)},{default:t.withCtx(()=>[t.createVNode(le,{"data-testid":"action-entity-edit",item:Z(se)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(se)},{default:t.withCtx(()=>[ae(se)?(t.openBlock(),t.createBlock(le,{key:0,"data-testid":"action-entity-config-dyn-order",item:ae(se)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canDelete(se)},{default:t.withCtx(()=>[t.createVNode(le,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_e=>de(se)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var se;return[t.createVNode(t.unref(ue.EntityEmptyState),{"action-button-text":t.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:t.unref(a)("plugins.list.empty_state_v2.description"),"learn-more":e.config.app==="konnect",title:t.unref(a)("plugins.list.empty_state_v2.title"),"onClick:create":N,"onClick:learnMore":J[2]||(J[2]=_e=>O.$emit("click:learn-more"))},t.createSlots({image:t.withCtx(()=>[t.createElementVNode("div",EV,[t.createVNode(t.unref(ke.PlugIcon),{color:t.unref(Vw),size:t.unref(Mw)},null,8,["color","size"])])]),_:2},[(se=e.config)!=null&&se.isControlPlaneGroup?{name:"message",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.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"]),t.createVNode(t.unref(ue.EntityToggleModal),{action:V.value.action,"entity-id":V.value.id,"entity-name":V.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":G,visible:A.value,onCancel:Y,onProceed:Y},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ue.EntityDeleteModal),{"action-pending":U.value,description:t.unref(a)("delete.description"),"entity-name":q.value&&(q.value.instance_name||q.value.name||q.value.id),"entity-type":t.unref(ue.EntityTypes).Plugin,error:ne.value,title:t.unref(a)("delete.title"),visible:ee.value,onCancel:L,onProceed:W},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-3f031caf"]]),TV={class:"plugin-select-card-wrapper"},PV=["data-testid"],OV={class:"plugin-card-header"},$V={class:"plugin-card-title"},BV={key:0,class:"plugin-card-actions"},VV=["data-testid","title"],RV={key:0,class:"plugin-card-text"},MV={key:0},DV=["title"],$l=we(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=Qn.useRouter(),{i18n:{t:a}}=$e.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.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=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===z.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},y=(_,w)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(_,w))},g=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;p.value&&_.createCustomRoute?i.push(_.createCustomRoute):m.value&&d()}};return(_,w)=>{const b=t.resolveComponent("KButton"),C=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),k=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",TV,[t.createVNode(k,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:w[1]||(w[1]=T=>s.value||m.value?void 0:f())},[t.createElementVNode("div",OV,[t.createElementVNode("div",$V,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",BV,[t.createVNode(E,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{size:t.unref(Rw)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(C,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(T=>y(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(C,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(h,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[t.createVNode(t.unref(to.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?(t.openBlock(),t.createElementBlock("div",RV,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",MV,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,DV)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,VV),t.createElementVNode("div",{class:"plugin-card-footer",onClick:g},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,PV)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),FV=we(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var h;const o=e,r=n,{i18nT:i,i18n:{t:a}}=$e.useI18n(),{getMessageFromError:l}=ue.useErrors(),{axiosInstance:s}=ue.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var y;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((y=o.plugin)==null?void 0:y.name)||a("delete.custom_plugin")})}),d=t.ref(!1),f=t.ref(""),u=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const y=o.plugin.customPluginType==="streaming"?Be.select[o.config.app].streamingCustomPluginItem:Be.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${y}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var y,g,_,w;if(d.value=!0,f.value="",!(!((y=o.plugin)!=null&&y.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:C}=b;(C==null?void 0:C.status)===400&&((w=(_=C.data)==null?void 0:_.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(y,g)=>{const _=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ue.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(ue.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[0]=b=>y.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(w,{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]=b=>y.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(_,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[1]=b=>y.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),LV={class:"custom-plugins-grid"},UV={class:"empty-state-title"},KV={class:"empty-state-description"},Bl=310,jV=we(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=$e.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=$e.usePluginHelpers(),s=t.ref(!0),c=E=>{r("plugin-clicked",E)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const E=JSON.parse(JSON.stringify(o.pluginList))[z.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:z.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(E):E}),f=t.ref(!1),u=t.ref(null),p=E=>{f.value=!0,u.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var k;E&&(r("revalidate"),r("delete:success",((k=u.value)==null?void 0:k.name)||"")),f.value=!1,u.value=null},h=t.ref(Bl),y=t.ref(null),g=t.ref(null),_=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),w=t.ref(!1),b=()=>{h.value=Math.max(a(g.value),Bl),C()},C=()=>{var E,k;(E=g.value)!=null&&E.length&&(w.value=l(y.value,(k=g.value)==null?void 0:k.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(g.value),Bl),C(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(E,k)=>{const T=t.resolveComponent("KEmptyState"),x=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",LV,[d.value.length?(t.openBlock(),t.createBlock(x,{key:1,modelValue:s.value,"onUpdate:modelValue":k[0]||(k[0]=$=>s.value=$),class:"custom-plugins-collapse","data-testid":`${t.unref(z.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(z.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:t.normalizeStyle(_.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,($,K)=>(t.openBlock(),t.createBlock($l,{key:`plugin-card-${K}`,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:$,onCustomPluginDelete:j=>p($),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[w.value?void 0:{name:"trigger",fn:t.withCtx(()=>[k[2]||(k[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(T,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",UV,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",KV,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(FV,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:k[1]||(k[1]=$=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Vl=310,Zp=we(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const o=t.useModel(e,"modelValue"),r=e,i=n,{i18n:{t:a}}=$e.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=$e.usePluginHelpers(),c=t.ref(Vl),d=t.ref(null),f=t.ref(null),u=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),Vl),h()},h=()=>{var y,g;(y=f.value)!=null&&y.length&&(p.value=s(d.value,(g=f.value)==null?void 0:g.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),Vl),h(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(y,g)=>{const _=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(_,{modelValue:o.value,"onUpdate:modelValue":g[0]||(g[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(u.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock($l,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:b=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[g[1]||(g[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),GV={class:"plugin-select-grid"},qV={class:"empty-state-title"},zV={class:"empty-state-description"},Rl=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=$e.useI18n(),a=t.ref(!1),l=t.ref(Ll),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[z.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",GV,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",qV,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",zV,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(Zp,{key:1,modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=p=>a.value=p),config:e.config,name:o.highlightedPluginsTitle||t.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"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Fl),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Zp,{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"])])):t.createCommentVNode("",!0)],64))),256))])}}}),HV={class:"kong-ui-entities-plugin-select-form"},YV={class:"plugins-filter-input-container"},WV={key:0},XV={key:3,"aria-live":"polite",class:"plugins-results-container"},ZV={"data-testid":"kong-tab"},JV={class:"tab-description"},QV={"data-testid":"custom-tab"},eR={class:"tab-description"},tR=we(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var G;const o=e,r=n,i=Qn.useRoute(),a=Qn.useRouter(),{i18n:{t:l}}=$e.useI18n(),{pluginMetaData:s}=$e.usePluginMetaData(),{getMessageFromError:c}=ue.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ue.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),y=t.ref([]),g=t.ref([]),_=t.ref({}),w=t.ref([]),{axiosInstance:b}=ue.useAxios((G=o.config)==null?void 0:G.axiosRequestConfig),C=t.computed(()=>_.value?Object.entries(_.value).filter(([F])=>F!==z.PluginGroup.CUSTOM_PLUGINS).reduce((F,[,R])=>{for(const oe of R)F[oe.id]=oe;return F},{}):{}),E=t.computed(()=>{var oe;if(!_.value)return{};const F=u.value.toLowerCase(),R=JSON.parse(JSON.stringify(_.value));for(const ie in _.value){const Z=((oe=_.value[ie])==null?void 0:oe.filter(ae=>ae.name.toLowerCase().includes(F)||ae.id.toLowerCase().includes(F)||ae.group.toLowerCase().includes(F)))||[];Z.length?R[ie]=Z:delete R[ie]}return R}),k=t.computed(()=>o.highlightedPluginIds.reduce((F,R)=>{const oe=C.value[R];return oe&&F.push(oe),F},[])),T=t.computed(()=>Object.keys(E.value).length>0),x=t.computed(()=>Object.keys(_.value).length>0&&!T.value),$=t.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)}]:[]),K=t.computed(()=>{var R;let F=$.value.length&&((i==null?void 0:i.hash)||((R=$.value[0])==null?void 0:R.hash))||"";return F==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(F="#kong"),F}),j=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...y.value])].filter(F=>!o.ignoredPlugins.includes(F)).filter(F=>o.config.entityType&&(o.config.entityType==="services"&&s[F]&&!s[F].scope.includes(z.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[F]&&!s[F].scope.includes(z.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[F]&&!s[F].scope.includes(z.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[F]&&!s[F].scope.includes(z.PluginScope.CONSUMER))?!1:F).reduce((F,R)=>{var q;const oe=s[R]&&s[R].name||R,ie={...s[R],id:R,name:oe,available:y.value.includes(R),disabledMessage:"",group:((q=s[R])==null?void 0:q.group)||z.PluginGroup.CUSTOM_PLUGINS};ie.group===z.PluginGroup.CUSTOM_PLUGINS&&(ie.customPluginType=g.value.find(ee=>ee.name===R)?"streaming":"schema"),o.disabledPlugins&&(ie.disabledMessage=o.disabledPlugins[R]);const Z=ie.group||l("plugins.select.misc_plugins");let ae=F[Z];return ae||(ae=[]),ae.push(ie),ae.sort(d("name")),F[Z]=ae,F},{}),I=t.computed(()=>{var R;let F=`${o.config.apiBaseUrl}${Be.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?F=F.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(F=((R=o.config.gatewayInfo)==null?void 0:R.edition)==="community"?`${o.config.apiBaseUrl}${Be.select[o.config.app].availablePluginsForOss}`:F.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),F}),Q=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let F=`${o.config.apiBaseUrl}${Be.select[o.config.app].streamingCustomPlugins}`;return F=F.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),F}return null}),A=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let F=`${o.config.apiBaseUrl}${Be.list[o.config.app].forEntity}`;return o.config.app==="konnect"?F=F.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(F=F.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),F.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),D=F=>{a.replace({hash:F,query:i.query})};t.watch(()=>o.disabledPlugins,(F,R)=>{!f(F,R)&&!p.value&&(_.value=j())}),t.watch(()=>o.ignoredPlugins,(F,R)=>{!f(F,R)&&!p.value&&(_.value=j())}),t.watch(p,F=>{r("loading",F)});const V=t.ref(!1),X=t.ref(!1),Y=t.ref(!1);return t.onBeforeMount(async()=>{V.value=await o.canCreateCustomPlugin(),X.value=await o.canEditCustomPlugin(),Y.value=await o.canDeleteCustomPlugin()}),t.onMounted(async()=>{try{const{data:F}=await b.get(I.value);if(o.config.app==="konnect"){const{names:R}=F;if(y.value=R||[],Q.value){const{data:oe}=await b.get(Q.value);g.value=oe.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:R}}=F;y.value=R?Object.keys(R):[]}}catch(F){m.value=!0,h.value=c(F)}if(A.value)try{const{data:{data:F}}=await b.get(A.value);if(F!=null&&F.length){const R=F.reduce((oe,ie)=>(ie.name&&oe.push(ie.name),oe),[]);w.value=w.value.concat(R)}}catch{}m.value||(_.value=j()),p.value=!1}),(F,R)=>{const oe=t.resolveComponent("KInput"),ie=t.resolveComponent("KSkeletonBox"),Z=t.resolveComponent("KSkeleton"),ae=t.resolveComponent("KEmptyState"),q=t.resolveComponent("KTooltip"),ee=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",HV,[t.createElementVNode("div",YV,[t.createVNode(oe,{modelValue:u.value,"onUpdate:modelValue":R[0]||(R[0]=U=>u.value=U),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(t.openBlock(),t.createElementBlock("section",WV,[t.createVNode(ie,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(Z,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(ae,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(h.value),1)]),_:1})):x.value&&u.value?(t.openBlock(),t.createBlock(ae,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(l)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",XV,[$.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(ee,{key:0,modelValue:K.value,"onUpdate:modelValue":R[5]||(R[5]=U=>K.value=U),"data-testid":"plugins-tabs",tabs:$.value,onChange:D},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",ZV,[t.createElementVNode("p",JV,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Rl,{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":E.value,onPluginClicked:R[1]||(R[1]=U=>F.$emit("plugin-clicked",U))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",QV,[t.createElementVNode("p",eR,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(jV,{"can-create-custom-plugin":V.value,"can-delete-custom-plugin":Y.value,"can-edit-custom-plugin":X.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":R[2]||(R[2]=U=>F.$emit("delete-custom:success",U)),onPluginClicked:R[3]||(R[3]=U=>F.$emit("plugin-clicked",U)),onRevalidate:R[4]||(R[4]=()=>_.value=j())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(q,{"max-width":"300",text:t.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(Rl,{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":E.value,onPluginClicked:R[6]||(R[6]=U=>F.$emit("plugin-clicked",U))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-c18b2b5c"]]),nR={class:"kong-ui-entity-plugin-config-card"},oR={class:"name-cell-wrapper"},rR={class:"info-name"},iR={key:0},aR={key:0},lR={key:0},sR={key:0},cR={key:0},Ml="config",dR=we(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var w;const o=n,r=e,{i18n:{t:i}}=$e.useI18n(),a=$e.usePluginMetaData(),{setFieldType:l}=$e.usePluginHelpers(),{getPropValue:s}=ue.useHelpers(),c=t.computed(()=>{var b;return(b=Be.item[r.config.app])==null?void 0:b[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"")}),d=t.computed(()=>{var E,k;const b={},C=((E=y.value)==null?void 0:E.fields)||[];for(let T=0;T<C.length;T++){const x=y.value.fields[T],$=(k=Object.keys(x))==null?void 0:k[0];l(b,$,x[$])}return{...b,instance_name:{section:ue.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ue.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ue.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ue.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ue.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ue.ConfigurationSchemaType.BadgeTag,section:ue.ConfigurationSchemaSection.Basic,order:7}}}),f=t.computed(()=>{var C,E,k;if(!((C=y.value)!=null&&C.fields))return[];const b=(E=y.value.fields)==null?void 0:E.find(T=>{var $;return(($=Object.keys(T))==null?void 0:$[0])===Ml});return((k=b==null?void 0:b[Ml])==null?void 0:k.fields)||[]}),u=t.computed(()=>{var C,E;const b={};if(!f.value)return b;for(let k=0;k<((C=f.value)==null?void 0:C.length);k++){const T=f.value[k],x=(E=Object.keys(T))==null?void 0:E[0],$=T[x];$.required&&(b[x]={order:1}),l(b,x,$)}return b}),{getMessageFromError:p}=ue.useErrors(),{axiosInstance:m}=ue.useAxios((w=r.config)==null?void 0:w.axiosRequestConfig),h=t.computed(()=>{var C,E;let b=`${r.config.apiBaseUrl}${Be.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?b=b.replace(/{controlPlaneId}/gi,((C=r.config)==null?void 0:C.controlPlaneId)||""):r.config.app==="kongManager"&&(b=b.replace(/\/{workspace}/gi,(E=r.config)!=null&&E.workspace?`/${r.config.workspace}`:"")),b=b.replace(/{plugin}/gi,r.config.pluginType),b}),y=t.ref({});ue.useSchemaProvider(y);const g=t.ref(!1),_=t.ref("");return t.onBeforeMount(async()=>{g.value=!0;try{const{data:b}=await m.get(h.value);y.value=b}catch(b){_.value=p(b),o("error:fetch-schema",b)}finally{g.value=!1}}),(b,C)=>{const E=t.resolveComponent("KSkeleton"),k=t.resolveComponent("KEmptyState"),T=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",nR,[g.value?(t.openBlock(),t.createBlock(E,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):_.value?(t.openBlock(),t.createBlock(k,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(_.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ue.EntityBaseConfigCard),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":Ml,"plugin-config-schema":u.value,"onFetch:error":C[0]||(C[0]=x=>b.$emit("fetch:error",x)),"onFetch:success":C[1]||(C[1]=x=>b.$emit("fetch:success",x)),onLoading:C[2]||(C[2]=x=>b.$emit("loading",x))},{name:t.withCtx(x=>[t.createElementVNode("div",oR,[t.createVNode(t.unref(to.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",x),size:24},null,8,["name"]),t.createElementVNode("span",rR,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",x))),1)])]),consumer:t.withCtx(x=>[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",x).id,value:t.unref(s)("rowValue",x).id,type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>b.$emit("navigation-click",t.unref(s)("rowValue",x).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",x).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",iR,"–"))]),route:t.withCtx(x=>[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",x).id,value:t.unref(s)("rowValue",x).id,type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>b.$emit("navigation-click",t.unref(s)("rowValue",x).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",x).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",aR,"–"))]),service:t.withCtx(x=>[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",x).id,value:t.unref(s)("rowValue",x).id,type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>b.$emit("navigation-click",t.unref(s)("rowValue",x).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",x).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",lR,"–"))]),consumer_group:t.withCtx(x=>[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",x).id,value:t.unref(s)("rowValue",x).id,type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>b.$emit("navigation-click",t.unref(s)("rowValue",x).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",x).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",sR,"–"))]),partials:t.withCtx(x=>{var $,K,j,I,Q,A,D,V,X;return[t.unref(s)("rowValue",x)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:(K=($=t.unref(s)("rowValue",x))==null?void 0:$[0])==null?void 0:K.id,value:((I=(j=t.unref(s)("rowValue",x))==null?void 0:j[0])==null?void 0:I.id)+((A=(Q=t.unref(s)("rowValue",x))==null?void 0:Q[0])!=null&&A.name?"/"+((V=(D=t.unref(s)("rowValue",x))==null?void 0:D[0])==null?void 0:V.name):""),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var Y,G;return b.$emit("navigation-click",(G=(Y=t.unref(s)("rowValue",x))==null?void 0:Y[0])==null?void 0:G.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(T,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",x).label}),"data-testid":"partial-copy-uuid",text:(X=t.unref(s)("rowValue",x))==null?void 0:X[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",cR,"–"))]}),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-53806ec8"]]),{usePluginMetaData:uR,useProvideExperimentalFreeForms:fR}=$e;Object.defineProperty(he,"PluginGroup",{enumerable:!0,get:()=>z.PluginGroup}),Object.defineProperty(he,"PluginScope",{enumerable:!0,get:()=>z.PluginScope}),Object.defineProperty(he,"PluginIcon",{enumerable:!0,get:()=>to.PluginIcon}),Object.defineProperty(he,"getPluginIconURL",{enumerable:!0,get:()=>to.getPluginIconURL}),he.EXPERIMENTAL_FREE_FORM_PROVIDER=Xi,he.EntityTypeIdField=Zt,he.FEATURE_FLAGS=lc,he.PLUGIN_GROUPS_COLLAPSE_STATUS=Ll,he.PluginConfigCard=dR,he.PluginForm=bV,he.PluginGroupArray=Fl,he.PluginList=IV,he.PluginPartialType=Jo,he.PluginSelect=tR,he.PluginSelectCard=$l,he.PluginSelectGrid=Rl,he.TOASTER_PROVIDER=sc,he.pluginEndpoints=Be,he.usePluginMetaData=uR,he.useProvideExperimentalFreeForms=fR,Object.defineProperty(he,Symbol.toStringTag,{value:"Module"})});