@kong-ui-public/entities-plugins 9.112.3 → 9.112.5

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,23 +1,23 @@
1
- (function(Ae,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("@vueuse/core"),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("@shikijs/core"),require("@shikijs/engine-javascript"),require("zod"),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","@vueuse/core","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@shikijs/core","@shikijs/engine-javascript","zod","@kong-ui-public/entities-plugins-icon"],t):(Ae=typeof globalThis<"u"?globalThis:Ae||self,t(Ae["kong-ui-public-entities-plugins"]={},Ae.Vue,Ae["kong-ui-public-entities-shared"],Ae.marked,Ae.VueRouter,Ae["kong-ui-public-i18n"],Ae.entitiesPluginsMetadata,Ae.forms,Ae.entitiesVaults,null,Ae.core$1,Ae.KongIcons,Ae.Kongponents,Ae.entitiesRedisConfigurations,null,Ae.monaco,Ae.core$2,Ae.engineJavascript,Ae.zod,Ae.entitiesPluginsIcon))})(this,function(Ae,t,ye,Ir,no,Xe,H,De,Vo,R2,qe,xe,Pe,oo,D2,pg,Bs,mg,W,Ro){"use strict";var B2=Object.defineProperty;var V2=(Ae,t,ye)=>t in Ae?B2(Ae,t,{enumerable:!0,configurable:!0,writable:!0,value:ye}):Ae[t]=ye;var rt=(Ae,t,ye)=>V2(Ae,typeof t!="symbol"?t+"":t,ye);function gg(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 Tr=gg(pg),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.",learn_more:"Learn more"}},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."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."}},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:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",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",placeholder:"Search by name or UUID",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Select a route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Select a 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:"Set the plugin's behavior by defining its configuration settings."}}},"free-form":{"ai-mcp-proxy":{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",disabled_tooltip:"The flow editor is unavailable. To switch, fix configuration errors or remove unsupported nodes.",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"},cache:{title:"Cache configuration",add_button:"Add cache configuration",strategy_options:{memory:"Memory",redis:"Redis"},select_redis_configuration:"Select a shared Redis configuration",inline_config:"Inline config",inline_config_preview:"You are using a dedicated Redis configuration, This is a preview of your current setup, please edit it in code editor"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",remove_from_branch:"Remove from branch",delete:"Delete",view_docs:"View docs",done:"Done"},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 <code>jq</code> 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 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-specific data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Configure static input values ahead of time",description:"Emits static values to be used as inputs for other nodes. The <code>static</code> node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Execute nodes based on matching input conditions",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Store and fetch cached data",description:"Store data into cache and fetch cached data from cache."},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."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},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",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved.",phase_mask_help:"You can't add call nodes in the response phase."},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",foreign_placeholder:"Enter a UUID of {entity}"}},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(Ae,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("@vueuse/core"),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("@shikijs/core"),require("@shikijs/engine-javascript"),require("zod"),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","@vueuse/core","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@shikijs/core","@shikijs/engine-javascript","zod","@kong-ui-public/entities-plugins-icon"],t):(Ae=typeof globalThis<"u"?globalThis:Ae||self,t(Ae["kong-ui-public-entities-plugins"]={},Ae.Vue,Ae["kong-ui-public-entities-shared"],Ae.marked,Ae.VueRouter,Ae["kong-ui-public-i18n"],Ae.entitiesPluginsMetadata,Ae.forms,Ae.entitiesVaults,null,Ae.core$1,Ae.KongIcons,Ae.Kongponents,Ae.entitiesRedisConfigurations,null,Ae.monaco,Ae.core$2,Ae.engineJavascript,Ae.zod,Ae.entitiesPluginsIcon))})(this,function(Ae,t,ye,Ir,no,Xe,H,De,Vo,R2,qe,xe,Te,oo,D2,pg,Bs,mg,W,Ro){"use strict";var B2=Object.defineProperty;var V2=(Ae,t,ye)=>t in Ae?B2(Ae,t,{enumerable:!0,configurable:!0,writable:!0,value:ye}):Ae[t]=ye;var rt=(Ae,t,ye)=>V2(Ae,typeof t!="symbol"?t+"":t,ye);function gg(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 Pr=gg(pg),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.",learn_more:"Learn more"}},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."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."}},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:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",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",placeholder:"Search by name or UUID",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Select a route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Select a 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:"Set the plugin's behavior by defining its configuration settings."}}},"free-form":{"ai-mcp-proxy":{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",disabled_tooltip:"The flow editor is unavailable. To switch, fix configuration errors or remove unsupported nodes.",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"},cache:{title:"Cache configuration",add_button:"Add cache configuration",strategy_options:{memory:"Memory",redis:"Redis"},select_redis_configuration:"Select a shared Redis configuration",inline_config:"Inline config",inline_config_preview:"You are using a dedicated Redis configuration, This is a preview of your current setup, please edit it in code editor"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",remove_from_branch:"Remove from branch",delete:"Delete",view_docs:"View docs",done:"Done"},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 <code>jq</code> 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 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-specific data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Configure static input values ahead of time",description:"Emits static values to be used as inputs for other nodes. The <code>static</code> node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Execute nodes based on matching input conditions",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Store and fetch cached data",description:"Store data into cache and fetch cached data from cache."},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."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},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",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved.",phase_mask_help:"You can't add call nodes in the response phase."},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",foreign_placeholder:"Enter a UUID of {entity}"}},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 Be(){const e=Xe.createI18n("en-us",Je);return{i18n:e,i18nT:Xe.i18nTComponent(e)}}function Vs(){const{capitalize:e}=ye.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var h,_,y;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:ye.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:ye.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:ye.ConfigurationSchemaType.Text,...u[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(u[p]={type:ye.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:ye.ConfigurationSchemaType.BadgeMethod,...u[p]}:((_=m.elements)==null?void 0:_.type)==="string"?m.encrypted?u[p]={type:ye.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:ye.ConfigurationSchemaType.BadgeTag,...u[p]}:((y=m.elements)==null?void 0:y.type)==="record"&&(u[p]={type:ye.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:ye.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:ye.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]||(_[y]=isNaN(h[g+1])?h.length-1===g?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",h=!1)=>{const _=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(y=>{y.match(_)&&delete u[y]}):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 _=(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>_}return!0}}}var Pr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Pr||{});const Rs=[H.PluginGroup.AUTHENTICATION,H.PluginGroup.AI,H.PluginGroup.SECURITY,H.PluginGroup.TRAFFIC_CONTROL,H.PluginGroup.SERVERLESS,H.PluginGroup.ANALYTICS_AND_MONITORING,H.PluginGroup.TRANSFORMATIONS,H.PluginGroup.LOGGING,H.PluginGroup.DEPLOYMENT,H.PluginGroup.WEBSOCKET,H.PluginGroup.CUSTOM_PLUGINS],Ds={[H.PluginGroup.AUTHENTICATION]:!1,[H.PluginGroup.AI]:!1,[H.PluginGroup.SECURITY]:!1,[H.PluginGroup.TRAFFIC_CONTROL]:!1,[H.PluginGroup.SERVERLESS]:!1,[H.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[H.PluginGroup.TRANSFORMATIONS]:!1,[H.PluginGroup.LOGGING]:!1,[H.PluginGroup.DEPLOYMENT]:!1,[H.PluginGroup.CUSTOM_PLUGINS]:!1};var An=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(An||{});const In=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Tn={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"},ro={getColumnFields:In,tags:Tn,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}}}},Ms={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Tn}]},hg={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"}}]},Ls={fields:[{username:{}},{password:{inputType:"password"}},{tags:Tn}]},yg={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"}}]},_g={class:"field-wrapper"},bg=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}=De.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=Fe.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(De.FORMS_CONFIG),{axiosInstance:u}=ye.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]),_=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 S=await u.get(w);S&&S.data&&S.data.data&&b.push(...S.data.data.map(E=>({value:E.id,label:E.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),w=S.data.meta.next?`${f==null?void 0:f.apiBaseUrl}${S.data.meta.next}`:null}while(w);h.value=[d,...b]}catch(w){console.error("Failed to fetch Konnect realms",w)}finally{m.value=!1}},y=t.computed(()=>l.value.map(w=>w.id||"current-cp")),g=w=>{const b=w.includes("current-cp")?[{scope:"cp",id:null}]:[],S=l.value.filter(({scope:v})=>v!=="cp").map(({id:v})=>v),E=w.filter(v=>v!=="current-cp"),x=(S.length!==E.length||S.some(v=>!E.includes(v))?E.filter(v=>!S.includes(v)):E).map(v=>({...p(),scope:"realm",id:v}));l.value=[...b,...x]};return t.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),t.onMounted(()=>{_()}),n({clearValidationErrors:a}),(w,b)=>{const S=t.resolveComponent("KMultiselect");return t.openBlock(),t.createElementBlock("div",_g,[t.createVNode(S,{items:h.value,loading:m.value,"model-value":y.value,"onUpdate:modelValue":g},null,8,["items","loading","model-value"])])}}}),ve=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},wg=ve(bg,[["__scopeId","data-v-29b128ff"]]),Fs={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
4
- client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Tn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},kg=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(wg):null}}},Cg={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",encrypted:!0,unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Us={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
3
+ will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function Be(){const e=Xe.createI18n("en-us",Je);return{i18n:e,i18nT:Xe.i18nTComponent(e)}}function Vs(){const{capitalize:e}=ye.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var h,_,y;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:ye.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:ye.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:ye.ConfigurationSchemaType.Text,...u[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(u[p]={type:ye.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:ye.ConfigurationSchemaType.BadgeMethod,...u[p]}:((_=m.elements)==null?void 0:_.type)==="string"?m.encrypted?u[p]={type:ye.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:ye.ConfigurationSchemaType.BadgeTag,...u[p]}:((y=m.elements)==null?void 0:y.type)==="record"&&(u[p]={type:ye.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:ye.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:ye.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]||(_[y]=isNaN(h[g+1])?h.length-1===g?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",h=!1)=>{const _=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(y=>{y.match(_)&&delete u[y]}):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 _=(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>_}return!0}}}var Tr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Tr||{});const Rs=[H.PluginGroup.AUTHENTICATION,H.PluginGroup.AI,H.PluginGroup.SECURITY,H.PluginGroup.TRAFFIC_CONTROL,H.PluginGroup.SERVERLESS,H.PluginGroup.ANALYTICS_AND_MONITORING,H.PluginGroup.TRANSFORMATIONS,H.PluginGroup.LOGGING,H.PluginGroup.DEPLOYMENT,H.PluginGroup.WEBSOCKET,H.PluginGroup.CUSTOM_PLUGINS],Ds={[H.PluginGroup.AUTHENTICATION]:!1,[H.PluginGroup.AI]:!1,[H.PluginGroup.SECURITY]:!1,[H.PluginGroup.TRAFFIC_CONTROL]:!1,[H.PluginGroup.SERVERLESS]:!1,[H.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[H.PluginGroup.TRANSFORMATIONS]:!1,[H.PluginGroup.LOGGING]:!1,[H.PluginGroup.DEPLOYMENT]:!1,[H.PluginGroup.CUSTOM_PLUGINS]:!1};var An=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(An||{});const In=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Pn={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"},ro={getColumnFields:In,tags:Pn,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}}}},Ms={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Pn}]},hg={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"}}]},Ls={fields:[{username:{}},{password:{inputType:"password"}},{tags:Pn}]},yg={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"}}]},_g={class:"field-wrapper"},bg=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}=De.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=Fe.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(De.FORMS_CONFIG),{axiosInstance:u}=ye.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]),_=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 S=await u.get(w);S&&S.data&&S.data.data&&b.push(...S.data.data.map(E=>({value:E.id,label:E.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),w=S.data.meta.next?`${f==null?void 0:f.apiBaseUrl}${S.data.meta.next}`:null}while(w);h.value=[d,...b]}catch(w){console.error("Failed to fetch Konnect realms",w)}finally{m.value=!1}},y=t.computed(()=>l.value.map(w=>w.id||"current-cp")),g=w=>{const b=w.includes("current-cp")?[{scope:"cp",id:null}]:[],S=l.value.filter(({scope:v})=>v!=="cp").map(({id:v})=>v),E=w.filter(v=>v!=="current-cp"),x=(S.length!==E.length||S.some(v=>!E.includes(v))?E.filter(v=>!S.includes(v)):E).map(v=>({...p(),scope:"realm",id:v}));l.value=[...b,...x]};return t.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),t.onMounted(()=>{_()}),n({clearValidationErrors:a}),(w,b)=>{const S=t.resolveComponent("KMultiselect");return t.openBlock(),t.createElementBlock("div",_g,[t.createVNode(S,{items:h.value,loading:m.value,"model-value":y.value,"onUpdate:modelValue":g},null,8,["items","loading","model-value"])])}}}),ve=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},wg=ve(bg,[["__scopeId","data-v-29b128ff"]]),Fs={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
4
+ client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Pn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},kg=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(wg):null}}},Cg={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",encrypted:!0,unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Us={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
5
5
  if this parameter isn’t provided, Kong will generate a value for you and
6
- send it as part of the response body.`}},{tags:Tn}]},Eg={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",encrypted:!0,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"}}]},Ng={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
6
+ send it as part of the response body.`}},{tags:Pn}]},Eg={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",encrypted:!0,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"}}]},Ng={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
7
7
  be auto-generated.`}},{algorithm:{order:1,hint:"The algorithm used to verify the token’s signature."}},{rsa_public_key:{order:2,type:"textArea",label:"RSA public-key",hint:`If algorithm is RSA or ECDSA, the public key (in PEM format) to
8
8
  use to verify the token’s signature.`,rows:10,visible:e=>e&&e.algorithm&&/^((RS|PS|ES)(256|384|512)|EdDSA)$/.test(e.algorithm)}},{secret:{inputType:"text",hint:`If algorithm is HMAC, the secret used to sign JWTs for
9
- this credential. If left out, will be auto-generated.`}},{tags:Tn}]},xg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",encrypted:!0,unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string",encrypted:!0}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ks={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
9
+ this credential. If left out, will be auto-generated.`}},{tags:Pn}]},xg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",encrypted:!0,unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string",encrypted:!0}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ks={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
10
10
  will be generated for you.`,inputType:"text",encrypted:!0}},{client_secret:{submitWhenNull:!1,hint:`You can optionally set your own unique client_secret. If missing,
11
11
  it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:ro.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:ro.tags}]},Sg={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"]}}]},js={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:Tn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},vg=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)}}:{},Ag={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 (in seconds) value for data",type:"number"}}]},Gt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",nameKey:"plugins.meta.ldap-auth-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",nameKey:"plugins.meta.rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",nameKey:"plugins.meta.tls-metadata-headers.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",nameKey:"plugins.meta.tls-handshake-modifier.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-log"]},"ai-llm-as-judge":{descriptionKey:"plugins.meta.ai-llm-as-judge.description",nameKey:"plugins.meta.ai-llm-as-judge.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-llm-as-judge"]},"ai-mcp-proxy":{descriptionKey:"plugins.meta.ai-mcp-proxy.description",nameKey:"plugins.meta.ai-mcp-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-proxy"]},"ai-gcp-model-armor":{descriptionKey:"plugins.meta.ai-gcp-model-armor.description",nameKey:"plugins.meta.ai-gcp-model-armor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-gcp-model-armor"]},"ai-mcp-oauth2":{descriptionKey:"plugins.meta.ai-mcp-oauth2.description",nameKey:"plugins.meta.ai-mcp-oauth2.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-oauth2"]},"ai-semantic-response-guard":{descriptionKey:"plugins.meta.ai-semantic-response-guard.description",nameKey:"plugins.meta.ai-semantic-response-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]}},io={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ms,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:In(Ms),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Ls,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:In(Ls)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Fs,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:In(Fs)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:js,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:In(js)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Ks,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:In(Ks)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Us,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:In(Us)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Ng,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Ig={acls:hg,basicauth_credentials:yg,keyauth_credentials:Cg,keyauth_enc_credentials:Ag,oauth2_credentials:Sg,hmacauth_credentials:Eg,jwt_secrets:xg},Tg=()=>{const{i18n:{t:e}}=Be(),n={},o={};for(const[i,a]of Object.entries(Gt))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(io))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:io,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},Do={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Pg={"config-prompts-prepend":{...Do,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":{...Do,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"}]}}}},Og={"config-templates":{...Do,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"}]}}}},$g={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)}},Bg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Vg={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:ro.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"}},Ve={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"},Or={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Rg={"config-metrics":{...Or,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"}]}}}},Dg={"config-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Mg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Lg={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Fg={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Ug={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Kg={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Gs=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:ro.fields.arrayItems({newElementButtonLabel:"Add"})}),Kg),$r={"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"}},jg={"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":{}},Gg=["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]:ro.fields.arrayItems({newElementButtonLabel:"Add"})}),jg),qs={"config-add-json":{...Ve,label:"Config.Add.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Ve,label:"Config.Append.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Ve,label:"Config.Remove.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Ve,label:"Config.Rename.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Ve,label:"Config.Replace.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},qg={...qs,"config-allow-json":{...Ve,label:"Config.Allow.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Ve,label:"Config.Transform.Functions",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Ve,label:"Config.Transform.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},zg={"config-rules":{...Do,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"}]}}}},Hg={"config-session_redis_cluster_nodes":{...Do,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"}]}}}},Yg={"config-flow-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Wg={"config-message-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Xg={"config-metrics":{...Or,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"]}]}}}},Zg={"config-metrics":{...Or,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"]}]}}}},Jg={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Qg={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var zs=typeof global=="object"&&global&&global.Object===Object&&global,eh=typeof self=="object"&&self&&self.Object===Object&&self,qt=zs||eh||Function("return this")(),Pt=qt.Symbol,Hs=Object.prototype,th=Hs.hasOwnProperty,nh=Hs.toString,Mo=Pt?Pt.toStringTag:void 0;function oh(e){var n=th.call(e,Mo),o=e[Mo];try{e[Mo]=void 0;var r=!0}catch{}var i=nh.call(e);return r&&(n?e[Mo]=o:delete e[Mo]),i}var rh=Object.prototype,ih=rh.toString;function ah(e){return ih.call(e)}var lh="[object Null]",sh="[object Undefined]",Ys=Pt?Pt.toStringTag:void 0;function Pn(e){return e==null?e===void 0?sh:lh:Ys&&Ys in Object(e)?oh(e):ah(e)}function tn(e){return e!=null&&typeof e=="object"}var ch="[object Symbol]";function ca(e){return typeof e=="symbol"||tn(e)&&Pn(e)==ch}function Ws(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 Dt=Array.isArray,Xs=Pt?Pt.prototype:void 0,Zs=Xs?Xs.toString:void 0;function Js(e){if(typeof e=="string")return e;if(Dt(e))return Ws(e,Js)+"";if(ca(e))return Zs?Zs.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function On(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function dh(e){return e}var uh="[object AsyncFunction]",fh="[object Function]",ph="[object GeneratorFunction]",mh="[object Proxy]";function Br(e){if(!On(e))return!1;var n=Pn(e);return n==fh||n==ph||n==uh||n==mh}var da=qt["__core-js_shared__"],Qs=function(){var e=/[^.]+$/.exec(da&&da.keys&&da.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function gh(e){return!!Qs&&Qs in e}var hh=Function.prototype,yh=hh.toString;function $n(e){if(e!=null){try{return yh.call(e)}catch{}try{return e+""}catch{}}return""}var _h=/[\\^$.*+?()[\]{}|]/g,bh=/^\[object .+?Constructor\]$/,wh=Function.prototype,kh=Object.prototype,Ch=wh.toString,Eh=kh.hasOwnProperty,Nh=RegExp("^"+Ch.call(Eh).replace(_h,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function xh(e){if(!On(e)||gh(e))return!1;var n=Br(e)?Nh:bh;return n.test($n(e))}function Sh(e,n){return e==null?void 0:e[n]}function Bn(e,n){var o=Sh(e,n);return xh(o)?o:void 0}var ua=Bn(qt,"WeakMap"),ec=Object.create,vh=function(){function e(){}return function(n){if(!On(n))return{};if(ec)return ec(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function Ah(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 Ih(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var Th=800,Ph=16,Oh=Date.now;function $h(e){var n=0,o=0;return function(){var r=Oh(),i=Ph-(r-o);if(o=r,i>0){if(++n>=Th)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function Bh(e){return function(){return e}}var Vr=function(){try{var e=Bn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Vh=Vr?function(e,n){return Vr(e,"toString",{configurable:!0,enumerable:!1,value:Bh(n),writable:!0})}:dh,Rh=$h(Vh);function Dh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var Mh=9007199254740991,Lh=/^(?:0|[1-9]\d*)$/;function fa(e,n){var o=typeof e;return n=n??Mh,!!n&&(o=="number"||o!="symbol"&&Lh.test(e))&&e>-1&&e%1==0&&e<n}function tc(e,n,o){n=="__proto__"&&Vr?Vr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function pa(e,n){return e===n||e!==e&&n!==n}var Fh=Object.prototype,Uh=Fh.hasOwnProperty;function ma(e,n,o){var r=e[n];(!(Uh.call(e,n)&&pa(r,o))||o===void 0&&!(n in e))&&tc(e,n,o)}function Lo(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?tc(o,s,c):ma(o,s,c)}return o}var nc=Math.max;function Kh(e,n,o){return n=nc(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=nc(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),Ah(e,this,s)}}var jh=9007199254740991;function ga(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=jh}function ha(e){return e!=null&&ga(e.length)&&!Br(e)}var Gh=Object.prototype;function Rr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||Gh;return e===o}function qh(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var zh="[object Arguments]";function oc(e){return tn(e)&&Pn(e)==zh}var rc=Object.prototype,Hh=rc.hasOwnProperty,Yh=rc.propertyIsEnumerable,Dr=oc(function(){return arguments}())?oc:function(e){return tn(e)&&Hh.call(e,"callee")&&!Yh.call(e,"callee")};function Wh(){return!1}var ic=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,ac=ic&&typeof module=="object"&&module&&!module.nodeType&&module,Xh=ac&&ac.exports===ic,lc=Xh?qt.Buffer:void 0,Zh=lc?lc.isBuffer:void 0,Fo=Zh||Wh,Jh="[object Arguments]",Qh="[object Array]",ey="[object Boolean]",ty="[object Date]",ny="[object Error]",oy="[object Function]",ry="[object Map]",iy="[object Number]",ay="[object Object]",ly="[object RegExp]",sy="[object Set]",cy="[object String]",dy="[object WeakMap]",uy="[object ArrayBuffer]",fy="[object DataView]",py="[object Float32Array]",my="[object Float64Array]",gy="[object Int8Array]",hy="[object Int16Array]",yy="[object Int32Array]",_y="[object Uint8Array]",by="[object Uint8ClampedArray]",wy="[object Uint16Array]",ky="[object Uint32Array]",ze={};ze[py]=ze[my]=ze[gy]=ze[hy]=ze[yy]=ze[_y]=ze[by]=ze[wy]=ze[ky]=!0,ze[Jh]=ze[Qh]=ze[uy]=ze[ey]=ze[fy]=ze[ty]=ze[ny]=ze[oy]=ze[ry]=ze[iy]=ze[ay]=ze[ly]=ze[sy]=ze[cy]=ze[dy]=!1;function Cy(e){return tn(e)&&ga(e.length)&&!!ze[Pn(e)]}function ya(e){return function(n){return e(n)}}var sc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,Uo=sc&&typeof module=="object"&&module&&!module.nodeType&&module,Ey=Uo&&Uo.exports===sc,_a=Ey&&zs.process,ao=function(){try{var e=Uo&&Uo.require&&Uo.require("util").types;return e||_a&&_a.binding&&_a.binding("util")}catch{}}(),cc=ao&&ao.isTypedArray,ba=cc?ya(cc):Cy,Ny=Object.prototype,xy=Ny.hasOwnProperty;function dc(e,n){var o=Dt(e),r=!o&&Dr(e),i=!o&&!r&&Fo(e),a=!o&&!r&&!i&&ba(e),l=o||r||i||a,s=l?qh(e.length,String):[],c=s.length;for(var d in e)(n||xy.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||fa(d,c)))&&s.push(d);return s}function uc(e,n){return function(o){return e(n(o))}}var Sy=uc(Object.keys,Object),vy=Object.prototype,Ay=vy.hasOwnProperty;function fc(e){if(!Rr(e))return Sy(e);var n=[];for(var o in Object(e))Ay.call(e,o)&&o!="constructor"&&n.push(o);return n}function wa(e){return ha(e)?dc(e):fc(e)}function Iy(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var Ty=Object.prototype,Py=Ty.hasOwnProperty;function Oy(e){if(!On(e))return Iy(e);var n=Rr(e),o=[];for(var r in e)r=="constructor"&&(n||!Py.call(e,r))||o.push(r);return o}function ka(e){return ha(e)?dc(e,!0):Oy(e)}var $y=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,By=/^\w*$/;function Vy(e,n){if(Dt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||ca(e)?!0:By.test(e)||!$y.test(e)||n!=null&&e in Object(n)}var Ko=Bn(Object,"create");function Ry(){this.__data__=Ko?Ko(null):{},this.size=0}function Dy(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var My="__lodash_hash_undefined__",Ly=Object.prototype,Fy=Ly.hasOwnProperty;function Uy(e){var n=this.__data__;if(Ko){var o=n[e];return o===My?void 0:o}return Fy.call(n,e)?n[e]:void 0}var Ky=Object.prototype,jy=Ky.hasOwnProperty;function Gy(e){var n=this.__data__;return Ko?n[e]!==void 0:jy.call(n,e)}var qy="__lodash_hash_undefined__";function zy(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Ko&&n===void 0?qy:n,this}function Vn(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])}}Vn.prototype.clear=Ry,Vn.prototype.delete=Dy,Vn.prototype.get=Uy,Vn.prototype.has=Gy,Vn.prototype.set=zy;function Hy(){this.__data__=[],this.size=0}function Mr(e,n){for(var o=e.length;o--;)if(pa(e[o][0],n))return o;return-1}var Yy=Array.prototype,Wy=Yy.splice;function Xy(e){var n=this.__data__,o=Mr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Wy.call(n,o,1),--this.size,!0}function Zy(e){var n=this.__data__,o=Mr(n,e);return o<0?void 0:n[o][1]}function Jy(e){return Mr(this.__data__,e)>-1}function Qy(e,n){var o=this.__data__,r=Mr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function nn(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])}}nn.prototype.clear=Hy,nn.prototype.delete=Xy,nn.prototype.get=Zy,nn.prototype.has=Jy,nn.prototype.set=Qy;var jo=Bn(qt,"Map");function e_(){this.size=0,this.__data__={hash:new Vn,map:new(jo||nn),string:new Vn}}function t_(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Lr(e,n){var o=e.__data__;return t_(n)?o[typeof n=="string"?"string":"hash"]:o.map}function n_(e){var n=Lr(this,e).delete(e);return this.size-=n?1:0,n}function o_(e){return Lr(this,e).get(e)}function r_(e){return Lr(this,e).has(e)}function i_(e,n){var o=Lr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function on(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])}}on.prototype.clear=e_,on.prototype.delete=n_,on.prototype.get=o_,on.prototype.has=r_,on.prototype.set=i_;var a_="Expected a function";function Ca(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(a_);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(Ca.Cache||on),o}Ca.Cache=on;var l_=500;function s_(e){var n=Ca(e,function(r){return o.size===l_&&o.clear(),r}),o=n.cache;return n}var c_=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,d_=/\\(\\)?/g,u_=s_(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(c_,function(o,r,i,a){n.push(i?a.replace(d_,"$1"):r||o)}),n});function Ea(e){return e==null?"":Js(e)}function lo(e,n){return Dt(e)?e:Vy(e,n)?[e]:u_(Ea(e))}function Fr(e){if(typeof e=="string"||ca(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Na(e,n){n=lo(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[Fr(n[o++])];return o&&o==r?e:void 0}function pc(e,n,o){var r=e==null?void 0:Na(e,n);return r===void 0?o:r}function xa(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var mc=Pt?Pt.isConcatSpreadable:void 0;function f_(e){return Dt(e)||Dr(e)||!!(mc&&e&&e[mc])}function p_(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=f_),i||(i=[]);++a<l;){var s=e[a];o(s)?xa(i,s):i[i.length]=s}return i}function m_(e){var n=e==null?0:e.length;return n?p_(e):[]}function gc(e){return Rh(Kh(e,void 0,m_),e+"")}var Sa=uc(Object.getPrototypeOf,Object),g_="[object Object]",h_=Function.prototype,y_=Object.prototype,hc=h_.toString,__=y_.hasOwnProperty,b_=hc.call(Object);function w_(e){if(!tn(e)||Pn(e)!=g_)return!1;var n=Sa(e);if(n===null)return!0;var o=__.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&hc.call(o)==b_}function yc(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 k_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:yc(e,n,o)}var C_="\\ud800-\\udfff",E_="\\u0300-\\u036f",N_="\\ufe20-\\ufe2f",x_="\\u20d0-\\u20ff",S_=E_+N_+x_,v_="\\ufe0e\\ufe0f",A_="\\u200d",I_=RegExp("["+A_+C_+S_+v_+"]");function _c(e){return I_.test(e)}function T_(e){return e.split("")}var bc="\\ud800-\\udfff",P_="\\u0300-\\u036f",O_="\\ufe20-\\ufe2f",$_="\\u20d0-\\u20ff",B_=P_+O_+$_,V_="\\ufe0e\\ufe0f",R_="["+bc+"]",va="["+B_+"]",Aa="\\ud83c[\\udffb-\\udfff]",D_="(?:"+va+"|"+Aa+")",wc="[^"+bc+"]",kc="(?:\\ud83c[\\udde6-\\uddff]){2}",Cc="[\\ud800-\\udbff][\\udc00-\\udfff]",M_="\\u200d",Ec=D_+"?",Nc="["+V_+"]?",L_="(?:"+M_+"(?:"+[wc,kc,Cc].join("|")+")"+Nc+Ec+")*",F_=Nc+Ec+L_,U_="(?:"+[wc+va+"?",va,kc,Cc,R_].join("|")+")",K_=RegExp(Aa+"(?="+Aa+")|"+U_+F_,"g");function j_(e){return e.match(K_)||[]}function G_(e){return _c(e)?j_(e):T_(e)}function q_(e){return function(n){n=Ea(n);var o=_c(n)?G_(n):void 0,r=o?o[0]:n.charAt(0),i=o?k_(o,1).join(""):n.slice(1);return r[e]()+i}}var z_=q_("toUpperCase");function H_(){this.__data__=new nn,this.size=0}function Y_(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function W_(e){return this.__data__.get(e)}function X_(e){return this.__data__.has(e)}var Z_=200;function J_(e,n){var o=this.__data__;if(o instanceof nn){var r=o.__data__;if(!jo||r.length<Z_-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new on(r)}return o.set(e,n),this.size=o.size,this}function rn(e){var n=this.__data__=new nn(e);this.size=n.size}rn.prototype.clear=H_,rn.prototype.delete=Y_,rn.prototype.get=W_,rn.prototype.has=X_,rn.prototype.set=J_;function Q_(e,n){return e&&Lo(n,wa(n),e)}function eb(e,n){return e&&Lo(n,ka(n),e)}var xc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,Sc=xc&&typeof module=="object"&&module&&!module.nodeType&&module,tb=Sc&&Sc.exports===xc,vc=tb?qt.Buffer:void 0,Ac=vc?vc.allocUnsafe:void 0;function nb(e,n){if(n)return e.slice();var o=e.length,r=Ac?Ac(o):new e.constructor(o);return e.copy(r),r}function ob(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 Ic(){return[]}var rb=Object.prototype,ib=rb.propertyIsEnumerable,Tc=Object.getOwnPropertySymbols,Ia=Tc?function(e){return e==null?[]:(e=Object(e),ob(Tc(e),function(n){return ib.call(e,n)}))}:Ic;function ab(e,n){return Lo(e,Ia(e),n)}var lb=Object.getOwnPropertySymbols,Pc=lb?function(e){for(var n=[];e;)xa(n,Ia(e)),e=Sa(e);return n}:Ic;function sb(e,n){return Lo(e,Pc(e),n)}function Oc(e,n,o){var r=n(e);return Dt(e)?r:xa(r,o(e))}function Ta(e){return Oc(e,wa,Ia)}function $c(e){return Oc(e,ka,Pc)}var Pa=Bn(qt,"DataView"),Oa=Bn(qt,"Promise"),$a=Bn(qt,"Set"),Bc="[object Map]",cb="[object Object]",Vc="[object Promise]",Rc="[object Set]",Dc="[object WeakMap]",Mc="[object DataView]",db=$n(Pa),ub=$n(jo),fb=$n(Oa),pb=$n($a),mb=$n(ua),Ot=Pn;(Pa&&Ot(new Pa(new ArrayBuffer(1)))!=Mc||jo&&Ot(new jo)!=Bc||Oa&&Ot(Oa.resolve())!=Vc||$a&&Ot(new $a)!=Rc||ua&&Ot(new ua)!=Dc)&&(Ot=function(e){var n=Pn(e),o=n==cb?e.constructor:void 0,r=o?$n(o):"";if(r)switch(r){case db:return Mc;case ub:return Bc;case fb:return Vc;case pb:return Rc;case mb:return Dc}return n});var gb=Object.prototype,hb=gb.hasOwnProperty;function yb(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&hb.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var Ur=qt.Uint8Array;function Ba(e){var n=new e.constructor(e.byteLength);return new Ur(n).set(new Ur(e)),n}function _b(e,n){var o=n?Ba(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var bb=/\w*$/;function wb(e){var n=new e.constructor(e.source,bb.exec(e));return n.lastIndex=e.lastIndex,n}var Lc=Pt?Pt.prototype:void 0,Fc=Lc?Lc.valueOf:void 0;function kb(e){return Fc?Object(Fc.call(e)):{}}function Cb(e,n){var o=n?Ba(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Eb="[object Boolean]",Nb="[object Date]",xb="[object Map]",Sb="[object Number]",vb="[object RegExp]",Ab="[object Set]",Ib="[object String]",Tb="[object Symbol]",Pb="[object ArrayBuffer]",Ob="[object DataView]",$b="[object Float32Array]",Bb="[object Float64Array]",Vb="[object Int8Array]",Rb="[object Int16Array]",Db="[object Int32Array]",Mb="[object Uint8Array]",Lb="[object Uint8ClampedArray]",Fb="[object Uint16Array]",Ub="[object Uint32Array]";function Kb(e,n,o){var r=e.constructor;switch(n){case Pb:return Ba(e);case Eb:case Nb:return new r(+e);case Ob:return _b(e,o);case $b:case Bb:case Vb:case Rb:case Db:case Mb:case Lb:case Fb:case Ub:return Cb(e,o);case xb:return new r;case Sb:case Ib:return new r(e);case vb:return wb(e);case Ab:return new r;case Tb:return kb(e)}}function jb(e){return typeof e.constructor=="function"&&!Rr(e)?vh(Sa(e)):{}}var Gb="[object Map]";function qb(e){return tn(e)&&Ot(e)==Gb}var Uc=ao&&ao.isMap,zb=Uc?ya(Uc):qb,Hb="[object Set]";function Yb(e){return tn(e)&&Ot(e)==Hb}var Kc=ao&&ao.isSet,Wb=Kc?ya(Kc):Yb,Xb=1,Zb=2,Jb=4,jc="[object Arguments]",Qb="[object Array]",ew="[object Boolean]",tw="[object Date]",nw="[object Error]",Gc="[object Function]",ow="[object GeneratorFunction]",rw="[object Map]",iw="[object Number]",qc="[object Object]",aw="[object RegExp]",lw="[object Set]",sw="[object String]",cw="[object Symbol]",dw="[object WeakMap]",uw="[object ArrayBuffer]",fw="[object DataView]",pw="[object Float32Array]",mw="[object Float64Array]",gw="[object Int8Array]",hw="[object Int16Array]",yw="[object Int32Array]",_w="[object Uint8Array]",bw="[object Uint8ClampedArray]",ww="[object Uint16Array]",kw="[object Uint32Array]",je={};je[jc]=je[Qb]=je[uw]=je[fw]=je[ew]=je[tw]=je[pw]=je[mw]=je[gw]=je[hw]=je[yw]=je[rw]=je[iw]=je[qc]=je[aw]=je[lw]=je[sw]=je[cw]=je[_w]=je[bw]=je[ww]=je[kw]=!0,je[nw]=je[Gc]=je[dw]=!1;function Go(e,n,o,r,i,a){var l,s=n&Xb,c=n&Zb,d=n&Jb;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!On(e))return e;var f=Dt(e);if(f){if(l=yb(e),!s)return Ih(e,l)}else{var u=Ot(e),p=u==Gc||u==ow;if(Fo(e))return nb(e,s);if(u==qc||u==jc||p&&!i){if(l=c||p?{}:jb(e),!s)return c?sb(e,eb(l,e)):ab(e,Q_(l,e))}else{if(!je[u])return i?e:{};l=Kb(e,u,s)}}a||(a=new rn);var m=a.get(e);if(m)return m;a.set(e,l),Wb(e)?e.forEach(function(y){l.add(Go(y,n,o,y,e,a))}):zb(e)&&e.forEach(function(y,g){l.set(g,Go(y,n,o,g,e,a))});var h=d?c?$c:Ta:c?ka:wa,_=f?void 0:h(e);return Dh(_||e,function(y,g){_&&(g=y,y=e[g]),ma(l,g,Go(y,n,o,g,e,a))}),l}var Cw=1,Ew=4;function so(e){return Go(e,Cw|Ew)}var Nw="__lodash_hash_undefined__";function xw(e){return this.__data__.set(e,Nw),this}function Sw(e){return this.__data__.has(e)}function Kr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new on;++n<o;)this.add(e[n])}Kr.prototype.add=Kr.prototype.push=xw,Kr.prototype.has=Sw;function vw(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 Aw(e,n){return e.has(n)}var Iw=1,Tw=2;function zc(e,n,o,r,i,a){var l=o&Iw,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&Tw?new Kr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var h=e[u],_=n[u];if(r)var y=l?r(_,h,u,n,e,a):r(h,_,u,e,n,a);if(y!==void 0){if(y)continue;p=!1;break}if(m){if(!vw(n,function(g,w){if(!Aw(m,w)&&(h===g||i(h,g,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(h===_||i(h,_,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function Pw(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function Ow(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var $w=1,Bw=2,Vw="[object Boolean]",Rw="[object Date]",Dw="[object Error]",Mw="[object Map]",Lw="[object Number]",Fw="[object RegExp]",Uw="[object Set]",Kw="[object String]",jw="[object Symbol]",Gw="[object ArrayBuffer]",qw="[object DataView]",Hc=Pt?Pt.prototype:void 0,Va=Hc?Hc.valueOf:void 0;function zw(e,n,o,r,i,a,l){switch(o){case qw:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case Gw:return!(e.byteLength!=n.byteLength||!a(new Ur(e),new Ur(n)));case Vw:case Rw:case Lw:return pa(+e,+n);case Dw:return e.name==n.name&&e.message==n.message;case Fw:case Kw:return e==n+"";case Mw:var s=Pw;case Uw:var c=r&$w;if(s||(s=Ow),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=Bw,l.set(e,n);var f=zc(s(e),s(n),r,i,a,l);return l.delete(e),f;case jw:if(Va)return Va.call(e)==Va.call(n)}return!1}var Hw=1,Yw=Object.prototype,Ww=Yw.hasOwnProperty;function Xw(e,n,o,r,i,a){var l=o&Hw,s=Ta(e),c=s.length,d=Ta(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:Ww.call(n,p)))return!1}var m=a.get(e),h=a.get(n);if(m&&h)return m==n&&h==e;var _=!0;a.set(e,n),a.set(n,e);for(var y=l;++u<c;){p=s[u];var g=e[p],w=n[p];if(r)var b=l?r(w,g,p,n,e,a):r(g,w,p,e,n,a);if(!(b===void 0?g===w||i(g,w,o,r,a):b)){_=!1;break}y||(y=p=="constructor")}if(_&&!y){var S=e.constructor,E=n.constructor;S!=E&&"constructor"in e&&"constructor"in n&&!(typeof S=="function"&&S instanceof S&&typeof E=="function"&&E instanceof E)&&(_=!1)}return a.delete(e),a.delete(n),_}var Zw=1,Yc="[object Arguments]",Wc="[object Array]",jr="[object Object]",Jw=Object.prototype,Xc=Jw.hasOwnProperty;function Qw(e,n,o,r,i,a){var l=Dt(e),s=Dt(n),c=l?Wc:Ot(e),d=s?Wc:Ot(n);c=c==Yc?jr:c,d=d==Yc?jr:d;var f=c==jr,u=d==jr,p=c==d;if(p&&Fo(e)){if(!Fo(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new rn),l||ba(e)?zc(e,n,o,r,i,a):zw(e,n,c,o,r,i,a);if(!(o&Zw)){var m=f&&Xc.call(e,"__wrapped__"),h=u&&Xc.call(n,"__wrapped__");if(m||h){var _=m?e.value():e,y=h?n.value():n;return a||(a=new rn),i(_,y,o,r,a)}}return p?(a||(a=new rn),Xw(e,n,o,r,i,a)):!1}function Zc(e,n,o,r,i){return e===n?!0:e==null||n==null||!tn(e)&&!tn(n)?e!==e&&n!==n:Qw(e,n,o,r,Zc,i)}function e0(e,n){return e!=null&&n in Object(e)}function t0(e,n,o){n=lo(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=Fr(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&&ga(i)&&fa(l,i)&&(Dt(e)||Dr(e)))}function n0(e,n){return e!=null&&t0(e,n,e0)}function o0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function r0(e,n){return n.length<2?e:Na(e,yc(n,0,-1))}var i0="[object Map]",a0="[object Set]",l0=Object.prototype,s0=l0.hasOwnProperty;function Jc(e){if(e==null)return!0;if(ha(e)&&(Dt(e)||typeof e=="string"||typeof e.splice=="function"||Fo(e)||ba(e)||Dr(e)))return!e.length;var n=Ot(e);if(n==i0||n==a0)return!e.size;if(Rr(e))return!fc(e).length;for(var o in e)if(s0.call(e,o))return!1;return!0}function qo(e,n){return Zc(e,n)}function Qc(e,n){return n=lo(n,e),e=r0(e,n),e==null||delete e[Fr(o0(n))]}function c0(e){return w_(e)?void 0:e}var d0=1,u0=2,f0=4,zo=gc(function(e,n){var o={};if(e==null)return o;var r=!1;n=Ws(n,function(a){return a=lo(a,e),r||(r=a.length>1),a}),Lo(e,$c(e),o),r&&(o=Go(o,d0|u0|f0,c0));for(var i=n.length;i--;)Qc(o,n[i]);return o});function ed(e,n,o,r){if(!On(e))return e;n=lo(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=Fr(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=On(f)?f:fa(n[i+1])?[]:{})}ma(s,c,d),s=s[c]}return e}function p0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=Na(e,l);o(s,l)&&ed(a,lo(l,e),s)}return a}function m0(e,n){return p0(e,n,function(o,r){return n0(e,r)})}var Ra=gc(function(e,n){return e==null?{}:m0(e,n)});function g0(e,n,o){return e==null?e:ed(e,n,o)}var h0=0;function Gr(e){var n=++h0;return Ea(e)+n}function td(e,n){return e==null?!0:Qc(e,n)}const y0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],Rn=e=>{var n,o,r,i,a,l;((o=(n=e.confluent)==null?void 0:n.authentication)==null?void 0:o.mode)==="none"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client,delete e.confluent.authentication.basic),((i=(r=e.confluent)==null?void 0:r.authentication)==null?void 0:i.mode)==="basic"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client),((l=(a=e.confluent)==null?void 0:a.authentication)==null?void 0:l.mode)==="oauth2"&&delete e.confluent.authentication.basic,y0.some(s=>qo(e.confluent,s))&&(e.confluent=null)},_0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Rn((n=e.config)==null?void 0:n.schema_registry)}},b0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Rn((n=e.config)==null?void 0:n.schema_registry)}},w0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Rn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Rn(i==null?void 0:i.schema_registry)})}},k0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Rn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Rn(i==null?void 0:i.schema_registry)})}},C0={shamefullyTransformPayload:({payload:e})=>{var n;Rn((n=e.config)==null?void 0:n.schema_registry)}},E0={"config-static_tags":{...Or,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"}]}}}},N0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function Da(e,n){const o=N0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Ma=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),co={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},nd=Symbol("TOASTER_PROVIDER");function od(){return t.inject(Ma,[])}function x0(e){t.provide(Ma,e)}const S0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},rd=(e,n)=>(e.order??0)-(n.order??0),id=(e,n)=>S0(e,n)||rd(e,n)||e.model.localeCompare(n.model),Fe={useI18n:Be,usePluginMetaData:Tg,usePluginHelpers:Vs,useSchemas:e=>{const{capitalize:n}=ye.useStringHelpers(),{convertToDotNotation:o}=Vs(),{i18n:{t:r}}=Be(),i=od(),a={"application-registration":{overwriteDefault:!0,formSchema:{...Vg}},datadog:{...Rg},"exit-transformer":{...Dg},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Xg},"statsd-advanced":{...Zg},"route-by-header":{...zg},"ai-prompt-decorator":{...Pg},"ai-prompt-template":{...Og},"ai-proxy-advanced":{...$g},"ai-llm-as-judge":{...Bg},"vault-auth":{...Qg},"oas-validation":{...Ug},mocking:{...Fg},"rate-limiting":{...$r},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":$r["config-consumer_groups"]}:{...$r},"graphql-rate-limiting-advanced":{...Mg},"injection-protection":{...Lg},"response-ratelimiting":{...$r},"pre-function":{...Gs},"post-function":{...Gs},"request-transformer-advanced":{...Gg},"response-transformer":{...qs},"response-transformer-advanced":{...qg},zipkin:{...E0},"upstream-oauth":{...Jg},saml:{...Hg},"kafka-upstream":{..._0},"solace-consume":{...Yg},"solace-upstream":{...Wg},"key-auth":kg(e),"key-auth-enc":vg(e),confluent:{...b0},"confluent-consume":{...w0},"kafka-consume":{...k0},"kafka-log":{...C0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,N,x,v)=>{let R={};(N||C)&&(R=N||(C.fields?C.fields:C));const F=l().concat(C.blacklist?C.blacklist:[]),k=Object.keys(R).filter(K=>!F.includes(K)),Y=k.indexOf("comparator");Y>-1&&k.splice(Y,1);let T={fields:[]};const q={};k.forEach(K=>{d(R[K],K,R,q,T,x)});const j=q.name,te=Gt[j],X=[],D=K=>{const A=["cluster-cache"];for(const P of A)if(K.model.includes(P))return!1;return new RegExp("(?<=-redis-).*").test(K.model)};if(T._supported_redis_partial_type=C._supported_redis_partial_type,T._redis_partial_path=C._redis_partial_path,De.getSharedFormName(j)||Da(j,i)||te!=null&&te.useLegacyForm||e!=null&&e.credential||v==="freeform"){if(te!=null&&te.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const K of T.fields)if(D(K)){X.push(K);continue}T.fields=T.fields.filter(K=>!D(K)),X.length&&T.fields.push({id:"_redis",fields:X,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}T.fields.sort((K,A)=>(K.order=K.order||0,A.order=A.order||0,K.order-A.order))}else{const K=[],A=[],P=[],U=[],G={};if(te!=null&&te.fieldRules){const ie=[...te.fieldRules.atLeastOneOf??[],...te.fieldRules.onlyOneOf??[],...te.fieldRules.mutuallyRequired??[]];if(te.fieldRules.onlyOneOfMutuallyRequired)for(const he of te.fieldRules.onlyOneOfMutuallyRequired)ie.push(...he);for(const he of ie)for(const J of he)G[J.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const ie of T.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&D(ie)){U.push(ie);continue}if(ie.pinned){K.push(ie);continue}if(ie.required||G[ie.model]!==void 0){G[ie.model]===!1&&(G[ie.model]=!0),A.push(ie);continue}P.push(ie)}U.length&&P.push({id:"_redis",fields:U,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const Z=Object.entries(G).filter(([,ie])=>!ie).map(([ie])=>ie.replace(/-/g,".").replace(/_/g,"-"));Z.length>0&&console.warn(`Unknown checked fields for plugin ${j}: ${Z.join(", ")}`);const ee=[];K.length>0&&ee.push({fields:K.sort(rd)}),(A.length>0||P.length>0)&&ee.push({fields:A.sort(id),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:P.sort(id),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"}}),T={groups:ee}}return{schema:T,model:q,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",d=(C,N,x,v,R,F)=>{const k=c(C);return v[N]=k?C.default:null,C.id=N,C.model=N,C.fields&&C.type==="record"?u(C,N,x,v,R,F):(x[N]=C,S(C,v),F&&F[N]&&f(x[N],F[N]),R.fields.push(C)),x},f=(C,N)=>(N&&(Object.assign(C,N),N.label&&(C.label=N.label)),C),u=(C,N,x,v,R,F)=>{C.fields.forEach(k=>{Object.keys(k).forEach(Y=>{const T=k[Y];x=d(T,N+"-"+Y,x,v,R,F)})})},p=(C,N)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const x=e==null?void 0:e.entityId;N[C.model]=x?{id:x}:null},m=C=>{C.type="input",C.inputType="number",C.between&&C.between.length===2&&(C.min=C.between[0],C.max=C.between[1])},h=C=>{Object.prototype.hasOwnProperty.call(C,"one_of")?(C.type="select",C.values=C.one_of,C.selectOptions={hideNoneSelectedText:!0}):(C.type="input",C.inputType="text")},_=C=>{C.type="checkbox",C.default=!0,C.required=!1},y=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:N}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Ve,model:C.model,valueArrayType:N==="integer"?"number":N||"string",inputAttributes:{...Ve.inputAttributes,type:N==="integer"?"number":"text",inputMode:N==="integer"?"numeric":"text"}}]}}]}}else C.values.fields&&(C.schema={fields:[{type:"object",model:"object",schema:{fields:C.values.fields.map(N=>{const x=Object.keys(N)[0];return{model:x,type:"input",label:n(x),placeholder:x,inputType:N[x].type}})}}]})},g=C=>C.fields.reduce((N,x)=>(x.fields&&x.fields.forEach(v=>{N[v.model]=v}),x.model&&(N[x.model]=x),N),{}),w=(C,N)=>{if(!De.customFields.includes(C.model))return;const x=g(C);De.customFields.forEach(v=>{Object.keys(x).forEach(R=>{const F=c(x[R]);N[R]=F?x[R].default:null}),delete N[v]})},b=(C,N)=>C.inputType==="hidden"?"":o(n(C.label||N.replace(/_/g," "))),S=(C,N)=>{switch(w(C,N),C.type){case"foreign":p(C,N);break;case"number":m(C),C.attributes={step:"any"};break;case"integer":m(C);break;case"string":h(C);break;case"boolean":_(C);break;case"map":y(C);break}C.inputType==="foreign"&&p(C,N),C.label=b(C,C.model)};function E(C,N){if(N==null||N.type&&N.type!=="record"||typeof C!="object"||C==null)return C;const x={};for(const v of N.fields){const R=Object.keys(v)[0],F=v[R];F.type==="record"?x[R]=E(C[R],F):F.type==="array"&&Array.isArray(C[R])&&F.elements.type==="record"?x[R]=C[R].map(k=>E(k,F.elements)):x[R]=C[R]}return x}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:ro,pruneRecord:E}},useExperimentalFreeForms:od,useProvideExperimentalFreeForms:x0},ct="/v2/control-planes/{controlPlaneId}/core-entities",bt="/{workspace}",Ze={list:{konnect:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},kongManager:{all:`${bt}/plugins`,forEntity:`${bt}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ct}/v1/available-plugins`,streamingCustomPlugins:`${ct}/custom-plugins`,schemaCustomPluginItem:`${ct}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ct}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${bt}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},edit:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ct}/{resourceEndpoint}`,edit:`${ct}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ct}/{entity}/{id}`,entityGetAll:`${ct}/{entity}`,entityPeek:`${ct}/{entity}?size={amount}`},kongManager:{create:{all:`${bt}/plugins`,forEntity:`${bt}/{entityType}/{entityId}/plugins`},edit:{all:`${bt}/plugins/{id}`,forEntity:`${bt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${bt}/schemas/plugins/{plugin}`,credential:{create:`${bt}/{resourceEndpoint}`,edit:`${bt}/{resourceEndpoint}/{id}`},credentialSchema:`${bt}/schemas/{plugin}`,entityGetOne:`${bt}/{entity}/{id}`,entityGetAll:`${bt}/{entity}`}},item:{konnect:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${bt}/plugins/{id}`,forEntity:`${bt}/{entityType}/{entityId}/plugins/{id}`}}},v0={key:0},A0=ve(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Fe.usePluginHelpers(),{i18n:{t:r}}=Fe.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",v0,[(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:uo}=Xe.createI18n("en-us",Je);function La(e){return e.map(n=>({value:n,label:`${n}`}))}const Fa="*",ad="$",ld=".";function Mt(...e){return e.join(ld)}function Ua(...e){return Mt(ad,...e)}function sd(e){return e.startsWith(Mt(ad,""))}function fo(e){return e.split(ld).filter(n=>n!=="")}function Ho(e){const n=fo(e);return n[n.length-1]}const I0=e=>{var n,o;return e.type==="redis-ce"?uo("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.length?uo("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?uo("redis.shared_configuration.type_label.cluster"):uo("redis.shared_configuration.type_label.host_port")},T0={"redis-ce":uo("redis.shared_configuration.open_source"),"redis-ee":uo("redis.shared_configuration.enterprise")},P0=e=>T0[e]??"";function O0(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 $0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const[B0,V0]=qe.createInjectionState(function(n,o,r,i){const a=M0(n),l=new Map,s=t.reactive({}),c=t.toRef(()=>r??{}),d=t.useSlots();t.provide(Ka,zo(d,"default",po));function f(m){Object.keys(s).forEach(h=>{delete s[h]}),Object.assign(s,m)}function u(m){let h;!m||!p(t.toValue(m))?h=a.getDefault():h=so(t.toValue(m)),Br(c.value.prepareFormData)?f(c.value.prepareFormData(h)):f(h)}function p(m){return Br(c.value.hasValue)?c.value.hasValue(m):!!m}return t.watch(s,m=>{i==null||i(t.toValue(m))},{deep:!0}),t.watch(()=>o==null?void 0:o.value,m=>{u(m)},{deep:!0,immediate:!0}),{formData:s,schema:n,config:c,fieldRendererRegistry:l,resetFormData:f,...a}}),cd=Symbol("free-form-field-path"),Ka=Symbol("free-form-field-renderer-slots"),dd=Symbol("free-form-field-reset-label-path-setting"),po="free-form-field-renderers-slot",R0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function D0(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,ja(r,n)):e.type==="array"&&e.elements&&Object.assign(o,Ga(e,n)),o}function ja(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?Mt(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=ja(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=Ga(a,l);Object.assign(o,s)}}return o}function Ga(e,n=""){const o={};if(e.elements){const r=e.elements,i=Mt(n,Fa);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=ja(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=Ga(r,i);Object.assign(o,a)}}return o}function qa(e){const n=fo(e).map(o=>/^\d+$/.test(o)?Fa:o);return Mt(...n)}function M0(e){const n=t.toValue(e),o=t.computed(()=>n?D0(n):{});function r(u){var p;return u==null?n:(p=o.value)==null?void 0:p[qa(u)]}function i(u,p=!1){const m=r(u);return m?m.default!==void 0?m.default:p||m.required?m.type==="record"?a(m,u):m.type==="array"?[]:null:null:null}function a(u,p){const m={};if(Array.isArray(u.fields))for(const h of u.fields){const _=Object.keys(h)[0],y=p?`${p}.${_}`:_,g=i(y,!1);g!==void 0&&(m[_]=g)}return m}function l(u){return u?i(u,!0):a(r(),"")}function s(u){const p=r(u),m=p!=null&&p.description?Ir.marked.parse(p.description,{async:!1}):void 0;return{...R0,"data-testid":`ff-label-${u}`,info:m}}function c(u){var m;const p=r(u);return La((p==null?void 0:p.one_of)||((m=p.elements)==null?void 0:m.one_of)||[])}function d(u){const p=r(u),m=p==null?void 0:p.default;let h=null;if((p==null?void 0:p.type)==="foreign"&&(m!=null&&m.id))h=m.id;else{if(m==null||typeof m=="object"||m==="")return null;if(Array.isArray(m)){if(m.length===0)return null;h=m.join(", ")}else h=m.toString()}return`Default: ${h}`}function f(){return o.value}return{getSchemaMap:f,getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function He(){const e=V0();if(!e)throw new Error("useFormShared() called without provider.");return e}const ud=e=>{const n=t.inject(cd,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!sd(r)&&n.value&&(i=Mt(n.value,r)),sd(r)&&(i=i.slice(Ua("").length)),i});return t.provide(cd,o),o},L0=e=>{const{getSchema:n,fieldRendererRegistry:o}=He(),{default:r,...i}=t.useSlots(),a=t.inject(Ka),l=t.computed(()=>{const c=t.toValue(a),d=Object.keys(i).filter(f=>f!==po&&f!=="item").reduce((f,u)=>{const p=qa(Mt(t.toValue(e),u));return{...f,[p]:i[u]}},{});return c?{...c,...d}:d});t.provide(Ka,l);const s=t.toValue(e);return t.computed(()=>{if(r)return;const c=l.value[qa(t.toValue(e))];if(c)return c;for(const[d,f]of o)if(d({path:s,schema:n(s)}))return f})},F0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function U0(e){return F0[e.toLocaleLowerCase()]??e}function K0(e,n){const o=t.inject(dd,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Mt(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?Mt(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(dd,l),a}function j0(e){return fo(e).map(o=>o.split("_").map(U0).join(" ")).map(z_).join(" › ")}function G0(e,n){const o=t.toValue(e),r=Ho(o),{config:i,getSchema:a}=He(),l=K0(r,n),s=fd(e);return t.computed(()=>{var p;const c=l.value??r,d=(p=s.value.parent)!=null&&p.path?a(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":j0(c);return i.value.transformLabel?i.value.transformLabel(u,o):u})}function Lt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=He(),a=t.toValue(e),l=t.toValue(n),s=G0(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 q0(e){var r;const n=fo(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Mt(o.parent.path,i):i,o={parent:o}}return o}function fd(e){return t.computed(()=>q0(t.toValue(e)))}function pd(e){const{formData:n}=He(),o=ud(e);return{value:t.computed({get:()=>pc(n,fo(o.value)),set:i=>g0(n,fo(o.value),i)})}}function Nt(e){const{getSchema:n}=He(),o=ud(e),r=L0(o),{value:i}=pd(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:fd(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function Yo(e){const{getSchema:n}=He(),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 md(e,n){const o=new WeakMap,r=new Map;function i(){return Gr(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((d,f)=>{c.add(f)}),Array.from(r.keys()).forEach(d=>{c.has(d)||r.delete(d)})},{immediate:!0,deep:!0}),{getKey:a}}const z0="__request_callout_";function gd(){return Gr(z0)}const Dn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=t.useAttrs(),i=n,a=t.computed(()=>o.multiline?Pe.KTextArea:Pe.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{s.value=u});const{config:c}=He(),d=u=>{u!==s.value&&(s.value=u,c.value.updateOnChange||i("update:modelValue",u))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":e.modelValue,resizable:e.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,h)=>({name:h,fn:t.withCtx(_=>[t.renderSlot(u.$slots,h,t.normalizeProps(t.guardReactiveProps(_)))])}))]),1040,["character-limit","model-value","resizable"]))}}),H0=["innerHTML"],mo=ve(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}=Be(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=Nt(t.toRef(()=>e.name)),c=Lt(s.path,t.toRef({...i,...o})),d=l==null?void 0:l.value;function f(g){d!==void 0&&g===""&&g!==d?(l.value=null,a("update:modelValue",null)):(l.value=g.trim(),a("update:modelValue",g.trim()))}const u=t.computed(()=>{var g;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((g=s.schema)==null?void 0:g.value).encrypted}),p=t.inject(De.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var g;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((g=s.schema.value)!=null&&g.referenceable)}),h=t.computed(()=>({referenceable:m.value})),_=Yo(s.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return(g,w)=>{var S;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},g.$attrs)),[t.createVNode(Dn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":y.value,"data-autofocus":t.unref(_),"data-testid":`ff-${s.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.multiline&&e.error?e.errorMessage:e.help,"model-value":t.unref(l)??"",multiline:e.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(S=t.unref(c).labelAttributes)!=null&&S.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,H0)],!0)]),key:"0"}:void 0,e.multiline&&e.error?void 0:{name:"help",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"help",{},void 0,!0)]),key:"1"}]),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-8b9ee4c2"]]),Y0=["innerHTML"],qr=ve(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}=Nt(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=Lt(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(Pe.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,Y0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),hd=ve(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"]]),W0=["data-testid"],X0=["data-testid"],Z0=["data-testid"],J0=["innerHTML"],Q0={class:"ff-object-field-actions"},ek=["data-testid"],xt=ve(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}=Nt(t.toRef(n,"name")),{getSchema:i,getDefault:a}=He(),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 y,g;if((y=r.ancestors)!=null&&y.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((g=i(w.path))==null?void 0:g.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=Lt(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 y=r.schema.value.fields;return e.omit&&(y=y.filter(g=>!e.omit.includes(Object.keys(g)[0]))),e.fieldsOrder?y.sort((g,w)=>{const b=Object.keys(g)[0],S=Object.keys(w)[0],E=e.fieldsOrder.indexOf(b),C=e.fieldsOrder.indexOf(S);return E===-1&&C===-1?0:E===-1?1:C===-1?-1:E-C}):y});function _(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,y=>{e.collapsible&&(s.value=y)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(y,g)=>{var b;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y.$slots[t.unref(po)]))),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"},y.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(y.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,S=>(t.openBlock(),t.createBlock(ht,{key:Object.keys(S)[0],name:Object.keys(S)[0]},null,8,["name"]))),128))],!0)],16,W0)):(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}`},y.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Pe.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(y.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,J0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",Q0,[e.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(Pe.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:g[0]||(g[0]=S=>s.value=!c.value)},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(xe.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(Pe.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:_},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(xe.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(xe.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,Z0),t.createVNode(hd,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(y.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,S=>(t.openBlock(),t.createBlock(ht,{key:Object.keys(S)[0],name:Object.keys(S)[0]},null,8,["name"]))),128))],!0)],8,ek)):t.createCommentVNode("",!0)]),_:3})],16,X0))],64)}}}),[["__scopeId","data-v-6f044592"]]),tk=["innerHTML"],Mn=ve(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}=Nt(t.toRef(()=>e.name)),a=Lt(i.path,o),l=t.computed(()=>{var _;const p=(_=i.schema)==null?void 0:_.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=Yo(i.ancestors);return(p,m)=>{var _;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(Dn,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},[(_=t.unref(a).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,tk)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),nk=["innerHTML"],$t=ve(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},items:{},placeholder:{},multiple:{type:Boolean,default:()=>{}},modelValue:{},label:{},help:{},error:{type:Boolean},searchPlaceholder:{},kpopAttributes:{},dropdownMaxHeight:{},width:{},selectedRowCount:{},collapsedContext:{type:Boolean},filterFunction:{type:Function},autosuggest:{type:Boolean},enableItemCreation:{type:Boolean},loading:{type:Boolean},dropdownFooterText:{},dropdownFooterTextPosition:{},itemCreationValidator:{type:Function},enableFiltering:{type:Boolean},clearable:{type:Boolean},reuseItemTemplate:{type:Boolean}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=He(),{value:a,...l}=Nt(t.toRef(()=>e.name)),s=Lt(l.path,r),c=t.computed(()=>e.items?e.items:l.path?i(l.path.value):[]),d=t.computed(()=>{var u;return e.multiple!==void 0?e.multiple:((u=l.schema.value)==null?void 0:u.type)==="set"}),f=t.computed(()=>d.value?Pe.KMultiselect:Pe.KSelect);return(u,p)=>{var h;const m=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(m,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(f),t.mergeProps({key:1},{...r,...t.unref(s)},{modelValue:t.unref(a),"onUpdate:modelValue":[p[0]||(p[0]=_=>t.isRef(a)?a.value=_:null),p[1]||(p[1]=_=>o("update",_))],class:"ff-enum-field",clearable:!t.unref(s).required,"data-testid":`ff-${l.path.value}`,items:c.value,"kpop-attributes":{"data-testid":`${l.path.value}-items`}}),t.createSlots({_:2},["tooltip"in u.$slots||(h=t.unref(s).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(u.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,nk)],!0)]),key:"0"}:void 0,u.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:_})=>[t.renderSlot(u.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(_)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-e67d00d5"]]);function zr(e,n,o=!0){const{value:r,...i}=Nt(t.toRef(e,"name")),a=Lt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(d(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Gr("ff-kv-field-")}function c(y,g,w){const b=w.indexOf(y),S=w.indexOf(g);return b===-1&&S===-1?0:b===-1?1:S===-1?-1:b-S}function d(y,g){const w=Object.entries(y).map(([b,S])=>({id:s(),key:b,value:S}));return g&&w.sort((b,S)=>c(b.key,S.key,g)),w}function f(){const y={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(y),y}function u(y){const g=l.value.findIndex(w=>w.id===y);g!==-1&&l.value.splice(g,1)}function p(){l.value=d(e.initialValue||{},e.keyOrder)}function m(y){l.value=d(y,e.keyOrder)}let h=null;t.watch(l,y=>{if(!o)return;const g=y.length?Object.fromEntries(y.map(({key:w,value:b})=>[w,b]).filter(([w])=>w)):null;r.value=g,h=g,n("change",g)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,y=>{qo(y,h)||_(y)},{deep:!0});function _(y){if(!y){l.value=[];return}const g=new Map;l.value.forEach(E=>{E.key&&g.set(E.key,E)});const w=[],b=Object.keys(y);(e.keyOrder?[...b].sort((E,C)=>c(E,C,e.keyOrder)):b).forEach(E=>{const C=y[E];if(g.has(E)){const N=g.get(E);N.value=C,w.push(N)}else w.push({id:s(),key:E,value:C})}),l.value=w}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const ok=["data-testid"],rk=["data-testid"],ik=["innerHTML"],ak=["data-testid"],lk=ve(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}=Be(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=zr(r,a),m=t.useTemplateRef("root");async function h(E,C="key"){var N;m.value&&(await t.nextTick(),(N=m.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function _(){s();const E=l.value.findIndex(({key:C})=>!C);h(E===-1?l.value.length-1:E)}function y(E){E===l.value.length-1&&s(),h(E+1)}const g=t.inject(De.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var E,C;return e.showVaultSecretPicker??!!((C=(E=p.schema.value)==null?void 0:E.values)!=null&&C.referenceable)}),b=t.computed(()=>({referenceable:w.value}));function S(E,C){l.value[E].value=C}return n({reset:d,setValue:f}),(E,C)=>{var R;const N=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(N,{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},[(R=t.unref(u).labelAttributes)!=null&&R.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,ik)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:1},8,["data-testid"])],8,rk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(F,k)=>(t.openBlock(),t.createElementBlock("div",{key:F.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${k}`},[t.createVNode(Dn,{modelValue:F.key,"onUpdate:modelValue":Y=>F.key=Y,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":k,"data-testid":`ff-key-${t.unref(p).path.value}.${k}`,placeholder:e.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(Y=>h(k,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Dn,{modelValue:F.value,"onUpdate:modelValue":Y=>F.value=Y,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${k}`,"data-value-input":k,placeholder:e.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(Y=>y(k),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(g)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(g)),{key:0,schema:b.value,update:Y=>S(k,Y),value:F.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(g)?(t.openBlock(),t.createBlock(N,{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(v,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${k}`,icon:"",onClick:Y=>t.unref(c)(F.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:1},8,["data-testid","onClick"])],8,ak))),128))],8,ok))}}}),[["__scopeId","data-v-92e0893d"]]),sk=["data-testid"],ck=["innerHTML"],za=ve(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}=Nt(t.toRef(()=>e.name)),s=Lt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var _,y;return((y=(_=l.schema)==null?void 0:_.value)==null?void 0:y.len_min)&&l.schema.value.len_min>0}),d=t.ref("");function f(_){return _.map(y=>y.trim()).filter(Boolean).join(", ")}function u(_){return _.trim().split(",").map(y=>y.trim()).filter(Boolean)}function p(_){d.value=_;const y=u(_),g=!y.length&&c.value?null:y;a.value=g,i("update:modelValue",g)}const m=Yo(l.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return t.watch(a,_=>{const y=_?f(_):"";f(u(d.value))!==y&&(d.value=y)},{immediate:!0}),(_,y)=>{var w;const g=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(g,{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(Dn,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(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,ck)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,sk))}}}),[["__scopeId","data-v-a27f4ff1"]]),dk=["data-testid"],uk=["innerHTML"],fk=ve(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}=Nt(t.toRef(()=>e.name)),s=Lt(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=Yo(l.ancestors),u=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);qo(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 _;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(Dn,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},[(_=t.unref(s).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,uk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,dk))}}}),[["__scopeId","data-v-5749f722"]]),pk=["innerHTML"],mk=ve(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{name:{},labelAttributes:{},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:{t:r}}=Be(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,...s}=Nt(t.toRef(()=>e.name));if(s.error)throw new Error(s.error.message);const c=Lt(s.path,t.toRef({...i,...o})),d=l.value?l.value.id:null,f=t.computed(()=>{var _;return c.value.placeholder?c.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((_=s.schema.value)==null?void 0:_.reference)??"entity"})}),u=t.ref(d??"");function p(_){d!==void 0&&_===""&&_!==d?(l.value=null,a("update:modelValue",null)):(l.value={id:_.trim()},a("update:modelValue",l.value))}const m=Yo(s.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return(_,y)=>{var g;return t.openBlock(),t.createBlock(Dn,t.mergeProps(t.unref(c),{class:"ff-foreign-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${s.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.help,"model-value":u.value,placeholder:f.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(g=t.unref(c).labelAttributes)!=null&&g.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,pk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])}}}),[["__scopeId","data-v-b54c028e"]]),ht=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=Nt(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?$t:mo;case"boolean":return"one_of"in o.schema.value?$t:qr;case"number":case"integer":return"one_of"in o.schema.value?$t:Mn;case"array":return Hr;case"set":return $0(o.schema)?za:$t;case"record":return xt;case"map":return lk;case"json":return fk;case"foreign":return mk;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(po)]))),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:Ua(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:Ua(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)}}}),gk=["data-testid"],hk=["data-testid"],yk=["innerHTML"],_k=["data-testid"],bk={class:"ff-array-field-item-content"},wk=["data-index","data-testid"],Hr=ve(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 C;t.useCssVars(N=>({v3e1c9ee2:E.value}));const o=e,r=n,{i18n:{t:i}}=Be(),{getDefault:a,getSchema:l}=He(),{value:s,...c}=Nt(t.toRef(o,"name")),d=Lt(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 N=l(c.path.value);if(!N)throw new Error(`Schema not found for path: ${c.path.value}`);return N.elements}),u=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=md("ff-array-field",u),m=t.computed(()=>o.appearance==="card"?Pe.KCard:"div");function h(N,x){return typeof o.itemLabel=="function"?o.itemLabel(N,x):o.itemLabel||d.value.label||`Item #${x}`}const _=t.computed(()=>u.value.map((N,x)=>({hash:`#${p(N,x)}`,title:""}))),y=t.ref((C=_.value[0])==null?void 0:C.hash),g=async()=>{var x;const N=a(Mt(c.path.value,Fa));Array.isArray(s.value)||(s.value=[]),s.value.push(N),r("add"),o.appearance==="tabs"&&(await t.nextTick(),y.value=(x=_.value[_.value.length-1])==null?void 0:x.hash),await t.nextTick(),S(u.value.length+1)},w=async N=>{var x;Array.isArray(s.value)&&s.value.splice(N,1),r("remove",N),o.appearance==="tabs"&&(y.value=(x=_.value[Math.max(0,N-1)])==null?void 0:x.hash)},b=t.useTemplateRef("root");function S(N){var v;if(!b.value)return;const x=Math.max(0,Math.min(N,u.value.length-1));(v=b.value.querySelector(`[data-index="${x}"] [data-autofocus]`))==null||v.focus()}const E=t.computed(()=>{const{appearance:N,stickyTabs:x}=o;return N!=="tabs"||x==null||x===!1?null:typeof x=="number"?`${o.stickyTabs}px`:typeof x=="string"?x:"0"});return(N,x)=>{var Y;const v=t.resolveComponent("KAlert"),R=t.resolveComponent("KLabel"),F=t.resolveComponent("KButton"),k=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(v,{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-${e.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":e.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(R,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},[(Y=t.unref(d).labelAttributes)!=null&&Y.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,yk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(F,{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:g},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,hk),u.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.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,(T,q)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(T,q),class:"ff-array-field-item","data-index":q,"data-testid":`ff-array-item-${c.path.value}.${q}`},{default:t.withCtx(()=>[t.createElementVNode("div",bk,[N.$slots.item?t.renderSlot(N.$slots,"item",{key:0,fieldName:String(q),index:q},void 0,!0):t.createCommentVNode("",!0),f.value.type==="array"&&f.value.elements.type==="string"?(t.openBlock(),t.createBlock(za,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(q)},null,8,["help","name"])):(t.openBlock(),t.createBlock(ht,{key:2,name:String(q)},null,8,["name"]))]),t.createVNode(F,{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}.${q}`,icon:"",onClick:j=>w(q)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,_k)):(t.openBlock(),t.createBlock(t.unref(Pe.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(k,{modelValue:y.value,"onUpdate:modelValue":x[0]||(x[0]=T=>y.value=T),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:_.value},t.createSlots({_:2},[t.renderList(u.value,(T,q)=>({name:t.unref(p)(T,q),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":q,"data-testid":`ff-array-item-${c.path.value}.${q}`},[N.$slots.item?t.renderSlot(N.$slots,"item",{key:0,fieldName:String(q),index:q},void 0,!0):(t.openBlock(),t.createBlock(ht,{key:1,name:String(q)},null,8,["name"]))],8,wk)])})),t.renderList(u.value,(T,q)=>({name:`${t.unref(p)(T,q)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h(T,q))+" ",1),t.createVNode(F,{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}.${q}`,icon:"",onClick:t.withModifiers(j=>w(q),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,gk))}}}),[["__scopeId","data-v-3edd064c"]]),Wo=Symbol(),kk=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=He(),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(({[Wo]: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(xt,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode($t,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(xt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode($t,t.mergeProps(d,{items:t.unref(La)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),Ck=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=He();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Wo]=gd())}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(kk,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),yd=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),{fieldRendererRegistry:r}=He();return o&&r.set(n.match,o),(i,a)=>null}}),yt=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(),{getSchema:a,formData:l}=B0(e.schema,t.computed(()=>e.data),e.config,c=>r("change",c)),s=t.computed(()=>{const{fields:c}=a();return e.fieldsOrder?c.sort((d,f)=>{const u=Object.keys(d)[0],p=Object.keys(f)[0],m=e.fieldsOrder.indexOf(u),h=e.fieldsOrder.indexOf(p);return m===-1&&h===-1?0:m===-1?1:h===-1?-1:m-h}):c});return n({getInnerData:()=>t.toRaw(l)}),(c,d)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(po)]))),t.renderSlot(c.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,f=>(t.openBlock(),t.createBlock(ht,{key:Object.keys(f)[0],name:Object.keys(f)[0],onGlobalAction:d[0]||(d[0]=(u,p)=>r("globalAction",u,p))},null,8,["name"]))),128))])]),_:3}))}}),Ek={class:"ff-advanced-fields"},Yr=ve(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{getSchema:o}=He(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Pe.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"data-testid":"view-advanced","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",Ek,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(ht,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(ht,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(za,{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-54f66af5"]]),Nk=ve(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}}=Be();function a(d,f=!1){return d.reduce((u,{[Wo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=so(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[Wo]=gd()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(_=>p[_])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=so(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{[Wo]:h,depends_on:_,...y}=m;return{depends_on:_.map(g=>u[g]).filter(g=>g!=null),...y}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(yt,{class:"rc-config-form",config:r,data:e.data,schema:e.schema,tag:"div",onChange:c},{[t.unref(po)]:t.withCtx(()=>[t.createVNode(yd,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(mo,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(yd,{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(xt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Ck),t.createVNode(xt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(xt,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(xt,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(Yr)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),xk={class:"ff-form-pinned-fields"},Sk={class:"ff-form-config-form"},Ha=ve(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Xe.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),d=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return Ra(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",xk,[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:t.unref(a),onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Pe.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"ff-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",Sk,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:d.value,schema:s.value,onChange:u[0]||(u[0]=(...p)=>e.onFormChange&&e.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),vk=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(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ha,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Nk,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Ak={key:1},Ik=["innerHTML"],Tk={class:"horizontal-container"},_d=ve(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}=He(),a=Nt(t.toRef(()=>e.name)),l=Lt(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",Ak,[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,Ik)]),key:"0"}:void 0]),1040),t.createElementVNode("div",Tk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(t.unref(Pe.KRadio),{key:h.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=_=>t.unref(a).value.value=_),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),Pk={class:"sp-form-request-limits-subtitle"},Ok={class:"sp-form-request-limits-content"},$k={class:"sp-form-window-type"},Bk={class:"sp-form-request-limits-items"},Vk={class:"sp-form-request-limits-row"},Rk=["id"],Dk={class:"sp-form-request-limits-actions"},Mk={key:0,class:"sp-form-request-limits-examples"},Lk={class:"sp-form-request-limits-examples-badges"},Ya="config.window_type",Fk=ve(t.defineComponent({__name:"RequestLimitsForm",setup(e){var y;const{t:n}=Xe.createI18n("en-us",Je),{formData:o,getSelectItems:r,getSchema:i}=He(),a=t.computed(()=>{var w,b;const g=(b=(w=o.config)==null?void 0:w.limit)==null?void 0:b.map((S,E)=>{var C,N;return{limit:S,windowSize:(N=(C=o.config)==null?void 0:C.window_size)==null?void 0:N[E]}});return!Array.isArray(g)||g.length===0?[{limit:null,windowSize:null}]:g}),{getKey:l}=md("request-limits",a),s=g=>{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(g+1,0,null),o.config.window_size.splice(g+1,0,null))},c=g=>{o.config&&(o.config.limit.splice(g,1),o.config.window_size.splice(g,1))},d=(y=i(Ya))==null?void 0:y.default,f=t.computed(()=>pc(o,Ya)),u=t.computed(()=>r(Ya).sort((g,w)=>g.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]:[]),_=(g,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=[g.config.limit],o.config.window_size=[g.config.window_size]};return(g,w)=>{const b=t.resolveComponent("KLabel"),S=t.resolveComponent("KButton"),E=t.resolveComponent("KBadge"),C=t.resolveComponent("KTooltip"),N=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(N,{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",Pk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Ok,[t.createElementVNode("div",$k,[t.createVNode(_d,{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",Bk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(x,v)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(x,v)},[t.createVNode(b,{for:`sp-form-request-limits-item-${v}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:v+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",Vk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${v}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Mn,{name:`$.config.limit.${v}`,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(Mn,{name:`$.config.window_size.${v}`,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,Rk),t.createElementVNode("div",Dk,[t.createVNode(S,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(v)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(S,{appearance:"tertiary",onClick:()=>s(v)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),h.value.length>0?(t.openBlock(),t.createElementBlock("div",Mk,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",Lk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(x,v)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${v}`,"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}-${v}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>_(x,`${f.value}-${v}`)},{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"]]),Uk={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Kk=ve(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Xe.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",Uk,[t.createVNode(Mn,{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(mo,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),jk={class:"partial-config-card"},Gk={class:"config-card-row-label"},qk={class:"label-text"},zk=["data-testid"],Hk=["data-testid"],Yk={key:1},Wk=["data-testid"],Xk=["data-testid"],Zk=ve(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Xe.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}=ye.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,_,y;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:((_=r[u])==null?void 0:_.type)??l(u,p),order:((y=r[u])==null?void 0:y.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=O0(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",jk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:h,label:_,value:y,type:g})=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"partial-config-card-row"},[t.createElementVNode("div",Gk,[t.createElementVNode("div",qk,t.toDisplayString(_),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(y)?(t.openBlock(),t.createElementBlock("div",Yk,[g==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(y)},null,8,["text"])],8,Wk)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},t.toDisplayString(y),9,Xk))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,Hk))],8,zk)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Jk=ve(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}=Xe.createI18n("en-us",Je),i=t.inject(De.FORMS_CONFIG),a=n,{getMessageFromError:l}=ye.useErrors(),s=t.computed(()=>{switch(o.partialType){case oo.PartialType.REDIS_CE:return oo.PartialType.REDIS_EE;case oo.PartialType.REDIS_EE:return oo.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 _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{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(oo.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"]]),Qk="#ecfcff",eC="#f1f0ff",tC="#52596e",nC="#e0e4ea",oC="#007d60",rC="#fffce0",iC="#6c7489",aC="#0044f4",lC="#5f9aff",Wa="#000933",Xa="#d60027",sC="#ffe5e5",cC="#00abd2",dC="#d60067",uC="#6f28ff",bd="#afb7c5",Wr="#6c7489",fC="#0044f4",pC="#eefaff",mC="#007d60",gC="#ecfffb",hC="#995c00",Xo="12px",wd="16px",Xr="20px",kd="8px",yC="32px",Cd=Symbol("redis-partial-info"),Ed={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"}},Nd=["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"],_C={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},bC={key:0,class:"shared-redis-config"},wC={class:"shared-redis-config-title"},kC={class:"redis-config-select","data-testid":"redis-config-select"},CC={class:"selected-redis-config"},EC=["data-testid"],NC={class:"select-item-name","data-testid":"selected-redis-config"},xC={class:"empty-redis-config","data-testid":"empty-redis-config"},SC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},vC="1000",AC=ve(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var te;const o=n,{t:r}=Xe.createI18n("en-us",Je),i=e,a=t.inject(Cd),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var X;return i.redisPath?i.redisPath:(X=a==null?void 0:a.redisPath)!=null&&X.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((te=a==null?void 0:a.redisType)==null?void 0:te.value)||"all",d=t.computed(()=>{var X;return!!((X=a==null?void 0:a.redisType)!=null&&X.value)}),f=t.ref(!1),u=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=ye.useErrors(),h=t.ref(i.defaultRedisConfigItem),_=t.ref({}),y=t.ref(),{value:g}=pd("$.partials"),{value:w}=Nt(s),b=t.inject(De.FORMS_CONFIG),{debouncedQueryChange:S,loading:E,error:C,loadItems:N,results:x}=ye.useDebouncedFilter(b,Ed[b.app].getAll,vC,{fetchedItemsKey:"data",searchKeys:["id","name"]}),v=t.computed(()=>C.value?m(C.value):""),R=X=>{let D=`${b.apiBaseUrl}${Ed[b.app].getOne}`;return b.app==="konnect"?D=D.replace(/{controlPlaneId}/gi,(b==null?void 0:b.controlPlaneId)||""):b.app==="kongManager"&&(D=D.replace(/\/{workspace}/gi,b!=null&&b.workspace?`/${b.workspace}`:"")),D=D.replace(/{id}/gi,String(X)),D},F=t.computed(()=>{const X=(x.value||[]).map(D=>({label:D.id,name:D.name,value:D.id,type:D.type,tag:I0(D)})).filter(D=>D.type==="redis-ce"||D.type==="redis-ee");return c!=="all"?X.filter(D=>D.type===c):X}),{axiosInstance:k}=ye.useAxios(b==null?void 0:b.axiosRequestConfig),Y=()=>{p.value?(y.value&&(g.value=y.value,h.value=y.value[0].id,w.value=void 0),w!=null&&w.value&&(_.value=w.value)):(Object.keys(_.value).length&&(w.value=_.value),g!=null&&g.value&&(y.value=g.value),g.value=l?null:void 0)},T=X=>{N(),o("globalAction","notify",X)},q=X=>{o("globalAction","notify",X)},j=async X=>{if(X){h.value=X,g.value=[{id:X}],y.value=[{id:X}],w.value=void 0;try{const D=await k.get(R(X));if(D.data.config){const K=Object.assign(D.data,D.data.config);delete K.config,u.value=K}}catch(D){console.error(D)}}};return t.watch(()=>p.value,()=>{Y()}),t.onBeforeMount(()=>{var X;if(N(),i.defaultRedisConfigItem||g!=null&&g.value){const D=i.defaultRedisConfigItem||((X=g==null?void 0:g.value)==null?void 0:X[0].id);j(D),p.value=!0}else w!=null&&w.value&&(_.value=w.value)}),(X,D)=>{const K=t.resolveComponent("KBadge"),A=t.resolveComponent("KRadio"),P=t.resolveComponent("KSelect"),U=t.resolveComponent("KCard");return d.value?(t.openBlock(),t.createBlock(U,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",_C,[t.createVNode(A,{modelValue:p.value,"onUpdate:modelValue":D[0]||(D[0]=G=>p.value=G),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(K,{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(A,{modelValue:p.value,"onUpdate:modelValue":D[1]||(D[1]=G=>p.value=G),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",bC,[t.createElementVNode("div",wC,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",kC,[t.createVNode(P,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:F.value,loading:t.unref(E),"model-value":h.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:D[3]||(D[3]=G=>j(G==null?void 0:G.value)),onQueryChange:t.unref(S)},{"selected-item-template":t.withCtx(({item:G})=>[t.createElementVNode("div",CC,t.toDisplayString(G.name),1)]),"item-template":t.withCtx(({item:G})=>[t.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${G.name}`},[t.createElementVNode("span",NC,t.toDisplayString(G.name),1),t.createVNode(K,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(G.tag),1)]),_:2},1024)],8,EC)]),empty:t.withCtx(()=>[t.createElementVNode("div",xC,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:D[2]||(D[2]=()=>f.value=!0)},[t.createVNode(t.unref(xe.AddIcon),{size:t.unref(Xo)},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(Zk,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),v.value?(t.openBlock(),t.createElementBlock("p",SC,t.toDisplayString(v.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(xt,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(Nd),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(Jk,{"partial-type":t.unref(c),visible:f.value,onModalClose:D[4]||(D[4]=G=>f.value=!1),onPartialUpdateFailed:q,onPartialUpdated:T},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(xt,t.mergeProps({key:1},i,{"fields-order":t.unref(Nd),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-2148fcde"]]),IC=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=He();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(hd,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(AC,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),TC=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(yt,{config:r,data:e.data,schema:e.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(xt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Fk),t.createVNode(Kk)]),_:1}),t.createVNode(Yr,null,{default:t.withCtx(()=>[t.createVNode(ht,{name:"config.dictionary_name"}),t.createVNode(ht,{name:"config.lock_dictionary_name"}),t.createVNode(ht,{name:"config.strategy"}),t.createVNode(IC,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(ht,{name:"config.namespace"}),t.createVNode(ht,{name:"config.hide_client_headers"}),t.createVNode(ht,{name:"config.disable_penalty"}),t.createVNode(ht,{name:"config.retry_after_jitter_max"}),t.createVNode(ht,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),PC=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(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ha,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(TC,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),OC={class:"ff-standard-layout"},$C={class:"enabled"},BC={class:"scope"},VC={key:0,class:"scope-detail"},xd=ve(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}=Xe.createI18n("en-us",Je),o=e,r=t.useSlots(),i=t.computed(()=>{var y;return{fields:(y=o.formSchema)==null?void 0:y.fields.filter(g=>g.model==="enabled")}}),a=t.computed(()=>{var y;return(y=o.formSchema)==null?void 0:y.fields.find(g=>g.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:y,description:g})=>({label:y,description:g}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var g;const y=["instance_name","protocols","tags"];return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(w=>y.includes(w.model))}}),d=["config"],f=t.computed(()=>{const y=o.schema;return y.fields=y.fields.filter(g=>d.includes(Object.keys(g)[0])),y}),u=t.computed(()=>{const y=["config","partials","__ui_data"];return Ra(o.model,y)}),p=Ra(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]),m=t.ref(Object.values(p).some(y=>!!y)),h=t.ref(!0);function _(y,g){p[g]=y,o.onModelUpdated(y,g)}return t.watch(m,y=>{y?Object.keys(p).forEach(g=>{o.onModelUpdated(p[g],g)}):Object.keys(p).forEach(g=>{o.onModelUpdated("",g)})}),(y,g)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",OC,[t.createVNode(t.unref(ye.EntityFormBlock),{description:e.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:e.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",$C,[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:i.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",BC,[t.createVNode(t.unref(Pe.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":g[0]||(g[0]=b=>m.value=b),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(Pe.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":g[1]||(g[1]=b=>m.value=b),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),m.value?(t.openBlock(),t.createElementBlock("div",VC,[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:_},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:h.value,"onUpdate:modelValue":g[2]||(g[2]=b=>h.value=b),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:c.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ye.EntityFormBlock),{description:e.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:e.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(y.$slots,"default",{data:u.value,schema:f.value,onChange:g[3]||(g[3]=(...b)=>e.onFormChange&&e.onFormChange(...b))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-8d0a8a0c"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Sd(e){return typeof e>"u"||e===null}function RC(e){return typeof e=="object"&&e!==null}function DC(e){return Array.isArray(e)?e:Sd(e)?[]:[e]}function MC(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 LC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function FC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var UC=Sd,KC=RC,jC=DC,GC=LC,qC=FC,zC=MC,it={isNothing:UC,isObject:KC,toArray:jC,repeat:GC,isNegativeZero:qC,extend:zC};function vd(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:Pn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},vg=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)}}:{},Ag={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 (in seconds) value for data",type:"number"}}]},Gt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",nameKey:"plugins.meta.ldap-auth-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",nameKey:"plugins.meta.rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",nameKey:"plugins.meta.tls-metadata-headers.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",nameKey:"plugins.meta.tls-handshake-modifier.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-log"]},"ai-llm-as-judge":{descriptionKey:"plugins.meta.ai-llm-as-judge.description",nameKey:"plugins.meta.ai-llm-as-judge.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-llm-as-judge"]},"ai-mcp-proxy":{descriptionKey:"plugins.meta.ai-mcp-proxy.description",nameKey:"plugins.meta.ai-mcp-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-proxy"]},"ai-gcp-model-armor":{descriptionKey:"plugins.meta.ai-gcp-model-armor.description",nameKey:"plugins.meta.ai-gcp-model-armor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-gcp-model-armor"]},"ai-mcp-oauth2":{descriptionKey:"plugins.meta.ai-mcp-oauth2.description",nameKey:"plugins.meta.ai-mcp-oauth2.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-oauth2"]},"ai-semantic-response-guard":{descriptionKey:"plugins.meta.ai-semantic-response-guard.description",nameKey:"plugins.meta.ai-semantic-response-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]}},io={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ms,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:In(Ms),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Ls,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:In(Ls)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Fs,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:In(Fs)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:js,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:In(js)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Ks,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:In(Ks)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Us,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:In(Us)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Ng,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Ig={acls:hg,basicauth_credentials:yg,keyauth_credentials:Cg,keyauth_enc_credentials:Ag,oauth2_credentials:Sg,hmacauth_credentials:Eg,jwt_secrets:xg},Pg=()=>{const{i18n:{t:e}}=Be(),n={},o={};for(const[i,a]of Object.entries(Gt))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(io))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:io,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},Do={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Tg={"config-prompts-prepend":{...Do,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":{...Do,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"}]}}}},Og={"config-templates":{...Do,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"}]}}}},$g={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)}},Bg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Vg={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:ro.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"}},Ve={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"},Or={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Rg={"config-metrics":{...Or,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"}]}}}},Dg={"config-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Mg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Lg={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Fg={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Ug={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Kg={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Gs=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:ro.fields.arrayItems({newElementButtonLabel:"Add"})}),Kg),$r={"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"}},jg={"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":{}},Gg=["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]:ro.fields.arrayItems({newElementButtonLabel:"Add"})}),jg),qs={"config-add-json":{...Ve,label:"Config.Add.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Ve,label:"Config.Append.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Ve,label:"Config.Remove.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Ve,label:"Config.Rename.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Ve,label:"Config.Replace.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},qg={...qs,"config-allow-json":{...Ve,label:"Config.Allow.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Ve,label:"Config.Transform.Functions",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Ve,label:"Config.Transform.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},zg={"config-rules":{...Do,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"}]}}}},Hg={"config-session_redis_cluster_nodes":{...Do,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"}]}}}},Yg={"config-flow-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Wg={"config-message-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Xg={"config-metrics":{...Or,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"]}]}}}},Zg={"config-metrics":{...Or,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"]}]}}}},Jg={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Qg={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var zs=typeof global=="object"&&global&&global.Object===Object&&global,eh=typeof self=="object"&&self&&self.Object===Object&&self,qt=zs||eh||Function("return this")(),Tt=qt.Symbol,Hs=Object.prototype,th=Hs.hasOwnProperty,nh=Hs.toString,Mo=Tt?Tt.toStringTag:void 0;function oh(e){var n=th.call(e,Mo),o=e[Mo];try{e[Mo]=void 0;var r=!0}catch{}var i=nh.call(e);return r&&(n?e[Mo]=o:delete e[Mo]),i}var rh=Object.prototype,ih=rh.toString;function ah(e){return ih.call(e)}var lh="[object Null]",sh="[object Undefined]",Ys=Tt?Tt.toStringTag:void 0;function Tn(e){return e==null?e===void 0?sh:lh:Ys&&Ys in Object(e)?oh(e):ah(e)}function tn(e){return e!=null&&typeof e=="object"}var ch="[object Symbol]";function ca(e){return typeof e=="symbol"||tn(e)&&Tn(e)==ch}function Ws(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 Dt=Array.isArray,Xs=Tt?Tt.prototype:void 0,Zs=Xs?Xs.toString:void 0;function Js(e){if(typeof e=="string")return e;if(Dt(e))return Ws(e,Js)+"";if(ca(e))return Zs?Zs.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function On(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function dh(e){return e}var uh="[object AsyncFunction]",fh="[object Function]",ph="[object GeneratorFunction]",mh="[object Proxy]";function Br(e){if(!On(e))return!1;var n=Tn(e);return n==fh||n==ph||n==uh||n==mh}var da=qt["__core-js_shared__"],Qs=function(){var e=/[^.]+$/.exec(da&&da.keys&&da.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function gh(e){return!!Qs&&Qs in e}var hh=Function.prototype,yh=hh.toString;function $n(e){if(e!=null){try{return yh.call(e)}catch{}try{return e+""}catch{}}return""}var _h=/[\\^$.*+?()[\]{}|]/g,bh=/^\[object .+?Constructor\]$/,wh=Function.prototype,kh=Object.prototype,Ch=wh.toString,Eh=kh.hasOwnProperty,Nh=RegExp("^"+Ch.call(Eh).replace(_h,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function xh(e){if(!On(e)||gh(e))return!1;var n=Br(e)?Nh:bh;return n.test($n(e))}function Sh(e,n){return e==null?void 0:e[n]}function Bn(e,n){var o=Sh(e,n);return xh(o)?o:void 0}var ua=Bn(qt,"WeakMap"),ec=Object.create,vh=function(){function e(){}return function(n){if(!On(n))return{};if(ec)return ec(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function Ah(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 Ih(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var Ph=800,Th=16,Oh=Date.now;function $h(e){var n=0,o=0;return function(){var r=Oh(),i=Th-(r-o);if(o=r,i>0){if(++n>=Ph)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function Bh(e){return function(){return e}}var Vr=function(){try{var e=Bn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Vh=Vr?function(e,n){return Vr(e,"toString",{configurable:!0,enumerable:!1,value:Bh(n),writable:!0})}:dh,Rh=$h(Vh);function Dh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var Mh=9007199254740991,Lh=/^(?:0|[1-9]\d*)$/;function fa(e,n){var o=typeof e;return n=n??Mh,!!n&&(o=="number"||o!="symbol"&&Lh.test(e))&&e>-1&&e%1==0&&e<n}function tc(e,n,o){n=="__proto__"&&Vr?Vr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function pa(e,n){return e===n||e!==e&&n!==n}var Fh=Object.prototype,Uh=Fh.hasOwnProperty;function ma(e,n,o){var r=e[n];(!(Uh.call(e,n)&&pa(r,o))||o===void 0&&!(n in e))&&tc(e,n,o)}function Lo(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?tc(o,s,c):ma(o,s,c)}return o}var nc=Math.max;function Kh(e,n,o){return n=nc(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=nc(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),Ah(e,this,s)}}var jh=9007199254740991;function ga(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=jh}function ha(e){return e!=null&&ga(e.length)&&!Br(e)}var Gh=Object.prototype;function Rr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||Gh;return e===o}function qh(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var zh="[object Arguments]";function oc(e){return tn(e)&&Tn(e)==zh}var rc=Object.prototype,Hh=rc.hasOwnProperty,Yh=rc.propertyIsEnumerable,Dr=oc(function(){return arguments}())?oc:function(e){return tn(e)&&Hh.call(e,"callee")&&!Yh.call(e,"callee")};function Wh(){return!1}var ic=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,ac=ic&&typeof module=="object"&&module&&!module.nodeType&&module,Xh=ac&&ac.exports===ic,lc=Xh?qt.Buffer:void 0,Zh=lc?lc.isBuffer:void 0,Fo=Zh||Wh,Jh="[object Arguments]",Qh="[object Array]",ey="[object Boolean]",ty="[object Date]",ny="[object Error]",oy="[object Function]",ry="[object Map]",iy="[object Number]",ay="[object Object]",ly="[object RegExp]",sy="[object Set]",cy="[object String]",dy="[object WeakMap]",uy="[object ArrayBuffer]",fy="[object DataView]",py="[object Float32Array]",my="[object Float64Array]",gy="[object Int8Array]",hy="[object Int16Array]",yy="[object Int32Array]",_y="[object Uint8Array]",by="[object Uint8ClampedArray]",wy="[object Uint16Array]",ky="[object Uint32Array]",ze={};ze[py]=ze[my]=ze[gy]=ze[hy]=ze[yy]=ze[_y]=ze[by]=ze[wy]=ze[ky]=!0,ze[Jh]=ze[Qh]=ze[uy]=ze[ey]=ze[fy]=ze[ty]=ze[ny]=ze[oy]=ze[ry]=ze[iy]=ze[ay]=ze[ly]=ze[sy]=ze[cy]=ze[dy]=!1;function Cy(e){return tn(e)&&ga(e.length)&&!!ze[Tn(e)]}function ya(e){return function(n){return e(n)}}var sc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,Uo=sc&&typeof module=="object"&&module&&!module.nodeType&&module,Ey=Uo&&Uo.exports===sc,_a=Ey&&zs.process,ao=function(){try{var e=Uo&&Uo.require&&Uo.require("util").types;return e||_a&&_a.binding&&_a.binding("util")}catch{}}(),cc=ao&&ao.isTypedArray,ba=cc?ya(cc):Cy,Ny=Object.prototype,xy=Ny.hasOwnProperty;function dc(e,n){var o=Dt(e),r=!o&&Dr(e),i=!o&&!r&&Fo(e),a=!o&&!r&&!i&&ba(e),l=o||r||i||a,s=l?qh(e.length,String):[],c=s.length;for(var d in e)(n||xy.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||fa(d,c)))&&s.push(d);return s}function uc(e,n){return function(o){return e(n(o))}}var Sy=uc(Object.keys,Object),vy=Object.prototype,Ay=vy.hasOwnProperty;function fc(e){if(!Rr(e))return Sy(e);var n=[];for(var o in Object(e))Ay.call(e,o)&&o!="constructor"&&n.push(o);return n}function wa(e){return ha(e)?dc(e):fc(e)}function Iy(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var Py=Object.prototype,Ty=Py.hasOwnProperty;function Oy(e){if(!On(e))return Iy(e);var n=Rr(e),o=[];for(var r in e)r=="constructor"&&(n||!Ty.call(e,r))||o.push(r);return o}function ka(e){return ha(e)?dc(e,!0):Oy(e)}var $y=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,By=/^\w*$/;function Vy(e,n){if(Dt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||ca(e)?!0:By.test(e)||!$y.test(e)||n!=null&&e in Object(n)}var Ko=Bn(Object,"create");function Ry(){this.__data__=Ko?Ko(null):{},this.size=0}function Dy(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var My="__lodash_hash_undefined__",Ly=Object.prototype,Fy=Ly.hasOwnProperty;function Uy(e){var n=this.__data__;if(Ko){var o=n[e];return o===My?void 0:o}return Fy.call(n,e)?n[e]:void 0}var Ky=Object.prototype,jy=Ky.hasOwnProperty;function Gy(e){var n=this.__data__;return Ko?n[e]!==void 0:jy.call(n,e)}var qy="__lodash_hash_undefined__";function zy(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Ko&&n===void 0?qy:n,this}function Vn(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])}}Vn.prototype.clear=Ry,Vn.prototype.delete=Dy,Vn.prototype.get=Uy,Vn.prototype.has=Gy,Vn.prototype.set=zy;function Hy(){this.__data__=[],this.size=0}function Mr(e,n){for(var o=e.length;o--;)if(pa(e[o][0],n))return o;return-1}var Yy=Array.prototype,Wy=Yy.splice;function Xy(e){var n=this.__data__,o=Mr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Wy.call(n,o,1),--this.size,!0}function Zy(e){var n=this.__data__,o=Mr(n,e);return o<0?void 0:n[o][1]}function Jy(e){return Mr(this.__data__,e)>-1}function Qy(e,n){var o=this.__data__,r=Mr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function nn(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])}}nn.prototype.clear=Hy,nn.prototype.delete=Xy,nn.prototype.get=Zy,nn.prototype.has=Jy,nn.prototype.set=Qy;var jo=Bn(qt,"Map");function e_(){this.size=0,this.__data__={hash:new Vn,map:new(jo||nn),string:new Vn}}function t_(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Lr(e,n){var o=e.__data__;return t_(n)?o[typeof n=="string"?"string":"hash"]:o.map}function n_(e){var n=Lr(this,e).delete(e);return this.size-=n?1:0,n}function o_(e){return Lr(this,e).get(e)}function r_(e){return Lr(this,e).has(e)}function i_(e,n){var o=Lr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function on(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])}}on.prototype.clear=e_,on.prototype.delete=n_,on.prototype.get=o_,on.prototype.has=r_,on.prototype.set=i_;var a_="Expected a function";function Ca(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(a_);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(Ca.Cache||on),o}Ca.Cache=on;var l_=500;function s_(e){var n=Ca(e,function(r){return o.size===l_&&o.clear(),r}),o=n.cache;return n}var c_=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,d_=/\\(\\)?/g,u_=s_(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(c_,function(o,r,i,a){n.push(i?a.replace(d_,"$1"):r||o)}),n});function Ea(e){return e==null?"":Js(e)}function lo(e,n){return Dt(e)?e:Vy(e,n)?[e]:u_(Ea(e))}function Fr(e){if(typeof e=="string"||ca(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Na(e,n){n=lo(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[Fr(n[o++])];return o&&o==r?e:void 0}function pc(e,n,o){var r=e==null?void 0:Na(e,n);return r===void 0?o:r}function xa(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var mc=Tt?Tt.isConcatSpreadable:void 0;function f_(e){return Dt(e)||Dr(e)||!!(mc&&e&&e[mc])}function p_(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=f_),i||(i=[]);++a<l;){var s=e[a];o(s)?xa(i,s):i[i.length]=s}return i}function m_(e){var n=e==null?0:e.length;return n?p_(e):[]}function gc(e){return Rh(Kh(e,void 0,m_),e+"")}var Sa=uc(Object.getPrototypeOf,Object),g_="[object Object]",h_=Function.prototype,y_=Object.prototype,hc=h_.toString,__=y_.hasOwnProperty,b_=hc.call(Object);function w_(e){if(!tn(e)||Tn(e)!=g_)return!1;var n=Sa(e);if(n===null)return!0;var o=__.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&hc.call(o)==b_}function yc(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 k_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:yc(e,n,o)}var C_="\\ud800-\\udfff",E_="\\u0300-\\u036f",N_="\\ufe20-\\ufe2f",x_="\\u20d0-\\u20ff",S_=E_+N_+x_,v_="\\ufe0e\\ufe0f",A_="\\u200d",I_=RegExp("["+A_+C_+S_+v_+"]");function _c(e){return I_.test(e)}function P_(e){return e.split("")}var bc="\\ud800-\\udfff",T_="\\u0300-\\u036f",O_="\\ufe20-\\ufe2f",$_="\\u20d0-\\u20ff",B_=T_+O_+$_,V_="\\ufe0e\\ufe0f",R_="["+bc+"]",va="["+B_+"]",Aa="\\ud83c[\\udffb-\\udfff]",D_="(?:"+va+"|"+Aa+")",wc="[^"+bc+"]",kc="(?:\\ud83c[\\udde6-\\uddff]){2}",Cc="[\\ud800-\\udbff][\\udc00-\\udfff]",M_="\\u200d",Ec=D_+"?",Nc="["+V_+"]?",L_="(?:"+M_+"(?:"+[wc,kc,Cc].join("|")+")"+Nc+Ec+")*",F_=Nc+Ec+L_,U_="(?:"+[wc+va+"?",va,kc,Cc,R_].join("|")+")",K_=RegExp(Aa+"(?="+Aa+")|"+U_+F_,"g");function j_(e){return e.match(K_)||[]}function G_(e){return _c(e)?j_(e):P_(e)}function q_(e){return function(n){n=Ea(n);var o=_c(n)?G_(n):void 0,r=o?o[0]:n.charAt(0),i=o?k_(o,1).join(""):n.slice(1);return r[e]()+i}}var z_=q_("toUpperCase");function H_(){this.__data__=new nn,this.size=0}function Y_(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function W_(e){return this.__data__.get(e)}function X_(e){return this.__data__.has(e)}var Z_=200;function J_(e,n){var o=this.__data__;if(o instanceof nn){var r=o.__data__;if(!jo||r.length<Z_-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new on(r)}return o.set(e,n),this.size=o.size,this}function rn(e){var n=this.__data__=new nn(e);this.size=n.size}rn.prototype.clear=H_,rn.prototype.delete=Y_,rn.prototype.get=W_,rn.prototype.has=X_,rn.prototype.set=J_;function Q_(e,n){return e&&Lo(n,wa(n),e)}function eb(e,n){return e&&Lo(n,ka(n),e)}var xc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,Sc=xc&&typeof module=="object"&&module&&!module.nodeType&&module,tb=Sc&&Sc.exports===xc,vc=tb?qt.Buffer:void 0,Ac=vc?vc.allocUnsafe:void 0;function nb(e,n){if(n)return e.slice();var o=e.length,r=Ac?Ac(o):new e.constructor(o);return e.copy(r),r}function ob(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 Ic(){return[]}var rb=Object.prototype,ib=rb.propertyIsEnumerable,Pc=Object.getOwnPropertySymbols,Ia=Pc?function(e){return e==null?[]:(e=Object(e),ob(Pc(e),function(n){return ib.call(e,n)}))}:Ic;function ab(e,n){return Lo(e,Ia(e),n)}var lb=Object.getOwnPropertySymbols,Tc=lb?function(e){for(var n=[];e;)xa(n,Ia(e)),e=Sa(e);return n}:Ic;function sb(e,n){return Lo(e,Tc(e),n)}function Oc(e,n,o){var r=n(e);return Dt(e)?r:xa(r,o(e))}function Pa(e){return Oc(e,wa,Ia)}function $c(e){return Oc(e,ka,Tc)}var Ta=Bn(qt,"DataView"),Oa=Bn(qt,"Promise"),$a=Bn(qt,"Set"),Bc="[object Map]",cb="[object Object]",Vc="[object Promise]",Rc="[object Set]",Dc="[object WeakMap]",Mc="[object DataView]",db=$n(Ta),ub=$n(jo),fb=$n(Oa),pb=$n($a),mb=$n(ua),Ot=Tn;(Ta&&Ot(new Ta(new ArrayBuffer(1)))!=Mc||jo&&Ot(new jo)!=Bc||Oa&&Ot(Oa.resolve())!=Vc||$a&&Ot(new $a)!=Rc||ua&&Ot(new ua)!=Dc)&&(Ot=function(e){var n=Tn(e),o=n==cb?e.constructor:void 0,r=o?$n(o):"";if(r)switch(r){case db:return Mc;case ub:return Bc;case fb:return Vc;case pb:return Rc;case mb:return Dc}return n});var gb=Object.prototype,hb=gb.hasOwnProperty;function yb(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&hb.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var Ur=qt.Uint8Array;function Ba(e){var n=new e.constructor(e.byteLength);return new Ur(n).set(new Ur(e)),n}function _b(e,n){var o=n?Ba(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var bb=/\w*$/;function wb(e){var n=new e.constructor(e.source,bb.exec(e));return n.lastIndex=e.lastIndex,n}var Lc=Tt?Tt.prototype:void 0,Fc=Lc?Lc.valueOf:void 0;function kb(e){return Fc?Object(Fc.call(e)):{}}function Cb(e,n){var o=n?Ba(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Eb="[object Boolean]",Nb="[object Date]",xb="[object Map]",Sb="[object Number]",vb="[object RegExp]",Ab="[object Set]",Ib="[object String]",Pb="[object Symbol]",Tb="[object ArrayBuffer]",Ob="[object DataView]",$b="[object Float32Array]",Bb="[object Float64Array]",Vb="[object Int8Array]",Rb="[object Int16Array]",Db="[object Int32Array]",Mb="[object Uint8Array]",Lb="[object Uint8ClampedArray]",Fb="[object Uint16Array]",Ub="[object Uint32Array]";function Kb(e,n,o){var r=e.constructor;switch(n){case Tb:return Ba(e);case Eb:case Nb:return new r(+e);case Ob:return _b(e,o);case $b:case Bb:case Vb:case Rb:case Db:case Mb:case Lb:case Fb:case Ub:return Cb(e,o);case xb:return new r;case Sb:case Ib:return new r(e);case vb:return wb(e);case Ab:return new r;case Pb:return kb(e)}}function jb(e){return typeof e.constructor=="function"&&!Rr(e)?vh(Sa(e)):{}}var Gb="[object Map]";function qb(e){return tn(e)&&Ot(e)==Gb}var Uc=ao&&ao.isMap,zb=Uc?ya(Uc):qb,Hb="[object Set]";function Yb(e){return tn(e)&&Ot(e)==Hb}var Kc=ao&&ao.isSet,Wb=Kc?ya(Kc):Yb,Xb=1,Zb=2,Jb=4,jc="[object Arguments]",Qb="[object Array]",ew="[object Boolean]",tw="[object Date]",nw="[object Error]",Gc="[object Function]",ow="[object GeneratorFunction]",rw="[object Map]",iw="[object Number]",qc="[object Object]",aw="[object RegExp]",lw="[object Set]",sw="[object String]",cw="[object Symbol]",dw="[object WeakMap]",uw="[object ArrayBuffer]",fw="[object DataView]",pw="[object Float32Array]",mw="[object Float64Array]",gw="[object Int8Array]",hw="[object Int16Array]",yw="[object Int32Array]",_w="[object Uint8Array]",bw="[object Uint8ClampedArray]",ww="[object Uint16Array]",kw="[object Uint32Array]",je={};je[jc]=je[Qb]=je[uw]=je[fw]=je[ew]=je[tw]=je[pw]=je[mw]=je[gw]=je[hw]=je[yw]=je[rw]=je[iw]=je[qc]=je[aw]=je[lw]=je[sw]=je[cw]=je[_w]=je[bw]=je[ww]=je[kw]=!0,je[nw]=je[Gc]=je[dw]=!1;function Go(e,n,o,r,i,a){var l,s=n&Xb,c=n&Zb,d=n&Jb;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!On(e))return e;var f=Dt(e);if(f){if(l=yb(e),!s)return Ih(e,l)}else{var u=Ot(e),p=u==Gc||u==ow;if(Fo(e))return nb(e,s);if(u==qc||u==jc||p&&!i){if(l=c||p?{}:jb(e),!s)return c?sb(e,eb(l,e)):ab(e,Q_(l,e))}else{if(!je[u])return i?e:{};l=Kb(e,u,s)}}a||(a=new rn);var m=a.get(e);if(m)return m;a.set(e,l),Wb(e)?e.forEach(function(y){l.add(Go(y,n,o,y,e,a))}):zb(e)&&e.forEach(function(y,g){l.set(g,Go(y,n,o,g,e,a))});var h=d?c?$c:Pa:c?ka:wa,_=f?void 0:h(e);return Dh(_||e,function(y,g){_&&(g=y,y=e[g]),ma(l,g,Go(y,n,o,g,e,a))}),l}var Cw=1,Ew=4;function so(e){return Go(e,Cw|Ew)}var Nw="__lodash_hash_undefined__";function xw(e){return this.__data__.set(e,Nw),this}function Sw(e){return this.__data__.has(e)}function Kr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new on;++n<o;)this.add(e[n])}Kr.prototype.add=Kr.prototype.push=xw,Kr.prototype.has=Sw;function vw(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 Aw(e,n){return e.has(n)}var Iw=1,Pw=2;function zc(e,n,o,r,i,a){var l=o&Iw,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&Pw?new Kr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var h=e[u],_=n[u];if(r)var y=l?r(_,h,u,n,e,a):r(h,_,u,e,n,a);if(y!==void 0){if(y)continue;p=!1;break}if(m){if(!vw(n,function(g,w){if(!Aw(m,w)&&(h===g||i(h,g,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(h===_||i(h,_,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function Tw(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function Ow(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var $w=1,Bw=2,Vw="[object Boolean]",Rw="[object Date]",Dw="[object Error]",Mw="[object Map]",Lw="[object Number]",Fw="[object RegExp]",Uw="[object Set]",Kw="[object String]",jw="[object Symbol]",Gw="[object ArrayBuffer]",qw="[object DataView]",Hc=Tt?Tt.prototype:void 0,Va=Hc?Hc.valueOf:void 0;function zw(e,n,o,r,i,a,l){switch(o){case qw:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case Gw:return!(e.byteLength!=n.byteLength||!a(new Ur(e),new Ur(n)));case Vw:case Rw:case Lw:return pa(+e,+n);case Dw:return e.name==n.name&&e.message==n.message;case Fw:case Kw:return e==n+"";case Mw:var s=Tw;case Uw:var c=r&$w;if(s||(s=Ow),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=Bw,l.set(e,n);var f=zc(s(e),s(n),r,i,a,l);return l.delete(e),f;case jw:if(Va)return Va.call(e)==Va.call(n)}return!1}var Hw=1,Yw=Object.prototype,Ww=Yw.hasOwnProperty;function Xw(e,n,o,r,i,a){var l=o&Hw,s=Pa(e),c=s.length,d=Pa(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:Ww.call(n,p)))return!1}var m=a.get(e),h=a.get(n);if(m&&h)return m==n&&h==e;var _=!0;a.set(e,n),a.set(n,e);for(var y=l;++u<c;){p=s[u];var g=e[p],w=n[p];if(r)var b=l?r(w,g,p,n,e,a):r(g,w,p,e,n,a);if(!(b===void 0?g===w||i(g,w,o,r,a):b)){_=!1;break}y||(y=p=="constructor")}if(_&&!y){var S=e.constructor,E=n.constructor;S!=E&&"constructor"in e&&"constructor"in n&&!(typeof S=="function"&&S instanceof S&&typeof E=="function"&&E instanceof E)&&(_=!1)}return a.delete(e),a.delete(n),_}var Zw=1,Yc="[object Arguments]",Wc="[object Array]",jr="[object Object]",Jw=Object.prototype,Xc=Jw.hasOwnProperty;function Qw(e,n,o,r,i,a){var l=Dt(e),s=Dt(n),c=l?Wc:Ot(e),d=s?Wc:Ot(n);c=c==Yc?jr:c,d=d==Yc?jr:d;var f=c==jr,u=d==jr,p=c==d;if(p&&Fo(e)){if(!Fo(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new rn),l||ba(e)?zc(e,n,o,r,i,a):zw(e,n,c,o,r,i,a);if(!(o&Zw)){var m=f&&Xc.call(e,"__wrapped__"),h=u&&Xc.call(n,"__wrapped__");if(m||h){var _=m?e.value():e,y=h?n.value():n;return a||(a=new rn),i(_,y,o,r,a)}}return p?(a||(a=new rn),Xw(e,n,o,r,i,a)):!1}function Zc(e,n,o,r,i){return e===n?!0:e==null||n==null||!tn(e)&&!tn(n)?e!==e&&n!==n:Qw(e,n,o,r,Zc,i)}function e0(e,n){return e!=null&&n in Object(e)}function t0(e,n,o){n=lo(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=Fr(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&&ga(i)&&fa(l,i)&&(Dt(e)||Dr(e)))}function n0(e,n){return e!=null&&t0(e,n,e0)}function o0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function r0(e,n){return n.length<2?e:Na(e,yc(n,0,-1))}var i0="[object Map]",a0="[object Set]",l0=Object.prototype,s0=l0.hasOwnProperty;function Jc(e){if(e==null)return!0;if(ha(e)&&(Dt(e)||typeof e=="string"||typeof e.splice=="function"||Fo(e)||ba(e)||Dr(e)))return!e.length;var n=Ot(e);if(n==i0||n==a0)return!e.size;if(Rr(e))return!fc(e).length;for(var o in e)if(s0.call(e,o))return!1;return!0}function qo(e,n){return Zc(e,n)}function Qc(e,n){return n=lo(n,e),e=r0(e,n),e==null||delete e[Fr(o0(n))]}function c0(e){return w_(e)?void 0:e}var d0=1,u0=2,f0=4,zo=gc(function(e,n){var o={};if(e==null)return o;var r=!1;n=Ws(n,function(a){return a=lo(a,e),r||(r=a.length>1),a}),Lo(e,$c(e),o),r&&(o=Go(o,d0|u0|f0,c0));for(var i=n.length;i--;)Qc(o,n[i]);return o});function ed(e,n,o,r){if(!On(e))return e;n=lo(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=Fr(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=On(f)?f:fa(n[i+1])?[]:{})}ma(s,c,d),s=s[c]}return e}function p0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=Na(e,l);o(s,l)&&ed(a,lo(l,e),s)}return a}function m0(e,n){return p0(e,n,function(o,r){return n0(e,r)})}var Ra=gc(function(e,n){return e==null?{}:m0(e,n)});function g0(e,n,o){return e==null?e:ed(e,n,o)}var h0=0;function Gr(e){var n=++h0;return Ea(e)+n}function td(e,n){return e==null?!0:Qc(e,n)}const y0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],Rn=e=>{var n,o,r,i,a,l;((o=(n=e.confluent)==null?void 0:n.authentication)==null?void 0:o.mode)==="none"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client,delete e.confluent.authentication.basic),((i=(r=e.confluent)==null?void 0:r.authentication)==null?void 0:i.mode)==="basic"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client),((l=(a=e.confluent)==null?void 0:a.authentication)==null?void 0:l.mode)==="oauth2"&&delete e.confluent.authentication.basic,y0.some(s=>qo(e.confluent,s))&&(e.confluent=null)},_0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Rn((n=e.config)==null?void 0:n.schema_registry)}},b0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Rn((n=e.config)==null?void 0:n.schema_registry)}},w0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Rn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Rn(i==null?void 0:i.schema_registry)})}},k0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Rn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Rn(i==null?void 0:i.schema_registry)})}},C0={shamefullyTransformPayload:({payload:e})=>{var n;Rn((n=e.config)==null?void 0:n.schema_registry)}},E0={"config-static_tags":{...Or,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"}]}}}},N0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function Da(e,n){const o=N0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Ma=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),co={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},nd=Symbol("TOASTER_PROVIDER");function od(){return t.inject(Ma,[])}function x0(e){t.provide(Ma,e)}const S0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},rd=(e,n)=>(e.order??0)-(n.order??0),id=(e,n)=>S0(e,n)||rd(e,n)||e.model.localeCompare(n.model),Fe={useI18n:Be,usePluginMetaData:Pg,usePluginHelpers:Vs,useSchemas:e=>{const{capitalize:n}=ye.useStringHelpers(),{convertToDotNotation:o}=Vs(),{i18n:{t:r}}=Be(),i=od(),a={"application-registration":{overwriteDefault:!0,formSchema:{...Vg}},datadog:{...Rg},"exit-transformer":{...Dg},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Xg},"statsd-advanced":{...Zg},"route-by-header":{...zg},"ai-prompt-decorator":{...Tg},"ai-prompt-template":{...Og},"ai-proxy-advanced":{...$g},"ai-llm-as-judge":{...Bg},"vault-auth":{...Qg},"oas-validation":{...Ug},mocking:{...Fg},"rate-limiting":{...$r},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":$r["config-consumer_groups"]}:{...$r},"graphql-rate-limiting-advanced":{...Mg},"injection-protection":{...Lg},"response-ratelimiting":{...$r},"pre-function":{...Gs},"post-function":{...Gs},"request-transformer-advanced":{...Gg},"response-transformer":{...qs},"response-transformer-advanced":{...qg},zipkin:{...E0},"upstream-oauth":{...Jg},saml:{...Hg},"kafka-upstream":{..._0},"solace-consume":{...Yg},"solace-upstream":{...Wg},"key-auth":kg(e),"key-auth-enc":vg(e),confluent:{...b0},"confluent-consume":{...w0},"kafka-consume":{...k0},"kafka-log":{...C0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,N,x,v)=>{let V={};(N||C)&&(V=N||(C.fields?C.fields:C));const L=l().concat(C.blacklist?C.blacklist:[]),k=Object.keys(V).filter(U=>!L.includes(U)),Y=k.indexOf("comparator");Y>-1&&k.splice(Y,1);let P={fields:[]};const G={};k.forEach(U=>{d(V[U],U,V,G,P,x)});const j=G.name,te=Gt[j],X=[],D=U=>{const A=["cluster-cache"];for(const T of A)if(U.model.includes(T))return!1;return new RegExp("(?<=-redis-).*").test(U.model)};if(P._supported_redis_partial_type=C._supported_redis_partial_type,P._redis_partial_path=C._redis_partial_path,De.getSharedFormName(j)||Da(j,i)||te!=null&&te.useLegacyForm||e!=null&&e.credential||v==="freeform"){if(te!=null&&te.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const U of P.fields)if(D(U)){X.push(U);continue}P.fields=P.fields.filter(U=>!D(U)),X.length&&P.fields.push({id:"_redis",fields:X,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}P.fields.sort((U,A)=>(U.order=U.order||0,A.order=A.order||0,U.order-A.order))}else{const U=[],A=[],T=[],K=[],z={};if(te!=null&&te.fieldRules){const ie=[...te.fieldRules.atLeastOneOf??[],...te.fieldRules.onlyOneOf??[],...te.fieldRules.mutuallyRequired??[]];if(te.fieldRules.onlyOneOfMutuallyRequired)for(const he of te.fieldRules.onlyOneOfMutuallyRequired)ie.push(...he);for(const he of ie)for(const Z of he)z[Z.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const ie of P.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&D(ie)){K.push(ie);continue}if(ie.pinned){U.push(ie);continue}if(ie.required||z[ie.model]!==void 0){z[ie.model]===!1&&(z[ie.model]=!0),A.push(ie);continue}T.push(ie)}K.length&&T.push({id:"_redis",fields:K,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const J=Object.entries(z).filter(([,ie])=>!ie).map(([ie])=>ie.replace(/-/g,".").replace(/_/g,"-"));J.length>0&&console.warn(`Unknown checked fields for plugin ${j}: ${J.join(", ")}`);const Q=[];U.length>0&&Q.push({fields:U.sort(rd)}),(A.length>0||T.length>0)&&Q.push({fields:A.sort(id),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:T.sort(id),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"}}),P={groups:Q}}return{schema:P,model:G,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",d=(C,N,x,v,V,L)=>{const k=c(C);return v[N]=k?C.default:null,C.id=N,C.model=N,C.fields&&C.type==="record"?u(C,N,x,v,V,L):(x[N]=C,S(C,v),L&&L[N]&&f(x[N],L[N]),V.fields.push(C)),x},f=(C,N)=>(N&&(Object.assign(C,N),N.label&&(C.label=N.label)),C),u=(C,N,x,v,V,L)=>{C.fields.forEach(k=>{Object.keys(k).forEach(Y=>{const P=k[Y];x=d(P,N+"-"+Y,x,v,V,L)})})},p=(C,N)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const x=e==null?void 0:e.entityId;N[C.model]=x?{id:x}:null},m=C=>{C.type="input",C.inputType="number",C.between&&C.between.length===2&&(C.min=C.between[0],C.max=C.between[1])},h=C=>{Object.prototype.hasOwnProperty.call(C,"one_of")?(C.type="select",C.values=C.one_of,C.selectOptions={hideNoneSelectedText:!0}):(C.type="input",C.inputType="text")},_=C=>{C.type="checkbox",C.default=!0,C.required=!1},y=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:N}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Ve,model:C.model,valueArrayType:N==="integer"?"number":N||"string",inputAttributes:{...Ve.inputAttributes,type:N==="integer"?"number":"text",inputMode:N==="integer"?"numeric":"text"}}]}}]}}else C.values.fields&&(C.schema={fields:[{type:"object",model:"object",schema:{fields:C.values.fields.map(N=>{const x=Object.keys(N)[0];return{model:x,type:"input",label:n(x),placeholder:x,inputType:N[x].type}})}}]})},g=C=>C.fields.reduce((N,x)=>(x.fields&&x.fields.forEach(v=>{N[v.model]=v}),x.model&&(N[x.model]=x),N),{}),w=(C,N)=>{if(!De.customFields.includes(C.model))return;const x=g(C);De.customFields.forEach(v=>{Object.keys(x).forEach(V=>{const L=c(x[V]);N[V]=L?x[V].default:null}),delete N[v]})},b=(C,N)=>C.inputType==="hidden"?"":o(n(C.label||N.replace(/_/g," "))),S=(C,N)=>{switch(w(C,N),C.type){case"foreign":p(C,N);break;case"number":m(C),C.attributes={step:"any"};break;case"integer":m(C);break;case"string":h(C);break;case"boolean":_(C);break;case"map":y(C);break}C.inputType==="foreign"&&p(C,N),C.label=b(C,C.model)};function E(C,N){if(N==null||N.type&&N.type!=="record"||typeof C!="object"||C==null)return C;const x={};for(const v of N.fields){const V=Object.keys(v)[0],L=v[V];L.type==="record"?x[V]=E(C[V],L):L.type==="array"&&Array.isArray(C[V])&&L.elements.type==="record"?x[V]=C[V].map(k=>E(k,L.elements)):x[V]=C[V]}return x}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:ro,pruneRecord:E}},useExperimentalFreeForms:od,useProvideExperimentalFreeForms:x0},ct="/v2/control-planes/{controlPlaneId}/core-entities",bt="/{workspace}",Ze={list:{konnect:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},kongManager:{all:`${bt}/plugins`,forEntity:`${bt}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ct}/v1/available-plugins`,streamingCustomPlugins:`${ct}/custom-plugins`,schemaCustomPluginItem:`${ct}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ct}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${bt}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},edit:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ct}/{resourceEndpoint}`,edit:`${ct}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ct}/{entity}/{id}`,entityGetAll:`${ct}/{entity}`,entityPeek:`${ct}/{entity}?size={amount}`},kongManager:{create:{all:`${bt}/plugins`,forEntity:`${bt}/{entityType}/{entityId}/plugins`},edit:{all:`${bt}/plugins/{id}`,forEntity:`${bt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${bt}/schemas/plugins/{plugin}`,credential:{create:`${bt}/{resourceEndpoint}`,edit:`${bt}/{resourceEndpoint}/{id}`},credentialSchema:`${bt}/schemas/{plugin}`,entityGetOne:`${bt}/{entity}/{id}`,entityGetAll:`${bt}/{entity}`}},item:{konnect:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${bt}/plugins/{id}`,forEntity:`${bt}/{entityType}/{entityId}/plugins/{id}`}}},v0={key:0},A0=ve(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Fe.usePluginHelpers(),{i18n:{t:r}}=Fe.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",v0,[(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:uo}=Xe.createI18n("en-us",Je);function La(e){return e.map(n=>({value:n,label:`${n}`}))}const Fa="*",ad="$",ld=".";function Mt(...e){return e.join(ld)}function Ua(...e){return Mt(ad,...e)}function sd(e){return e.startsWith(Mt(ad,""))}function fo(e){return e.split(ld).filter(n=>n!=="")}function Ho(e){const n=fo(e);return n[n.length-1]}const I0=e=>{var n,o;return e.type==="redis-ce"?uo("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.length?uo("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?uo("redis.shared_configuration.type_label.cluster"):uo("redis.shared_configuration.type_label.host_port")},P0={"redis-ce":uo("redis.shared_configuration.open_source"),"redis-ee":uo("redis.shared_configuration.enterprise")},T0=e=>P0[e]??"";function O0(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 $0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const[B0,V0]=qe.createInjectionState(function(n,o,r,i){const a=M0(n),l=new Map,s=t.reactive({}),c=t.toRef(()=>r??{}),d=t.useSlots();t.provide(Ka,zo(d,"default",po));function f(m){Object.keys(s).forEach(h=>{delete s[h]}),Object.assign(s,m)}function u(m){let h;!m||!p(t.toValue(m))?h=a.getDefault():h=so(t.toValue(m)),Br(c.value.prepareFormData)?f(c.value.prepareFormData(h)):f(h)}function p(m){return Br(c.value.hasValue)?c.value.hasValue(m):!!m}return t.watch(s,m=>{i==null||i(t.toValue(m))},{deep:!0}),t.watch(()=>o==null?void 0:o.value,m=>{u(m)},{deep:!0,immediate:!0}),{formData:s,schema:n,config:c,fieldRendererRegistry:l,resetFormData:f,...a}}),cd=Symbol("free-form-field-path"),Ka=Symbol("free-form-field-renderer-slots"),dd=Symbol("free-form-field-reset-label-path-setting"),po="free-form-field-renderers-slot",R0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function D0(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,ja(r,n)):e.type==="array"&&e.elements&&Object.assign(o,Ga(e,n)),o}function ja(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?Mt(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=ja(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=Ga(a,l);Object.assign(o,s)}}return o}function Ga(e,n=""){const o={};if(e.elements){const r=e.elements,i=Mt(n,Fa);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=ja(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=Ga(r,i);Object.assign(o,a)}}return o}function qa(e){const n=fo(e).map(o=>/^\d+$/.test(o)?Fa:o);return Mt(...n)}function M0(e){const n=t.toValue(e),o=t.computed(()=>n?D0(n):{});function r(u){var p;return u==null?n:(p=o.value)==null?void 0:p[qa(u)]}function i(u,p=!1){const m=r(u);return m?m.default!==void 0?m.default:p||m.required?m.type==="record"?a(m,u):m.type==="array"?[]:null:null:null}function a(u,p){const m={};if(Array.isArray(u.fields))for(const h of u.fields){const _=Object.keys(h)[0],y=p?`${p}.${_}`:_,g=i(y,!1);g!==void 0&&(m[_]=g)}return m}function l(u){return u?i(u,!0):a(r(),"")}function s(u){const p=r(u),m=p!=null&&p.description?Ir.marked.parse(p.description,{async:!1}):void 0;return{...R0,"data-testid":`ff-label-${u}`,info:m}}function c(u){var m;const p=r(u);return La((p==null?void 0:p.one_of)||((m=p.elements)==null?void 0:m.one_of)||[])}function d(u){const p=r(u),m=p==null?void 0:p.default;let h=null;if((p==null?void 0:p.type)==="foreign"&&(m!=null&&m.id))h=m.id;else{if(m==null||typeof m=="object"||m==="")return null;if(Array.isArray(m)){if(m.length===0)return null;h=m.join(", ")}else h=m.toString()}return`Default: ${h}`}function f(){return o.value}return{getSchemaMap:f,getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function He(){const e=V0();if(!e)throw new Error("useFormShared() called without provider.");return e}const ud=e=>{const n=t.inject(cd,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!sd(r)&&n.value&&(i=Mt(n.value,r)),sd(r)&&(i=i.slice(Ua("").length)),i});return t.provide(cd,o),o},L0=e=>{const{getSchema:n,fieldRendererRegistry:o}=He(),{default:r,...i}=t.useSlots(),a=t.inject(Ka),l=t.computed(()=>{const c=t.toValue(a),d=Object.keys(i).filter(f=>f!==po&&f!=="item").reduce((f,u)=>{const p=qa(Mt(t.toValue(e),u));return{...f,[p]:i[u]}},{});return c?{...c,...d}:d});t.provide(Ka,l);const s=t.toValue(e);return t.computed(()=>{if(r)return;const c=l.value[qa(t.toValue(e))];if(c)return c;for(const[d,f]of o)if(d({path:s,schema:n(s)}))return f})},F0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function U0(e){return F0[e.toLocaleLowerCase()]??e}function K0(e,n){const o=t.inject(dd,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Mt(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?Mt(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(dd,l),a}function j0(e){return fo(e).map(o=>o.split("_").map(U0).join(" ")).map(z_).join(" › ")}function G0(e,n){const o=t.toValue(e),r=Ho(o),{config:i,getSchema:a}=He(),l=K0(r,n),s=fd(e);return t.computed(()=>{var p;const c=l.value??r,d=(p=s.value.parent)!=null&&p.path?a(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":j0(c);return i.value.transformLabel?i.value.transformLabel(u,o):u})}function Lt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=He(),a=t.toValue(e),l=t.toValue(n),s=G0(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 q0(e){var r;const n=fo(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Mt(o.parent.path,i):i,o={parent:o}}return o}function fd(e){return t.computed(()=>q0(t.toValue(e)))}function pd(e){const{formData:n}=He(),o=ud(e);return{value:t.computed({get:()=>pc(n,fo(o.value)),set:i=>g0(n,fo(o.value),i)})}}function Nt(e){const{getSchema:n}=He(),o=ud(e),r=L0(o),{value:i}=pd(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:fd(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function Yo(e){const{getSchema:n}=He(),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 md(e,n){const o=new WeakMap,r=new Map;function i(){return Gr(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((d,f)=>{c.add(f)}),Array.from(r.keys()).forEach(d=>{c.has(d)||r.delete(d)})},{immediate:!0,deep:!0}),{getKey:a}}const z0="__request_callout_";function gd(){return Gr(z0)}const Dn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=t.useAttrs(),i=n,a=t.computed(()=>o.multiline?Te.KTextArea:Te.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{s.value=u});const{config:c}=He(),d=u=>{u!==s.value&&(s.value=u,c.value.updateOnChange||i("update:modelValue",u))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":e.modelValue,resizable:e.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,h)=>({name:h,fn:t.withCtx(_=>[t.renderSlot(u.$slots,h,t.normalizeProps(t.guardReactiveProps(_)))])}))]),1040,["character-limit","model-value","resizable"]))}}),H0=["innerHTML"],mo=ve(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}=Be(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=Nt(t.toRef(()=>e.name)),c=Lt(s.path,t.toRef({...i,...o})),d=l==null?void 0:l.value;function f(g){d!==void 0&&g===""&&g!==d?(l.value=null,a("update:modelValue",null)):(l.value=g.trim(),a("update:modelValue",g.trim()))}const u=t.computed(()=>{var g;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((g=s.schema)==null?void 0:g.value).encrypted}),p=t.inject(De.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var g;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((g=s.schema.value)!=null&&g.referenceable)}),h=t.computed(()=>({referenceable:m.value})),_=Yo(s.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return(g,w)=>{var S;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},g.$attrs)),[t.createVNode(Dn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":y.value,"data-autofocus":t.unref(_),"data-testid":`ff-${s.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.multiline&&e.error?e.errorMessage:e.help,"model-value":t.unref(l)??"",multiline:e.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(S=t.unref(c).labelAttributes)!=null&&S.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,H0)],!0)]),key:"0"}:void 0,e.multiline&&e.error?void 0:{name:"help",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"help",{},void 0,!0)]),key:"1"}]),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-8b9ee4c2"]]),Y0=["innerHTML"],qr=ve(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}=Nt(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=Lt(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,Y0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),hd=ve(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"]]),W0=["data-testid"],X0=["data-testid"],Z0=["data-testid"],J0=["innerHTML"],Q0={class:"ff-object-field-actions"},ek=["data-testid"],xt=ve(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}=Nt(t.toRef(n,"name")),{getSchema:i,getDefault:a}=He(),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 y,g;if((y=r.ancestors)!=null&&y.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((g=i(w.path))==null?void 0:g.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=Lt(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 y=r.schema.value.fields;return e.omit&&(y=y.filter(g=>!e.omit.includes(Object.keys(g)[0]))),e.fieldsOrder?y.sort((g,w)=>{const b=Object.keys(g)[0],S=Object.keys(w)[0],E=e.fieldsOrder.indexOf(b),C=e.fieldsOrder.indexOf(S);return E===-1&&C===-1?0:E===-1?1:C===-1?-1:E-C}):y});function _(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,y=>{e.collapsible&&(s.value=y)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(y,g)=>{var b;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y.$slots[t.unref(po)]))),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"},y.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(y.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,S=>(t.openBlock(),t.createBlock(ht,{key:Object.keys(S)[0],name:Object.keys(S)[0]},null,8,["name"]))),128))],!0)],16,W0)):(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}`},y.$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(y.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,J0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",Q0,[e.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:g[0]||(g[0]=S=>s.value=!c.value)},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(xe.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:_},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(xe.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(xe.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,Z0),t.createVNode(hd,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(y.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,S=>(t.openBlock(),t.createBlock(ht,{key:Object.keys(S)[0],name:Object.keys(S)[0]},null,8,["name"]))),128))],!0)],8,ek)):t.createCommentVNode("",!0)]),_:3})],16,X0))],64)}}}),[["__scopeId","data-v-6f044592"]]),tk=["innerHTML"],Mn=ve(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}=Nt(t.toRef(()=>e.name)),a=Lt(i.path,o),l=t.computed(()=>{var _;const p=(_=i.schema)==null?void 0:_.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=Yo(i.ancestors);return(p,m)=>{var _;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(Dn,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},[(_=t.unref(a).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,tk)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),nk=["innerHTML"],$t=ve(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},items:{},placeholder:{},multiple:{type:Boolean,default:()=>{}},modelValue:{},label:{},help:{},error:{type:Boolean},searchPlaceholder:{},kpopAttributes:{},dropdownMaxHeight:{},width:{},selectedRowCount:{},collapsedContext:{type:Boolean},filterFunction:{type:Function},autosuggest:{type:Boolean},enableItemCreation:{type:Boolean},loading:{type:Boolean},dropdownFooterText:{},dropdownFooterTextPosition:{},itemCreationValidator:{type:Function},enableFiltering:{type:Boolean},clearable:{type:Boolean},reuseItemTemplate:{type:Boolean}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=He(),{value:a,...l}=Nt(t.toRef(()=>e.name)),s=Lt(l.path,r),c=t.computed(()=>e.items?e.items:l.path?i(l.path.value):[]),d=t.computed(()=>{var u;return e.multiple!==void 0?e.multiple:((u=l.schema.value)==null?void 0:u.type)==="set"}),f=t.computed(()=>d.value?Te.KMultiselect:Te.KSelect);return(u,p)=>{var h;const m=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(m,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(f),t.mergeProps({key:1},{...r,...t.unref(s)},{modelValue:t.unref(a),"onUpdate:modelValue":[p[0]||(p[0]=_=>t.isRef(a)?a.value=_:null),p[1]||(p[1]=_=>o("update",_))],class:"ff-enum-field",clearable:!t.unref(s).required,"data-testid":`ff-${l.path.value}`,items:c.value,"kpop-attributes":{"data-testid":`${l.path.value}-items`}}),t.createSlots({_:2},["tooltip"in u.$slots||(h=t.unref(s).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(u.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,nk)],!0)]),key:"0"}:void 0,u.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:_})=>[t.renderSlot(u.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(_)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-e67d00d5"]]);function zr(e,n,o=!0){const{value:r,...i}=Nt(t.toRef(e,"name")),a=Lt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(d(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Gr("ff-kv-field-")}function c(y,g,w){const b=w.indexOf(y),S=w.indexOf(g);return b===-1&&S===-1?0:b===-1?1:S===-1?-1:b-S}function d(y,g){const w=Object.entries(y).map(([b,S])=>({id:s(),key:b,value:S}));return g&&w.sort((b,S)=>c(b.key,S.key,g)),w}function f(){const y={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(y),y}function u(y){const g=l.value.findIndex(w=>w.id===y);g!==-1&&l.value.splice(g,1)}function p(){l.value=d(e.initialValue||{},e.keyOrder)}function m(y){l.value=d(y,e.keyOrder)}let h=null;t.watch(l,y=>{if(!o)return;const g=y.length?Object.fromEntries(y.map(({key:w,value:b})=>[w,b]).filter(([w])=>w)):null;r.value=g,h=g,n("change",g)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,y=>{qo(y,h)||_(y)},{deep:!0});function _(y){if(!y){l.value=[];return}const g=new Map;l.value.forEach(E=>{E.key&&g.set(E.key,E)});const w=[],b=Object.keys(y);(e.keyOrder?[...b].sort((E,C)=>c(E,C,e.keyOrder)):b).forEach(E=>{const C=y[E];if(g.has(E)){const N=g.get(E);N.value=C,w.push(N)}else w.push({id:s(),key:E,value:C})}),l.value=w}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const ok=["data-testid"],rk=["data-testid"],ik=["innerHTML"],ak=["data-testid"],lk=ve(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}=Be(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=zr(r,a),m=t.useTemplateRef("root");async function h(E,C="key"){var N;m.value&&(await t.nextTick(),(N=m.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function _(){s();const E=l.value.findIndex(({key:C})=>!C);h(E===-1?l.value.length-1:E)}function y(E){E===l.value.length-1&&s(),h(E+1)}const g=t.inject(De.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var E,C;return e.showVaultSecretPicker??!!((C=(E=p.schema.value)==null?void 0:E.values)!=null&&C.referenceable)}),b=t.computed(()=>({referenceable:w.value}));function S(E,C){l.value[E].value=C}return n({reset:d,setValue:f}),(E,C)=>{var V;const N=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(N,{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},[(V=t.unref(u).labelAttributes)!=null&&V.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,ik)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:1},8,["data-testid"])],8,rk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(L,k)=>(t.openBlock(),t.createElementBlock("div",{key:L.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${k}`},[t.createVNode(Dn,{modelValue:L.key,"onUpdate:modelValue":Y=>L.key=Y,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":k,"data-testid":`ff-key-${t.unref(p).path.value}.${k}`,placeholder:e.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(Y=>h(k,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Dn,{modelValue:L.value,"onUpdate:modelValue":Y=>L.value=Y,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${k}`,"data-value-input":k,placeholder:e.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(Y=>y(k),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(g)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(g)),{key:0,schema:b.value,update:Y=>S(k,Y),value:L.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(g)?(t.openBlock(),t.createBlock(N,{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(v,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${k}`,icon:"",onClick:Y=>t.unref(c)(L.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:1},8,["data-testid","onClick"])],8,ak))),128))],8,ok))}}}),[["__scopeId","data-v-92e0893d"]]),sk=["data-testid"],ck=["innerHTML"],za=ve(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}=Nt(t.toRef(()=>e.name)),s=Lt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var _,y;return((y=(_=l.schema)==null?void 0:_.value)==null?void 0:y.len_min)&&l.schema.value.len_min>0}),d=t.ref("");function f(_){return _.map(y=>y.trim()).filter(Boolean).join(", ")}function u(_){return _.trim().split(",").map(y=>y.trim()).filter(Boolean)}function p(_){d.value=_;const y=u(_),g=!y.length&&c.value?null:y;a.value=g,i("update:modelValue",g)}const m=Yo(l.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return t.watch(a,_=>{const y=_?f(_):"";f(u(d.value))!==y&&(d.value=y)},{immediate:!0}),(_,y)=>{var w;const g=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(g,{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(Dn,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(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,ck)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,sk))}}}),[["__scopeId","data-v-a27f4ff1"]]),dk=["data-testid"],uk=["innerHTML"],fk=ve(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}=Nt(t.toRef(()=>e.name)),s=Lt(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=Yo(l.ancestors),u=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);qo(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 _;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(Dn,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},[(_=t.unref(s).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,uk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,dk))}}}),[["__scopeId","data-v-5749f722"]]),pk=["innerHTML"],mk=ve(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{name:{},labelAttributes:{},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:{t:r}}=Be(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,...s}=Nt(t.toRef(()=>e.name));if(s.error)throw new Error(s.error.message);const c=Lt(s.path,t.toRef({...i,...o})),d=l.value?l.value.id:null,f=t.computed(()=>{var _;return c.value.placeholder?c.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((_=s.schema.value)==null?void 0:_.reference)??"entity"})}),u=t.ref(d??"");function p(_){d!==void 0&&_===""&&_!==d?(l.value=null,a("update:modelValue",null)):(l.value={id:_.trim()},a("update:modelValue",l.value))}const m=Yo(s.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return(_,y)=>{var g;return t.openBlock(),t.createBlock(Dn,t.mergeProps(t.unref(c),{class:"ff-foreign-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${s.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.help,"model-value":u.value,placeholder:f.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(g=t.unref(c).labelAttributes)!=null&&g.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,pk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])}}}),[["__scopeId","data-v-b54c028e"]]),ht=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=Nt(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?$t:mo;case"boolean":return"one_of"in o.schema.value?$t:qr;case"number":case"integer":return"one_of"in o.schema.value?$t:Mn;case"array":return Hr;case"set":return $0(o.schema)?za:$t;case"record":return xt;case"map":return lk;case"json":return fk;case"foreign":return mk;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(po)]))),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:Ua(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:Ua(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)}}}),gk=["data-testid"],hk=["data-testid"],yk=["innerHTML"],_k=["data-testid"],bk={class:"ff-array-field-item-content"},wk=["data-index","data-testid"],Hr=ve(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 C;t.useCssVars(N=>({v3e1c9ee2:E.value}));const o=e,r=n,{i18n:{t:i}}=Be(),{getDefault:a,getSchema:l}=He(),{value:s,...c}=Nt(t.toRef(o,"name")),d=Lt(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 N=l(c.path.value);if(!N)throw new Error(`Schema not found for path: ${c.path.value}`);return N.elements}),u=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=md("ff-array-field",u),m=t.computed(()=>o.appearance==="card"?Te.KCard:"div");function h(N,x){return typeof o.itemLabel=="function"?o.itemLabel(N,x):o.itemLabel||d.value.label||`Item #${x}`}const _=t.computed(()=>u.value.map((N,x)=>({hash:`#${p(N,x)}`,title:""}))),y=t.ref((C=_.value[0])==null?void 0:C.hash),g=async()=>{var x;const N=a(Mt(c.path.value,Fa));Array.isArray(s.value)||(s.value=[]),s.value.push(N),r("add"),o.appearance==="tabs"&&(await t.nextTick(),y.value=(x=_.value[_.value.length-1])==null?void 0:x.hash),await t.nextTick(),S(u.value.length+1)},w=async N=>{var x;Array.isArray(s.value)&&s.value.splice(N,1),r("remove",N),o.appearance==="tabs"&&(y.value=(x=_.value[Math.max(0,N-1)])==null?void 0:x.hash)},b=t.useTemplateRef("root");function S(N){var v;if(!b.value)return;const x=Math.max(0,Math.min(N,u.value.length-1));(v=b.value.querySelector(`[data-index="${x}"] [data-autofocus]`))==null||v.focus()}const E=t.computed(()=>{const{appearance:N,stickyTabs:x}=o;return N!=="tabs"||x==null||x===!1?null:typeof x=="number"?`${o.stickyTabs}px`:typeof x=="string"?x:"0"});return(N,x)=>{var Y;const v=t.resolveComponent("KAlert"),V=t.resolveComponent("KLabel"),L=t.resolveComponent("KButton"),k=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(v,{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-${e.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":e.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(V,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},[(Y=t.unref(d).labelAttributes)!=null&&Y.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,yk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(L,{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:g},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,hk),u.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.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,(P,G)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(P,G),class:"ff-array-field-item","data-index":G,"data-testid":`ff-array-item-${c.path.value}.${G}`},{default:t.withCtx(()=>[t.createElementVNode("div",bk,[N.$slots.item?t.renderSlot(N.$slots,"item",{key:0,fieldName:String(G),index:G},void 0,!0):t.createCommentVNode("",!0),f.value.type==="array"&&f.value.elements.type==="string"?(t.openBlock(),t.createBlock(za,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(G)},null,8,["help","name"])):(t.openBlock(),t.createBlock(ht,{key:2,name:String(G)},null,8,["name"]))]),t.createVNode(L,{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}.${G}`,icon:"",onClick:j=>w(G)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,_k)):(t.openBlock(),t.createBlock(t.unref(Te.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(k,{modelValue:y.value,"onUpdate:modelValue":x[0]||(x[0]=P=>y.value=P),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:_.value},t.createSlots({_:2},[t.renderList(u.value,(P,G)=>({name:t.unref(p)(P,G),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":G,"data-testid":`ff-array-item-${c.path.value}.${G}`},[N.$slots.item?t.renderSlot(N.$slots,"item",{key:0,fieldName:String(G),index:G},void 0,!0):(t.openBlock(),t.createBlock(ht,{key:1,name:String(G)},null,8,["name"]))],8,wk)])})),t.renderList(u.value,(P,G)=>({name:`${t.unref(p)(P,G)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h(P,G))+" ",1),t.createVNode(L,{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}.${G}`,icon:"",onClick:t.withModifiers(j=>w(G),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,gk))}}}),[["__scopeId","data-v-3edd064c"]]),Wo=Symbol(),kk=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=He(),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(({[Wo]: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(xt,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode($t,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(xt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode($t,t.mergeProps(d,{items:t.unref(La)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),Ck=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=He();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Wo]=gd())}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(kk,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),yd=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),{fieldRendererRegistry:r}=He();return o&&r.set(n.match,o),(i,a)=>null}}),yt=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(),{getSchema:a,formData:l}=B0(e.schema,t.computed(()=>e.data),e.config,c=>r("change",c)),s=t.computed(()=>{const{fields:c}=a();return e.fieldsOrder?c.sort((d,f)=>{const u=Object.keys(d)[0],p=Object.keys(f)[0],m=e.fieldsOrder.indexOf(u),h=e.fieldsOrder.indexOf(p);return m===-1&&h===-1?0:m===-1?1:h===-1?-1:m-h}):c});return n({getInnerData:()=>t.toRaw(l)}),(c,d)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(po)]))),t.renderSlot(c.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,f=>(t.openBlock(),t.createBlock(ht,{key:Object.keys(f)[0],name:Object.keys(f)[0],onGlobalAction:d[0]||(d[0]=(u,p)=>r("globalAction",u,p))},null,8,["name"]))),128))])]),_:3}))}}),Ek={class:"ff-advanced-fields"},Yr=ve(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{getSchema:o}=He(),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),"data-testid":"view-advanced","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",Ek,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(ht,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(ht,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(za,{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-54f66af5"]]),Nk=ve(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}}=Be();function a(d,f=!1){return d.reduce((u,{[Wo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=so(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[Wo]=gd()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(_=>p[_])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=so(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{[Wo]:h,depends_on:_,...y}=m;return{depends_on:_.map(g=>u[g]).filter(g=>g!=null),...y}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(yt,{class:"rc-config-form",config:r,data:e.data,schema:e.schema,tag:"div",onChange:c},{[t.unref(po)]:t.withCtx(()=>[t.createVNode(yd,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(mo,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(yd,{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(xt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Ck),t.createVNode(xt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(xt,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(xt,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(Yr)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),xk={class:"ff-form-pinned-fields"},Sk={class:"ff-form-config-form"},Ha=ve(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Xe.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),d=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return Ra(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",xk,[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:t.unref(a),onModelUpdated:e.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:"ff-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",Sk,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:d.value,schema:s.value,onChange:u[0]||(u[0]=(...p)=>e.onFormChange&&e.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),vk=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(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ha,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Nk,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Ak={key:1},Ik=["innerHTML"],Pk={class:"horizontal-container"},_d=ve(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}=He(),a=Nt(t.toRef(()=>e.name)),l=Lt(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",Ak,[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,Ik)]),key:"0"}:void 0]),1040),t.createElementVNode("div",Pk,[(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]=_=>t.unref(a).value.value=_),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),Tk={class:"sp-form-request-limits-subtitle"},Ok={class:"sp-form-request-limits-content"},$k={class:"sp-form-window-type"},Bk={class:"sp-form-request-limits-items"},Vk={class:"sp-form-request-limits-row"},Rk=["id"],Dk={class:"sp-form-request-limits-actions"},Mk={key:0,class:"sp-form-request-limits-examples"},Lk={class:"sp-form-request-limits-examples-badges"},Ya="config.window_type",Fk=ve(t.defineComponent({__name:"RequestLimitsForm",setup(e){var y;const{t:n}=Xe.createI18n("en-us",Je),{formData:o,getSelectItems:r,getSchema:i}=He(),a=t.computed(()=>{var w,b;const g=(b=(w=o.config)==null?void 0:w.limit)==null?void 0:b.map((S,E)=>{var C,N;return{limit:S,windowSize:(N=(C=o.config)==null?void 0:C.window_size)==null?void 0:N[E]}});return!Array.isArray(g)||g.length===0?[{limit:null,windowSize:null}]:g}),{getKey:l}=md("request-limits",a),s=g=>{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(g+1,0,null),o.config.window_size.splice(g+1,0,null))},c=g=>{o.config&&(o.config.limit.splice(g,1),o.config.window_size.splice(g,1))},d=(y=i(Ya))==null?void 0:y.default,f=t.computed(()=>pc(o,Ya)),u=t.computed(()=>r(Ya).sort((g,w)=>g.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]:[]),_=(g,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=[g.config.limit],o.config.window_size=[g.config.window_size]};return(g,w)=>{const b=t.resolveComponent("KLabel"),S=t.resolveComponent("KButton"),E=t.resolveComponent("KBadge"),C=t.resolveComponent("KTooltip"),N=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(N,{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",Tk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Ok,[t.createElementVNode("div",$k,[t.createVNode(_d,{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",Bk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(x,v)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(x,v)},[t.createVNode(b,{for:`sp-form-request-limits-item-${v}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:v+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",Vk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${v}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Mn,{name:`$.config.limit.${v}`,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(Mn,{name:`$.config.window_size.${v}`,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,Rk),t.createElementVNode("div",Dk,[t.createVNode(S,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(v)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(S,{appearance:"tertiary",onClick:()=>s(v)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),h.value.length>0?(t.openBlock(),t.createElementBlock("div",Mk,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",Lk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(x,v)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${v}`,"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}-${v}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>_(x,`${f.value}-${v}`)},{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"]]),Uk={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Kk=ve(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Xe.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",Uk,[t.createVNode(Mn,{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(mo,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),jk={class:"partial-config-card"},Gk={class:"config-card-row-label"},qk={class:"label-text"},zk=["data-testid"],Hk=["data-testid"],Yk={key:1},Wk=["data-testid"],Xk=["data-testid"],Zk=ve(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Xe.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}=ye.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,_,y;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:((_=r[u])==null?void 0:_.type)??l(u,p),order:((y=r[u])==null?void 0:y.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=O0(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",jk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:h,label:_,value:y,type:g})=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"partial-config-card-row"},[t.createElementVNode("div",Gk,[t.createElementVNode("div",qk,t.toDisplayString(_),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(y)?(t.openBlock(),t.createElementBlock("div",Yk,[g==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(y)},null,8,["text"])],8,Wk)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},t.toDisplayString(y),9,Xk))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,Hk))],8,zk)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Jk=ve(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}=Xe.createI18n("en-us",Je),i=t.inject(De.FORMS_CONFIG),a=n,{getMessageFromError:l}=ye.useErrors(),s=t.computed(()=>{switch(o.partialType){case oo.PartialType.REDIS_CE:return oo.PartialType.REDIS_EE;case oo.PartialType.REDIS_EE:return oo.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 _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{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(oo.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"]]),Qk="#ecfcff",eC="#f1f0ff",tC="#52596e",nC="#e0e4ea",oC="#007d60",rC="#fffce0",iC="#6c7489",aC="#0044f4",lC="#5f9aff",Wa="#000933",Xa="#d60027",sC="#ffe5e5",cC="#00abd2",dC="#d60067",uC="#6f28ff",bd="#afb7c5",Wr="#6c7489",fC="#0044f4",pC="#eefaff",mC="#007d60",gC="#ecfffb",hC="#995c00",Xo="12px",wd="16px",Xr="20px",kd="8px",yC="32px",Cd=Symbol("redis-partial-info"),Ed={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"}},Nd=["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"],_C={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},bC={key:0,class:"shared-redis-config"},wC={class:"shared-redis-config-title"},kC={class:"redis-config-select","data-testid":"redis-config-select"},CC={class:"selected-redis-config"},EC=["data-testid"],NC={class:"select-item-name","data-testid":"selected-redis-config"},xC={class:"empty-redis-config","data-testid":"empty-redis-config"},SC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},vC="1000",AC=ve(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var te;const o=n,{t:r}=Xe.createI18n("en-us",Je),i=e,a=t.inject(Cd),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var X;return i.redisPath?i.redisPath:(X=a==null?void 0:a.redisPath)!=null&&X.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((te=a==null?void 0:a.redisType)==null?void 0:te.value)||"all",d=t.computed(()=>{var X;return!!((X=a==null?void 0:a.redisType)!=null&&X.value)}),f=t.ref(!1),u=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=ye.useErrors(),h=t.ref(i.defaultRedisConfigItem),_=t.ref({}),y=t.ref(),{value:g}=pd("$.partials"),{value:w}=Nt(s),b=t.inject(De.FORMS_CONFIG),{debouncedQueryChange:S,loading:E,error:C,loadItems:N,results:x}=ye.useDebouncedFilter(b,Ed[b.app].getAll,vC,{fetchedItemsKey:"data",searchKeys:["id","name"]}),v=t.computed(()=>C.value?m(C.value):""),V=X=>{let D=`${b.apiBaseUrl}${Ed[b.app].getOne}`;return b.app==="konnect"?D=D.replace(/{controlPlaneId}/gi,(b==null?void 0:b.controlPlaneId)||""):b.app==="kongManager"&&(D=D.replace(/\/{workspace}/gi,b!=null&&b.workspace?`/${b.workspace}`:"")),D=D.replace(/{id}/gi,String(X)),D},L=t.computed(()=>{const X=(x.value||[]).map(D=>({label:D.id,name:D.name,value:D.id,type:D.type,tag:I0(D)})).filter(D=>D.type==="redis-ce"||D.type==="redis-ee");return c!=="all"?X.filter(D=>D.type===c):X}),{axiosInstance:k}=ye.useAxios(b==null?void 0:b.axiosRequestConfig),Y=()=>{p.value?(y.value&&(g.value=y.value,h.value=y.value[0].id,w.value=void 0),w!=null&&w.value&&(_.value=w.value)):(Object.keys(_.value).length&&(w.value=_.value),g!=null&&g.value&&(y.value=g.value),g.value=l?null:void 0)},P=X=>{N(),o("globalAction","notify",X)},G=X=>{o("globalAction","notify",X)},j=async X=>{if(X){h.value=X,g.value=[{id:X}],y.value=[{id:X}],w.value=void 0;try{const D=await k.get(V(X));if(D.data.config){const U=Object.assign(D.data,D.data.config);delete U.config,u.value=U}}catch(D){console.error(D)}}};return t.watch(()=>p.value,()=>{Y()}),t.onBeforeMount(()=>{var X;if(N(),i.defaultRedisConfigItem||g!=null&&g.value){const D=i.defaultRedisConfigItem||((X=g==null?void 0:g.value)==null?void 0:X[0].id);j(D),p.value=!0}else w!=null&&w.value&&(_.value=w.value)}),(X,D)=>{const U=t.resolveComponent("KBadge"),A=t.resolveComponent("KRadio"),T=t.resolveComponent("KSelect"),K=t.resolveComponent("KCard");return d.value?(t.openBlock(),t.createBlock(K,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",_C,[t.createVNode(A,{modelValue:p.value,"onUpdate:modelValue":D[0]||(D[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(U,{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(A,{modelValue:p.value,"onUpdate:modelValue":D[1]||(D[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",bC,[t.createElementVNode("div",wC,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",kC,[t.createVNode(T,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:L.value,loading:t.unref(E),"model-value":h.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:D[3]||(D[3]=z=>j(z==null?void 0:z.value)),onQueryChange:t.unref(S)},{"selected-item-template":t.withCtx(({item:z})=>[t.createElementVNode("div",CC,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",NC,t.toDisplayString(z.name),1),t.createVNode(U,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(z.tag),1)]),_:2},1024)],8,EC)]),empty:t.withCtx(()=>[t.createElementVNode("div",xC,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:D[2]||(D[2]=()=>f.value=!0)},[t.createVNode(t.unref(xe.AddIcon),{size:t.unref(Xo)},null,8,["size"]),t.createElementVNode("span",null,t.toDisplayString(t.unref(r)("redis.shared_configuration.create_new_configuration",{type:t.unref(T0)(t.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),u.value?(t.openBlock(),t.createBlock(Zk,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),v.value?(t.openBlock(),t.createElementBlock("p",SC,t.toDisplayString(v.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(xt,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(Nd),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(Jk,{"partial-type":t.unref(c),visible:f.value,onModalClose:D[4]||(D[4]=z=>f.value=!1),onPartialUpdateFailed:G,onPartialUpdated:P},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(xt,t.mergeProps({key:1},i,{"fields-order":t.unref(Nd),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-2148fcde"]]),IC=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=He();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(hd,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(AC,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),PC=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(yt,{config:r,data:e.data,schema:e.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(xt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Fk),t.createVNode(Kk)]),_:1}),t.createVNode(Yr,null,{default:t.withCtx(()=>[t.createVNode(ht,{name:"config.dictionary_name"}),t.createVNode(ht,{name:"config.lock_dictionary_name"}),t.createVNode(ht,{name:"config.strategy"}),t.createVNode(IC,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(ht,{name:"config.namespace"}),t.createVNode(ht,{name:"config.hide_client_headers"}),t.createVNode(ht,{name:"config.disable_penalty"}),t.createVNode(ht,{name:"config.retry_after_jitter_max"}),t.createVNode(ht,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),TC=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(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ha,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(PC,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),OC={class:"ff-standard-layout"},$C={class:"enabled"},BC={class:"scope"},VC={key:0,class:"scope-detail"},xd=ve(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}=Xe.createI18n("en-us",Je),o=e,r=t.useSlots(),i=t.computed(()=>{var y;return{fields:(y=o.formSchema)==null?void 0:y.fields.filter(g=>g.model==="enabled")}}),a=t.computed(()=>{var y;return(y=o.formSchema)==null?void 0:y.fields.find(g=>g.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:y,description:g})=>({label:y,description:g}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var g;const y=["instance_name","protocols","tags"];return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(w=>y.includes(w.model))}}),d=["config"],f=t.computed(()=>{const y=o.schema;return y.fields=y.fields.filter(g=>d.includes(Object.keys(g)[0])),y}),u=t.computed(()=>{const y=["config","partials","__ui_data"];return Ra(o.model,y)}),p=Ra(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]),m=t.ref(Object.values(p).some(y=>!!y)),h=t.ref(!0);function _(y,g){p[g]=y,o.onModelUpdated(y,g)}return t.watch(m,y=>{y?Object.keys(p).forEach(g=>{o.onModelUpdated(p[g],g)}):Object.keys(p).forEach(g=>{o.onModelUpdated("",g)})}),(y,g)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",OC,[t.createVNode(t.unref(ye.EntityFormBlock),{description:e.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:e.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",$C,[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:i.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",BC,[t.createVNode(t.unref(Te.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":g[0]||(g[0]=b=>m.value=b),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(Te.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":g[1]||(g[1]=b=>m.value=b),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),m.value?(t.openBlock(),t.createElementBlock("div",VC,[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:_},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:h.value,"onUpdate:modelValue":g[2]||(g[2]=b=>h.value=b),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:c.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ye.EntityFormBlock),{description:e.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:e.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(y.$slots,"default",{data:u.value,schema:f.value,onChange:g[3]||(g[3]=(...b)=>e.onFormChange&&e.onFormChange(...b))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-8d0a8a0c"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Sd(e){return typeof e>"u"||e===null}function RC(e){return typeof e=="object"&&e!==null}function DC(e){return Array.isArray(e)?e:Sd(e)?[]:[e]}function MC(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 LC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function FC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var UC=Sd,KC=RC,jC=DC,GC=LC,qC=FC,zC=MC,it={isNothing:UC,isObject:KC,toArray:jC,repeat:GC,isNegativeZero:qC,extend:zC};function vd(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 Zo(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=vd(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Zo.prototype=Object.create(Error.prototype),Zo.prototype.constructor=Zo,Zo.prototype.toString=function(n){return this.name+": "+vd(this,n)};var wt=Zo;function Za(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 Ja(e,n){return it.repeat(" ",n-e.length)+e}function HC(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=Za(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=it.repeat(" ",n.indent)+Ja((e.line-c+1).toString(),f)+" | "+d.str+`
16
16
  `+s;for(d=Za(e.buffer,r[l],i[l],e.position,u),s+=it.repeat(" ",n.indent)+Ja((e.line+1).toString(),f)+" | "+d.str+`
17
17
  `,s+=it.repeat("-",n.indent+f+3+d.pos)+`^
18
18
  `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=Za(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=it.repeat(" ",n.indent)+Ja((e.line+c+1).toString(),f)+" | "+d.str+`
19
- `;return s.replace(/\n$/,"")}var YC=HC,WC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],XC=["scalar","sequence","mapping"];function ZC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function JC(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(WC.indexOf(o)===-1)throw new wt('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=ZC(n.styleAliases||null),XC.indexOf(this.kind)===-1)throw new wt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var dt=JC;function Ad(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 QC(){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 Qa(e){return this.extend(e)}Qa.prototype.extend=function(n){var o=[],r=[];if(n instanceof dt)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 wt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof dt))throw new wt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new wt("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 wt("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 dt))throw new wt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Qa.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Ad(i,"implicit"),i.compiledExplicit=Ad(i,"explicit"),i.compiledTypeMap=QC(i.compiledImplicit,i.compiledExplicit),i};var Id=Qa,Td=new dt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Pd=new dt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Od=new dt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),$d=new Id({explicit:[Td,Pd,Od]});function eE(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function tE(){return null}function nE(e){return e===null}var Bd=new dt("tag:yaml.org,2002:null",{kind:"scalar",resolve:eE,construct:tE,predicate:nE,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function oE(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 rE(e){return e==="true"||e==="True"||e==="TRUE"}function iE(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Vd=new dt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:oE,construct:rE,predicate:iE,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 aE(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function lE(e){return 48<=e&&e<=55}function sE(e){return 48<=e&&e<=57}function cE(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(!aE(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!lE(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!sE(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function dE(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 uE(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!it.isNegativeZero(e)}var Rd=new dt("tag:yaml.org,2002:int",{kind:"scalar",resolve:cE,construct:dE,predicate:uE,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"]}}),fE=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function pE(e){return!(e===null||!fE.test(e)||e[e.length-1]==="_")}function mE(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 gE=/^[-+]?[0-9]+e/;function hE(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(it.isNegativeZero(e))return"-0.0";return o=e.toString(10),gE.test(o)?o.replace("e",".e"):o}function yE(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||it.isNegativeZero(e))}var Dd=new dt("tag:yaml.org,2002:float",{kind:"scalar",resolve:pE,construct:mE,predicate:yE,represent:hE,defaultStyle:"lowercase"}),Md=$d.extend({implicit:[Bd,Vd,Rd,Dd]}),Ld=Md,Fd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Ud=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 _E(e){return e===null?!1:Fd.exec(e)!==null||Ud.exec(e)!==null}function bE(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=Fd.exec(e),n===null&&(n=Ud.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 wE(e){return e.toISOString()}var Kd=new dt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:_E,construct:bE,instanceOf:Date,represent:wE});function kE(e){return e==="<<"||e===null}var jd=new dt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:kE}),el=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
20
- \r`;function CE(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=el;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 EE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=el,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 NE(e){var n="",o=0,r,i,a=e.length,l=el;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 xE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Gd=new dt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:CE,construct:EE,predicate:xE,represent:NE}),SE=Object.prototype.hasOwnProperty,vE=Object.prototype.toString;function AE(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,vE.call(i)!=="[object Object]")return!1;for(a in i)if(SE.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 IE(e){return e!==null?e:[]}var qd=new dt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:AE,construct:IE}),TE=Object.prototype.toString;function PE(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],TE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function OE(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 zd=new dt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:PE,construct:OE}),$E=Object.prototype.hasOwnProperty;function BE(e){if(e===null)return!0;var n,o=e;for(n in o)if($E.call(o,n)&&o[n]!==null)return!1;return!0}function VE(e){return e!==null?e:{}}var Hd=new dt("tag:yaml.org,2002:set",{kind:"mapping",resolve:BE,construct:VE}),tl=Ld.extend({implicit:[Kd,jd],explicit:[Gd,qd,zd,Hd]}),hn=Object.prototype.hasOwnProperty,Zr=1,Yd=2,Wd=3,Jr=4,nl=1,RE=2,Xd=3,DE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,ME=/[\x85\u2028\u2029]/,LE=/[,\[\]\{\}]/,Zd=/^(?:!|!!|![a-z\-]+!)$/i,Jd=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Qd(e){return Object.prototype.toString.call(e)}function zt(e){return e===10||e===13}function Ln(e){return e===9||e===32}function St(e){return e===9||e===32||e===10||e===13}function go(e){return e===44||e===91||e===93||e===123||e===125}function FE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function UE(e){return e===120?2:e===117?4:e===85?8:0}function KE(e){return 48<=e&&e<=57?e-48:-1}function eu(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
19
+ `;return s.replace(/\n$/,"")}var YC=HC,WC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],XC=["scalar","sequence","mapping"];function ZC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function JC(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(WC.indexOf(o)===-1)throw new wt('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=ZC(n.styleAliases||null),XC.indexOf(this.kind)===-1)throw new wt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var dt=JC;function Ad(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 QC(){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 Qa(e){return this.extend(e)}Qa.prototype.extend=function(n){var o=[],r=[];if(n instanceof dt)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 wt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof dt))throw new wt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new wt("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 wt("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 dt))throw new wt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Qa.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Ad(i,"implicit"),i.compiledExplicit=Ad(i,"explicit"),i.compiledTypeMap=QC(i.compiledImplicit,i.compiledExplicit),i};var Id=Qa,Pd=new dt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Td=new dt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Od=new dt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),$d=new Id({explicit:[Pd,Td,Od]});function eE(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function tE(){return null}function nE(e){return e===null}var Bd=new dt("tag:yaml.org,2002:null",{kind:"scalar",resolve:eE,construct:tE,predicate:nE,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function oE(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 rE(e){return e==="true"||e==="True"||e==="TRUE"}function iE(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Vd=new dt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:oE,construct:rE,predicate:iE,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 aE(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function lE(e){return 48<=e&&e<=55}function sE(e){return 48<=e&&e<=57}function cE(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(!aE(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!lE(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!sE(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function dE(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 uE(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!it.isNegativeZero(e)}var Rd=new dt("tag:yaml.org,2002:int",{kind:"scalar",resolve:cE,construct:dE,predicate:uE,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"]}}),fE=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function pE(e){return!(e===null||!fE.test(e)||e[e.length-1]==="_")}function mE(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 gE=/^[-+]?[0-9]+e/;function hE(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(it.isNegativeZero(e))return"-0.0";return o=e.toString(10),gE.test(o)?o.replace("e",".e"):o}function yE(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||it.isNegativeZero(e))}var Dd=new dt("tag:yaml.org,2002:float",{kind:"scalar",resolve:pE,construct:mE,predicate:yE,represent:hE,defaultStyle:"lowercase"}),Md=$d.extend({implicit:[Bd,Vd,Rd,Dd]}),Ld=Md,Fd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Ud=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 _E(e){return e===null?!1:Fd.exec(e)!==null||Ud.exec(e)!==null}function bE(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=Fd.exec(e),n===null&&(n=Ud.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 wE(e){return e.toISOString()}var Kd=new dt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:_E,construct:bE,instanceOf:Date,represent:wE});function kE(e){return e==="<<"||e===null}var jd=new dt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:kE}),el=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
20
+ \r`;function CE(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=el;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 EE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=el,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 NE(e){var n="",o=0,r,i,a=e.length,l=el;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 xE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Gd=new dt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:CE,construct:EE,predicate:xE,represent:NE}),SE=Object.prototype.hasOwnProperty,vE=Object.prototype.toString;function AE(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,vE.call(i)!=="[object Object]")return!1;for(a in i)if(SE.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 IE(e){return e!==null?e:[]}var qd=new dt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:AE,construct:IE}),PE=Object.prototype.toString;function TE(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],PE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function OE(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 zd=new dt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:TE,construct:OE}),$E=Object.prototype.hasOwnProperty;function BE(e){if(e===null)return!0;var n,o=e;for(n in o)if($E.call(o,n)&&o[n]!==null)return!1;return!0}function VE(e){return e!==null?e:{}}var Hd=new dt("tag:yaml.org,2002:set",{kind:"mapping",resolve:BE,construct:VE}),tl=Ld.extend({implicit:[Kd,jd],explicit:[Gd,qd,zd,Hd]}),hn=Object.prototype.hasOwnProperty,Zr=1,Yd=2,Wd=3,Jr=4,nl=1,RE=2,Xd=3,DE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,ME=/[\x85\u2028\u2029]/,LE=/[,\[\]\{\}]/,Zd=/^(?:!|!!|![a-z\-]+!)$/i,Jd=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Qd(e){return Object.prototype.toString.call(e)}function zt(e){return e===10||e===13}function Ln(e){return e===9||e===32}function St(e){return e===9||e===32||e===10||e===13}function go(e){return e===44||e===91||e===93||e===123||e===125}function FE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function UE(e){return e===120?2:e===117?4:e===85?8:0}function KE(e){return 48<=e&&e<=57?e-48:-1}function eu(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 jE(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}for(var tu=new Array(256),nu=new Array(256),ho=0;ho<256;ho++)tu[ho]=eu(ho)?1:0,nu[ho]=eu(ho);function GE(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||tl,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 ou(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=YC(o),new wt(n,o)}function Ie(e,n){throw ou(e,n)}function Qr(e,n){e.onWarning&&e.onWarning.call(null,ou(e,n))}var ru={YAML:function(n,o,r){var i,a,l;n.version!==null&&Ie(n,"duplication of %YAML directive"),r.length!==1&&Ie(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Ie(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Ie(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&Qr(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Ie(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],Zd.test(i)||Ie(n,"ill-formed tag handle (first argument) of the TAG directive"),hn.call(n.tagMap,i)&&Ie(n,'there is a previously declared suffix for "'+i+'" tag handle'),Jd.test(a)||Ie(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Ie(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function yn(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||Ie(e,"expected valid JSON character");else DE.test(s)&&Ie(e,"the stream contains non-printable characters");e.result+=s}}function iu(e,n,o,r){var i,a,l,s;for(it.isObject(o)||Ie(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],hn.call(n,a)||(n[a]=o[a],r[a]=!0)}function yo(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])&&Ie(e,"nested arrays are not supported inside keys"),typeof i=="object"&&Qd(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&Qd(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)iu(e,n,a[d],o);else iu(e,n,a,o);else!e.json&&!hn.call(o,i)&&hn.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,Ie(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 ol(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++):Ie(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Qe(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(zt(i))for(ol(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&&Qr(e,"deficient indentation"),r}function ei(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||St(o)))}function rl(e,n){n===1?e.result+=" ":n>1&&(e.result+=it.repeat(`
22
22
  `,n-1))}function qE(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),St(m)||go(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),St(i)||o&&go(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),St(i)||o&&go(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),St(r))break}else{if(e.position===e.lineStart&&ei(e)||o&&go(m))break;if(zt(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,Qe(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&&(yn(e,a,l,!1),rl(e,e.line-c),a=l=e.position,s=!1),Ln(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return yn(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function zE(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(yn(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 zt(o)?(yn(e,r,i,!0),rl(e,Qe(e,!1,n)),r=i=e.position):e.position===e.lineStart&&ei(e)?Ie(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Ie(e,"unexpected end of the stream within a single quoted scalar")}function HE(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 yn(e,o,e.position,!0),e.position++,!0;if(s===92){if(yn(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),zt(s))Qe(e,!1,n);else if(s<256&&tu[s])e.result+=nu[s],e.position++;else if((l=UE(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=FE(s))>=0?a=(a<<4)+l:Ie(e,"expected hexadecimal character");e.result+=jE(a),e.position++}else Ie(e,"unknown escape sequence");o=r=e.position}else zt(s)?(yn(e,o,r,!0),rl(e,Qe(e,!1,n)),o=r=e.position):e.position===e.lineStart&&ei(e)?Ie(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Ie(e,"unexpected end of the stream within a double quoted scalar")}function YE(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(Qe(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&&Ie(e,"expected the node content, but found ','"):Ie(e,"missed comma between flow collection entries"),y=_=g=null,u=p=!1,w===63&&(d=e.input.charCodeAt(e.position+1),St(d)&&(u=p=!0,e.position++,Qe(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,_o(e,n,Zr,!1,!0),y=e.tag,_=e.result,Qe(e,!0,n),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(u=!0,w=e.input.charCodeAt(++e.position),Qe(e,!0,n),_o(e,n,Zr,!1,!0),g=e.result),m?yo(e,s,h,y,_,g,r,i,a):u?s.push(yo(e,null,h,y,_,g,r,i,a)):s.push(_),Qe(e,!0,n),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}Ie(e,"unexpected end of the stream within a flow collection")}function WE(e,n){var o,r,i=nl,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)nl===i?i=u===43?Xd:RE:Ie(e,"repeat of a chomping mode identifier");else if((f=KE(u))>=0)f===0?Ie(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Ie(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(!zt(u)&&u!==0)}for(;u!==0;){for(ol(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),zt(u)){c++;continue}if(e.lineIndent<s){i===Xd?e.result+=it.repeat(`
23
23
  `,a?1+c:c):i===nl&&a&&(e.result+=`
@@ -29,7 +29,7 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
29
29
  `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new GE(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Ie(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;)eN(o);return o.documents}function tN(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=lu(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function nN(e,n){var o=lu(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new wt("expected a single document in the stream, but found more")}}var oN=tN,rN=nN,su={loadAll:oN,load:rN},cu=Object.prototype.toString,du=Object.prototype.hasOwnProperty,il=65279,iN=9,Jo=10,aN=13,lN=32,sN=33,cN=34,al=35,dN=37,uN=38,fN=39,pN=42,uu=44,mN=45,ti=58,gN=61,hN=62,yN=63,_N=64,fu=91,pu=93,bN=96,mu=123,wN=124,gu=125,_t={};_t[0]="\\0",_t[7]="\\a",_t[8]="\\b",_t[9]="\\t",_t[10]="\\n",_t[11]="\\v",_t[12]="\\f",_t[13]="\\r",_t[27]="\\e",_t[34]='\\"',_t[92]="\\\\",_t[133]="\\N",_t[160]="\\_",_t[8232]="\\L",_t[8233]="\\P";var kN=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],CN=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function EN(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&&du.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function NN(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 wt("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+it.repeat("0",r-n.length)+n}var xN=1,Qo=2;function SN(e){this.schema=e.schema||tl,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=it.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=EN(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==='"'?Qo:xN,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 hu(e,n){for(var o=it.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 ll(e,n){return`
32
- `+it.repeat(" ",e.indent*n)}function vN(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 ni(e){return e===lN||e===iN}function er(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==il||65536<=e&&e<=1114111}function yu(e){return er(e)&&e!==il&&e!==aN&&e!==Jo}function _u(e,n,o){var r=yu(e),i=r&&!ni(e);return(o?r:r&&e!==uu&&e!==fu&&e!==pu&&e!==mu&&e!==gu)&&e!==al&&!(n===ti&&!i)||yu(n)&&!ni(n)&&e===al||n===ti&&i}function AN(e){return er(e)&&e!==il&&!ni(e)&&e!==mN&&e!==yN&&e!==ti&&e!==uu&&e!==fu&&e!==pu&&e!==mu&&e!==gu&&e!==al&&e!==uN&&e!==pN&&e!==sN&&e!==wN&&e!==gN&&e!==hN&&e!==fN&&e!==cN&&e!==dN&&e!==_N&&e!==bN}function IN(e){return!ni(e)&&e!==ti}function tr(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 bu(e){var n=/^\n* /;return n.test(e)}var wu=1,sl=2,ku=3,Cu=4,bo=5;function TN(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,h=-1,_=AN(tr(e,0))&&IN(tr(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=tr(e,c),!er(d))return bo;_=_&&_u(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=tr(e,c),d===Jo)u=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!er(d))return bo;_=_&&_u(d,f,s),f=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!u&&!p?_&&!l&&!i(e)?wu:a===Qo?bo:sl:o>9&&bu(e)?bo:l?a===Qo?bo:sl:p?Cu:ku}function PN(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Qo?'""':"''";if(!e.noCompatMode&&(kN.indexOf(n)!==-1||CN.test(n)))return e.quotingType===Qo?'"'+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 vN(e,d)}switch(TN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case wu:return n;case sl:return"'"+n.replace(/'/g,"''")+"'";case ku:return"|"+Eu(n,e.indent)+Nu(hu(n,a));case Cu:return">"+Eu(n,e.indent)+Nu(hu(ON(n,l),a));case bo:return'"'+$N(n)+'"';default:throw new wt("impossible error: invalid scalar style")}}()}function Eu(e,n){var o=bu(e)?String(n):"",r=e[e.length-1]===`
32
+ `+it.repeat(" ",e.indent*n)}function vN(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 ni(e){return e===lN||e===iN}function er(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==il||65536<=e&&e<=1114111}function yu(e){return er(e)&&e!==il&&e!==aN&&e!==Jo}function _u(e,n,o){var r=yu(e),i=r&&!ni(e);return(o?r:r&&e!==uu&&e!==fu&&e!==pu&&e!==mu&&e!==gu)&&e!==al&&!(n===ti&&!i)||yu(n)&&!ni(n)&&e===al||n===ti&&i}function AN(e){return er(e)&&e!==il&&!ni(e)&&e!==mN&&e!==yN&&e!==ti&&e!==uu&&e!==fu&&e!==pu&&e!==mu&&e!==gu&&e!==al&&e!==uN&&e!==pN&&e!==sN&&e!==wN&&e!==gN&&e!==hN&&e!==fN&&e!==cN&&e!==dN&&e!==_N&&e!==bN}function IN(e){return!ni(e)&&e!==ti}function tr(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 bu(e){var n=/^\n* /;return n.test(e)}var wu=1,sl=2,ku=3,Cu=4,bo=5;function PN(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,h=-1,_=AN(tr(e,0))&&IN(tr(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=tr(e,c),!er(d))return bo;_=_&&_u(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=tr(e,c),d===Jo)u=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!er(d))return bo;_=_&&_u(d,f,s),f=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!u&&!p?_&&!l&&!i(e)?wu:a===Qo?bo:sl:o>9&&bu(e)?bo:l?a===Qo?bo:sl:p?Cu:ku}function TN(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Qo?'""':"''";if(!e.noCompatMode&&(kN.indexOf(n)!==-1||CN.test(n)))return e.quotingType===Qo?'"'+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 vN(e,d)}switch(PN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case wu:return n;case sl:return"'"+n.replace(/'/g,"''")+"'";case ku:return"|"+Eu(n,e.indent)+Nu(hu(n,a));case Cu:return">"+Eu(n,e.indent)+Nu(hu(ON(n,l),a));case bo:return'"'+$N(n)+'"';default:throw new wt("impossible error: invalid scalar style")}}()}function Eu(e,n){var o=bu(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+`
@@ -40,8 +40,8 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
40
40
  `:"")+xu(c,n),i=a}return r}function xu(e,n){if(e===""||e[0]===" ")return e;for(var o=/ [^ ]/g,r,i=0,a,l=0,s=0,c="";r=o.exec(e);)s=r.index,s-i>n&&(a=l>i?l:s,c+=`
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
- `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function $N(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=tr(e,i),r=_t[o],!r&&er(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||NN(o);return n}function BN(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)),(an(e,n,s,!1,!1)||typeof s>"u"&&an(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function Su(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)),(an(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&an(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=ll(e,n)),e.dump&&Jo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function VN(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)),an(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),an(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function RN(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 wt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=ll(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),an(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Jo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=ll(e,n)),an(e,n+1,f,!0,u)&&(e.dump&&Jo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function vu(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,cu.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(du.call(s.represent,c))r=s.represent[c](n,c);else throw new wt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function an(e,n,o,r,i,a,l){e.tag=null,e.dump=o,vu(e,o,!1)||vu(e,o,!0);var s=cu.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?(RN(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(VN(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?Su(e,n-1,e.dump,i):Su(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(BN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&PN(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new wt("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 DN(e,n){var o=[],r=[],i,a;for(cl(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function cl(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)cl(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)cl(e[r[i]],n,o)}function MN(e,n){n=n||{};var o=new SN(n);o.noRefs||DN(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),an(o,0,r,!0,!0)?o.dump+`
44
- `:""}var LN=MN,FN={dump:LN};function dl(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 UN=dt,KN=Id,jN=$d,oi=Md,GN=Ld,qN=tl,zN=su.load,HN=su.loadAll,YN=FN.dump,WN=wt,XN={binary:Gd,float:Dd,map:Od,null:Bd,pairs:zd,set:Hd,timestamp:Kd,bool:Vd,int:Rd,merge:jd,omap:qd,seq:Pd,str:Td},ZN=dl("safeLoad","load"),JN=dl("safeLoadAll","loadAll"),QN=dl("safeDump","dump"),ri={Type:UN,Schema:KN,FAILSAFE_SCHEMA:jN,JSON_SCHEMA:oi,CORE_SCHEMA:GN,DEFAULT_SCHEMA:qN,load:zN,loadAll:HN,dump:YN,YAMLException:WN,types:XN,safeLoad:ZN,safeLoadAll:JN,safeDump:QN};const ul=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
43
+ `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function $N(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=tr(e,i),r=_t[o],!r&&er(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||NN(o);return n}function BN(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)),(an(e,n,s,!1,!1)||typeof s>"u"&&an(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function Su(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)),(an(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&an(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=ll(e,n)),e.dump&&Jo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function VN(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)),an(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),an(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function RN(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 wt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=ll(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),an(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Jo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=ll(e,n)),an(e,n+1,f,!0,u)&&(e.dump&&Jo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function vu(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,cu.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(du.call(s.represent,c))r=s.represent[c](n,c);else throw new wt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function an(e,n,o,r,i,a,l){e.tag=null,e.dump=o,vu(e,o,!1)||vu(e,o,!0);var s=cu.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?(RN(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(VN(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?Su(e,n-1,e.dump,i):Su(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(BN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&TN(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new wt("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 DN(e,n){var o=[],r=[],i,a;for(cl(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function cl(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)cl(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)cl(e[r[i]],n,o)}function MN(e,n){n=n||{};var o=new SN(n);o.noRefs||DN(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),an(o,0,r,!0,!0)?o.dump+`
44
+ `:""}var LN=MN,FN={dump:LN};function dl(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 UN=dt,KN=Id,jN=$d,oi=Md,GN=Ld,qN=tl,zN=su.load,HN=su.loadAll,YN=FN.dump,WN=wt,XN={binary:Gd,float:Dd,map:Od,null:Bd,pairs:zd,set:Hd,timestamp:Kd,bool:Vd,int:Rd,merge:jd,omap:qd,seq:Td,str:Pd},ZN=dl("safeLoad","load"),JN=dl("safeLoadAll","loadAll"),QN=dl("safeDump","dump"),ri={Type:UN,Schema:KN,FAILSAFE_SCHEMA:jN,JSON_SCHEMA:oi,CORE_SCHEMA:GN,DEFAULT_SCHEMA:qN,load:zN,loadAll:HN,dump:YN,YAMLException:WN,types:XN,safeLoad:ZN,safeLoadAll:JN,safeDump:QN};const ul=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
45
45
  - name: STATIC_INPUTS
46
46
  type: static
47
47
  values:
@@ -115,13 +115,13 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
115
115
  type: exit
116
116
  input: API
117
117
  status: 200
118
- `},Symbol.toStringTag,{value:"Module"})),e1={class:"dk-code-editor"},t1={class:"examples-content"},n1={ref:"editor-root",class:"editor"},fl="YAML Syntax",o1="datakit.insert-example",r1=ve(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const{t:r}=Xe.createI18n("en-us",Je),{formData:i}=He(),a=o,l=t.useTemplateRef("editor-root"),s=t.shallowRef(null);function c(f){const u=s.value,p=u==null?void 0:u.getModel();if(!u||!p)return;const m=ul[f];u.getValue()!==m&&(u.pushUndoStop(),u.executeEdits(o1,[{range:p.getFullModelRange(),text:m}]),u.pushUndoStop()),d()}function d(){const f=s.value,u=f==null?void 0:f.getModel();!f||!u||(f.setPosition(u.getFullModelRange().getEndPosition()),f.focus())}return t.onMounted(()=>{const f=Tr.editor.create(l.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});if(s.value=f,i.config&&Object.keys(i.config).length>0){const u={...i.config};u.nodes&&u.nodes.length===0&&delete u.nodes;const p=Object.keys(u).length===0?"":ri.dump(t.toRaw(u),{schema:oi,noArrayIndent:!0});f.setValue(p),d()}f.onDidChangeModelContent(()=>{const u=f.getModel(),p=f.getValue()||"";try{const m=ri.load(p,{schema:oi,json:!0});Tr.editor.setModelMarkers(u,fl,[]),i.config=m,a("change",m)}catch(m){const{message:h,mark:_}=m,{line:y,column:g}=_||{line:0,column:0},w=h.split(`
119
- `)[0],b=[{startLineNumber:y+1,startColumn:g+1,endLineNumber:y+1,endColumn:g+2,message:w,severity:Tr.MarkerSeverity.Error,source:fl}];Tr.editor.setModelMarkers(u,fl,b),a("error",w)}})}),t.onBeforeUnmount(()=>{var f;(f=s.value)==null||f.dispose()}),n({setExampleCode:c}),(f,u)=>(t.openBlock(),t.createElementBlock("div",e1,[t.createVNode(t.unref(Pe.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(xe.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",t1,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(ul,(p,m)=>t.createVNode(t.unref(Pe.KButton),{key:m,appearance:"secondary",size:"small",onClick:h=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${m}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),t.createElementVNode("div",n1,null,512)]))}}),[["__scopeId","data-v-5f51e876"]]),Au=["request","service_request","service_response","response","vault"],wo=Au,Iu=["call","jq","exit","property","static","branch","cache"],Tu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],kt={call:{icon:xe.NetworkIcon,colors:{foreground:hC,background:rC}},jq:{icon:xe.CodeblockIcon,colors:{foreground:uC,background:eC}},exit:{icon:xe.GatewayIcon,colors:{foreground:Xa,background:sC}},property:{icon:xe.StackIcon,colors:{foreground:mC,background:gC}},static:{icon:xe.VitalsIcon,colors:{foreground:fC,background:pC}},branch:{icon:xe.ArrowSplitIcon,colors:{foreground:cC,background:Qk}},cache:{icon:xe.CachedIcon,colors:{foreground:dC,background:"#fff0f7"}},vault:{icon:xe.KeyIcon},request:{icon:xe.CloudIcon},service_request:{icon:xe.CloudIcon},service_response:{icon:xe.CloudIcon},response:{icon:xe.CloudIcon}},{t:pl}=Xe.createI18n("en-us",Je);function Bt(e){return pl(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function Fn(e){return pl(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function i1(e){return pl(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const ml={call:{type:"call",summary:Fn("call"),description:Bt("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...kt.call},jq:{type:"jq",summary:Fn("jq"),description:Bt("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...kt.jq},exit:{type:"exit",summary:Fn("exit"),description:Bt("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...kt.exit},property:{type:"property",summary:Fn("property"),description:Bt("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...kt.property},static:{type:"static",summary:Fn("static"),description:Bt("static"),io:{output:{fields:[],configurable:!0}},...kt.static},branch:{type:"branch",summary:Fn("branch"),description:Bt("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...kt.branch},cache:{type:"cache",summary:Fn("cache"),description:Bt("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...kt.cache}},ii={request:{type:"request",description:Bt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...kt.request},service_request:{type:"service_request",description:Bt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...kt.service_request},service_response:{type:"service_response",description:Bt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...kt.service_response},response:{type:"response",description:Bt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...kt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...kt.vault,hidden:!0}},gl=Object.keys(ii),hl=e=>gl.includes(e),a1=e=>[...gl,...Iu].includes(e),Vt=e=>gl.includes(e),Pu=e=>Vt(e.type),Ou=e=>!!(e!=null&&e.startsWith("node:")),ai=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function ln(e){return so(e)}function yl(e,n){if(e.length!==n.length)return!1;if(e.length===0)return!0;const o=new Set(n);return e.every(r=>o.has(r))}function ko(e){return`${e}:${Gr()}`}function li(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function $u(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function Co(e){return Vt(e)?ii[e]:ml[e]}function Bu(e){var i,a,l,s;const n=Co(e),o=((a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields.map(({name:c})=>c))??[],r=((s=(l=n.io)==null?void 0:l.output)==null?void 0:s.fields.map(({name:c})=>c))??[];return{input:o,output:r}}function nr(e){var o,r,i;return((i=(r=(o=Co(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function Vu(e){return(e??[]).map(n=>({id:ko("field"),name:n}))}function _n(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function bn(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function _l(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Ru(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function l1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=ii[e];return{name:e,phase:n,position:{x:0,y:0},fields:Bu(o.type),expanded:{},hidden:o.hidden}}function Du(e,n){const r=(typeof e=="string"&&a1(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function bl(e,n){return`${e}:${n}`}function s1(e){const n=e.lastIndexOf(":");if(n===-1)throw new Error(`Invalid group ID format: ${e}`);const o=e.slice(0,n),r=e.slice(n+1);return{nodeId:o,branch:r}}function si(e,n){return`${e}:${n}`}function Mu(e,n,o,r,i){return{id:bl(e,n),ownerId:e,branch:n,phase:o,memberIds:[...r],position:i!=null&&i.position?{...i.position}:void 0,dimensions:i!=null&&i.dimensions?{...i.dimensions}:void 0}}function c1(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function d1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function Lu(e,n){return[...c1(e),...d1(n)]}function ci(e,n){const o=new Map;for(const{source:r,target:i}of e)o.has(r)||o.set(r,[]),o.get(r).push(i),o.has(i)||o.set(i,[]);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}function wl(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 kl(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&Ou(i)):[]}function u1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const x=new Map;for(const v of e.value.groups)for(const R of v.memberIds)x.set(R,{ownerId:v.ownerId,branch:v.branch});return x}),a=t.computed(()=>{const x=new Map;for(const v of e.value.groups)for(const R of v.memberIds)x.set(R,v);return x}),l=t.computed(()=>{const x=new Map;for(const v of e.value.groups)x.has(v.ownerId)||x.set(v.ownerId,[]),x.get(v.ownerId).push(v);return x}),s=t.computed(()=>Lu(e.value.edges,e.value.groups)),c=t.computed(()=>ci(s.value));function d(x,v){return x?nr(x.type).includes(v):!1}function f(x,v){if(v===x.id)return!1;const R=o(v);return!(!R||Vt(R.type)||R.phase!==x.phase)}function u(x,v){const R=[],F=new Set;for(const k of v)F.has(k)||(F.add(k),f(x,k)&&R.push(k));return R}function p(x,v,R){const F=o(x);return d(F,v)?u(F,R):[]}function m(x,v,R){const F=bl(x.id,v),k=n.value.get(F);R.length>0?k?(k.phase!==x.phase&&(k.phase=x.phase),yl(k.memberIds,R)||(k.position=void 0,k.dimensions=void 0,k.memberIds=[...R])):e.value.groups.push(Mu(x.id,v,x.phase,R)):k&&(e.value.groups=e.value.groups.filter(Y=>Y.id!==F))}function h(x,v,R,F={}){const k=o(x);if(!d(k,v))return!1;const Y=u(k,R),T=kl(k,v);if(yl(T,Y))return!1;const q=k.config??(k.config={});return Y.length>0?q[v]=[...Y]:(delete q[v],Object.keys(q).length===0&&delete k.config),m(k,v,Y),(F.commit??!0)&&r.commit(F.tag??`branch:set:${v}`),!0}function _(x){e.value.groups=e.value.groups.filter(v=>v.ownerId!==x)}function y(x,v){const R=n.value.get(bl(x,v));if(R)return[...R.memberIds];const F=o(x);return F?kl(F,v):[]}function g(x){return i.value.get(x)}function w(x,v){if(x===v)return!0;const R=new Set,F=[v];for(;F.length>0;){const k=F.pop();if(R.has(k))continue;if(R.add(k),k===x)return!0;const Y=c.value.get(k);if(Y)for(const T of Y)R.has(T)||F.push(T)}return!1}function b(x,v,R,F={}){const k=o(x);if(!k||!d(k,v)||!f(k,R)||w(x,R))return!1;const Y=kl(k,v);if(Y.includes(R))return!1;S(R);const T=[...Y,R];return h(x,v,T,{commit:!1})?((F.commit??!0)&&r.commit(F.tag??`branch:add:${v}`),!0):!1}function S(x){const v=g(x);if(!v)return;const F=y(v.ownerId,v.branch).filter(k=>k!==x);h(v.ownerId,v.branch,F,{commit:!1})}function E(x){let v=0;const R=new Set;let F=a.value.get(x);for(;F&&!R.has(F.id);)v+=1,R.add(F.id),F=a.value.get(F.ownerId);return v}function C(x){const v=n.value.get(x);return v?E(v.ownerId):0}function N(x){return x?n.value.has(x):!1}return{memberGroupMap:a,groupsByOwner:l,findMembership:g,getMembers:y,wouldCreateCycle:w,setMembers:h,prepareMembers:p,addMember:b,dropTarget:S,clear:_,getNodeDepth:E,getGroupDepth:C,isGroupId:N}}function f1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=qe.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var S;(S=n==null?void 0:n.onHistoryChange)==null||S.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function h(){r(),u=void 0,p("undo")}function _(){i(),u=void 0,p("redo")}function y(){s(),u=void 0,p("clear")}function g(){c(),u=void 0,p("reset")}function w(){r(),f.value.shift(),u=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:h,redo:_,clear:y,reset:g,revert:w}}function p1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function m1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function g1(e){const n=Object.entries(e);if(n.length===0)return;const o={};for(const[r,i]of n)o[r]=i;return o}function Fu(e,n){var y,g,w,b,S,E,C;const o=((y=e.config)==null?void 0:y.nodes)??[],r=((g=e.__ui_data)==null?void 0:g.nodes)??[],i=((w=e.__ui_data)==null?void 0:w.groups)??[],a=new Map(r.map(N=>[N.name,N])),l=new Map(i.map(N=>[N.name,N])),s=[],c=[],d=new Map,f=[],u=[],p=new Map,m=N=>{const x=new Set,v=[...N];for(;v.length>0;){const R=v.shift();if(!x.has(R)&&(x.add(R),hl(R)||(d.get(R).phase="request"),!!p.has(R)))for(const F of p.get(R))x.has(F)||v.push(F)}};let h=!1;for(const N of o){const x=a.get(N.name);!x&&!h&&(h=!0);const v=Ku({type:N.type,configNode:N,uiNode:x,pluginData:e});s.push(v),d.set(v.name,v)}for(const N of s){const x=nr(N.type);if(!x.length)continue;const v=N.config;if(v)for(const R of x){const F=v[R];if(!Array.isArray(F)){l.has(si(N.name,R))&&(h=!0);continue}const k=[];for(const Y of F){if(typeof Y!="string")continue;const T=d.get(Y);T&&!Vt(T.type)&&k.push(T.id)}if(k.length){v[R]=k;const Y=si(N.name,R),T=l.get(Y),q=T?{position:ln(T.position)}:void 0,j=Mu(N.id,R,N.phase,k,q);f.push(j),!T&&!h&&(h=!0)}else delete v[R],l.has(si(N.name,R))&&(h=!0)}}for(const N of wo)if(!d.has(N)){let x=a.get(N);x||(h||(h=!0),x=l1(N));const v=Ku({type:N,uiNode:x,pluginData:e});s.push(v),d.set(v.name,v)}for(const N of o)_1(N,u);for(const N of u){const x=d.get(N.source),v=d.get(N.target);if(!x||!v){x||console.warn(`[initEditorState] skip: source "${N.source}" not found`),v||console.warn(`[initEditorState] skip: target "${N.target}" not found`);continue}p.has(N.source)||p.set(N.source,new Set),p.get(N.source).add(N.target),p.has(N.target)||p.set(N.target,new Set),p.get(N.target).add(N.source),c.push({id:ko("edge"),source:x.id,sourceField:(b=_n(x,"output",N.sourceField))==null?void 0:b.id,target:v.id,targetField:(S=_n(v,"input",N.targetField))==null?void 0:S.id})}m(["request","service_request"]);let _=null;return(C=(E=e.config)==null?void 0:E.resources)!=null&&C.cache&&(_={...e.config.resources.cache},e.partials&&(_.partial_id=e.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:h?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,..._?{cacheConfig:_}:{}}}function Uu(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Bu(n),c=Co(n);return{id:ko("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Vu((a==null?void 0:a.input)??s.input),output:Vu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?ln(l):{}}}function h1(e){return Vt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Ku({type:e,configNode:n,uiNode:o,pluginData:r}){return Uu({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??h1(e),position:o==null?void 0:o.position,fields:b1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:w1({type:e,configNode:n,pluginData:r})})}function y1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return ln(s)}function _1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=li(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}=li(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=li(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}=li(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function b1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=Co(e),a=i==null?void 0:i.io;if(!a)return;const l={};if((s=a.input)!=null&&s.configurable&&(n?l.input=((c=n.fields)==null?void 0:c.input)??[]:o!=null&&o.inputs&&(l.input=Object.keys(o.inputs))),(d=a.output)!=null&&d.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const u=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>u.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>u.add(p)),u.size&&(l.output=Array.from(u))}e==="vault"&&(l.output=m1(r))}return Object.keys(l).length?l:void 0}function w1({type:e,configNode:n,pluginData:o}){return e==="vault"?p1(o):n?y1(n):void 0}function k1(e){const n=t.computed(()=>{const u=new Map;return e.value.nodes.forEach(p=>u.set(p.id,p)),u}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>Lu(o.value,r.value));function a(u){return ci(i.value,u?{source:u.source,target:u.target}:void 0)}function l(u){const p=n.value.get(u.source),m=n.value.get(u.target);if(!p||!m)return u;const h=Ru(p,u.sourceField)&&!_l(p,u.sourceField),_=_l(m,u.targetField);return h&&_?{source:u.target,sourceField:u.targetField,target:u.source,targetField:u.sourceField}:u}function s(u){const p=l(u),m=[],h=n.value.get(p.source),_=n.value.get(p.target);if(h||m.push("source node not found"),_||m.push("target node not found"),!h||!_)return{ok:!1,errors:m};_l(h,p.sourceField)||m.push("source handle is not an output field"),Ru(_,p.targetField)||m.push("target handle is not an input field"),_.name==="request"&&m.push('cannot target "request"'),h.name==="response"&&m.push('cannot source from "response"');const y=o.value.some(b=>b.target===p.target&&!b.targetField),g=o.value.some(b=>b.target===p.target&&!!b.targetField);(y&&p.targetField||g&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(b=>b.target===p.target&&b.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(b=>b.target===p.target&&!b.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const w=a({source:p.source,target:p.target});return wl(w)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const u=[];for(const p of wo)[...n.value.values()].some(m=>m.name===p)||u.push(`missing implicit node "${p}"`);for(const p of o.value){const m=n.value.get(p.source);n.value.get(p.target).name==="request"&&u.push(`edge "${p.id}" targets "request"`),m.name==="response"&&u.push(`edge "${p.id}" sources from "response"`)}return wl(a())&&u.push("graph contains cycle"),u.length?{ok:!1,errors:u}:{ok:!0}}function d(u){return s(u).ok}function f(u){return!u.source||!u.target?!1:d({source:u.source,sourceField:u.sourceHandle,target:u.target,targetField:u.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:d,isValidVueFlowConnection:f,buildAdjacency:ci}}const[ju,C1]=qe.createInjectionState(function(n,o={}){const r=t.ref(Fu(n)),i=t.ref(),a=t.ref(!1),l=t.ref(!1),s=f1(r,{capacity:200,clone:ln,onHistoryChange:I=>{var L,O;I!=="clear"&&((O=o.onChange)==null||O.call(o,B(),z(),V(),(L=r.value.cacheConfig)==null?void 0:L.partial_id))}}),c=t.ref(!1),d=t.ref(new Set);function f(){r.value.pendingLayout=!1,s.commit("*")}function u(I=!0){r.value.pendingFitView!==I&&(r.value.pendingFitView=I,s.commit("*"))}const p=t.computed(()=>new Map(r.value.nodes.map(I=>[I.id,I]))),m=t.computed(()=>new Map(r.value.nodes.map(I=>[I.name,I]))),h=t.computed(()=>{const I=new Map,L=new Map;for(const O of r.value.edges)I.set(O.id,O),L.has(O.source)||L.set(O.source,new Set),L.get(O.source).add(O.id),L.has(O.target)||L.set(O.target,new Set),L.get(O.target).add(O.id);return{edgeMapById:I,edgeIdMapByNodeId:L}}),_=t.computed(()=>h.value.edgeMapById),y=t.computed(()=>h.value.edgeIdMapByNodeId),g=t.computed(()=>new Map(r.value.groups.map(I=>[I.id,I]))),w=t.computed(()=>new Set(r.value.nodes.map(I=>I.name))),b=u1({state:r,groupMapById:g,getNodeById:v,history:s}),{canonicalizeConnection:S,validateConnection:E,validateGraph:C,isValidConnection:N,isValidVueFlowConnection:x}=k1(r);function v(I){return p.value.get(I)}function R(I){return m.value.get(I)}function F(I){return _.value.get(I)}function k(I){if(!y.value.has(I))return[];const L=[];return y.value.get(I).forEach(O=>{const oe=F(O);oe&&L.push(oe)}),L}function Y(I){return k(I).filter(L=>L.target===I)}function T(I){return k(I).filter(L=>L.source===I)}const q=t.computed(()=>i.value?v(i.value):void 0);function j(I){i.value=I}function te(I){if(Vt(I.type))throw new Error("[createNode] implicit nodes are fixed.");return Uu({type:I.type,name:I.name||(Vt(I.type)?void 0:Du(I.type,w.value)),phase:I.phase,position:I.position,fields:I.fields,config:I.config})}function X(I,L=!0){const O=te(I);if(O)return r.value.nodes.push(O),L&&s.commit(),c.value=!0,O.id}function D(I,L,O=!0){const oe=v(I);if(!oe||Vt(oe.type))return;const ne={...ln(oe),id:ko("node"),name:Du(oe.name,w.value),position:L??{x:oe.position.x+20,y:oe.position.y+20}},be=nr(ne.type);if(be.length&&ne.config){for(const ke of be)delete ne.config[ke];Object.keys(ne.config).length===0&&delete ne.config}return r.value.nodes.push(ne),O&&s.commit(),c.value=!0,ne.id}function K(I,L=!0){if(!v(I))return;r.value.edges=r.value.edges.filter(ne=>ne.source!==I&&ne.target!==I),b.clear(I),r.value.nodes=r.value.nodes.filter(ne=>ne.id!==I),i.value===I&&(i.value=void 0),b.dropTarget(I);const oe=C();oe.ok||console.warn("[removeNode] topology invalid:",oe.errors.join("; ")),L&&s.commit()}function A(I,L,O=!0,oe){const ne=v(I);if(!ne)return;if(hl(ne.name)){console.warn("[renameNode] implicit node name is reserved.");return}ne.name!==L&&(ne.name=L,O&&s.commit(oe))}function P(I,L,O=!0){const oe=v(I);oe&&(oe.position={...L},O&&s.commit())}function U(I,L,O=!0){const oe=g.value.get(I);if(!oe)return;const ne=oe.position;ne&&ne.x===L.x&&ne.y===L.y||(oe.position={...L},O&&s.commit())}function G(I,L,O=!0){const oe=g.value.get(I);if(!oe)return!1;const ne={...L.position},be={...L.dimensions},ke=oe.position&&oe.position.x===ne.x&&oe.position.y===ne.y,de=oe.dimensions&&oe.dimensions.width===be.width&&oe.dimensions.height===be.height;return ke&&de?!1:(oe.position=ne,oe.dimensions=be,O&&s.commit(),!0)}function Z(I,L,O,oe=!0,ne){const be=v(I);if(!be)return;const ke=O??!be.expanded[L];ke!==!!be.expanded[L]&&(be.expanded[L]=ke,oe&&s.commit(ne??`toggle:${I}:${L}`))}function ee(I,L,O=!0,oe){const ne=v(I);ne&&(ne.config=ln(L),O&&s.commit(oe))}function ie(I,L,O,oe=!0){const ne=v(I);if(!ne)return;const be=ne.fields[L];if(be.some(ke=>ke.name===O)){console.warn(`[addField] field "${O}" already exists on ${L}.`);return}be.push({id:ko("field"),name:O}),L==="input"?ne.fields.input=be:ne.fields.output=be,oe&&s.commit()}function he(I,L,O,oe=!0){const ne=v(I);if(!ne)return;const be=ne.fields.input,ke=ne.fields.output,de=be.find(Ne=>Ne.id===L)??ke.find(Ne=>Ne.id===L);de&&(de.name=O,oe&&s.commit())}function J(I,L,O=!0,oe=!0){const ne=v(I);if(!ne)return;const be=ne.fields.input,ke=ne.fields.output,de=be.findIndex(me=>me.id===L);de>=0&&be.splice(de,1);const Ne=ke.findIndex(me=>me.id===L);Ne>=0&&ke.splice(Ne,1),ne.fields.input=be,ne.fields.output=ke,O&&(r.value.edges=r.value.edges.filter(me=>me.sourceField!==L&&me.targetField!==L));const Te=C();Te.ok||console.warn("[removeField] topology invalid:",Te.errors.join("; ")),oe&&s.commit()}function re(I,L=!0){const O=S(I),oe=E(O);if(!oe.ok){console.warn("[connectEdge] invalid connection:",oe.errors.join("; "));return}const ne={id:ko("edge"),...O};r.value.edges.push(ne);const be=C();if(!be.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",be.errors.join("; "));return}return L&&s.commit(),ne.id}function le(I,L,O=!0){ue(I,!1),re(L,!1),O&&s.commit()}function ue(I,L=!0){const O=r.value.edges.findIndex(be=>be.id===I);if(O<0)return;const oe=r.value.edges[O];r.value.edges.splice(O,1);const ne=C();if(!ne.ok){r.value.edges.splice(O,0,oe),console.warn("[disconnectEdge] topology invalid:",ne.errors.join("; "));return}L&&s.commit()}function fe(I,L=!0){const O=Y(I);for(const oe of O)ue(oe.id,!1);L&&s.commit()}function $(I,L=!0){const O=T(I);for(const oe of O)ue(oe.id,!1);L&&s.commit()}function B(){var L,O,oe,ne,be;const I=[];for(const ke of r.value.nodes){if(Vt(ke.type))continue;let de;const Ne={};let Te;const me={};for(const st of r.value.edges.filter(Ye=>Ye.target===ke.id)){const Ye=v(st.source);if(!Ye)continue;const pt=(L=bn(Ye,"output",st.sourceField))==null?void 0:L.name,Ct=pt?`${Ye.name}.${pt}`:Ye.name,mt=(O=bn(ke,"input",st.targetField))==null?void 0:O.name;mt?Ne[mt]=Ct:de===void 0&&(de=Ct)}for(const st of r.value.edges.filter(Ye=>Ye.source===ke.id)){const Ye=v(st.target);if(!Ye)continue;const pt=Ye.type;if(!Vt(pt)||!((oe=ii[pt].io)!=null&&oe.input))continue;const Ct=(ne=bn(Ye,"input",st.targetField))==null?void 0:ne.name,mt=Ct?`${Ye.name}.${Ct}`:Ye.name,$e=(be=bn(ke,"output",st.sourceField))==null?void 0:be.name;$e?me[$e]=mt:Te===void 0&&(Te=mt)}const ge={...ln(ke.config),name:ke.name,type:ke.type},ot=nr(ke.type);if(ot.length)for(const st of ot){const Ye=ge[st];if(!Array.isArray(Ye))continue;const pt=[];for(const Ct of Ye){const mt=v(Ct);mt&&pt.push(mt.name)}pt.length?ge[st]=Array.from(new Set(pt)):delete ge[st]}Object.keys(Ne).length>0?ge.inputs=Ne:de!==void 0&&(ge.input=de),Object.keys(me).length>0?ge.outputs=me:Te!==void 0&&(ge.output=Te),I.push(ge)}return I}function M(){return r.value.nodes.map(I=>ln({name:I.name,phase:I.phase,position:{...I.position},expanded:{...I.expanded},fields:{input:I.fields.input.map(L=>L.name),output:I.fields.output.map(L=>L.name)}}))}function V(){const I={},L=R("vault");if(L){const O=g1(L.config);O&&Object.keys(O).length>0&&(I.vault=O)}if(r.value.cacheConfig){const{strategy:O,redis:oe,memory:ne}=r.value.cacheConfig;I.cache={strategy:O,redis:oe,memory:ne}}if(Object.keys(I).length!==0)return I}function Q(){const I=[];for(const L of r.value.groups){const O=v(L.ownerId);if(!O)continue;const oe=L.position;oe&&I.push({name:si(O.name,L.branch),position:{...oe}})}return I}function z(){return{nodes:M(),groups:Q()}}function ae(I,L){L&&s.commit(),r.value=Fu(I,L),L||s.clear()}return{state:r,selection:i,modalOpen:a,skipValidation:c,invalidConfigNodeIds:d,propertiesPanelOpen:l,nodeMapById:p,nodeMapByName:m,edgeMapById:_,edgeIdMapByNodeId:y,groupMapById:g,getNodeById:v,getNodeByName:R,getEdgeById:F,getEdgesByNodeId:k,getInEdgesByNodeId:Y,getOutEdgesByNodeId:T,selectedNode:q,selectNode:j,createNode:te,addNode:X,duplicateNode:D,removeNode:K,renameNode:A,moveNode:P,moveGroup:U,setGroupLayout:G,toggleExpanded:Z,replaceConfig:ee,branchGroups:b,addField:ie,renameField:he,removeField:J,connectEdge:re,replaceConnection:le,disconnectEdge:ue,disconnectInEdges:fe,disconnectOutEdges:$,toConfigNodes:B,toUINodes:M,toUIGroups:Q,toUIData:z,load:ae,commit:s.commit,undo:s.undo,redo:s.redo,canUndo:s.canUndo,canRedo:s.canRedo,clear:s.clear,reset:s.reset,revert:s.revert,isValidConnection:N,isValidVueFlowConnection:x,validateGraph:()=>C(),clearPendingLayout:f,setPendingFitView:u}});function at(){const e=C1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const{t:E1}=Xe.createI18n("en-us",Je),Cl=qe.createGlobalState(()=>{const e=qe.useLocalStorage("datakit-editor-mode","flow"),n=qe.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}});function N1({enabled:e,confirm:n}){no.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm(E1("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=r=>{t.toValue(e)&&r.preventDefault()};qe.useEventListener("beforeunload",o)}function di(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function sn(e){return typeof e=="function"?e():t.unref(e)}const x1=typeof window<"u"&&typeof document<"u",S1=e=>typeof e<"u",v1=Object.prototype.toString,A1=e=>v1.call(e)==="[object Object]",I1=()=>{};function T1(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 Gu=e=>e();function P1(e=Gu){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 qu(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function O1(e,n,o={}){const{eventFilter:r=Gu,...i}=o;return t.watch(e,T1(r,n),i)}function Eo(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=P1(r);return{stop:O1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function $1(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=sn(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 El(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:_}={}){let y=null;const w=[new Promise(b=>{y=t.watch(e,S=>{u(S)!==n&&(y==null||y(),b(S))},{flush:p,deep:m,immediate:!0})})];return h!=null&&w.push(qu(h,_).then(()=>sn(e)).finally(()=>y==null?void 0:y())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(S=>S===u,p);const{flush:m="sync",deep:h=!1,timeout:_,throwOnTimeout:y}=p??{};let g=null;const b=[new Promise(S=>{g=t.watch([e,u],([E,C])=>{n!==(E===C)&&(g==null||g(),S(E))},{flush:m,deep:h,immediate:!0})})];return _!=null&&b.push(qu(_,y).then(()=>sn(e)).finally(()=>(g==null||g(),sn(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(sn(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(sn(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return El(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return El(e,!n)}}}function Nl(e){return El(e)}function B1(e){var n;const o=sn(e);return(n=o==null?void 0:o.$el)!=null?n:o}const zu=x1?window:void 0;function Hu(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=zu):[n,o,r,i]=e,!n)return I1;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(()=>[B1(n),sn(i)],([f,u])=>{if(l(),!f)return;const p=A1(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return di(d),d}function V1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Yu(...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=zu,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=V1(n);return Hu(i,a,f=>{f.repeat&&sn(s)||c(f)&&o(f)},l)}function R1(e){return JSON.parse(JSON.stringify(e))}function xl(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 _=d;n||(n="modelValue"),_=_||`update:${n.toString()}`;const y=b=>s?typeof s=="function"?s(b):R1(b):b,g=()=>S1(e[n])?y(e[n]):u,w=b=>{p?p(b)&&h(_,b):h(_,b)};if(c){const b=g(),S=t.ref(b);let E=!1;return t.watch(()=>e[n],C=>{E||(E=!0,S.value=y(C),t.nextTick(()=>E=!1))}),t.watch(S,C=>{!E&&(C!==e[n]||f)&&w(C)},{deep:f}),S}else return t.computed({get(){return g()},set(b){w(b)}})}var D1={value:()=>{}};function ui(){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 fi(o)}function fi(e){this._=e}function M1(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}})}fi.prototype=ui.prototype={constructor:fi,on:function(e,n){var o=this._,r=M1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=L1(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]=Wu(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Wu(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 fi(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 L1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Wu(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=D1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Sl="http://www.w3.org/1999/xhtml";const Xu={svg:"http://www.w3.org/2000/svg",xhtml:Sl,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function pi(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Xu.hasOwnProperty(n)?{space:Xu[n],local:e}:e}function F1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Sl&&n.documentElement.namespaceURI===Sl?n.createElement(e):n.createElementNS(o,e)}}function U1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Zu(e){var n=pi(e);return(n.local?U1:F1)(n)}function K1(){}function vl(e){return e==null?K1:function(){return this.querySelector(e)}}function j1(e){typeof e!="function"&&(e=vl(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 Tt(r,this._parents)}function G1(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function q1(){return[]}function Ju(e){return e==null?q1:function(){return this.querySelectorAll(e)}}function z1(e){return function(){return G1(e.apply(this,arguments))}}function H1(e){typeof e=="function"?e=z1(e):e=Ju(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 Tt(r,i)}function Qu(e){return function(){return this.matches(e)}}function ef(e){return function(n){return n.matches(e)}}var Y1=Array.prototype.find;function W1(e){return function(){return Y1.call(this.children,e)}}function X1(){return this.firstElementChild}function Z1(e){return this.select(e==null?X1:W1(typeof e=="function"?e:ef(e)))}var J1=Array.prototype.filter;function Q1(){return Array.from(this.children)}function ex(e){return function(){return J1.call(this.children,e)}}function tx(e){return this.selectAll(e==null?Q1:ex(typeof e=="function"?e:ef(e)))}function nx(e){typeof e!="function"&&(e=Qu(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 Tt(r,this._parents)}function tf(e){return new Array(e.length)}function ox(){return new Tt(this._enter||this._groups.map(tf),this._parents)}function mi(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}mi.prototype={constructor:mi,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 rx(e){return function(){return e}}function ix(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 mi(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function ax(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 mi(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function lx(e){return e.__data__}function sx(e,n){if(!arguments.length)return Array.from(this,lx);var o=n?ax:ix,r=this._parents,i=this._groups;typeof e!="function"&&(e=rx(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=cx(e.call(f,f&&f.__data__,d,r)),h=m.length,_=s[d]=new Array(h),y=l[d]=new Array(h),g=c[d]=new Array(p);o(f,u,_,y,g,m,n);for(var w=0,b=0,S,E;w<h;++w)if(S=_[w]){for(w>=b&&(b=w+1);!(E=y[b])&&++b<h;);S._next=E||null}}return l=new Tt(l,r),l._enter=s,l._exit=c,l}function cx(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function dx(){return new Tt(this._exit||this._groups.map(tf),this._parents)}function ux(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 fx(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 Tt(s,this._parents)}function px(){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 mx(e){e||(e=gx);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 Tt(i,this._parents).order()}function gx(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function hx(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function yx(){return Array.from(this)}function _x(){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 bx(){let e=0;for(const n of this)++e;return e}function wx(){return!this.node()}function kx(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 Cx(e){return function(){this.removeAttribute(e)}}function Ex(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Nx(e,n){return function(){this.setAttribute(e,n)}}function xx(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function Sx(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function vx(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 Ax(e,n){var o=pi(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?Ex:Cx:typeof n=="function"?o.local?vx:Sx:o.local?xx:Nx)(o,n))}function nf(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Ix(e){return function(){this.style.removeProperty(e)}}function Tx(e,n,o){return function(){this.style.setProperty(e,n,o)}}function Px(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function Ox(e,n,o){return arguments.length>1?this.each((n==null?Ix:typeof n=="function"?Px:Tx)(e,n,o??"")):No(this.node(),e)}function No(e,n){return e.style.getPropertyValue(n)||nf(e).getComputedStyle(e,null).getPropertyValue(n)}function $x(e){return function(){delete this[e]}}function Bx(e,n){return function(){this[e]=n}}function Vx(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function Rx(e,n){return arguments.length>1?this.each((n==null?$x:typeof n=="function"?Vx:Bx)(e,n)):this.node()[e]}function of(e){return e.trim().split(/^|\s+/)}function Al(e){return e.classList||new rf(e)}function rf(e){this._node=e,this._names=of(e.getAttribute("class")||"")}rf.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 af(e,n){for(var o=Al(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function lf(e,n){for(var o=Al(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Dx(e){return function(){af(this,e)}}function Mx(e){return function(){lf(this,e)}}function Lx(e,n){return function(){(n.apply(this,arguments)?af:lf)(this,e)}}function Fx(e,n){var o=of(e+"");if(arguments.length<2){for(var r=Al(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?Lx:n?Dx:Mx)(o,n))}function Ux(){this.textContent=""}function Kx(e){return function(){this.textContent=e}}function jx(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function Gx(e){return arguments.length?this.each(e==null?Ux:(typeof e=="function"?jx:Kx)(e)):this.node().textContent}function qx(){this.innerHTML=""}function zx(e){return function(){this.innerHTML=e}}function Hx(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function Yx(e){return arguments.length?this.each(e==null?qx:(typeof e=="function"?Hx:zx)(e)):this.node().innerHTML}function Wx(){this.nextSibling&&this.parentNode.appendChild(this)}function Xx(){return this.each(Wx)}function Zx(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Jx(){return this.each(Zx)}function Qx(e){var n=typeof e=="function"?e:Zu(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function eS(){return null}function tS(e,n){var o=typeof e=="function"?e:Zu(e),r=n==null?eS:typeof n=="function"?n:vl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function nS(){var e=this.parentNode;e&&e.removeChild(this)}function oS(){return this.each(nS)}function rS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function iS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function aS(e){return this.select(e?iS:rS)}function lS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function sS(e){return function(n){e.call(this,n,this.__data__)}}function cS(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 dS(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 uS(e,n,o){return function(){var r=this.__on,i,a=sS(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 fS(e,n,o){var r=cS(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?uS:dS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function sf(e,n,o){var r=nf(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 pS(e,n){return function(){return sf(this,e,n)}}function mS(e,n){return function(){return sf(this,e,n.apply(this,arguments))}}function gS(e,n){return this.each((typeof n=="function"?mS:pS)(e,n))}function*hS(){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 cf=[null];function Tt(e,n){this._groups=e,this._parents=n}function or(){return new Tt([[document.documentElement]],cf)}function yS(){return this}Tt.prototype=or.prototype={constructor:Tt,select:j1,selectAll:H1,selectChild:Z1,selectChildren:tx,filter:nx,data:sx,enter:ox,exit:dx,join:ux,merge:fx,selection:yS,order:px,sort:mx,call:hx,nodes:yx,node:_x,size:bx,empty:wx,each:kx,attr:Ax,style:Ox,property:Rx,classed:Fx,text:Gx,html:Yx,raise:Xx,lower:Jx,append:Qx,insert:tS,remove:oS,clone:aS,datum:lS,on:fS,dispatch:gS,[Symbol.iterator]:hS};function Ft(e){return typeof e=="string"?new Tt([[document.querySelector(e)]],[document.documentElement]):new Tt([[e]],cf)}function _S(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Ht(e,n){if(e=_S(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 bS={passive:!1},rr={capture:!0,passive:!1};function Il(e){e.stopImmediatePropagation()}function xo(e){e.preventDefault(),e.stopImmediatePropagation()}function df(e){var n=e.document.documentElement,o=Ft(e).on("dragstart.drag",xo,rr);"onselectstart"in n?o.on("selectstart.drag",xo,rr):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function uf(e,n){var o=e.document.documentElement,r=Ft(e).on("dragstart.drag",null);n&&(r.on("click.drag",xo,rr),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 gi=e=>()=>e;function Tl(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}})}Tl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function wS(e){return!e.ctrlKey&&!e.button}function kS(){return this.parentNode}function CS(e,n){return n??{x:e.x,y:e.y}}function ES(){return navigator.maxTouchPoints||"ontouchstart"in this}function NS(){var e=wS,n=kS,o=CS,r=ES,i={},a=ui("start","drag","end"),l=0,s,c,d,f,u=0;function p(S){S.on("mousedown.drag",m).filter(r).on("touchstart.drag",y).on("touchmove.drag",g,bS).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(S,E){if(!(f||!e.call(this,S,E))){var C=b(this,n.call(this,S,E),S,E,"mouse");C&&(Ft(S.view).on("mousemove.drag",h,rr).on("mouseup.drag",_,rr),df(S.view),Il(S),d=!1,s=S.clientX,c=S.clientY,C("start",S))}}function h(S){if(xo(S),!d){var E=S.clientX-s,C=S.clientY-c;d=E*E+C*C>u}i.mouse("drag",S)}function _(S){Ft(S.view).on("mousemove.drag mouseup.drag",null),uf(S.view,d),xo(S),i.mouse("end",S)}function y(S,E){if(e.call(this,S,E)){var C=S.changedTouches,N=n.call(this,S,E),x=C.length,v,R;for(v=0;v<x;++v)(R=b(this,N,S,E,C[v].identifier,C[v]))&&(Il(S),R("start",S,C[v]))}}function g(S){var E=S.changedTouches,C=E.length,N,x;for(N=0;N<C;++N)(x=i[E[N].identifier])&&(xo(S),x("drag",S,E[N]))}function w(S){var E=S.changedTouches,C=E.length,N,x;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),N=0;N<C;++N)(x=i[E[N].identifier])&&(Il(S),x("end",S,E[N]))}function b(S,E,C,N,x,v){var R=a.copy(),F=Ht(v||C,E),k,Y,T;if((T=o.call(S,new Tl("beforestart",{sourceEvent:C,target:p,identifier:x,active:l,x:F[0],y:F[1],dx:0,dy:0,dispatch:R}),N))!=null)return k=T.x-F[0]||0,Y=T.y-F[1]||0,function q(j,te,X){var D=F,K;switch(j){case"start":i[x]=q,K=l++;break;case"end":delete i[x],--l;case"drag":F=Ht(X||te,E),K=l;break}R.call(j,S,new Tl(j,{sourceEvent:te,subject:T,target:p,identifier:x,active:K,x:F[0]+k,y:F[1]+Y,dx:F[0]-D[0],dy:F[1]-D[1],dispatch:R}),N)}}return p.filter=function(S){return arguments.length?(e=typeof S=="function"?S:gi(!!S),p):e},p.container=function(S){return arguments.length?(n=typeof S=="function"?S:gi(S),p):n},p.subject=function(S){return arguments.length?(o=typeof S=="function"?S:gi(S),p):o},p.touchable=function(S){return arguments.length?(r=typeof S=="function"?S:gi(!!S),p):r},p.on=function(){var S=a.on.apply(a,arguments);return S===a?p:S},p.clickDistance=function(S){return arguments.length?(u=(S=+S)*S,p):Math.sqrt(u)},p}function Pl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function ff(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function ir(){}var ar=.7,hi=1/ar,So="\\s*([+-]?\\d+)\\s*",lr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Yt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",xS=/^#([0-9a-f]{3,8})$/,SS=new RegExp(`^rgb\\(${So},${So},${So}\\)$`),vS=new RegExp(`^rgb\\(${Yt},${Yt},${Yt}\\)$`),AS=new RegExp(`^rgba\\(${So},${So},${So},${lr}\\)$`),IS=new RegExp(`^rgba\\(${Yt},${Yt},${Yt},${lr}\\)$`),TS=new RegExp(`^hsl\\(${lr},${Yt},${Yt}\\)$`),PS=new RegExp(`^hsla\\(${lr},${Yt},${Yt},${lr}\\)$`),pf={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};Pl(ir,Un,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:mf,formatHex:mf,formatHex8:OS,formatHsl:$S,formatRgb:gf,toString:gf});function mf(){return this.rgb().formatHex()}function OS(){return this.rgb().formatHex8()}function $S(){return wf(this).formatHsl()}function gf(){return this.rgb().formatRgb()}function Un(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=xS.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?hf(n):o===3?new vt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?yi(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?yi(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=SS.exec(e))?new vt(n[1],n[2],n[3],1):(n=vS.exec(e))?new vt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=AS.exec(e))?yi(n[1],n[2],n[3],n[4]):(n=IS.exec(e))?yi(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=TS.exec(e))?bf(n[1],n[2]/100,n[3]/100,1):(n=PS.exec(e))?bf(n[1],n[2]/100,n[3]/100,n[4]):pf.hasOwnProperty(e)?hf(pf[e]):e==="transparent"?new vt(NaN,NaN,NaN,0):null}function hf(e){return new vt(e>>16&255,e>>8&255,e&255,1)}function yi(e,n,o,r){return r<=0&&(e=n=o=NaN),new vt(e,n,o,r)}function BS(e){return e instanceof ir||(e=Un(e)),e?(e=e.rgb(),new vt(e.r,e.g,e.b,e.opacity)):new vt}function Ol(e,n,o,r){return arguments.length===1?BS(e):new vt(e,n,o,r??1)}function vt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}Pl(vt,Ol,ff(ir,{brighter(e){return e=e==null?hi:Math.pow(hi,e),new vt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?ar:Math.pow(ar,e),new vt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new vt(Kn(this.r),Kn(this.g),Kn(this.b),_i(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:yf,formatHex:yf,formatHex8:VS,formatRgb:_f,toString:_f}));function yf(){return`#${jn(this.r)}${jn(this.g)}${jn(this.b)}`}function VS(){return`#${jn(this.r)}${jn(this.g)}${jn(this.b)}${jn((isNaN(this.opacity)?1:this.opacity)*255)}`}function _f(){const e=_i(this.opacity);return`${e===1?"rgb(":"rgba("}${Kn(this.r)}, ${Kn(this.g)}, ${Kn(this.b)}${e===1?")":`, ${e})`}`}function _i(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Kn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function jn(e){return e=Kn(e),(e<16?"0":"")+e.toString(16)}function bf(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Ut(e,n,o,r)}function wf(e){if(e instanceof Ut)return new Ut(e.h,e.s,e.l,e.opacity);if(e instanceof ir||(e=Un(e)),!e)return new Ut;if(e instanceof Ut)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 Ut(l,s,c,e.opacity)}function RS(e,n,o,r){return arguments.length===1?wf(e):new Ut(e,n,o,r??1)}function Ut(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Pl(Ut,RS,ff(ir,{brighter(e){return e=e==null?hi:Math.pow(hi,e),new Ut(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?ar:Math.pow(ar,e),new Ut(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 vt($l(e>=240?e-240:e+120,i,r),$l(e,i,r),$l(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Ut(kf(this.h),bi(this.s),bi(this.l),_i(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=_i(this.opacity);return`${e===1?"hsl(":"hsla("}${kf(this.h)}, ${bi(this.s)*100}%, ${bi(this.l)*100}%${e===1?")":`, ${e})`}`}}));function kf(e){return e=(e||0)%360,e<0?e+360:e}function bi(e){return Math.max(0,Math.min(1,e||0))}function $l(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 Bl=e=>()=>e;function DS(e,n){return function(o){return e+o*n}}function MS(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 LS(e){return(e=+e)==1?Cf:function(n,o){return o-n?MS(n,o,e):Bl(isNaN(n)?o:n)}}function Cf(e,n){var o=n-e;return o?DS(e,o):Bl(isNaN(e)?n:e)}const wi=function e(n){var o=LS(n);function r(i,a){var l=o((i=Ol(i)).r,(a=Ol(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Cf(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 FS(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 US(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function KS(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]=sr(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 jS(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Wt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function GS(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]=sr(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Vl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Rl=new RegExp(Vl.source,"g");function qS(e){return function(){return e}}function zS(e){return function(n){return e(n)+""}}function Ef(e,n){var o=Vl.lastIndex=Rl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=Vl.exec(e))&&(i=Rl.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:Wt(r,i)})),o=Rl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?zS(c[0].x):qS(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 sr(e,n){var o=typeof n,r;return n==null||o==="boolean"?Bl(n):(o==="number"?Wt:o==="string"?(r=Un(n))?(n=r,wi):Ef:n instanceof Un?wi:n instanceof Date?jS:US(n)?FS:Array.isArray(n)?KS:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?GS:Wt)(e,n)}var Nf=180/Math.PI,Dl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function xf(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)*Nf,skewX:Math.atan(c)*Nf,scaleX:l,scaleY:s}}var ki;function HS(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Dl:xf(n.a,n.b,n.c,n.d,n.e,n.f)}function YS(e){return e==null||(ki||(ki=document.createElementNS("http://www.w3.org/2000/svg","g")),ki.setAttribute("transform",e),!(e=ki.transform.baseVal.consolidate()))?Dl:(e=e.matrix,xf(e.a,e.b,e.c,e.d,e.e,e.f))}function Sf(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 _=m.push("translate(",null,n,null,o);h.push({i:_-4,x:Wt(d,u)},{i:_-2,x:Wt(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:Wt(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:Wt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var _=m.push(i(m)+"scale(",null,",",null,")");h.push({i:_-4,x:Wt(d,u)},{i:_-2,x:Wt(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,_=p.length,y;++h<_;)u[(y=p[h]).i]=y.x(m);return u.join("")}}}var WS=Sf(HS,"px, ","px)","deg)"),XS=Sf(YS,", ",")",")"),ZS=1e-12;function vf(e){return((e=Math.exp(e))+1/e)/2}function JS(e){return((e=Math.exp(e))-1/e)/2}function QS(e){return((e=Math.exp(2*e))-1)/(e+1)}const Ci=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,_=m*m+h*h,y,g;if(_<ZS)g=Math.log(p/d)/n,y=function(N){return[s+N*m,c+N*h,d*Math.exp(n*N*g)]};else{var w=Math.sqrt(_),b=(p*p-d*d+r*_)/(2*d*o*w),S=(p*p-d*d-r*_)/(2*p*o*w),E=Math.log(Math.sqrt(b*b+1)-b),C=Math.log(Math.sqrt(S*S+1)-S);g=(C-E)/n,y=function(N){var x=N*g,v=vf(E),R=d/(o*w)*(v*QS(n*x+E)-JS(E));return[s+R*m,c+R*h,d*v/vf(n*x+E)]}}return y.duration=g*1e3*n/Math.SQRT2,y}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 vo=0,cr=0,dr=0,Af=1e3,Ei,ur,Ni=0,Gn=0,xi=0,fr=typeof performance=="object"&&performance.now?performance:Date,If=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Ml(){return Gn||(If(ev),Gn=fr.now()+xi)}function ev(){Gn=0}function Si(){this._call=this._time=this._next=null}Si.prototype=Tf.prototype={constructor:Si,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Ml():+o)+(n==null?0:+n),!this._next&&ur!==this&&(ur?ur._next=this:Ei=this,ur=this),this._call=e,this._time=o,Ll()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ll())}};function Tf(e,n,o){var r=new Si;return r.restart(e,n,o),r}function tv(){Ml(),++vo;for(var e=Ei,n;e;)(n=Gn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--vo}function Pf(){Gn=(Ni=fr.now())+xi,vo=cr=0;try{tv()}finally{vo=0,ov(),Gn=0}}function nv(){var e=fr.now(),n=e-Ni;n>Af&&(xi-=n,Ni=e)}function ov(){for(var e,n=Ei,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:Ei=o);ur=e,Ll(r)}function Ll(e){if(!vo){cr&&(cr=clearTimeout(cr));var n=e-Gn;n>24?(e<1/0&&(cr=setTimeout(Pf,e-fr.now()-xi)),dr&&(dr=clearInterval(dr))):(dr||(Ni=fr.now(),dr=setInterval(nv,Af)),vo=1,If(Pf))}}function Of(e,n,o){var r=new Si;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var rv=ui("start","end","cancel","interrupt"),iv=[],$f=0,Bf=1,Fl=2,vi=3,Vf=4,Ul=5,Ai=6;function Ii(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;av(e,o,{name:n,index:r,group:i,on:rv,tween:iv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:$f})}function Kl(e,n){var o=Kt(e,n);if(o.state>$f)throw new Error("too late; already scheduled");return o}function Xt(e,n){var o=Kt(e,n);if(o.state>vi)throw new Error("too late; already running");return o}function Kt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function av(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Tf(a,0,o.time);function a(d){o.state=Bf,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!==Bf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===vi)return Of(l);m.state===Vf?(m.state=Ai,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=Ai,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Of(function(){o.state===vi&&(o.state=Vf,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Fl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Fl){for(o.state=vi,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=Ul,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Ul&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Ai,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Ti(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>Fl&&r.state<Ul,r.state=Ai,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function lv(e){return this.each(function(){Ti(this,e)})}function sv(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 dv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Kt(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?sv:cv)(o,e,n))}function jl(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 Kt(i,r).value[n]}}function Rf(e,n){var o;return(typeof n=="number"?Wt:n instanceof Un?wi:(o=Un(n))?(n=o,wi):Ef)(e,n)}function uv(e){return function(){this.removeAttribute(e)}}function fv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function pv(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 mv(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 gv(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 hv(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 yv(e,n){var o=pi(e),r=o==="transform"?XS:Rf;return this.attrTween(e,typeof n=="function"?(o.local?hv:gv)(o,r,jl(this,"attr."+e,n)):n==null?(o.local?fv:uv)(o):(o.local?mv:pv)(o,r,n))}function _v(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function bv(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function wv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&bv(e,a)),o}return i._value=n,i}function kv(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 Cv(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=pi(e);return this.tween(o,(r.local?wv:kv)(r,n))}function Ev(e,n){return function(){Kl(this,e).delay=+n.apply(this,arguments)}}function Nv(e,n){return n=+n,function(){Kl(this,e).delay=n}}function xv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Ev:Nv)(n,e)):Kt(this.node(),n).delay}function Sv(e,n){return function(){Xt(this,e).duration=+n.apply(this,arguments)}}function vv(e,n){return n=+n,function(){Xt(this,e).duration=n}}function Av(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Sv:vv)(n,e)):Kt(this.node(),n).duration}function Iv(e,n){if(typeof n!="function")throw new Error;return function(){Xt(this,e).ease=n}}function Tv(e){var n=this._id;return arguments.length?this.each(Iv(n,e)):Kt(this.node(),n).ease}function Pv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;Xt(this,e).ease=o}}function Ov(e){if(typeof e!="function")throw new Error;return this.each(Pv(this._id,e))}function $v(e){typeof e!="function"&&(e=Qu(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 cn(r,this._parents,this._name,this._id)}function Bv(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 cn(l,this._parents,this._name,this._id)}function Vv(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 Rv(e,n,o){var r,i,a=Vv(n)?Kl:Xt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Dv(e,n){var o=this._id;return arguments.length<2?Kt(this.node(),o).on.on(e):this.each(Rv(o,e,n))}function Mv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Lv(){return this.on("end.remove",Mv(this._id))}function Fv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=vl(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,Ii(d[p],n,o,p,d,Kt(f,o)));return new cn(a,this._parents,n,o)}function Uv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Ju(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=Kt(f,o),_=0,y=p.length;_<y;++_)(m=p[_])&&Ii(m,n,o,_,p,h);a.push(p),l.push(f)}return new cn(a,l,n,o)}var Kv=or.prototype.constructor;function jv(){return new Kv(this._groups,this._parents)}function Gv(e,n){var o,r,i;return function(){var a=No(this,e),l=(this.style.removeProperty(e),No(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Df(e){return function(){this.style.removeProperty(e)}}function qv(e,n,o){var r,i=o+"",a;return function(){var l=No(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function zv(e,n,o){var r,i,a;return function(){var l=No(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),No(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function Hv(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=Df(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function Yv(e,n,o){var r=(e+="")=="transform"?WS:Rf;return n==null?this.styleTween(e,Gv(e,r)).on("end.style."+e,Df(e)):typeof n=="function"?this.styleTween(e,zv(e,r,jl(this,"style."+e,n))).each(Hv(this._id,e)):this.styleTween(e,qv(e,r,n),o).on("end.style."+e,null)}function Wv(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function Xv(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&Wv(e,l,o)),r}return a._value=n,a}function Zv(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,Xv(e,n,o??""))}function Jv(e){return function(){this.textContent=e}}function Qv(e){return function(){var n=e(this);this.textContent=n??""}}function eA(e){return this.tween("text",typeof e=="function"?Qv(jl(this,"text",e)):Jv(e==null?"":e+""))}function tA(e){return function(n){this.textContent=e.call(this,n)}}function nA(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&tA(i)),n}return r._value=e,r}function oA(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,nA(e))}function rA(){for(var e=this._name,n=this._id,o=Mf(),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=Kt(c,n);Ii(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new cn(r,this._parents,e,o)}function iA(){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 aA=0;function cn(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Mf(){return++aA}var dn=or.prototype;cn.prototype={constructor:cn,select:Fv,selectAll:Uv,selectChild:dn.selectChild,selectChildren:dn.selectChildren,filter:$v,merge:Bv,selection:jv,transition:rA,call:dn.call,nodes:dn.nodes,node:dn.node,size:dn.size,empty:dn.empty,each:dn.each,on:Dv,attr:yv,attrTween:Cv,style:Yv,styleTween:Zv,text:eA,textTween:oA,remove:Lv,tween:dv,delay:xv,duration:Av,ease:Tv,easeVarying:Ov,end:iA,[Symbol.iterator]:dn[Symbol.iterator]};function lA(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var sA={time:null,delay:0,duration:250,ease:lA};function cA(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 dA(e){var n,o;e instanceof cn?(n=e._id,e=e._name):(n=Mf(),(o=sA).time=Ml(),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])&&Ii(c,e,n,d,l,o||cA(c,n));return new cn(r,this._parents,e,n)}or.prototype.interrupt=lv,or.prototype.transition=dA;const Pi=e=>()=>e;function uA(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 un(e,n,o){this.k=e,this.x=n,this.y=o}un.prototype={constructor:un,scale:function(e){return e===1?this:new un(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new un(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 Ao=new un(1,0,0);un.prototype;function Gl(e){e.stopImmediatePropagation()}function pr(e){e.preventDefault(),e.stopImmediatePropagation()}function fA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function pA(){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 Lf(){return this.__zoom||Ao}function mA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function gA(){return navigator.maxTouchPoints||"ontouchstart"in this}function hA(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 yA(){var e=fA,n=pA,o=hA,r=mA,i=gA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Ci,d=ui("start","zoom","end"),f,u,p,m=500,h=150,_=0,y=10;function g(T){T.property("__zoom",Lf).on("wheel.zoom",x,{passive:!1}).on("mousedown.zoom",v).on("dblclick.zoom",R).filter(i).on("touchstart.zoom",F).on("touchmove.zoom",k).on("touchend.zoom touchcancel.zoom",Y).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}g.transform=function(T,q,j,te){var X=T.selection?T.selection():T;X.property("__zoom",Lf),T!==X?E(T,q,j,te):X.interrupt().each(function(){C(this,arguments).event(te).start().zoom(null,typeof q=="function"?q.apply(this,arguments):q).end()})},g.scaleBy=function(T,q,j,te){g.scaleTo(T,function(){var X=this.__zoom.k,D=typeof q=="function"?q.apply(this,arguments):q;return X*D},j,te)},g.scaleTo=function(T,q,j,te){g.transform(T,function(){var X=n.apply(this,arguments),D=this.__zoom,K=j==null?S(X):typeof j=="function"?j.apply(this,arguments):j,A=D.invert(K),P=typeof q=="function"?q.apply(this,arguments):q;return o(b(w(D,P),K,A),X,l)},j,te)},g.translateBy=function(T,q,j,te){g.transform(T,function(){return o(this.__zoom.translate(typeof q=="function"?q.apply(this,arguments):q,typeof j=="function"?j.apply(this,arguments):j),n.apply(this,arguments),l)},null,te)},g.translateTo=function(T,q,j,te,X){g.transform(T,function(){var D=n.apply(this,arguments),K=this.__zoom,A=te==null?S(D):typeof te=="function"?te.apply(this,arguments):te;return o(Ao.translate(A[0],A[1]).scale(K.k).translate(typeof q=="function"?-q.apply(this,arguments):-q,typeof j=="function"?-j.apply(this,arguments):-j),D,l)},te,X)};function w(T,q){return q=Math.max(a[0],Math.min(a[1],q)),q===T.k?T:new un(q,T.x,T.y)}function b(T,q,j){var te=q[0]-j[0]*T.k,X=q[1]-j[1]*T.k;return te===T.x&&X===T.y?T:new un(T.k,te,X)}function S(T){return[(+T[0][0]+ +T[1][0])/2,(+T[0][1]+ +T[1][1])/2]}function E(T,q,j,te){T.on("start.zoom",function(){C(this,arguments).event(te).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(te).end()}).tween("zoom",function(){var X=this,D=arguments,K=C(X,D).event(te),A=n.apply(X,D),P=j==null?S(A):typeof j=="function"?j.apply(X,D):j,U=Math.max(A[1][0]-A[0][0],A[1][1]-A[0][1]),G=X.__zoom,Z=typeof q=="function"?q.apply(X,D):q,ee=c(G.invert(P).concat(U/G.k),Z.invert(P).concat(U/Z.k));return function(ie){if(ie===1)ie=Z;else{var he=ee(ie),J=U/he[2];ie=new un(J,P[0]-he[0]*J,P[1]-he[1]*J)}K.zoom(null,ie)}})}function C(T,q,j){return!j&&T.__zooming||new N(T,q)}function N(T,q){this.that=T,this.args=q,this.active=0,this.sourceEvent=null,this.extent=n.apply(T,q),this.taps=0}N.prototype={event:function(T){return T&&(this.sourceEvent=T),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(T,q){return this.mouse&&T!=="mouse"&&(this.mouse[1]=q.invert(this.mouse[0])),this.touch0&&T!=="touch"&&(this.touch0[1]=q.invert(this.touch0[0])),this.touch1&&T!=="touch"&&(this.touch1[1]=q.invert(this.touch1[0])),this.that.__zoom=q,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(T){var q=Ft(this.that).datum();d.call(T,this.that,new uA(T,{sourceEvent:this.sourceEvent,target:g,transform:this.that.__zoom,dispatch:d}),q)}};function x(T,...q){if(!e.apply(this,arguments))return;var j=C(this,q).event(T),te=this.__zoom,X=Math.max(a[0],Math.min(a[1],te.k*Math.pow(2,r.apply(this,arguments)))),D=Ht(T);if(j.wheel)(j.mouse[0][0]!==D[0]||j.mouse[0][1]!==D[1])&&(j.mouse[1]=te.invert(j.mouse[0]=D)),clearTimeout(j.wheel);else{if(te.k===X)return;j.mouse=[D,te.invert(D)],Ti(this),j.start()}pr(T),j.wheel=setTimeout(K,h),j.zoom("mouse",o(b(w(te,X),j.mouse[0],j.mouse[1]),j.extent,l));function K(){j.wheel=null,j.end()}}function v(T,...q){if(p||!e.apply(this,arguments))return;var j=T.currentTarget,te=C(this,q,!0).event(T),X=Ft(T.view).on("mousemove.zoom",P,!0).on("mouseup.zoom",U,!0),D=Ht(T,j),K=T.clientX,A=T.clientY;df(T.view),Gl(T),te.mouse=[D,this.__zoom.invert(D)],Ti(this),te.start();function P(G){if(pr(G),!te.moved){var Z=G.clientX-K,ee=G.clientY-A;te.moved=Z*Z+ee*ee>_}te.event(G).zoom("mouse",o(b(te.that.__zoom,te.mouse[0]=Ht(G,j),te.mouse[1]),te.extent,l))}function U(G){X.on("mousemove.zoom mouseup.zoom",null),uf(G.view,te.moved),pr(G),te.event(G).end()}}function R(T,...q){if(e.apply(this,arguments)){var j=this.__zoom,te=Ht(T.changedTouches?T.changedTouches[0]:T,this),X=j.invert(te),D=j.k*(T.shiftKey?.5:2),K=o(b(w(j,D),te,X),n.apply(this,q),l);pr(T),s>0?Ft(this).transition().duration(s).call(E,K,te,T):Ft(this).call(g.transform,K,te,T)}}function F(T,...q){if(e.apply(this,arguments)){var j=T.touches,te=j.length,X=C(this,q,T.changedTouches.length===te).event(T),D,K,A,P;for(Gl(T),K=0;K<te;++K)A=j[K],P=Ht(A,this),P=[P,this.__zoom.invert(P),A.identifier],X.touch0?!X.touch1&&X.touch0[2]!==P[2]&&(X.touch1=P,X.taps=0):(X.touch0=P,D=!0,X.taps=1+!!f);f&&(f=clearTimeout(f)),D&&(X.taps<2&&(u=P[0],f=setTimeout(function(){f=null},m)),Ti(this),X.start())}}function k(T,...q){if(this.__zooming){var j=C(this,q).event(T),te=T.changedTouches,X=te.length,D,K,A,P;for(pr(T),D=0;D<X;++D)K=te[D],A=Ht(K,this),j.touch0&&j.touch0[2]===K.identifier?j.touch0[0]=A:j.touch1&&j.touch1[2]===K.identifier&&(j.touch1[0]=A);if(K=j.that.__zoom,j.touch1){var U=j.touch0[0],G=j.touch0[1],Z=j.touch1[0],ee=j.touch1[1],ie=(ie=Z[0]-U[0])*ie+(ie=Z[1]-U[1])*ie,he=(he=ee[0]-G[0])*he+(he=ee[1]-G[1])*he;K=w(K,Math.sqrt(ie/he)),A=[(U[0]+Z[0])/2,(U[1]+Z[1])/2],P=[(G[0]+ee[0])/2,(G[1]+ee[1])/2]}else if(j.touch0)A=j.touch0[0],P=j.touch0[1];else return;j.zoom("touch",o(b(K,A,P),j.extent,l))}}function Y(T,...q){if(this.__zooming){var j=C(this,q).event(T),te=T.changedTouches,X=te.length,D,K;for(Gl(T),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),D=0;D<X;++D)K=te[D],j.touch0&&j.touch0[2]===K.identifier?delete j.touch0:j.touch1&&j.touch1[2]===K.identifier&&delete j.touch1;if(j.touch1&&!j.touch0&&(j.touch0=j.touch1,delete j.touch1),j.touch0)j.touch0[1]=this.__zoom.invert(j.touch0[0]);else if(j.end(),j.taps===2&&(K=Ht(K,this),Math.hypot(u[0]-K[0],u[1]-K[1])<y)){var A=Ft(this).on("dblclick.zoom");A&&A.apply(this,arguments)}}}return g.wheelDelta=function(T){return arguments.length?(r=typeof T=="function"?T:Pi(+T),g):r},g.filter=function(T){return arguments.length?(e=typeof T=="function"?T:Pi(!!T),g):e},g.touchable=function(T){return arguments.length?(i=typeof T=="function"?T:Pi(!!T),g):i},g.extent=function(T){return arguments.length?(n=typeof T=="function"?T:Pi([[+T[0][0],+T[0][1]],[+T[1][0],+T[1][1]]]),g):n},g.scaleExtent=function(T){return arguments.length?(a[0]=+T[0],a[1]=+T[1],g):[a[0],a[1]]},g.translateExtent=function(T){return arguments.length?(l[0][0]=+T[0][0],l[1][0]=+T[1][0],l[0][1]=+T[0][1],l[1][1]=+T[1][1],g):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},g.constrain=function(T){return arguments.length?(o=T,g):o},g.duration=function(T){return arguments.length?(s=+T,g):s},g.interpolate=function(T){return arguments.length?(c=T,g):c},g.on=function(){var T=d.on.apply(d,arguments);return T===d?g:T},g.clickDistance=function(T){return arguments.length?(_=(T=+T)*T,g):Math.sqrt(_)},g.tapDistance=function(T){return arguments.length?(y=+T,g):y},g}var Ee=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(Ee||{}),ql=(e=>(e.Partial="partial",e.Full="full",e))(ql||{}),qn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(qn||{}),wn=(e=>(e.Strict="strict",e.Loose="loose",e))(wn||{}),mr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(mr||{}),gr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(gr||{}),Ff=(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))(Ff||{});const _A=["INPUT","SELECT","TEXTAREA"],bA=typeof document<"u"?document:null;function zl(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 _A.includes(r==null?void 0:r.nodeName)||i||!!a}function wA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Uf(e,n,o,r){const i=n.replace("+",`
118
+ `},Symbol.toStringTag,{value:"Module"})),e1={class:"dk-code-editor"},t1={class:"examples-content"},n1={ref:"editor-root",class:"editor"},fl="YAML Syntax",o1="datakit.insert-example",r1=ve(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const{t:r}=Xe.createI18n("en-us",Je),{formData:i}=He(),a=o,l=t.useTemplateRef("editor-root"),s=t.shallowRef(null);function c(f){const u=s.value,p=u==null?void 0:u.getModel();if(!u||!p)return;const m=ul[f];u.getValue()!==m&&(u.pushUndoStop(),u.executeEdits(o1,[{range:p.getFullModelRange(),text:m}]),u.pushUndoStop()),d()}function d(){const f=s.value,u=f==null?void 0:f.getModel();!f||!u||(f.setPosition(u.getFullModelRange().getEndPosition()),f.focus())}return t.onMounted(()=>{const f=Pr.editor.create(l.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});if(s.value=f,i.config&&Object.keys(i.config).length>0){const u={...i.config};u.nodes&&u.nodes.length===0&&delete u.nodes;const p=Object.keys(u).length===0?"":ri.dump(t.toRaw(u),{schema:oi,noArrayIndent:!0});f.setValue(p),d()}f.onDidChangeModelContent(()=>{const u=f.getModel(),p=f.getValue()||"";try{const m=ri.load(p,{schema:oi,json:!0});Pr.editor.setModelMarkers(u,fl,[]),i.config=m,a("change",m)}catch(m){const{message:h,mark:_}=m,{line:y,column:g}=_||{line:0,column:0},w=h.split(`
119
+ `)[0],b=[{startLineNumber:y+1,startColumn:g+1,endLineNumber:y+1,endColumn:g+2,message:w,severity:Pr.MarkerSeverity.Error,source:fl}];Pr.editor.setModelMarkers(u,fl,b),a("error",w)}})}),t.onBeforeUnmount(()=>{var f;(f=s.value)==null||f.dispose()}),n({setExampleCode:c}),(f,u)=>(t.openBlock(),t.createElementBlock("div",e1,[t.createVNode(t.unref(Te.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(xe.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",t1,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(ul,(p,m)=>t.createVNode(t.unref(Te.KButton),{key:m,appearance:"secondary",size:"small",onClick:h=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${m}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),t.createElementVNode("div",n1,null,512)]))}}),[["__scopeId","data-v-5f51e876"]]),Au=["request","service_request","service_response","response","vault"],wo=Au,Iu=["call","jq","exit","property","static","branch","cache"],Pu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],kt={call:{icon:xe.NetworkIcon,colors:{foreground:hC,background:rC}},jq:{icon:xe.CodeblockIcon,colors:{foreground:uC,background:eC}},exit:{icon:xe.GatewayIcon,colors:{foreground:Xa,background:sC}},property:{icon:xe.StackIcon,colors:{foreground:mC,background:gC}},static:{icon:xe.VitalsIcon,colors:{foreground:fC,background:pC}},branch:{icon:xe.ArrowSplitIcon,colors:{foreground:cC,background:Qk}},cache:{icon:xe.CachedIcon,colors:{foreground:dC,background:"#fff0f7"}},vault:{icon:xe.KeyIcon},request:{icon:xe.CloudIcon},service_request:{icon:xe.CloudIcon},service_response:{icon:xe.CloudIcon},response:{icon:xe.CloudIcon}},{t:pl}=Xe.createI18n("en-us",Je);function Bt(e){return pl(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function Fn(e){return pl(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function i1(e){return pl(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const ml={call:{type:"call",summary:Fn("call"),description:Bt("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...kt.call},jq:{type:"jq",summary:Fn("jq"),description:Bt("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...kt.jq},exit:{type:"exit",summary:Fn("exit"),description:Bt("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...kt.exit},property:{type:"property",summary:Fn("property"),description:Bt("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...kt.property},static:{type:"static",summary:Fn("static"),description:Bt("static"),io:{output:{fields:[],configurable:!0}},...kt.static},branch:{type:"branch",summary:Fn("branch"),description:Bt("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...kt.branch},cache:{type:"cache",summary:Fn("cache"),description:Bt("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...kt.cache}},ii={request:{type:"request",description:Bt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...kt.request},service_request:{type:"service_request",description:Bt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...kt.service_request},service_response:{type:"service_response",description:Bt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...kt.service_response},response:{type:"response",description:Bt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...kt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...kt.vault,hidden:!0}},gl=Object.keys(ii),hl=e=>gl.includes(e),a1=e=>[...gl,...Iu].includes(e),Vt=e=>gl.includes(e),Tu=e=>Vt(e.type),Ou=e=>!!(e!=null&&e.startsWith("node:")),ai=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function ln(e){return so(e)}function yl(e,n){if(e.length!==n.length)return!1;if(e.length===0)return!0;const o=new Set(n);return e.every(r=>o.has(r))}function ko(e){return`${e}:${Gr()}`}function li(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function $u(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function Co(e){return Vt(e)?ii[e]:ml[e]}function Bu(e){var i,a,l,s;const n=Co(e),o=((a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields.map(({name:c})=>c))??[],r=((s=(l=n.io)==null?void 0:l.output)==null?void 0:s.fields.map(({name:c})=>c))??[];return{input:o,output:r}}function nr(e){var o,r,i;return((i=(r=(o=Co(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function Vu(e){return(e??[]).map(n=>({id:ko("field"),name:n}))}function _n(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function bn(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function _l(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Ru(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function l1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=ii[e];return{name:e,phase:n,position:{x:0,y:0},fields:Bu(o.type),expanded:{},hidden:o.hidden}}function Du(e,n){const r=(typeof e=="string"&&a1(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function bl(e,n){return`${e}:${n}`}function s1(e){const n=e.lastIndexOf(":");if(n===-1)throw new Error(`Invalid group ID format: ${e}`);const o=e.slice(0,n),r=e.slice(n+1);return{nodeId:o,branch:r}}function si(e,n){return`${e}:${n}`}function Mu(e,n,o,r,i){return{id:bl(e,n),ownerId:e,branch:n,phase:o,memberIds:[...r],position:i!=null&&i.position?{...i.position}:void 0,dimensions:i!=null&&i.dimensions?{...i.dimensions}:void 0}}function c1(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function d1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function Lu(e,n){return[...c1(e),...d1(n)]}function ci(e,n){const o=new Map;for(const{source:r,target:i}of e)o.has(r)||o.set(r,[]),o.get(r).push(i),o.has(i)||o.set(i,[]);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}function wl(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 kl(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&Ou(i)):[]}function u1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const x=new Map;for(const v of e.value.groups)for(const V of v.memberIds)x.set(V,{ownerId:v.ownerId,branch:v.branch});return x}),a=t.computed(()=>{const x=new Map;for(const v of e.value.groups)for(const V of v.memberIds)x.set(V,v);return x}),l=t.computed(()=>{const x=new Map;for(const v of e.value.groups)x.has(v.ownerId)||x.set(v.ownerId,[]),x.get(v.ownerId).push(v);return x}),s=t.computed(()=>Lu(e.value.edges,e.value.groups)),c=t.computed(()=>ci(s.value));function d(x,v){return x?nr(x.type).includes(v):!1}function f(x,v){if(v===x.id)return!1;const V=o(v);return!(!V||Vt(V.type)||V.phase!==x.phase)}function u(x,v){const V=[],L=new Set;for(const k of v)L.has(k)||(L.add(k),f(x,k)&&V.push(k));return V}function p(x,v,V){const L=o(x);return d(L,v)?u(L,V):[]}function m(x,v,V){const L=bl(x.id,v),k=n.value.get(L);V.length>0?k?(k.phase!==x.phase&&(k.phase=x.phase),yl(k.memberIds,V)||(k.position=void 0,k.dimensions=void 0,k.memberIds=[...V])):e.value.groups.push(Mu(x.id,v,x.phase,V)):k&&(e.value.groups=e.value.groups.filter(Y=>Y.id!==L))}function h(x,v,V,L={}){const k=o(x);if(!d(k,v))return!1;const Y=u(k,V),P=kl(k,v);if(yl(P,Y))return!1;const G=k.config??(k.config={});return Y.length>0?G[v]=[...Y]:(delete G[v],Object.keys(G).length===0&&delete k.config),m(k,v,Y),(L.commit??!0)&&r.commit(L.tag??`branch:set:${v}`),!0}function _(x){e.value.groups=e.value.groups.filter(v=>v.ownerId!==x)}function y(x,v){const V=n.value.get(bl(x,v));if(V)return[...V.memberIds];const L=o(x);return L?kl(L,v):[]}function g(x){return i.value.get(x)}function w(x,v){if(x===v)return!0;const V=new Set,L=[v];for(;L.length>0;){const k=L.pop();if(V.has(k))continue;if(V.add(k),k===x)return!0;const Y=c.value.get(k);if(Y)for(const P of Y)V.has(P)||L.push(P)}return!1}function b(x,v,V,L={}){const k=o(x);if(!k||!d(k,v)||!f(k,V)||w(x,V))return!1;const Y=kl(k,v);if(Y.includes(V))return!1;S(V);const P=[...Y,V];return h(x,v,P,{commit:!1})?((L.commit??!0)&&r.commit(L.tag??`branch:add:${v}`),!0):!1}function S(x){const v=g(x);if(!v)return;const L=y(v.ownerId,v.branch).filter(k=>k!==x);h(v.ownerId,v.branch,L,{commit:!1})}function E(x){let v=0;const V=new Set;let L=a.value.get(x);for(;L&&!V.has(L.id);)v+=1,V.add(L.id),L=a.value.get(L.ownerId);return v}function C(x){const v=n.value.get(x);return v?E(v.ownerId):0}function N(x){return x?n.value.has(x):!1}return{memberGroupMap:a,groupsByOwner:l,findMembership:g,getMembers:y,wouldCreateCycle:w,setMembers:h,prepareMembers:p,addMember:b,dropTarget:S,clear:_,getNodeDepth:E,getGroupDepth:C,isGroupId:N}}function f1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=qe.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var S;(S=n==null?void 0:n.onHistoryChange)==null||S.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function h(){r(),u=void 0,p("undo")}function _(){i(),u=void 0,p("redo")}function y(){s(),u=void 0,p("clear")}function g(){c(),u=void 0,p("reset")}function w(){r(),f.value.shift(),u=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:h,redo:_,clear:y,reset:g,revert:w}}function p1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function m1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function g1(e){const n=Object.entries(e);if(n.length===0)return;const o={};for(const[r,i]of n)o[r]=i;return o}function Fu(e,n){var y,g,w,b,S,E,C;const o=((y=e.config)==null?void 0:y.nodes)??[],r=((g=e.__ui_data)==null?void 0:g.nodes)??[],i=((w=e.__ui_data)==null?void 0:w.groups)??[],a=new Map(r.map(N=>[N.name,N])),l=new Map(i.map(N=>[N.name,N])),s=[],c=[],d=new Map,f=[],u=[],p=new Map,m=N=>{const x=new Set,v=[...N];for(;v.length>0;){const V=v.shift();if(!x.has(V)&&(x.add(V),hl(V)||(d.get(V).phase="request"),!!p.has(V)))for(const L of p.get(V))x.has(L)||v.push(L)}};let h=!1;for(const N of o){const x=a.get(N.name);!x&&!h&&(h=!0);const v=Ku({type:N.type,configNode:N,uiNode:x,pluginData:e});s.push(v),d.set(v.name,v)}for(const N of s){const x=nr(N.type);if(!x.length)continue;const v=N.config;if(v)for(const V of x){const L=v[V];if(!Array.isArray(L)){l.has(si(N.name,V))&&(h=!0);continue}const k=[];for(const Y of L){if(typeof Y!="string")continue;const P=d.get(Y);P&&!Vt(P.type)&&k.push(P.id)}if(k.length){v[V]=k;const Y=si(N.name,V),P=l.get(Y),G=P?{position:ln(P.position)}:void 0,j=Mu(N.id,V,N.phase,k,G);f.push(j),!P&&!h&&(h=!0)}else delete v[V],l.has(si(N.name,V))&&(h=!0)}}for(const N of wo)if(!d.has(N)){let x=a.get(N);x||(h||(h=!0),x=l1(N));const v=Ku({type:N,uiNode:x,pluginData:e});s.push(v),d.set(v.name,v)}for(const N of o)_1(N,u);for(const N of u){const x=d.get(N.source),v=d.get(N.target);if(!x||!v){x||console.warn(`[initEditorState] skip: source "${N.source}" not found`),v||console.warn(`[initEditorState] skip: target "${N.target}" not found`);continue}p.has(N.source)||p.set(N.source,new Set),p.get(N.source).add(N.target),p.has(N.target)||p.set(N.target,new Set),p.get(N.target).add(N.source),c.push({id:ko("edge"),source:x.id,sourceField:(b=_n(x,"output",N.sourceField))==null?void 0:b.id,target:v.id,targetField:(S=_n(v,"input",N.targetField))==null?void 0:S.id})}m(["request","service_request"]);let _=null;return(C=(E=e.config)==null?void 0:E.resources)!=null&&C.cache&&(_={...e.config.resources.cache},e.partials&&(_.partial_id=e.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:h?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,..._?{cacheConfig:_}:{}}}function Uu(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Bu(n),c=Co(n);return{id:ko("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Vu((a==null?void 0:a.input)??s.input),output:Vu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?ln(l):{}}}function h1(e){return Vt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Ku({type:e,configNode:n,uiNode:o,pluginData:r}){return Uu({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??h1(e),position:o==null?void 0:o.position,fields:b1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:w1({type:e,configNode:n,pluginData:r})})}function y1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return ln(s)}function _1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=li(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}=li(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=li(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}=li(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function b1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=Co(e),a=i==null?void 0:i.io;if(!a)return;const l={};if((s=a.input)!=null&&s.configurable&&(n?l.input=((c=n.fields)==null?void 0:c.input)??[]:o!=null&&o.inputs&&(l.input=Object.keys(o.inputs))),(d=a.output)!=null&&d.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const u=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>u.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>u.add(p)),u.size&&(l.output=Array.from(u))}e==="vault"&&(l.output=m1(r))}return Object.keys(l).length?l:void 0}function w1({type:e,configNode:n,pluginData:o}){return e==="vault"?p1(o):n?y1(n):void 0}function k1(e){const n=t.computed(()=>{const u=new Map;return e.value.nodes.forEach(p=>u.set(p.id,p)),u}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>Lu(o.value,r.value));function a(u){return ci(i.value,u?{source:u.source,target:u.target}:void 0)}function l(u){const p=n.value.get(u.source),m=n.value.get(u.target);if(!p||!m)return u;const h=Ru(p,u.sourceField)&&!_l(p,u.sourceField),_=_l(m,u.targetField);return h&&_?{source:u.target,sourceField:u.targetField,target:u.source,targetField:u.sourceField}:u}function s(u){const p=l(u),m=[],h=n.value.get(p.source),_=n.value.get(p.target);if(h||m.push("source node not found"),_||m.push("target node not found"),!h||!_)return{ok:!1,errors:m};_l(h,p.sourceField)||m.push("source handle is not an output field"),Ru(_,p.targetField)||m.push("target handle is not an input field"),_.name==="request"&&m.push('cannot target "request"'),h.name==="response"&&m.push('cannot source from "response"');const y=o.value.some(b=>b.target===p.target&&!b.targetField),g=o.value.some(b=>b.target===p.target&&!!b.targetField);(y&&p.targetField||g&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(b=>b.target===p.target&&b.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(b=>b.target===p.target&&!b.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const w=a({source:p.source,target:p.target});return wl(w)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const u=[];for(const p of wo)[...n.value.values()].some(m=>m.name===p)||u.push(`missing implicit node "${p}"`);for(const p of o.value){const m=n.value.get(p.source);n.value.get(p.target).name==="request"&&u.push(`edge "${p.id}" targets "request"`),m.name==="response"&&u.push(`edge "${p.id}" sources from "response"`)}return wl(a())&&u.push("graph contains cycle"),u.length?{ok:!1,errors:u}:{ok:!0}}function d(u){return s(u).ok}function f(u){return!u.source||!u.target?!1:d({source:u.source,sourceField:u.sourceHandle,target:u.target,targetField:u.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:d,isValidVueFlowConnection:f,buildAdjacency:ci}}const[ju,C1]=qe.createInjectionState(function(n,o={}){const r=t.ref(Fu(n)),i=t.ref(),a=t.ref(!1),l=t.ref(!1),s=f1(r,{capacity:200,clone:ln,onHistoryChange:I=>{var M,O;I!=="clear"&&((O=o.onChange)==null||O.call(o,B(),q(),R(),(M=r.value.cacheConfig)==null?void 0:M.partial_id))}}),c=t.ref(!1),d=t.ref(new Set);function f(){r.value.pendingLayout=!1,s.commit("*")}function u(I=!0){r.value.pendingFitView!==I&&(r.value.pendingFitView=I,s.commit("*"))}const p=t.computed(()=>new Map(r.value.nodes.map(I=>[I.id,I]))),m=t.computed(()=>new Map(r.value.nodes.map(I=>[I.name,I]))),h=t.computed(()=>{const I=new Map,M=new Map;for(const O of r.value.edges)I.set(O.id,O),M.has(O.source)||M.set(O.source,new Set),M.get(O.source).add(O.id),M.has(O.target)||M.set(O.target,new Set),M.get(O.target).add(O.id);return{edgeMapById:I,edgeIdMapByNodeId:M}}),_=t.computed(()=>h.value.edgeMapById),y=t.computed(()=>h.value.edgeIdMapByNodeId),g=t.computed(()=>new Map(r.value.groups.map(I=>[I.id,I]))),w=t.computed(()=>new Set(r.value.nodes.map(I=>I.name))),b=u1({state:r,groupMapById:g,getNodeById:v,history:s}),{canonicalizeConnection:S,validateConnection:E,validateGraph:C,isValidConnection:N,isValidVueFlowConnection:x}=k1(r);function v(I){return p.value.get(I)}function V(I){return m.value.get(I)}function L(I){return _.value.get(I)}function k(I){if(!y.value.has(I))return[];const M=[];return y.value.get(I).forEach(O=>{const oe=L(O);oe&&M.push(oe)}),M}function Y(I){return k(I).filter(M=>M.target===I)}function P(I){return k(I).filter(M=>M.source===I)}const G=t.computed(()=>i.value?v(i.value):void 0);function j(I){i.value=I}function te(I){if(Vt(I.type))throw new Error("[createNode] implicit nodes are fixed.");return Uu({type:I.type,name:I.name||(Vt(I.type)?void 0:Du(I.type,w.value)),phase:I.phase,position:I.position,fields:I.fields,config:I.config})}function X(I,M=!0){const O=te(I);if(O)return r.value.nodes.push(O),M&&s.commit(),c.value=!0,O.id}function D(I,M,O=!0){const oe=v(I);if(!oe||Vt(oe.type))return;const ne={...ln(oe),id:ko("node"),name:Du(oe.name,w.value),position:M??{x:oe.position.x+20,y:oe.position.y+20}},be=nr(ne.type);if(be.length&&ne.config){for(const ke of be)delete ne.config[ke];Object.keys(ne.config).length===0&&delete ne.config}return r.value.nodes.push(ne),O&&s.commit(),c.value=!0,ne.id}function U(I,M=!0){if(!v(I))return;r.value.edges=r.value.edges.filter(ne=>ne.source!==I&&ne.target!==I),b.clear(I),r.value.nodes=r.value.nodes.filter(ne=>ne.id!==I),i.value===I&&(i.value=void 0),b.dropTarget(I);const oe=C();oe.ok||console.warn("[removeNode] topology invalid:",oe.errors.join("; ")),M&&s.commit()}function A(I,M,O=!0,oe){const ne=v(I);if(!ne)return;if(hl(ne.name)){console.warn("[renameNode] implicit node name is reserved.");return}ne.name!==M&&(ne.name=M,O&&s.commit(oe))}function T(I,M,O=!0){const oe=v(I);oe&&(oe.position={...M},O&&s.commit())}function K(I,M,O=!0){const oe=g.value.get(I);if(!oe)return;const ne=oe.position;ne&&ne.x===M.x&&ne.y===M.y||(oe.position={...M},O&&s.commit())}function z(I,M,O=!0){const oe=g.value.get(I);if(!oe)return!1;const ne={...M.position},be={...M.dimensions},ke=oe.position&&oe.position.x===ne.x&&oe.position.y===ne.y,de=oe.dimensions&&oe.dimensions.width===be.width&&oe.dimensions.height===be.height;return ke&&de?!1:(oe.position=ne,oe.dimensions=be,O&&s.commit(),!0)}function J(I,M,O,oe=!0,ne){const be=v(I);if(!be)return;const ke=O??!be.expanded[M];ke!==!!be.expanded[M]&&(be.expanded[M]=ke,oe&&s.commit(ne??`toggle:${I}:${M}`))}function Q(I,M,O=!0,oe){const ne=v(I);ne&&(ne.config=ln(M),O&&s.commit(oe))}function ie(I,M,O,oe=!0){const ne=v(I);if(!ne)return;const be=ne.fields[M];if(be.some(ke=>ke.name===O)){console.warn(`[addField] field "${O}" already exists on ${M}.`);return}be.push({id:ko("field"),name:O}),M==="input"?ne.fields.input=be:ne.fields.output=be,oe&&s.commit()}function he(I,M,O,oe=!0){const ne=v(I);if(!ne)return;const be=ne.fields.input,ke=ne.fields.output,de=be.find(Ne=>Ne.id===M)??ke.find(Ne=>Ne.id===M);de&&(de.name=O,oe&&s.commit())}function Z(I,M,O=!0,oe=!0){const ne=v(I);if(!ne)return;const be=ne.fields.input,ke=ne.fields.output,de=be.findIndex(me=>me.id===M);de>=0&&be.splice(de,1);const Ne=ke.findIndex(me=>me.id===M);Ne>=0&&ke.splice(Ne,1),ne.fields.input=be,ne.fields.output=ke,O&&(r.value.edges=r.value.edges.filter(me=>me.sourceField!==M&&me.targetField!==M));const Pe=C();Pe.ok||console.warn("[removeField] topology invalid:",Pe.errors.join("; ")),oe&&s.commit()}function re(I,M=!0){const O=S(I),oe=E(O);if(!oe.ok){console.warn("[connectEdge] invalid connection:",oe.errors.join("; "));return}const ne={id:ko("edge"),...O};r.value.edges.push(ne);const be=C();if(!be.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",be.errors.join("; "));return}return M&&s.commit(),ne.id}function le(I,M,O=!0){fe(I,!1),re(M,!1),O&&s.commit()}function fe(I,M=!0){const O=r.value.edges.findIndex(be=>be.id===I);if(O<0)return;const oe=r.value.edges[O];r.value.edges.splice(O,1);const ne=C();if(!ne.ok){r.value.edges.splice(O,0,oe),console.warn("[disconnectEdge] topology invalid:",ne.errors.join("; "));return}M&&s.commit()}function ue(I,M=!0){const O=Y(I);for(const oe of O)fe(oe.id,!1);M&&s.commit()}function $(I,M=!0){const O=P(I);for(const oe of O)fe(oe.id,!1);M&&s.commit()}function B(){var M,O,oe,ne,be;const I=[];for(const ke of r.value.nodes){if(Vt(ke.type))continue;let de;const Ne={};let Pe;const me={};for(const st of r.value.edges.filter(Ye=>Ye.target===ke.id)){const Ye=v(st.source);if(!Ye)continue;const pt=(M=bn(Ye,"output",st.sourceField))==null?void 0:M.name,Ct=pt?`${Ye.name}.${pt}`:Ye.name,mt=(O=bn(ke,"input",st.targetField))==null?void 0:O.name;mt?Ne[mt]=Ct:de===void 0&&(de=Ct)}for(const st of r.value.edges.filter(Ye=>Ye.source===ke.id)){const Ye=v(st.target);if(!Ye)continue;const pt=Ye.type;if(!Vt(pt)||!((oe=ii[pt].io)!=null&&oe.input))continue;const Ct=(ne=bn(Ye,"input",st.targetField))==null?void 0:ne.name,mt=Ct?`${Ye.name}.${Ct}`:Ye.name,$e=(be=bn(ke,"output",st.sourceField))==null?void 0:be.name;$e?me[$e]=mt:Pe===void 0&&(Pe=mt)}const ge={...ln(ke.config),name:ke.name,type:ke.type},ot=nr(ke.type);if(ot.length)for(const st of ot){const Ye=ge[st];if(!Array.isArray(Ye))continue;const pt=[];for(const Ct of Ye){const mt=v(Ct);mt&&pt.push(mt.name)}pt.length?ge[st]=Array.from(new Set(pt)):delete ge[st]}Object.keys(Ne).length>0?ge.inputs=Ne:de!==void 0&&(ge.input=de),Object.keys(me).length>0?ge.outputs=me:Pe!==void 0&&(ge.output=Pe),I.push(ge)}return I}function F(){return r.value.nodes.map(I=>ln({name:I.name,phase:I.phase,position:{...I.position},expanded:{...I.expanded},fields:{input:I.fields.input.map(M=>M.name),output:I.fields.output.map(M=>M.name)}}))}function R(){const I={},M=V("vault");if(M){const O=g1(M.config);O&&Object.keys(O).length>0&&(I.vault=O)}if(r.value.cacheConfig){const{strategy:O,redis:oe,memory:ne}=r.value.cacheConfig;I.cache={strategy:O,redis:oe,memory:ne}}if(Object.keys(I).length!==0)return I}function ee(){const I=[];for(const M of r.value.groups){const O=v(M.ownerId);if(!O)continue;const oe=M.position;oe&&I.push({name:si(O.name,M.branch),position:{...oe}})}return I}function q(){return{nodes:F(),groups:ee()}}function ae(I,M){M&&s.commit(),r.value=Fu(I,M),M||s.clear()}return{state:r,selection:i,modalOpen:a,skipValidation:c,invalidConfigNodeIds:d,propertiesPanelOpen:l,nodeMapById:p,nodeMapByName:m,edgeMapById:_,edgeIdMapByNodeId:y,groupMapById:g,getNodeById:v,getNodeByName:V,getEdgeById:L,getEdgesByNodeId:k,getInEdgesByNodeId:Y,getOutEdgesByNodeId:P,selectedNode:G,selectNode:j,createNode:te,addNode:X,duplicateNode:D,removeNode:U,renameNode:A,moveNode:T,moveGroup:K,setGroupLayout:z,toggleExpanded:J,replaceConfig:Q,branchGroups:b,addField:ie,renameField:he,removeField:Z,connectEdge:re,replaceConnection:le,disconnectEdge:fe,disconnectInEdges:ue,disconnectOutEdges:$,toConfigNodes:B,toUINodes:F,toUIGroups:ee,toUIData:q,load:ae,commit:s.commit,undo:s.undo,redo:s.redo,canUndo:s.canUndo,canRedo:s.canRedo,clear:s.clear,reset:s.reset,revert:s.revert,isValidConnection:N,isValidVueFlowConnection:x,validateGraph:()=>C(),clearPendingLayout:f,setPendingFitView:u}});function at(){const e=C1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const{t:E1}=Xe.createI18n("en-us",Je),Cl=qe.createGlobalState(()=>{const e=qe.useLocalStorage("datakit-editor-mode","flow"),n=qe.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}});function N1({enabled:e,confirm:n}){no.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm(E1("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=r=>{t.toValue(e)&&r.preventDefault()};qe.useEventListener("beforeunload",o)}function di(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function sn(e){return typeof e=="function"?e():t.unref(e)}const x1=typeof window<"u"&&typeof document<"u",S1=e=>typeof e<"u",v1=Object.prototype.toString,A1=e=>v1.call(e)==="[object Object]",I1=()=>{};function P1(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 Gu=e=>e();function T1(e=Gu){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 qu(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function O1(e,n,o={}){const{eventFilter:r=Gu,...i}=o;return t.watch(e,P1(r,n),i)}function Eo(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=T1(r);return{stop:O1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function $1(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=sn(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 El(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:_}={}){let y=null;const w=[new Promise(b=>{y=t.watch(e,S=>{u(S)!==n&&(y==null||y(),b(S))},{flush:p,deep:m,immediate:!0})})];return h!=null&&w.push(qu(h,_).then(()=>sn(e)).finally(()=>y==null?void 0:y())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(S=>S===u,p);const{flush:m="sync",deep:h=!1,timeout:_,throwOnTimeout:y}=p??{};let g=null;const b=[new Promise(S=>{g=t.watch([e,u],([E,C])=>{n!==(E===C)&&(g==null||g(),S(E))},{flush:m,deep:h,immediate:!0})})];return _!=null&&b.push(qu(_,y).then(()=>sn(e)).finally(()=>(g==null||g(),sn(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(sn(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(sn(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return El(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return El(e,!n)}}}function Nl(e){return El(e)}function B1(e){var n;const o=sn(e);return(n=o==null?void 0:o.$el)!=null?n:o}const zu=x1?window:void 0;function Hu(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=zu):[n,o,r,i]=e,!n)return I1;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(()=>[B1(n),sn(i)],([f,u])=>{if(l(),!f)return;const p=A1(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return di(d),d}function V1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Yu(...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=zu,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=V1(n);return Hu(i,a,f=>{f.repeat&&sn(s)||c(f)&&o(f)},l)}function R1(e){return JSON.parse(JSON.stringify(e))}function xl(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 _=d;n||(n="modelValue"),_=_||`update:${n.toString()}`;const y=b=>s?typeof s=="function"?s(b):R1(b):b,g=()=>S1(e[n])?y(e[n]):u,w=b=>{p?p(b)&&h(_,b):h(_,b)};if(c){const b=g(),S=t.ref(b);let E=!1;return t.watch(()=>e[n],C=>{E||(E=!0,S.value=y(C),t.nextTick(()=>E=!1))}),t.watch(S,C=>{!E&&(C!==e[n]||f)&&w(C)},{deep:f}),S}else return t.computed({get(){return g()},set(b){w(b)}})}var D1={value:()=>{}};function ui(){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 fi(o)}function fi(e){this._=e}function M1(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}})}fi.prototype=ui.prototype={constructor:fi,on:function(e,n){var o=this._,r=M1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=L1(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]=Wu(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Wu(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 fi(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 L1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Wu(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=D1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Sl="http://www.w3.org/1999/xhtml";const Xu={svg:"http://www.w3.org/2000/svg",xhtml:Sl,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function pi(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Xu.hasOwnProperty(n)?{space:Xu[n],local:e}:e}function F1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Sl&&n.documentElement.namespaceURI===Sl?n.createElement(e):n.createElementNS(o,e)}}function U1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Zu(e){var n=pi(e);return(n.local?U1:F1)(n)}function K1(){}function vl(e){return e==null?K1:function(){return this.querySelector(e)}}function j1(e){typeof e!="function"&&(e=vl(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 Pt(r,this._parents)}function G1(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function q1(){return[]}function Ju(e){return e==null?q1:function(){return this.querySelectorAll(e)}}function z1(e){return function(){return G1(e.apply(this,arguments))}}function H1(e){typeof e=="function"?e=z1(e):e=Ju(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 Pt(r,i)}function Qu(e){return function(){return this.matches(e)}}function ef(e){return function(n){return n.matches(e)}}var Y1=Array.prototype.find;function W1(e){return function(){return Y1.call(this.children,e)}}function X1(){return this.firstElementChild}function Z1(e){return this.select(e==null?X1:W1(typeof e=="function"?e:ef(e)))}var J1=Array.prototype.filter;function Q1(){return Array.from(this.children)}function ex(e){return function(){return J1.call(this.children,e)}}function tx(e){return this.selectAll(e==null?Q1:ex(typeof e=="function"?e:ef(e)))}function nx(e){typeof e!="function"&&(e=Qu(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 Pt(r,this._parents)}function tf(e){return new Array(e.length)}function ox(){return new Pt(this._enter||this._groups.map(tf),this._parents)}function mi(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}mi.prototype={constructor:mi,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 rx(e){return function(){return e}}function ix(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 mi(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function ax(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 mi(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function lx(e){return e.__data__}function sx(e,n){if(!arguments.length)return Array.from(this,lx);var o=n?ax:ix,r=this._parents,i=this._groups;typeof e!="function"&&(e=rx(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=cx(e.call(f,f&&f.__data__,d,r)),h=m.length,_=s[d]=new Array(h),y=l[d]=new Array(h),g=c[d]=new Array(p);o(f,u,_,y,g,m,n);for(var w=0,b=0,S,E;w<h;++w)if(S=_[w]){for(w>=b&&(b=w+1);!(E=y[b])&&++b<h;);S._next=E||null}}return l=new Pt(l,r),l._enter=s,l._exit=c,l}function cx(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function dx(){return new Pt(this._exit||this._groups.map(tf),this._parents)}function ux(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 fx(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 Pt(s,this._parents)}function px(){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 mx(e){e||(e=gx);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 Pt(i,this._parents).order()}function gx(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function hx(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function yx(){return Array.from(this)}function _x(){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 bx(){let e=0;for(const n of this)++e;return e}function wx(){return!this.node()}function kx(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 Cx(e){return function(){this.removeAttribute(e)}}function Ex(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Nx(e,n){return function(){this.setAttribute(e,n)}}function xx(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function Sx(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function vx(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 Ax(e,n){var o=pi(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?Ex:Cx:typeof n=="function"?o.local?vx:Sx:o.local?xx:Nx)(o,n))}function nf(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Ix(e){return function(){this.style.removeProperty(e)}}function Px(e,n,o){return function(){this.style.setProperty(e,n,o)}}function Tx(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function Ox(e,n,o){return arguments.length>1?this.each((n==null?Ix:typeof n=="function"?Tx:Px)(e,n,o??"")):No(this.node(),e)}function No(e,n){return e.style.getPropertyValue(n)||nf(e).getComputedStyle(e,null).getPropertyValue(n)}function $x(e){return function(){delete this[e]}}function Bx(e,n){return function(){this[e]=n}}function Vx(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function Rx(e,n){return arguments.length>1?this.each((n==null?$x:typeof n=="function"?Vx:Bx)(e,n)):this.node()[e]}function of(e){return e.trim().split(/^|\s+/)}function Al(e){return e.classList||new rf(e)}function rf(e){this._node=e,this._names=of(e.getAttribute("class")||"")}rf.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 af(e,n){for(var o=Al(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function lf(e,n){for(var o=Al(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Dx(e){return function(){af(this,e)}}function Mx(e){return function(){lf(this,e)}}function Lx(e,n){return function(){(n.apply(this,arguments)?af:lf)(this,e)}}function Fx(e,n){var o=of(e+"");if(arguments.length<2){for(var r=Al(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?Lx:n?Dx:Mx)(o,n))}function Ux(){this.textContent=""}function Kx(e){return function(){this.textContent=e}}function jx(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function Gx(e){return arguments.length?this.each(e==null?Ux:(typeof e=="function"?jx:Kx)(e)):this.node().textContent}function qx(){this.innerHTML=""}function zx(e){return function(){this.innerHTML=e}}function Hx(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function Yx(e){return arguments.length?this.each(e==null?qx:(typeof e=="function"?Hx:zx)(e)):this.node().innerHTML}function Wx(){this.nextSibling&&this.parentNode.appendChild(this)}function Xx(){return this.each(Wx)}function Zx(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Jx(){return this.each(Zx)}function Qx(e){var n=typeof e=="function"?e:Zu(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function eS(){return null}function tS(e,n){var o=typeof e=="function"?e:Zu(e),r=n==null?eS:typeof n=="function"?n:vl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function nS(){var e=this.parentNode;e&&e.removeChild(this)}function oS(){return this.each(nS)}function rS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function iS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function aS(e){return this.select(e?iS:rS)}function lS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function sS(e){return function(n){e.call(this,n,this.__data__)}}function cS(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 dS(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 uS(e,n,o){return function(){var r=this.__on,i,a=sS(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 fS(e,n,o){var r=cS(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?uS:dS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function sf(e,n,o){var r=nf(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 pS(e,n){return function(){return sf(this,e,n)}}function mS(e,n){return function(){return sf(this,e,n.apply(this,arguments))}}function gS(e,n){return this.each((typeof n=="function"?mS:pS)(e,n))}function*hS(){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 cf=[null];function Pt(e,n){this._groups=e,this._parents=n}function or(){return new Pt([[document.documentElement]],cf)}function yS(){return this}Pt.prototype=or.prototype={constructor:Pt,select:j1,selectAll:H1,selectChild:Z1,selectChildren:tx,filter:nx,data:sx,enter:ox,exit:dx,join:ux,merge:fx,selection:yS,order:px,sort:mx,call:hx,nodes:yx,node:_x,size:bx,empty:wx,each:kx,attr:Ax,style:Ox,property:Rx,classed:Fx,text:Gx,html:Yx,raise:Xx,lower:Jx,append:Qx,insert:tS,remove:oS,clone:aS,datum:lS,on:fS,dispatch:gS,[Symbol.iterator]:hS};function Ft(e){return typeof e=="string"?new Pt([[document.querySelector(e)]],[document.documentElement]):new Pt([[e]],cf)}function _S(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Ht(e,n){if(e=_S(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 bS={passive:!1},rr={capture:!0,passive:!1};function Il(e){e.stopImmediatePropagation()}function xo(e){e.preventDefault(),e.stopImmediatePropagation()}function df(e){var n=e.document.documentElement,o=Ft(e).on("dragstart.drag",xo,rr);"onselectstart"in n?o.on("selectstart.drag",xo,rr):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function uf(e,n){var o=e.document.documentElement,r=Ft(e).on("dragstart.drag",null);n&&(r.on("click.drag",xo,rr),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 gi=e=>()=>e;function Pl(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}})}Pl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function wS(e){return!e.ctrlKey&&!e.button}function kS(){return this.parentNode}function CS(e,n){return n??{x:e.x,y:e.y}}function ES(){return navigator.maxTouchPoints||"ontouchstart"in this}function NS(){var e=wS,n=kS,o=CS,r=ES,i={},a=ui("start","drag","end"),l=0,s,c,d,f,u=0;function p(S){S.on("mousedown.drag",m).filter(r).on("touchstart.drag",y).on("touchmove.drag",g,bS).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(S,E){if(!(f||!e.call(this,S,E))){var C=b(this,n.call(this,S,E),S,E,"mouse");C&&(Ft(S.view).on("mousemove.drag",h,rr).on("mouseup.drag",_,rr),df(S.view),Il(S),d=!1,s=S.clientX,c=S.clientY,C("start",S))}}function h(S){if(xo(S),!d){var E=S.clientX-s,C=S.clientY-c;d=E*E+C*C>u}i.mouse("drag",S)}function _(S){Ft(S.view).on("mousemove.drag mouseup.drag",null),uf(S.view,d),xo(S),i.mouse("end",S)}function y(S,E){if(e.call(this,S,E)){var C=S.changedTouches,N=n.call(this,S,E),x=C.length,v,V;for(v=0;v<x;++v)(V=b(this,N,S,E,C[v].identifier,C[v]))&&(Il(S),V("start",S,C[v]))}}function g(S){var E=S.changedTouches,C=E.length,N,x;for(N=0;N<C;++N)(x=i[E[N].identifier])&&(xo(S),x("drag",S,E[N]))}function w(S){var E=S.changedTouches,C=E.length,N,x;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),N=0;N<C;++N)(x=i[E[N].identifier])&&(Il(S),x("end",S,E[N]))}function b(S,E,C,N,x,v){var V=a.copy(),L=Ht(v||C,E),k,Y,P;if((P=o.call(S,new Pl("beforestart",{sourceEvent:C,target:p,identifier:x,active:l,x:L[0],y:L[1],dx:0,dy:0,dispatch:V}),N))!=null)return k=P.x-L[0]||0,Y=P.y-L[1]||0,function G(j,te,X){var D=L,U;switch(j){case"start":i[x]=G,U=l++;break;case"end":delete i[x],--l;case"drag":L=Ht(X||te,E),U=l;break}V.call(j,S,new Pl(j,{sourceEvent:te,subject:P,target:p,identifier:x,active:U,x:L[0]+k,y:L[1]+Y,dx:L[0]-D[0],dy:L[1]-D[1],dispatch:V}),N)}}return p.filter=function(S){return arguments.length?(e=typeof S=="function"?S:gi(!!S),p):e},p.container=function(S){return arguments.length?(n=typeof S=="function"?S:gi(S),p):n},p.subject=function(S){return arguments.length?(o=typeof S=="function"?S:gi(S),p):o},p.touchable=function(S){return arguments.length?(r=typeof S=="function"?S:gi(!!S),p):r},p.on=function(){var S=a.on.apply(a,arguments);return S===a?p:S},p.clickDistance=function(S){return arguments.length?(u=(S=+S)*S,p):Math.sqrt(u)},p}function Tl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function ff(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function ir(){}var ar=.7,hi=1/ar,So="\\s*([+-]?\\d+)\\s*",lr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Yt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",xS=/^#([0-9a-f]{3,8})$/,SS=new RegExp(`^rgb\\(${So},${So},${So}\\)$`),vS=new RegExp(`^rgb\\(${Yt},${Yt},${Yt}\\)$`),AS=new RegExp(`^rgba\\(${So},${So},${So},${lr}\\)$`),IS=new RegExp(`^rgba\\(${Yt},${Yt},${Yt},${lr}\\)$`),PS=new RegExp(`^hsl\\(${lr},${Yt},${Yt}\\)$`),TS=new RegExp(`^hsla\\(${lr},${Yt},${Yt},${lr}\\)$`),pf={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};Tl(ir,Un,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:mf,formatHex:mf,formatHex8:OS,formatHsl:$S,formatRgb:gf,toString:gf});function mf(){return this.rgb().formatHex()}function OS(){return this.rgb().formatHex8()}function $S(){return wf(this).formatHsl()}function gf(){return this.rgb().formatRgb()}function Un(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=xS.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?hf(n):o===3?new vt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?yi(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?yi(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=SS.exec(e))?new vt(n[1],n[2],n[3],1):(n=vS.exec(e))?new vt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=AS.exec(e))?yi(n[1],n[2],n[3],n[4]):(n=IS.exec(e))?yi(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=PS.exec(e))?bf(n[1],n[2]/100,n[3]/100,1):(n=TS.exec(e))?bf(n[1],n[2]/100,n[3]/100,n[4]):pf.hasOwnProperty(e)?hf(pf[e]):e==="transparent"?new vt(NaN,NaN,NaN,0):null}function hf(e){return new vt(e>>16&255,e>>8&255,e&255,1)}function yi(e,n,o,r){return r<=0&&(e=n=o=NaN),new vt(e,n,o,r)}function BS(e){return e instanceof ir||(e=Un(e)),e?(e=e.rgb(),new vt(e.r,e.g,e.b,e.opacity)):new vt}function Ol(e,n,o,r){return arguments.length===1?BS(e):new vt(e,n,o,r??1)}function vt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}Tl(vt,Ol,ff(ir,{brighter(e){return e=e==null?hi:Math.pow(hi,e),new vt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?ar:Math.pow(ar,e),new vt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new vt(Kn(this.r),Kn(this.g),Kn(this.b),_i(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:yf,formatHex:yf,formatHex8:VS,formatRgb:_f,toString:_f}));function yf(){return`#${jn(this.r)}${jn(this.g)}${jn(this.b)}`}function VS(){return`#${jn(this.r)}${jn(this.g)}${jn(this.b)}${jn((isNaN(this.opacity)?1:this.opacity)*255)}`}function _f(){const e=_i(this.opacity);return`${e===1?"rgb(":"rgba("}${Kn(this.r)}, ${Kn(this.g)}, ${Kn(this.b)}${e===1?")":`, ${e})`}`}function _i(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Kn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function jn(e){return e=Kn(e),(e<16?"0":"")+e.toString(16)}function bf(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Ut(e,n,o,r)}function wf(e){if(e instanceof Ut)return new Ut(e.h,e.s,e.l,e.opacity);if(e instanceof ir||(e=Un(e)),!e)return new Ut;if(e instanceof Ut)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 Ut(l,s,c,e.opacity)}function RS(e,n,o,r){return arguments.length===1?wf(e):new Ut(e,n,o,r??1)}function Ut(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Tl(Ut,RS,ff(ir,{brighter(e){return e=e==null?hi:Math.pow(hi,e),new Ut(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?ar:Math.pow(ar,e),new Ut(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 vt($l(e>=240?e-240:e+120,i,r),$l(e,i,r),$l(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Ut(kf(this.h),bi(this.s),bi(this.l),_i(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=_i(this.opacity);return`${e===1?"hsl(":"hsla("}${kf(this.h)}, ${bi(this.s)*100}%, ${bi(this.l)*100}%${e===1?")":`, ${e})`}`}}));function kf(e){return e=(e||0)%360,e<0?e+360:e}function bi(e){return Math.max(0,Math.min(1,e||0))}function $l(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 Bl=e=>()=>e;function DS(e,n){return function(o){return e+o*n}}function MS(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 LS(e){return(e=+e)==1?Cf:function(n,o){return o-n?MS(n,o,e):Bl(isNaN(n)?o:n)}}function Cf(e,n){var o=n-e;return o?DS(e,o):Bl(isNaN(e)?n:e)}const wi=function e(n){var o=LS(n);function r(i,a){var l=o((i=Ol(i)).r,(a=Ol(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Cf(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 FS(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 US(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function KS(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]=sr(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 jS(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Wt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function GS(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]=sr(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Vl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Rl=new RegExp(Vl.source,"g");function qS(e){return function(){return e}}function zS(e){return function(n){return e(n)+""}}function Ef(e,n){var o=Vl.lastIndex=Rl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=Vl.exec(e))&&(i=Rl.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:Wt(r,i)})),o=Rl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?zS(c[0].x):qS(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 sr(e,n){var o=typeof n,r;return n==null||o==="boolean"?Bl(n):(o==="number"?Wt:o==="string"?(r=Un(n))?(n=r,wi):Ef:n instanceof Un?wi:n instanceof Date?jS:US(n)?FS:Array.isArray(n)?KS:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?GS:Wt)(e,n)}var Nf=180/Math.PI,Dl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function xf(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)*Nf,skewX:Math.atan(c)*Nf,scaleX:l,scaleY:s}}var ki;function HS(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Dl:xf(n.a,n.b,n.c,n.d,n.e,n.f)}function YS(e){return e==null||(ki||(ki=document.createElementNS("http://www.w3.org/2000/svg","g")),ki.setAttribute("transform",e),!(e=ki.transform.baseVal.consolidate()))?Dl:(e=e.matrix,xf(e.a,e.b,e.c,e.d,e.e,e.f))}function Sf(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 _=m.push("translate(",null,n,null,o);h.push({i:_-4,x:Wt(d,u)},{i:_-2,x:Wt(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:Wt(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:Wt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var _=m.push(i(m)+"scale(",null,",",null,")");h.push({i:_-4,x:Wt(d,u)},{i:_-2,x:Wt(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,_=p.length,y;++h<_;)u[(y=p[h]).i]=y.x(m);return u.join("")}}}var WS=Sf(HS,"px, ","px)","deg)"),XS=Sf(YS,", ",")",")"),ZS=1e-12;function vf(e){return((e=Math.exp(e))+1/e)/2}function JS(e){return((e=Math.exp(e))-1/e)/2}function QS(e){return((e=Math.exp(2*e))-1)/(e+1)}const Ci=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,_=m*m+h*h,y,g;if(_<ZS)g=Math.log(p/d)/n,y=function(N){return[s+N*m,c+N*h,d*Math.exp(n*N*g)]};else{var w=Math.sqrt(_),b=(p*p-d*d+r*_)/(2*d*o*w),S=(p*p-d*d-r*_)/(2*p*o*w),E=Math.log(Math.sqrt(b*b+1)-b),C=Math.log(Math.sqrt(S*S+1)-S);g=(C-E)/n,y=function(N){var x=N*g,v=vf(E),V=d/(o*w)*(v*QS(n*x+E)-JS(E));return[s+V*m,c+V*h,d*v/vf(n*x+E)]}}return y.duration=g*1e3*n/Math.SQRT2,y}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 vo=0,cr=0,dr=0,Af=1e3,Ei,ur,Ni=0,Gn=0,xi=0,fr=typeof performance=="object"&&performance.now?performance:Date,If=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Ml(){return Gn||(If(ev),Gn=fr.now()+xi)}function ev(){Gn=0}function Si(){this._call=this._time=this._next=null}Si.prototype=Pf.prototype={constructor:Si,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Ml():+o)+(n==null?0:+n),!this._next&&ur!==this&&(ur?ur._next=this:Ei=this,ur=this),this._call=e,this._time=o,Ll()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ll())}};function Pf(e,n,o){var r=new Si;return r.restart(e,n,o),r}function tv(){Ml(),++vo;for(var e=Ei,n;e;)(n=Gn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--vo}function Tf(){Gn=(Ni=fr.now())+xi,vo=cr=0;try{tv()}finally{vo=0,ov(),Gn=0}}function nv(){var e=fr.now(),n=e-Ni;n>Af&&(xi-=n,Ni=e)}function ov(){for(var e,n=Ei,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:Ei=o);ur=e,Ll(r)}function Ll(e){if(!vo){cr&&(cr=clearTimeout(cr));var n=e-Gn;n>24?(e<1/0&&(cr=setTimeout(Tf,e-fr.now()-xi)),dr&&(dr=clearInterval(dr))):(dr||(Ni=fr.now(),dr=setInterval(nv,Af)),vo=1,If(Tf))}}function Of(e,n,o){var r=new Si;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var rv=ui("start","end","cancel","interrupt"),iv=[],$f=0,Bf=1,Fl=2,vi=3,Vf=4,Ul=5,Ai=6;function Ii(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;av(e,o,{name:n,index:r,group:i,on:rv,tween:iv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:$f})}function Kl(e,n){var o=Kt(e,n);if(o.state>$f)throw new Error("too late; already scheduled");return o}function Xt(e,n){var o=Kt(e,n);if(o.state>vi)throw new Error("too late; already running");return o}function Kt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function av(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Pf(a,0,o.time);function a(d){o.state=Bf,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!==Bf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===vi)return Of(l);m.state===Vf?(m.state=Ai,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=Ai,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Of(function(){o.state===vi&&(o.state=Vf,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Fl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Fl){for(o.state=vi,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=Ul,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Ul&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Ai,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Pi(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>Fl&&r.state<Ul,r.state=Ai,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function lv(e){return this.each(function(){Pi(this,e)})}function sv(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 dv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Kt(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?sv:cv)(o,e,n))}function jl(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 Kt(i,r).value[n]}}function Rf(e,n){var o;return(typeof n=="number"?Wt:n instanceof Un?wi:(o=Un(n))?(n=o,wi):Ef)(e,n)}function uv(e){return function(){this.removeAttribute(e)}}function fv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function pv(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 mv(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 gv(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 hv(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 yv(e,n){var o=pi(e),r=o==="transform"?XS:Rf;return this.attrTween(e,typeof n=="function"?(o.local?hv:gv)(o,r,jl(this,"attr."+e,n)):n==null?(o.local?fv:uv)(o):(o.local?mv:pv)(o,r,n))}function _v(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function bv(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function wv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&bv(e,a)),o}return i._value=n,i}function kv(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 Cv(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=pi(e);return this.tween(o,(r.local?wv:kv)(r,n))}function Ev(e,n){return function(){Kl(this,e).delay=+n.apply(this,arguments)}}function Nv(e,n){return n=+n,function(){Kl(this,e).delay=n}}function xv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Ev:Nv)(n,e)):Kt(this.node(),n).delay}function Sv(e,n){return function(){Xt(this,e).duration=+n.apply(this,arguments)}}function vv(e,n){return n=+n,function(){Xt(this,e).duration=n}}function Av(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Sv:vv)(n,e)):Kt(this.node(),n).duration}function Iv(e,n){if(typeof n!="function")throw new Error;return function(){Xt(this,e).ease=n}}function Pv(e){var n=this._id;return arguments.length?this.each(Iv(n,e)):Kt(this.node(),n).ease}function Tv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;Xt(this,e).ease=o}}function Ov(e){if(typeof e!="function")throw new Error;return this.each(Tv(this._id,e))}function $v(e){typeof e!="function"&&(e=Qu(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 cn(r,this._parents,this._name,this._id)}function Bv(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 cn(l,this._parents,this._name,this._id)}function Vv(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 Rv(e,n,o){var r,i,a=Vv(n)?Kl:Xt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Dv(e,n){var o=this._id;return arguments.length<2?Kt(this.node(),o).on.on(e):this.each(Rv(o,e,n))}function Mv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Lv(){return this.on("end.remove",Mv(this._id))}function Fv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=vl(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,Ii(d[p],n,o,p,d,Kt(f,o)));return new cn(a,this._parents,n,o)}function Uv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Ju(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=Kt(f,o),_=0,y=p.length;_<y;++_)(m=p[_])&&Ii(m,n,o,_,p,h);a.push(p),l.push(f)}return new cn(a,l,n,o)}var Kv=or.prototype.constructor;function jv(){return new Kv(this._groups,this._parents)}function Gv(e,n){var o,r,i;return function(){var a=No(this,e),l=(this.style.removeProperty(e),No(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Df(e){return function(){this.style.removeProperty(e)}}function qv(e,n,o){var r,i=o+"",a;return function(){var l=No(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function zv(e,n,o){var r,i,a;return function(){var l=No(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),No(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function Hv(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=Df(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function Yv(e,n,o){var r=(e+="")=="transform"?WS:Rf;return n==null?this.styleTween(e,Gv(e,r)).on("end.style."+e,Df(e)):typeof n=="function"?this.styleTween(e,zv(e,r,jl(this,"style."+e,n))).each(Hv(this._id,e)):this.styleTween(e,qv(e,r,n),o).on("end.style."+e,null)}function Wv(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function Xv(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&Wv(e,l,o)),r}return a._value=n,a}function Zv(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,Xv(e,n,o??""))}function Jv(e){return function(){this.textContent=e}}function Qv(e){return function(){var n=e(this);this.textContent=n??""}}function eA(e){return this.tween("text",typeof e=="function"?Qv(jl(this,"text",e)):Jv(e==null?"":e+""))}function tA(e){return function(n){this.textContent=e.call(this,n)}}function nA(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&tA(i)),n}return r._value=e,r}function oA(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,nA(e))}function rA(){for(var e=this._name,n=this._id,o=Mf(),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=Kt(c,n);Ii(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new cn(r,this._parents,e,o)}function iA(){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 aA=0;function cn(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Mf(){return++aA}var dn=or.prototype;cn.prototype={constructor:cn,select:Fv,selectAll:Uv,selectChild:dn.selectChild,selectChildren:dn.selectChildren,filter:$v,merge:Bv,selection:jv,transition:rA,call:dn.call,nodes:dn.nodes,node:dn.node,size:dn.size,empty:dn.empty,each:dn.each,on:Dv,attr:yv,attrTween:Cv,style:Yv,styleTween:Zv,text:eA,textTween:oA,remove:Lv,tween:dv,delay:xv,duration:Av,ease:Pv,easeVarying:Ov,end:iA,[Symbol.iterator]:dn[Symbol.iterator]};function lA(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var sA={time:null,delay:0,duration:250,ease:lA};function cA(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 dA(e){var n,o;e instanceof cn?(n=e._id,e=e._name):(n=Mf(),(o=sA).time=Ml(),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])&&Ii(c,e,n,d,l,o||cA(c,n));return new cn(r,this._parents,e,n)}or.prototype.interrupt=lv,or.prototype.transition=dA;const Ti=e=>()=>e;function uA(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 un(e,n,o){this.k=e,this.x=n,this.y=o}un.prototype={constructor:un,scale:function(e){return e===1?this:new un(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new un(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 Ao=new un(1,0,0);un.prototype;function Gl(e){e.stopImmediatePropagation()}function pr(e){e.preventDefault(),e.stopImmediatePropagation()}function fA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function pA(){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 Lf(){return this.__zoom||Ao}function mA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function gA(){return navigator.maxTouchPoints||"ontouchstart"in this}function hA(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 yA(){var e=fA,n=pA,o=hA,r=mA,i=gA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Ci,d=ui("start","zoom","end"),f,u,p,m=500,h=150,_=0,y=10;function g(P){P.property("__zoom",Lf).on("wheel.zoom",x,{passive:!1}).on("mousedown.zoom",v).on("dblclick.zoom",V).filter(i).on("touchstart.zoom",L).on("touchmove.zoom",k).on("touchend.zoom touchcancel.zoom",Y).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}g.transform=function(P,G,j,te){var X=P.selection?P.selection():P;X.property("__zoom",Lf),P!==X?E(P,G,j,te):X.interrupt().each(function(){C(this,arguments).event(te).start().zoom(null,typeof G=="function"?G.apply(this,arguments):G).end()})},g.scaleBy=function(P,G,j,te){g.scaleTo(P,function(){var X=this.__zoom.k,D=typeof G=="function"?G.apply(this,arguments):G;return X*D},j,te)},g.scaleTo=function(P,G,j,te){g.transform(P,function(){var X=n.apply(this,arguments),D=this.__zoom,U=j==null?S(X):typeof j=="function"?j.apply(this,arguments):j,A=D.invert(U),T=typeof G=="function"?G.apply(this,arguments):G;return o(b(w(D,T),U,A),X,l)},j,te)},g.translateBy=function(P,G,j,te){g.transform(P,function(){return o(this.__zoom.translate(typeof G=="function"?G.apply(this,arguments):G,typeof j=="function"?j.apply(this,arguments):j),n.apply(this,arguments),l)},null,te)},g.translateTo=function(P,G,j,te,X){g.transform(P,function(){var D=n.apply(this,arguments),U=this.__zoom,A=te==null?S(D):typeof te=="function"?te.apply(this,arguments):te;return o(Ao.translate(A[0],A[1]).scale(U.k).translate(typeof G=="function"?-G.apply(this,arguments):-G,typeof j=="function"?-j.apply(this,arguments):-j),D,l)},te,X)};function w(P,G){return G=Math.max(a[0],Math.min(a[1],G)),G===P.k?P:new un(G,P.x,P.y)}function b(P,G,j){var te=G[0]-j[0]*P.k,X=G[1]-j[1]*P.k;return te===P.x&&X===P.y?P:new un(P.k,te,X)}function S(P){return[(+P[0][0]+ +P[1][0])/2,(+P[0][1]+ +P[1][1])/2]}function E(P,G,j,te){P.on("start.zoom",function(){C(this,arguments).event(te).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(te).end()}).tween("zoom",function(){var X=this,D=arguments,U=C(X,D).event(te),A=n.apply(X,D),T=j==null?S(A):typeof j=="function"?j.apply(X,D):j,K=Math.max(A[1][0]-A[0][0],A[1][1]-A[0][1]),z=X.__zoom,J=typeof G=="function"?G.apply(X,D):G,Q=c(z.invert(T).concat(K/z.k),J.invert(T).concat(K/J.k));return function(ie){if(ie===1)ie=J;else{var he=Q(ie),Z=K/he[2];ie=new un(Z,T[0]-he[0]*Z,T[1]-he[1]*Z)}U.zoom(null,ie)}})}function C(P,G,j){return!j&&P.__zooming||new N(P,G)}function N(P,G){this.that=P,this.args=G,this.active=0,this.sourceEvent=null,this.extent=n.apply(P,G),this.taps=0}N.prototype={event:function(P){return P&&(this.sourceEvent=P),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(P,G){return this.mouse&&P!=="mouse"&&(this.mouse[1]=G.invert(this.mouse[0])),this.touch0&&P!=="touch"&&(this.touch0[1]=G.invert(this.touch0[0])),this.touch1&&P!=="touch"&&(this.touch1[1]=G.invert(this.touch1[0])),this.that.__zoom=G,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(P){var G=Ft(this.that).datum();d.call(P,this.that,new uA(P,{sourceEvent:this.sourceEvent,target:g,transform:this.that.__zoom,dispatch:d}),G)}};function x(P,...G){if(!e.apply(this,arguments))return;var j=C(this,G).event(P),te=this.__zoom,X=Math.max(a[0],Math.min(a[1],te.k*Math.pow(2,r.apply(this,arguments)))),D=Ht(P);if(j.wheel)(j.mouse[0][0]!==D[0]||j.mouse[0][1]!==D[1])&&(j.mouse[1]=te.invert(j.mouse[0]=D)),clearTimeout(j.wheel);else{if(te.k===X)return;j.mouse=[D,te.invert(D)],Pi(this),j.start()}pr(P),j.wheel=setTimeout(U,h),j.zoom("mouse",o(b(w(te,X),j.mouse[0],j.mouse[1]),j.extent,l));function U(){j.wheel=null,j.end()}}function v(P,...G){if(p||!e.apply(this,arguments))return;var j=P.currentTarget,te=C(this,G,!0).event(P),X=Ft(P.view).on("mousemove.zoom",T,!0).on("mouseup.zoom",K,!0),D=Ht(P,j),U=P.clientX,A=P.clientY;df(P.view),Gl(P),te.mouse=[D,this.__zoom.invert(D)],Pi(this),te.start();function T(z){if(pr(z),!te.moved){var J=z.clientX-U,Q=z.clientY-A;te.moved=J*J+Q*Q>_}te.event(z).zoom("mouse",o(b(te.that.__zoom,te.mouse[0]=Ht(z,j),te.mouse[1]),te.extent,l))}function K(z){X.on("mousemove.zoom mouseup.zoom",null),uf(z.view,te.moved),pr(z),te.event(z).end()}}function V(P,...G){if(e.apply(this,arguments)){var j=this.__zoom,te=Ht(P.changedTouches?P.changedTouches[0]:P,this),X=j.invert(te),D=j.k*(P.shiftKey?.5:2),U=o(b(w(j,D),te,X),n.apply(this,G),l);pr(P),s>0?Ft(this).transition().duration(s).call(E,U,te,P):Ft(this).call(g.transform,U,te,P)}}function L(P,...G){if(e.apply(this,arguments)){var j=P.touches,te=j.length,X=C(this,G,P.changedTouches.length===te).event(P),D,U,A,T;for(Gl(P),U=0;U<te;++U)A=j[U],T=Ht(A,this),T=[T,this.__zoom.invert(T),A.identifier],X.touch0?!X.touch1&&X.touch0[2]!==T[2]&&(X.touch1=T,X.taps=0):(X.touch0=T,D=!0,X.taps=1+!!f);f&&(f=clearTimeout(f)),D&&(X.taps<2&&(u=T[0],f=setTimeout(function(){f=null},m)),Pi(this),X.start())}}function k(P,...G){if(this.__zooming){var j=C(this,G).event(P),te=P.changedTouches,X=te.length,D,U,A,T;for(pr(P),D=0;D<X;++D)U=te[D],A=Ht(U,this),j.touch0&&j.touch0[2]===U.identifier?j.touch0[0]=A:j.touch1&&j.touch1[2]===U.identifier&&(j.touch1[0]=A);if(U=j.that.__zoom,j.touch1){var K=j.touch0[0],z=j.touch0[1],J=j.touch1[0],Q=j.touch1[1],ie=(ie=J[0]-K[0])*ie+(ie=J[1]-K[1])*ie,he=(he=Q[0]-z[0])*he+(he=Q[1]-z[1])*he;U=w(U,Math.sqrt(ie/he)),A=[(K[0]+J[0])/2,(K[1]+J[1])/2],T=[(z[0]+Q[0])/2,(z[1]+Q[1])/2]}else if(j.touch0)A=j.touch0[0],T=j.touch0[1];else return;j.zoom("touch",o(b(U,A,T),j.extent,l))}}function Y(P,...G){if(this.__zooming){var j=C(this,G).event(P),te=P.changedTouches,X=te.length,D,U;for(Gl(P),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),D=0;D<X;++D)U=te[D],j.touch0&&j.touch0[2]===U.identifier?delete j.touch0:j.touch1&&j.touch1[2]===U.identifier&&delete j.touch1;if(j.touch1&&!j.touch0&&(j.touch0=j.touch1,delete j.touch1),j.touch0)j.touch0[1]=this.__zoom.invert(j.touch0[0]);else if(j.end(),j.taps===2&&(U=Ht(U,this),Math.hypot(u[0]-U[0],u[1]-U[1])<y)){var A=Ft(this).on("dblclick.zoom");A&&A.apply(this,arguments)}}}return g.wheelDelta=function(P){return arguments.length?(r=typeof P=="function"?P:Ti(+P),g):r},g.filter=function(P){return arguments.length?(e=typeof P=="function"?P:Ti(!!P),g):e},g.touchable=function(P){return arguments.length?(i=typeof P=="function"?P:Ti(!!P),g):i},g.extent=function(P){return arguments.length?(n=typeof P=="function"?P:Ti([[+P[0][0],+P[0][1]],[+P[1][0],+P[1][1]]]),g):n},g.scaleExtent=function(P){return arguments.length?(a[0]=+P[0],a[1]=+P[1],g):[a[0],a[1]]},g.translateExtent=function(P){return arguments.length?(l[0][0]=+P[0][0],l[1][0]=+P[1][0],l[0][1]=+P[0][1],l[1][1]=+P[1][1],g):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},g.constrain=function(P){return arguments.length?(o=P,g):o},g.duration=function(P){return arguments.length?(s=+P,g):s},g.interpolate=function(P){return arguments.length?(c=P,g):c},g.on=function(){var P=d.on.apply(d,arguments);return P===d?g:P},g.clickDistance=function(P){return arguments.length?(_=(P=+P)*P,g):Math.sqrt(_)},g.tapDistance=function(P){return arguments.length?(y=+P,g):y},g}var Ee=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(Ee||{}),ql=(e=>(e.Partial="partial",e.Full="full",e))(ql||{}),qn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(qn||{}),wn=(e=>(e.Strict="strict",e.Loose="loose",e))(wn||{}),mr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(mr||{}),gr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(gr||{}),Ff=(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))(Ff||{});const _A=["INPUT","SELECT","TEXTAREA"],bA=typeof document<"u"?document:null;function zl(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 _A.includes(r==null?void 0:r.nodeName)||i||!!a}function wA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Uf(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 kA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=CA(o.code,e);return Array.isArray(e)?e.some(i=>Uf(o[r],i,n,o.type==="keyup")):Uf(o[r],e,n,o.type==="keyup")}}function CA(e,n){return n.includes(e)?"code":"key"}function hr(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??bA),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}),Hu(["blur","contextmenu"],s),Yu((...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=wA(d),(!i||i&&!p)&&zl(d))return;const _=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,y=(_==null?void 0:_.nodeName)==="BUTTON"||(_==null?void 0:_.nodeName)==="A";!m&&(i||!y)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Yu((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&zl(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"?kA(d,a):d}return r}const Kf="vue-flow__node-desc",jf="vue-flow__edge-desc",EA="vue-flow__aria-live",Gf=["Enter"," ","Escape"],Io={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Oi(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function $i(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 Bi(e){return{width:e.offsetWidth,height:e.offsetHeight}}function zn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function qf(e,n){return{x:zn(e.x,n[0][0],n[1][0]),y:zn(e.y,n[0][1],n[1][1])}}function zf(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function kn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function Hn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!kn(e)}function yr(e){return Hn(e)&&"computedPosition"in e}function Vi(e){return!Number.isNaN(e)&&Number.isFinite(e)}function NA(e){return Vi(e.width)&&Vi(e.height)&&Vi(e.x)&&Vi(e.y)}function xA(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:tt(e.data)?e.data:{},events:t.markRaw(tt(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Hf(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:tt(e.data)?e.data:{},events:t.markRaw(tt(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 Yf(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 SA(...e){if(e.length===3){const[a,l,s]=e;return Yf(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>kn(a)&&a.source===r).map(a=>o.find(l=>Hn(l)&&l.id===a.target))}function vA(...e){if(e.length===3){const[a,l,s]=e;return Yf(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>kn(a)&&a.target===r).map(a=>o.find(l=>Hn(l)&&l.id===a.source))}function Wf({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function AA(e,n){return n.some(o=>kn(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 Hl({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function _r({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?Di(s,l):s}function IA(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 Xf({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function TA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Zf(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=IA(n,Xf({...r.computedPosition,...r.dimensions}))}return TA(n)}function Jf(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={..._r(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=$i(a,Oi(s)),h=u===null||p===null,_=r&&m>0,y=(u??0)*(p??0);(h||_||m>=y||s.dragging)&&l.push(s)}return l}function Qf(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 ep(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=zn(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 PA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function tp(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:tp(o,n):!1}function br(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function np(e,n,o){return e<n?zn(Math.abs(e-n),1,n)/n:e>o?-zn(Math.abs(e-o),1,n)/n:0}function op(e,n,o=15,r=40){const i=np(e.x,r,n.width-r)*o,a=np(e.y,r,n.height-r)*o;return[i,a]}function Yl(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 rp(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(yr(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&&yr(c)&&Yl(l,c)}break;case"dimensions":if(yr(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&&yr(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Yl(l,c):t.nextTick(()=>{Yl(l,c)}))}break}return n}function Cn(e,n){return{id:e,type:"select",selected:n}}function ip(e){return{item:e,type:"add"}}function ap(e){return{id:e,type:"remove"}}function lp(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function En(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(Cn(a.id,l)))}return r}function Ce(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 di(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function sp(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 OA(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!tp(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 Wl({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 cp(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 $A(e,n,o){const[r,i,a,l]=typeof e!="string"?cp(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 BA(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=$A(i,e,r);a&&(i=a)}else n(new lt(et.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]=cp(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 VA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function Xl(e,n,o,r,i){const a=VA(e.dimensions,BA(e,o,r,i)),l=qf(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 To(e,n,o=Ee.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??LA(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case Ee.Top:return{x:i+l/2,y:a};case Ee.Right:return{x:i+l,y:a+s/2};case Ee.Bottom:return{x:i+l/2,y:a+s};case Ee.Left:return{x:i,y:a+s/2}}}function dp(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function RA({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=Xf({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 DA(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 et=(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))(et||{});const up={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 kA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=CA(o.code,e);return Array.isArray(e)?e.some(i=>Uf(o[r],i,n,o.type==="keyup")):Uf(o[r],e,n,o.type==="keyup")}}function CA(e,n){return n.includes(e)?"code":"key"}function hr(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??bA),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}),Hu(["blur","contextmenu"],s),Yu((...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=wA(d),(!i||i&&!p)&&zl(d))return;const _=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,y=(_==null?void 0:_.nodeName)==="BUTTON"||(_==null?void 0:_.nodeName)==="A";!m&&(i||!y)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Yu((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&zl(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"?kA(d,a):d}return r}const Kf="vue-flow__node-desc",jf="vue-flow__edge-desc",EA="vue-flow__aria-live",Gf=["Enter"," ","Escape"],Io={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Oi(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function $i(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 Bi(e){return{width:e.offsetWidth,height:e.offsetHeight}}function zn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function qf(e,n){return{x:zn(e.x,n[0][0],n[1][0]),y:zn(e.y,n[0][1],n[1][1])}}function zf(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function kn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function Hn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!kn(e)}function yr(e){return Hn(e)&&"computedPosition"in e}function Vi(e){return!Number.isNaN(e)&&Number.isFinite(e)}function NA(e){return Vi(e.width)&&Vi(e.height)&&Vi(e.x)&&Vi(e.y)}function xA(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:tt(e.data)?e.data:{},events:t.markRaw(tt(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Hf(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:tt(e.data)?e.data:{},events:t.markRaw(tt(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 Yf(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 SA(...e){if(e.length===3){const[a,l,s]=e;return Yf(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>kn(a)&&a.source===r).map(a=>o.find(l=>Hn(l)&&l.id===a.target))}function vA(...e){if(e.length===3){const[a,l,s]=e;return Yf(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>kn(a)&&a.target===r).map(a=>o.find(l=>Hn(l)&&l.id===a.source))}function Wf({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function AA(e,n){return n.some(o=>kn(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 Hl({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function _r({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?Di(s,l):s}function IA(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 Xf({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function PA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Zf(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=IA(n,Xf({...r.computedPosition,...r.dimensions}))}return PA(n)}function Jf(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={..._r(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=$i(a,Oi(s)),h=u===null||p===null,_=r&&m>0,y=(u??0)*(p??0);(h||_||m>=y||s.dragging)&&l.push(s)}return l}function Qf(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 ep(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=zn(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 TA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function tp(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:tp(o,n):!1}function br(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function np(e,n,o){return e<n?zn(Math.abs(e-n),1,n)/n:e>o?-zn(Math.abs(e-o),1,n)/n:0}function op(e,n,o=15,r=40){const i=np(e.x,r,n.width-r)*o,a=np(e.y,r,n.height-r)*o;return[i,a]}function Yl(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 rp(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(yr(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&&yr(c)&&Yl(l,c)}break;case"dimensions":if(yr(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&&yr(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Yl(l,c):t.nextTick(()=>{Yl(l,c)}))}break}return n}function Cn(e,n){return{id:e,type:"select",selected:n}}function ip(e){return{item:e,type:"add"}}function ap(e){return{id:e,type:"remove"}}function lp(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function En(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(Cn(a.id,l)))}return r}function Ce(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 di(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function sp(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 OA(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!tp(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 Wl({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 cp(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 $A(e,n,o){const[r,i,a,l]=typeof e!="string"?cp(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 BA(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=$A(i,e,r);a&&(i=a)}else n(new lt(et.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]=cp(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 VA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function Xl(e,n,o,r,i){const a=VA(e.dimensions,BA(e,o,r,i)),l=qf(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 Po(e,n,o=Ee.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??LA(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case Ee.Top:return{x:i+l/2,y:a};case Ee.Right:return{x:i+l,y:a+s/2};case Ee.Bottom:return{x:i+l/2,y:a+s};case Ee.Left:return{x:i,y:a+s/2}}}function dp(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function RA({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=Xf({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 DA(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 et=(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))(et||{});const up={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 lt extends Error{constructor(n,...o){var r;super((r=up[n])==null?void 0:r.call(up,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function Zl(e){return"clientX"in e}function MA(e){return"sourceEvent"in e}function Zt(e,n){const o=Zl(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 Ri=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function LA(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 Di(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const FA=()=>!0;function Jl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function UA(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())$i(i,Oi(a))>0&&r.push(a);return r}const KA=250;function jA(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=UA(e,o,n+KA);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}=To(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 fp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=FA},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}=Zt(e),g=l.elementFromPoint(_,y),w=g!=null&&g.classList.contains(`${s}-flow__handle`)?g:h,b={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const S=pp(void 0,w),E=w.getAttribute("data-nodeid"),C=w.getAttribute("data-handleid"),N=w.classList.contains("connectable"),x=w.classList.contains("connectableend");if(!E||!S)return b;const v={source:m?E:r,sourceHandle:m?C:i,target:m?r:E,targetHandle:m?i:C};b.connection=v;const F=N&&x&&(o===wn.Strict?m&&S==="source"||!m&&S==="target":E!==r||C!==i);b.isValid=F&&d(v,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(E)}),b.toHandle=n}return b}function pp(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function GA(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function qA(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function zA(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===wn.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,...To(d,u,u.position,!0)}:u}const Ql={[Ee.Left]:Ee.Right,[Ee.Right]:Ee.Left,[Ee.Top]:Ee.Bottom,[Ee.Bottom]:Ee.Top},HA=["production","prod"];function Mi(e,...n){mp()&&console.warn(`[Vue Flow]: ${e}`,...n)}function mp(){return!HA.includes(process.env.NODE_ENV||"")}function gp(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,...Bi(l)}}):null}function es(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 tt(e){return typeof t.unref(e)<"u"}function YA(e,n,o,r){if(!e||!e.source||!e.target)return o(new lt(et.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return kn(e)?i=e:i={...e,id:Wf(e)},i=Hf(i,void 0,r),AA(i,n)?!1:i}function WA(e,n,o,r,i){if(!n.source||!n.target)return i(new lt(et.EDGE_INVALID,e.id)),!1;if(!o)return i(new lt(et.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Wf(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function hp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!Hn(l)){o(new lt(et.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=xA(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 lt(et.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 yp(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 ts(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}`;yp("source",c,f,e,i,l),yp("target",c,d,e,a,s)}}function _p(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function ns(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=kn(d)?d:YA(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new lt(et.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new lt(et.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new lt(et.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new lt(et.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Hf(f,m,a),sourceNode:u,targetNode:p})}return c}const bp=Symbol("vueFlow"),wp=Symbol("nodeId"),kp=Symbol("nodeRef"),XA=Symbol("edgeId"),ZA=Symbol("edgeRef"),Li=Symbol("slots");function Cp(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:_,selectNodesOnDrag:y,removeSelectedElements:g,addSelectedNodes:w,updateNodePositions:b,emits:S}=Le(),{onStart:E,onDrag:C,onStop:N,onClick:x,el:v,disabled:R,id:F,selectable:k,dragHandle:Y}=e,T=t.shallowRef(!1);let q=[],j,te=null,X={x:void 0,y:void 0},D={x:0,y:0},K=null,A=!1,P=0,U=!1;const G=eI(),Z=({x:le,y:ue})=>{X={x:le,y:ue};let fe=!1;if(q=q.map($=>{const B={x:le-$.distance.x,y:ue-$.distance.y},{computedPosition:M}=Xl($,o.value?Di(B,r.value):B,S.error,l.value,$.parentNode?m($.parentNode):void 0);return fe=fe||$.position.x!==M.x||$.position.y!==M.y,$.position=M,$}),!!fe&&(b(q,!0,!0),T.value=!0,K)){const[$,B]=Wl({id:F,dragItems:q,findNode:m});C({event:K,node:$,nodes:B})}},ee=()=>{if(!te)return;const[le,ue]=op(D,te,f.value);if(le!==0||ue!==0){const fe={x:(X.x??0)-le/c.value.zoom,y:(X.y??0)-ue/c.value.zoom};p({x:le,y:ue})&&Z(fe)}P=requestAnimationFrame(ee)},ie=(le,ue)=>{A=!0;const fe=m(F);!y.value&&!h.value&&fe&&(fe.selected||g()),fe&&t.toValue(k)&&y.value&&es(fe,h.value,w,g,_,!1,ue);const $=G(le.sourceEvent);if(X=$,q=OA(a.value,u.value,$,m,F),q.length){const[B,M]=Wl({id:F,dragItems:q,findNode:m});E({event:le.sourceEvent,node:B,nodes:M})}},he=(le,ue)=>{var fe;le.sourceEvent.type==="touchmove"&&le.sourceEvent.touches.length>1||(s.value===0&&ie(le,ue),X=G(le.sourceEvent),te=((fe=n.value)==null?void 0:fe.getBoundingClientRect())||null,D=Zt(le.sourceEvent,te))},J=(le,ue)=>{const fe=G(le.sourceEvent);if(!U&&A&&d.value&&(U=!0,ee()),!A){const $=fe.xSnapped-(X.x??0),B=fe.ySnapped-(X.y??0);Math.sqrt($*$+B*B)>s.value&&ie(le,ue)}(X.x!==fe.xSnapped||X.y!==fe.ySnapped)&&q.length&&A&&(K=le.sourceEvent,D=Zt(le.sourceEvent,te),Z(fe))},re=le=>{let ue=!1;if(!A&&!T.value&&!h.value){const fe=le.sourceEvent,$=G(fe),B=$.xSnapped-(X.x??0),M=$.ySnapped-(X.y??0),V=Math.sqrt(B*B+M*M);V!==0&&V<=s.value&&(x==null||x(fe),ue=!0)}if(q.length&&!ue){b(q,!1,!1);const[fe,$]=Wl({id:F,dragItems:q,findNode:m});N({event:le.sourceEvent,node:fe,nodes:$})}q=[],T.value=!1,U=!1,A=!1,X={x:void 0,y:void 0},cancelAnimationFrame(P)};return t.watch([()=>t.toValue(R),v],([le,ue],fe,$)=>{if(ue){const B=Ft(ue);le||(j=NS().on("start",M=>he(M,ue)).on("drag",M=>J(M,ue)).on("end",M=>re(M)).filter(M=>{const V=M.target,Q=t.toValue(Y);return!M.button&&(!i.value||!sp(V,`.${i.value}`,ue)&&(!Q||sp(V,Q,ue)))}),B.call(j)),$(()=>{B.on(".drag",null),j&&(j.on("start",null),j.on("drag",null),j.on("end",null))})}}),T}function JA(){return{doubleClick:Ce(),click:Ce(),mouseEnter:Ce(),mouseMove:Ce(),mouseLeave:Ce(),contextMenu:Ce(),updateStart:Ce(),update:Ce(),updateEnd:Ce()}}function QA(e,n){const o=JA();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 eI(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Le();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=MA(i)?i.sourceEvent:i,{x:c,y:d}=Zt(s,l),f=_r({x:c,y:d},e.value),{x:u,y:p}=o.value?Di(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Fi(){return!0}function Ep({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:_,findNode:y,panBy:g,startConnection:w,updateConnection:b,endConnection:S,emits:E,viewport:C,edges:N,nodes:x,isValidConnection:v,nodeLookup:R}=Le();let F=null,k=!1,Y=null;function T(j){var te;const X=t.toValue(o)==="target",D=Zl(j),K=zf(j.target);if(D&&j.button===0||!D){let A=function(L){$=Zt(L,le),Z=jA(_r($,C.value,!1,[1,1]),f.value,R.value,V),B||(M(),B=!0);const O=fp(L,{handle:Z,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:X?"target":"source",isValidConnection:G,doc:K,lib:"vue",flowId:s,nodeLookup:R.value},N.value,x.value,y);Y=O.handleDomNode,F=O.connection,k=qA(!!Z,O.isValid);const oe={...I,isValid:k,to:O.toHandle&&k?Hl({x:O.toHandle.x,y:O.toHandle.y},C.value):$,toHandle:O.toHandle,toPosition:k&&O.toHandle?O.toHandle.position:Ql[V.position],toNode:O.toHandle?R.value.get(O.toHandle.nodeId):null};if(!(k&&Z&&(I!=null&&I.toHandle)&&oe.toHandle&&I.toHandle.type===oe.toHandle.type&&I.toHandle.nodeId===oe.toHandle.nodeId&&I.toHandle.id===oe.toHandle.id&&I.to.x===oe.to.x&&I.to.y===oe.to.y)){if(b(Z&&k?Hl({x:Z.x,y:Z.y},C.value):$,O.toHandle,GA(!!Z,k)),I=oe,!Z&&!k&&!Y)return Jl(fe);F&&F.source!==F.target&&Y&&(Jl(fe),fe=Y,Y.classList.add("connecting","vue-flow__handle-connecting"),Y.classList.toggle("valid",!!k),Y.classList.toggle("vue-flow__handle-valid",!!k))}},P=function(L){(Z||Y)&&F&&k&&(a?a(L,F):E.connect(F)),E.connectEnd(L),i&&(l==null||l(L)),Jl(fe),cancelAnimationFrame(ee),S(L),B=!1,k=!1,F=null,Y=null,K.removeEventListener("mousemove",A),K.removeEventListener("mouseup",P),K.removeEventListener("touchmove",A),K.removeEventListener("touchend",P)};const U=y(t.toValue(n));let G=t.toValue(r)||v.value||Fi;!G&&U&&(G=(X?U.isValidSourcePos:U.isValidTargetPos)||Fi);let Z,ee=0;const{x:ie,y:he}=Zt(j),J=K==null?void 0:K.elementFromPoint(ie,he),re=pp(t.toValue(i),J),le=(te=c.value)==null?void 0:te.getBoundingClientRect();if(!le||!re)return;const ue=zA(t.toValue(n),re,t.toValue(e),R.value,d.value);if(!ue)return;let fe,$=Zt(j,le),B=!1;const M=()=>{if(!h.value)return;const[L,O]=op($,le,_.value);g({x:L,y:O}),ee=requestAnimationFrame(M)},V={...ue,nodeId:t.toValue(n),type:re,position:ue.position},Q=R.value.get(t.toValue(n)),ae={inProgress:!0,isValid:null,from:To(Q,V,Ee.Left,!0),fromHandle:V,fromPosition:V.position,fromNode:Q,to:$,toHandle:null,toPosition:Ql[V.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:re,position:(J==null?void 0:J.getAttribute("data-handlepos"))||Ee.Top,...$},{x:ie-le.left,y:he-le.top}),E.connectStart({event:j,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:re});let I=ae;K.addEventListener("mousemove",A),K.addEventListener("mouseup",P),K.addEventListener("touchmove",A),K.addEventListener("touchend",P)}}function q(j){var te,X;if(!u.value)return;const D=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:j,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:Ee.Top,...Zt(j)},void 0,!0);return}let K=t.toValue(r)||v.value||Fi;const A=y(t.toValue(n));if(!K&&A&&(K=(D?A.isValidSourcePos:A.isValidTargetPos)||Fi),A&&(typeof A.connectable>"u"?m.value:A.connectable)===!1)return;const P=zf(j.target),U=fp(j,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:Ee.Top,...Zt(j)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:K,doc:P,lib:"vue",flowId:s,nodeLookup:R.value},N.value,x.value,y),G=((te=U.connection)==null?void 0:te.source)===((X=U.connection)==null?void 0:X.target);U.isValid&&U.connection&&!G&&E.connect(U.connection),E.clickConnectEnd(j),S(j,!0)}return{handlePointerDown:T,handleClick:q}}function tI(){return t.inject(wp,"")}function Np(e){const n=e??tI()??"",o=t.inject(kp,t.ref(null)),{findNode:r,edges:i,emits:a}=Le(),l=r(n);return l||a.error(new lt(et.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>Qf([l],i.value))}}function nI(){return{doubleClick:Ce(),click:Ce(),mouseEnter:Ce(),mouseMove:Ce(),mouseLeave:Ce(),contextMenu:Ce(),dragStart:Ce(),drag:Ce(),dragStop:Ce()}}function oI(e,n){const o=nI();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 xp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Le();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,_=[];for(const y of e.value)if(y.draggable||l&&typeof y.draggable>"u"){const g={x:y.computedPosition.x+m,y:y.computedPosition.y+h},{computedPosition:w}=Xl(y,g,s.error,n.value,y.parentNode?r(y.parentNode):void 0);_.push({id:y.id,position:w,from:y.position,distance:{x:c.x,y:c.y},dimensions:y.dimensions})}o(_,!0,!1)}}const os=.1,rI=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function Nn(){return Mi("Viewport not initialized yet."),Promise.resolve(!1)}const iI={zoomIn:Nn,zoomOut:Nn,zoomTo:Nn,fitView:Nn,setCenter:Nn,fitBounds:Nn,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:Nn,setTransform:Nn,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function aI(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?sr:Ci).scaleBy(rs(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}=qf({x:-r,y:-i},e.translateExtent),u=Ao.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?sr:Ci).transform(rs(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"?sr:Ci).scaleTo(rs(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:os,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=Zf(s),{x:d,y:f,zoom:u}=ep(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??os,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:os})=>{const{x:l,y:s,zoom:c}=ep(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>_r(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 _r(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 Hl(s,e.viewport)}return{x:0,y:0}}}:iI)}function rs(e,n=0,o=rI,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function lI(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);_=Eo([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)&&(y==null||y.pause(),o.setElements(w),!y&&!g&&w.length?g=!0:y==null||y.resume())}),y=Eo([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,b])=>{var S;(S=e.modelValue)!=null&&S.value&&Array.isArray(e.modelValue.value)&&(_==null||_.pause(),e.modelValue.value=[...w,...b],t.nextTick(()=>{_==null||_.resume()}))},{immediate:g}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},a=()=>{r.run(()=>{let _,y,g=!!o.nodes.value.length;_=Eo([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)&&(y==null||y.pause(),o.setNodes(w),!y&&!g&&w.length?g=!0:y==null||y.resume())}),y=Eo([o.nodes,()=>o.nodes.value.length],([w])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(_==null||_.pause(),e.nodes.value=[...w],t.nextTick(()=>{_==null||_.resume()}))},{immediate:g}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},l=()=>{r.run(()=>{let _,y,g=!!o.edges.value.length;_=Eo([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)&&(y==null||y.pause(),o.setEdges(w),!y&&!g&&w.length?g=!0:y==null||y.resume())}),y=Eo([o.edges,()=>o.edges.value.length],([w])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(_==null||_.pause(),e.edges.value=[...w],t.nextTick(()=>{_==null||_.resume()}))},{immediate:g}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&tt(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&tt(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&tt(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&tt(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{tt(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const _=async y=>{let g=y;typeof n.autoConnect=="function"&&(g=await n.autoConnect(y)),g!==!1&&o.addEdges([g])};t.watch(()=>n.autoConnect,()=>{tt(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(y,g,w)=>{y?o.onConnect(_):o.hooks.value.connect.off(_),w(()=>{o.hooks.value.connect.off(_)})},{immediate:!0})})},m=()=>{const _=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const y of Object.keys(n)){const g=y;if(!_.includes(g)){const w=t.toRef(()=>n[g]),b=o[g];t.isRef(b)&&r.run(()=>{t.watch(w,S=>{tt(S)&&(b.value=S)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function sI(){return{edgesChange:Ce(),nodesChange:Ce(),nodeDoubleClick:Ce(),nodeClick:Ce(),nodeMouseEnter:Ce(),nodeMouseMove:Ce(),nodeMouseLeave:Ce(),nodeContextMenu:Ce(),nodeDragStart:Ce(),nodeDrag:Ce(),nodeDragStop:Ce(),nodesInitialized:Ce(),miniMapNodeClick:Ce(),miniMapNodeDoubleClick:Ce(),miniMapNodeMouseEnter:Ce(),miniMapNodeMouseMove:Ce(),miniMapNodeMouseLeave:Ce(),connect:Ce(),connectStart:Ce(),connectEnd:Ce(),clickConnectStart:Ce(),clickConnectEnd:Ce(),paneReady:Ce(),init:Ce(),move:Ce(),moveStart:Ce(),moveEnd:Ce(),selectionDragStart:Ce(),selectionDrag:Ce(),selectionDragStop:Ce(),selectionContextMenu:Ce(),selectionStart:Ce(),selectionEnd:Ce(),viewportChangeStart:Ce(),viewportChange:Ce(),viewportChangeEnd:Ce(),paneScroll:Ce(),paneClick:Ce(),paneContextMenu:Ce(),paneMouseEnter:Ce(),paneMouseMove:Ce(),paneMouseLeave:Ce(),edgeContextMenu:Ce(),edgeMouseEnter:Ce(),edgeMouseMove:Ce(),edgeMouseLeave:Ce(),edgeDoubleClick:Ce(),edgeClick:Ce(),edgeUpdateStart:Ce(),edgeUpdate:Ce(),edgeUpdateEnd:Ce(),updateNodeInternals:Ce(),error:Ce(e=>Mi(e.message))}}function cI(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),di(()=>{r.off(i)})}})}function Sp(){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:ql.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:gr.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:qn.Bezier,style:{}},connectionMode:wn.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:Ri()?"Meta":"Control",zoomActivationKeyCode:Ri()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:sI(),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 dI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function uI(e,n,o){const r=aI(e),i=$=>{const B=$??[];e.hooks.updateNodeInternals.trigger(B)},a=$=>vA($,e.nodes,e.edges),l=$=>SA($,e.nodes,e.edges),s=$=>Qf($,e.edges),c=({id:$,type:B,nodeId:M})=>{var V;return Array.from(((V=e.connectionLookup.get(`${M}-${B}-${$??null}`))==null?void 0:V.values())??[])},d=$=>{if($)return n.value.get($)},f=$=>{if($)return o.value.get($)},u=($,B,M)=>{var V,Q;const z=[];for(const ae of $){const I={id:ae.id,type:"position",dragging:M,from:ae.from};if(B&&(I.position=ae.position,ae.parentNode)){const L=d(ae.parentNode);I.position={x:I.position.x-(((V=L==null?void 0:L.computedPosition)==null?void 0:V.x)??0),y:I.position.y-(((Q=L==null?void 0:L.computedPosition)==null?void 0:Q.y)??0)}}z.push(I)}z!=null&&z.length&&e.hooks.nodesChange.trigger(z)},p=$=>{if(!e.vueFlowRef)return;const B=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!B)return;const M=window.getComputedStyle(B),{m22:V}=new window.DOMMatrixReadOnly(M.transform),Q=[];for(const z of $){const ae=z,I=d(ae.id);if(I){const L=Bi(ae.nodeElement);if(!!(L.width&&L.height&&(I.dimensions.width!==L.width||I.dimensions.height!==L.height||ae.forceUpdate))){const oe=ae.nodeElement.getBoundingClientRect();I.dimensions=L,I.handleBounds.source=gp("source",ae.nodeElement,oe,V,I.id),I.handleBounds.target=gp("target",ae.nodeElement,oe,V,I.id),Q.push({id:I.id,type:"dimensions",dimensions:L})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),Q.length&&e.hooks.nodesChange.trigger(Q)},m=($,B)=>{const M=new Set,V=new Set;for(const ae of $)Hn(ae)?M.add(ae.id):kn(ae)&&V.add(ae.id);const Q=En(n.value,M,!0),z=En(o.value,V);if(e.multiSelectionActive){for(const ae of M)Q.push(Cn(ae,B));for(const ae of V)z.push(Cn(ae,B))}Q.length&&e.hooks.nodesChange.trigger(Q),z.length&&e.hooks.edgesChange.trigger(z)},h=$=>{if(e.multiSelectionActive){const B=$.map(M=>Cn(M.id,!0));e.hooks.nodesChange.trigger(B);return}e.hooks.nodesChange.trigger(En(n.value,new Set($.map(B=>B.id)),!0)),e.hooks.edgesChange.trigger(En(o.value))},_=$=>{if(e.multiSelectionActive){const B=$.map(M=>Cn(M.id,!0));e.hooks.edgesChange.trigger(B);return}e.hooks.edgesChange.trigger(En(o.value,new Set($.map(B=>B.id)))),e.hooks.nodesChange.trigger(En(n.value,new Set,!0))},y=$=>{m($,!0)},g=$=>{const M=($||e.nodes).map(V=>(V.selected=!1,Cn(V.id,!1)));e.hooks.nodesChange.trigger(M)},w=$=>{const M=($||e.edges).map(V=>(V.selected=!1,Cn(V.id,!1)));e.hooks.edgesChange.trigger(M)},b=$=>{if(!$||!$.length)return m([],!1);const B=$.reduce((M,V)=>{const Q=Cn(V.id,!1);return Hn(V)?M.nodes.push(Q):M.edges.push(Q),M},{nodes:[],edges:[]});B.nodes.length&&e.hooks.nodesChange.trigger(B.nodes),B.edges.length&&e.hooks.edgesChange.trigger(B.edges)},S=$=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([$,e.maxZoom]),e.minZoom=$},E=$=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([e.minZoom,$]),e.maxZoom=$},C=$=>{var B;(B=e.d3Zoom)==null||B.translateExtent($),e.translateExtent=$},N=$=>{e.nodeExtent=$,i()},x=$=>{var B;(B=e.d3Zoom)==null||B.clickDistance($)},v=$=>{e.nodesDraggable=$,e.nodesConnectable=$,e.elementsSelectable=$},R=$=>{const B=$ instanceof Function?$(e.nodes):$;!e.initialized&&!B.length||(e.nodes=hp(B,d,e.hooks.error.trigger))},F=$=>{const B=$ instanceof Function?$(e.edges):$;if(!e.initialized&&!B.length)return;const M=ns(B,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);ts(e.connectionLookup,o.value,M),e.edges=M},k=$=>{const B=$ instanceof Function?$([...e.nodes,...e.edges]):$;!e.initialized&&!B.length||(R(B.filter(Hn)),F(B.filter(kn)))},Y=$=>{let B=$ instanceof Function?$(e.nodes):$;B=Array.isArray(B)?B:[B];const M=hp(B,d,e.hooks.error.trigger),V=[];for(const Q of M)V.push(ip(Q));V.length&&e.hooks.nodesChange.trigger(V)},T=$=>{let B=$ instanceof Function?$(e.edges):$;B=Array.isArray(B)?B:[B];const M=ns(B,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),V=[];for(const Q of M)V.push(ip(Q));V.length&&e.hooks.edgesChange.trigger(V)},q=($,B=!0,M=!1)=>{const V=$ instanceof Function?$(e.nodes):$,Q=Array.isArray(V)?V:[V],z=[],ae=[];function I(O){const oe=s(O);for(const ne of oe)(!tt(ne.deletable)||ne.deletable)&&ae.push(lp(ne.id,ne.source,ne.target,ne.sourceHandle,ne.targetHandle))}function L(O){const oe=[];for(const ne of e.nodes)ne.parentNode===O&&oe.push(ne);if(oe.length){for(const ne of oe)z.push(ap(ne.id));B&&I(oe);for(const ne of oe)L(ne.id)}}for(const O of Q){const oe=typeof O=="string"?d(O):O;oe&&(tt(oe.deletable)&&!oe.deletable||(z.push(ap(oe.id)),B&&I([oe]),M&&L(oe.id)))}ae.length&&e.hooks.edgesChange.trigger(ae),z.length&&e.hooks.nodesChange.trigger(z)},j=$=>{const B=$ instanceof Function?$(e.edges):$,M=Array.isArray(B)?B:[B],V=[];for(const Q of M){const z=typeof Q=="string"?f(Q):Q;z&&(tt(z.deletable)&&!z.deletable||V.push(lp(typeof Q=="string"?Q:Q.id,z.source,z.target,z.sourceHandle,z.targetHandle)))}e.hooks.edgesChange.trigger(V)},te=($,B,M=!0)=>{const V=f($.id);if(!V)return!1;const Q=e.edges.indexOf(V),z=WA($,B,V,M,e.hooks.error.trigger);if(z){const[ae]=ns([z],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((I,L)=>L===Q?ae:I),ts(e.connectionLookup,o.value,[ae]),ae}return!1},X=($,B,M={replace:!1})=>{const V=f($);if(!V)return;const Q=typeof B=="function"?B(V):B;V.data=M.replace?Q:{...V.data,...Q}},D=$=>rp($,e.nodes),K=$=>{const B=rp($,e.edges);return ts(e.connectionLookup,o.value,B),B},A=($,B,M={replace:!1})=>{const V=d($);if(!V)return;const Q=typeof B=="function"?B(V):B;M.replace?e.nodes.splice(e.nodes.indexOf(V),1,Q):Object.assign(V,Q)},P=($,B,M={replace:!1})=>{const V=d($);if(!V)return;const Q=typeof B=="function"?B(V):B;V.data=M.replace?Q:{...V.data,...Q}},U=($,B,M=!1)=>{M?e.connectionClickStartHandle=$:e.connectionStartHandle=$,e.connectionEndHandle=null,e.connectionStatus=null,B&&(e.connectionPosition=B)},G=($,B=null,M=null)=>{e.connectionStartHandle&&(e.connectionPosition=$,e.connectionEndHandle=B,e.connectionStatus=M)},Z=($,B)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,B?e.connectionClickStartHandle=null:e.connectionStartHandle=null},ee=$=>{const B=NA($),M=B?null:yr($)?$:d($.id);return!B&&!M?[null,null,B]:[B?$:Oi(M),M,B]},ie=($,B=!0,M=e.nodes)=>{const[V,Q,z]=ee($);if(!V)return[];const ae=[];for(const I of M||e.nodes){if(!z&&(I.id===Q.id||!I.computedPosition))continue;const L=Oi(I),O=$i(L,V);(B&&O>0||O>=Number(V.width)*Number(V.height))&&ae.push(I)}return ae},he=($,B,M=!0)=>{const[V]=ee($);if(!V)return!1;const Q=$i(V,B);return M&&Q>0||Q>=Number(V.width)*Number(V.height)},J=$=>{const{viewport:B,dimensions:M,d3Zoom:V,d3Selection:Q,translateExtent:z}=e;if(!V||!Q||!$.x&&!$.y)return!1;const ae=Ao.translate(B.x+$.x,B.y+$.y).scale(B.zoom),I=[[0,0],[M.width,M.height]],L=V.constrain()(ae,I,z),O=e.viewport.x!==L.x||e.viewport.y!==L.y||e.viewport.zoom!==L.k;return V.transform(Q,L),O},re=$=>{const B=$ instanceof Function?$(e):$,M=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];tt(B.defaultEdgeOptions)&&(e.defaultEdgeOptions=B.defaultEdgeOptions);const V=B.modelValue||B.nodes||B.edges?[]:void 0;V&&(B.modelValue&&V.push(...B.modelValue),B.nodes&&V.push(...B.nodes),B.edges&&V.push(...B.edges),k(V));const Q=()=>{tt(B.maxZoom)&&E(B.maxZoom),tt(B.minZoom)&&S(B.minZoom),tt(B.translateExtent)&&C(B.translateExtent)};for(const z of Object.keys(B)){const ae=z,I=B[ae];![...dI,...M].includes(ae)&&tt(I)&&(e[ae]=I)}Nl(()=>e.d3Zoom).not.toBeNull().then(Q),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:k,setNodes:R,setEdges:F,addNodes:Y,addEdges:T,removeNodes:q,removeEdges:j,findNode:d,findEdge:f,updateEdge:te,updateEdgeData:X,updateNode:A,updateNodeData:P,applyEdgeChanges:K,applyNodeChanges:D,addSelectedElements:y,addSelectedNodes:h,addSelectedEdges:_,setMinZoom:S,setMaxZoom:E,setTranslateExtent:C,setNodeExtent:N,setPaneClickDistance:x,removeSelectedElements:b,removeSelectedNodes:g,removeSelectedEdges:w,startConnection:U,updateConnection:G,endConnection:Z,setInteractive:v,setState:re,getIntersectingNodes:ie,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:he,panBy:J,fitView:$=>r.value.fitView($),zoomIn:$=>r.value.zoomIn($),zoomOut:$=>r.value.zoomOut($),zoomTo:($,B)=>r.value.zoomTo($,B),setViewport:($,B)=>r.value.setViewport($,B),setTransform:($,B)=>r.value.setTransform($,B),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:($,B,M)=>r.value.setCenter($,B,M),fitBounds:($,B)=>r.value.fitBounds($,B),project:$=>r.value.project($),screenToFlowCoordinate:$=>r.value.screenToFlowCoordinate($),flowToScreenCoordinate:$=>r.value.flowToScreenCoordinate($),toObject:()=>{const $=[],B=[];for(const M of e.nodes){const{computedPosition:V,handleBounds:Q,selected:z,dimensions:ae,isParent:I,resizing:L,dragging:O,events:oe,...ne}=M;$.push(ne)}for(const M of e.edges){const{selected:V,sourceNode:Q,targetNode:z,events:ae,...I}=M;B.push(I)}return JSON.parse(JSON.stringify({nodes:$,edges:B,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:$=>new Promise(B=>{const{nodes:M,edges:V,position:Q,zoom:z,viewport:ae}=$;if(M&&R(M),V&&F(V),ae!=null&&ae.x&&(ae!=null&&ae.y)||Q){const I=(ae==null?void 0:ae.x)||Q[0],L=(ae==null?void 0:ae.y)||Q[1],O=(ae==null?void 0:ae.zoom)||z||e.viewport.zoom;return Nl(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:I,y:L,zoom:O}).then(()=>{B(!0)})})}else B(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const $=Sp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const B=Ao.translate($.defaultViewport.x??0,$.defaultViewport.y??0).scale(zn($.defaultViewport.zoom??1,$.minZoom,$.maxZoom)),M=e.viewportRef.getBoundingClientRect(),V=[[0,0],[M.width,M.height]],Q=e.d3Zoom.constrain()(B,V,$.translateExtent);e.d3Zoom.transform(e.d3Selection,Q)}re($)},$destroy:()=>{}}}const fI=["data-id","data-handleid","data-nodeid","data-handlepos"],pI={name:"Handle",compatConfig:{MODE:3}},Jt=t.defineComponent({...pI,props:{id:{default:null},type:{},position:{default:()=>Ee.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}=Le(),{id:m,node:h,nodeEl:_,connectedEdges:y}=Np(),g=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),S=t.toRef(()=>{var F,k,Y,T,q,j;return((F=l.value)==null?void 0:F.nodeId)===m&&((k=l.value)==null?void 0:k.id)===e.id&&((Y=l.value)==null?void 0:Y.type)===r.value||((T=c.value)==null?void 0:T.nodeId)===m&&((q=c.value)==null?void 0:q.id)===e.id&&((j=c.value)==null?void 0:j.type)===r.value}),E=t.toRef(()=>{var F,k,Y;return((F=s.value)==null?void 0:F.nodeId)===m&&((k=s.value)==null?void 0:k.id)===e.id&&((Y=s.value)==null?void 0:Y.type)===r.value}),{handlePointerDown:C,handleClick:N}=Ep({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),x=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!y.value.some(F=>{const k=F[`${r.value}Handle`];return F[r.value]!==m?!1:k?k===e.id:!0}):typeof e.connectable=="number"?y.value.filter(F=>{const k=F[`${r.value}Handle`];return F[r.value]!==m?!1:k?k===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,y.value):tt(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var F;if(!h.dimensions.width||!h.dimensions.height)return;const k=(F=h.handleBounds[r.value])==null?void 0:F.find(D=>D.id===e.id);if(!d.value||k)return;const Y=d.value.querySelector(".vue-flow__transformationpane");if(!_.value||!g.value||!Y||!e.id)return;const T=_.value.getBoundingClientRect(),q=g.value.getBoundingClientRect(),j=window.getComputedStyle(Y),{m22:te}=new window.DOMMatrixReadOnly(j.transform),X={id:e.id,position:e.position,x:(q.left-T.left)/te,y:(q.top-T.top)/te,type:r.value,nodeId:m,...Bi(g.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],X]});function v(F){const k=Zl(F);x.value&&w.value&&(k&&F.button===0||!k)&&C(F)}function R(F){!m||!s.value&&!w.value||x.value&&N(F)}return n({handleClick:N,handlePointerDown:C,onClick:R,onPointerDown:v}),(F,k)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:g,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":F.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${F.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&&!S.value||b.value&&S.value)}]]),onMousedown:v,onTouchstartPassive:v,onClick:R},[t.renderSlot(F.$slots,"default",{id:F.id})],42,fI))}}),Ui=function({sourcePosition:e=Ee.Bottom,targetPosition:n=Ee.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(Jt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(Jt,{type:"source",position:e,connectable:r,isValidConnection:a})]};Ui.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Ui.inheritAttrs=!1,Ui.compatConfig={MODE:3};const mI=Ui,Ki=function({targetPosition:e=Ee.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(Jt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Ki.props=["targetPosition","label","isValidTargetPos","connectable","data"],Ki.inheritAttrs=!1,Ki.compatConfig={MODE:3};const gI=Ki,ji=function({sourcePosition:e=Ee.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(Jt,{type:"source",position:e,connectable:o,isValidConnection:r})]};ji.props=["sourcePosition","label","isValidSourcePos","connectable","data"],ji.inheritAttrs=!1,ji.compatConfig={MODE:3};const hI=ji,yI=["transform"],_I=["width","height","x","y","rx","ry"],bI=["y"],wI={name:"EdgeText",compatConfig:{MODE:3}},kI=t.defineComponent({...wI,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,_I)):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,bI)],8,yI))}}),CI=["id","d","marker-end","marker-start"],EI=["d","stroke-width"],NI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Gi=t.defineComponent({...NI,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,CI),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,EI)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(kI,{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 vp({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 Ap({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 qi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Ip({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case Ee.Left:l=n-qi(n-r,a),s=o;break;case Ee.Right:l=n+qi(r-n,a),s=o;break;case Ee.Top:l=n,s=o-qi(o-i,a);break;case Ee.Bottom:l=n,s=o+qi(i-o,a);break}return[l,s]}function Tp(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top,curvature:s=.25}=e,[c,d]=Ip({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Ip({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,h,_]=Ap({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,_]}function Pp({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case Ee.Left:case Ee.Right:a=.5*(n+r),l=o;break;case Ee.Top:case Ee.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function Op(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top}=e,[s,c]=Pp({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Pp({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,h]=Ap({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 $p={[Ee.Left]:{x:-1,y:0},[Ee.Right]:{x:1,y:0},[Ee.Top]:{x:0,y:-1},[Ee.Bottom]:{x:0,y:1}};function xI({source:e,sourcePosition:n=Ee.Bottom,target:o}){return n===Ee.Left||n===Ee.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 Bp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function SI({source:e,sourcePosition:n=Ee.Bottom,target:o,targetPosition:r=Ee.Top,center:i,offset:a}){const l=$p[n],s=$p[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=xI({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,_;const y={x:0,y:0},g={x:0,y:0},[w,b,S,E]=vp({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??w,_=i.y??b;const N=[{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"?N:x:m=u==="x"?x:N}else{const N=[{x:c.x,y:d.y}],x=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?x:N:m=l.y===p?N:x,n===r){const Y=Math.abs(e[u]-o[u]);if(Y<=a){const T=Math.min(a-1,a-Y);l[u]===p?y[u]=(c[u]>e[u]?-1:1)*T:g[u]=(d[u]>o[u]?-1:1)*T}}if(n!==r){const Y=u==="x"?"y":"x",T=l[u]===s[Y],q=c[Y]>d[Y],j=c[Y]<d[Y];(l[u]===1&&(!T&&q||T&&j)||l[u]!==1&&(!T&&j||T&&q))&&(m=u==="x"?N:x)}const v={x:c.x+y.x,y:c.y+y.y},R={x:d.x+g.x,y:d.y+g.y},F=Math.max(Math.abs(v.x-m[0].x),Math.abs(R.x-m[0].x)),k=Math.max(Math.abs(v.y-m[0].y),Math.abs(R.y-m[0].y));F>=k?(h=(v.x+R.x)/2,_=m[0].y):(h=m[0].x,_=(v.y+R.y)/2)}return[[e,{x:c.x+y.x,y:c.y+y.y},...m,{x:d.x+g.x,y:d.y+g.y},o],h,_,S,E]}function vI(e,n,o,r){const i=Math.min(Bp(e,n)/2,Bp(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 is(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,h,_]=SI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((g,w,b)=>{let S;return b>0&&b<u.length-1?S=vI(u[b-1],w,u[b+1],s):S=`${b===0?"M":"L"}${w.x} ${w.y}`,g+=S,g},""),p,m,h,_]}function AI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=vp({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const II=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]=AI(e);return t.h(Gi,{path:o,labelX:r,labelY:i,...n,...e})}}}),Vp=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]=is({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Gi,{path:o,labelX:r,labelY:i,...n,...e})}}}),TI=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(Vp,{...e,...n,borderRadius:0})}}),PI=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]=Tp({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Gi,{path:o,labelX:r,labelY:i,...n,...e})}}}),OI=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]=Op({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Gi,{path:o,labelX:r,labelY:i,...n,...e})}}}),$I={input:hI,default:mI,output:gI},BI={default:PI,straight:II,step:TI,smoothstep:Vp,simplebezier:OI};function VI(e,n,o){const r=t.computed(()=>_=>n.value.get(_)),i=t.computed(()=>_=>o.value.get(_)),a=t.computed(()=>{const _={...BI,...e.edgeTypes},y=Object.keys(_);for(const g of e.edges)g.type&&!y.includes(g.type)&&(_[g.type]=g.type);return _}),l=t.computed(()=>{const _={...$I,...e.nodeTypes},y=Object.keys(_);for(const g of e.nodes)g.type&&!y.includes(g.type)&&(_[g.type]=g.type);return _}),s=t.computed(()=>e.onlyRenderVisibleElements?Jf(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 _=[];for(const y of e.edges){const g=n.value.get(y.source),w=n.value.get(y.target);RA({sourcePos:g.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:g.dimensions.width,sourceHeight:g.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&_.push(y)}return _}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const _=[];for(const y of e.nodes)y.selected&&_.push(y);return _}),u=t.computed(()=>{const _=[];for(const y of e.edges)y.selected&&_.push(y);return _}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const _=[];for(const y of e.nodes)y.dimensions.width&&y.dimensions.height&&y.handleBounds!==void 0&&_.push(y);return _}),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 Yn{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)??Yn.instance;return Yn.instance=r??new Yn,o&&(o.config.globalProperties.$vueFlowStorage=Yn.instance),Yn.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=Sp(),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=VI(i,s,c),f=uI(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...$1(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 Le(e){const n=Yn.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(bp,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=y=>{d.applyNodeChanges(y)},_=y=>{d.applyEdgeChanges(y)};u?(d.onNodesChange(h),d.onEdgesChange(_)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(_)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(_)})},{immediate:!0}),di(()=>{if(s){const u=n.get(s.id);u?u.$destroy():Mi(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(bp,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new lt(et.USEVUEFLOW_OPTIONS))}return s}function RI(e){const{emits:n,dimensions:o}=Le();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Bi(i);(l.width===0||l.height===0)&&n.error(new lt(et.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 DI={name:"UserSelection",compatConfig:{MODE:3}},MI=t.defineComponent({...DI,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))}}),LI=["tabIndex"],FI={name:"NodesSelection",compatConfig:{MODE:3}},UI=t.defineComponent({...FI,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Le(),s=xp(),c=t.ref(null),d=Cp({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(()=>Zf(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||Io[h.key]&&(h.preventDefault(),s({x:Io[h.key].x,y:Io[h.key].y},h.shiftKey))}return(h,_)=>!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,LI)],6)):t.createCommentVNode("",!0)}});function KI(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const jI={name:"Pane",compatConfig:{MODE:3}},GI=t.defineComponent({...jI,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:_,multiSelectionKeyCode:y,multiSelectionActive:g,edgeLookup:w,nodeLookup:b,connectionLookup:S,defaultEdgeOptions:E,connectionStartHandle:C}=Le(),N=t.ref(null),x=t.ref(new Set),v=t.ref(new Set),R=t.ref(),F=t.toRef(()=>c.value&&(e.isSelecting||a.value)),k=t.toRef(()=>C.value!==null);let Y=!1,T=!1;const q=hr(_,{actInsideInputWithModifier:!1}),j=hr(y);t.watch(q,G=>{G&&(p(u.value),m(f.value),d.value=!1)}),t.watch(j,G=>{g.value=G});function te(G,Z){return ee=>{ee.target===Z&&(G==null||G(ee))}}function X(G){if(Y||k.value){Y=!1;return}i.paneClick(G),l(),d.value=!1}function D(G){G.preventDefault(),G.stopPropagation(),i.paneContextMenu(G)}function K(G){i.paneScroll(G)}function A(G){var Z,ee,ie;if(R.value=(Z=n.value)==null?void 0:Z.getBoundingClientRect(),!c.value||!e.isSelecting||G.button!==0||G.target!==N.value||!R.value)return;(ie=(ee=G.target)==null?void 0:ee.setPointerCapture)==null||ie.call(ee,G.pointerId);const{x:he,y:J}=KI(G,R.value);T=!0,Y=!1,l(),s.value={width:0,height:0,startX:he,startY:J,x:he,y:J},i.selectionStart(G)}function P(G){var Z;if(!R.value||!s.value)return;Y=!0;const{x:ee,y:ie}=Zt(G,R.value),{startX:he=0,startY:J=0}=s.value,re={startX:he,startY:J,x:ee<he?ee:he,y:ie<J?ie:J,width:Math.abs(ee-he),height:Math.abs(ie-J)},le=x.value,ue=v.value;x.value=new Set(Jf(o.value,re,r.value,h.value===ql.Partial,!0).map($=>$.id)),v.value=new Set;const fe=((Z=E.value)==null?void 0:Z.selectable)??!0;for(const $ of x.value){const B=S.value.get($);if(B)for(const{edgeId:M}of B.values()){const V=w.value.get(M);V&&(V.selectable??fe)&&v.value.add(M)}}if(!_p(le,x.value)){const $=En(b.value,x.value,!0);i.nodesChange($)}if(!_p(ue,v.value)){const $=En(w.value,v.value);i.edgesChange($)}s.value=re,a.value=!0,d.value=!1}function U(G){var Z;G.button!==0||!T||((Z=G.target)==null||Z.releasePointerCapture(G.pointerId),!a.value&&s.value&&G.target===N.value&&X(G),a.value=!1,s.value=null,d.value=x.value.size>0,i.selectionEnd(G),e.selectionKeyPressed&&(Y=!1),T=!1)}return(G,Z)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:N,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:G.isSelecting}]),onClick:Z[0]||(Z[0]=ee=>F.value?void 0:te(X,N.value)(ee)),onContextmenu:Z[1]||(Z[1]=ee=>te(D,N.value)(ee)),onWheelPassive:Z[2]||(Z[2]=ee=>te(K,N.value)(ee)),onPointerenter:Z[3]||(Z[3]=ee=>F.value?void 0:t.unref(i).paneMouseEnter(ee)),onPointerdown:Z[4]||(Z[4]=ee=>F.value?A(ee):t.unref(i).paneMouseMove(ee)),onPointermove:Z[5]||(Z[5]=ee=>F.value?P(ee):t.unref(i).paneMouseMove(ee)),onPointerup:Z[6]||(Z[6]=ee=>F.value?U(ee):void 0),onPointerleave:Z[7]||(Z[7]=ee=>t.unref(i).paneMouseLeave(ee))},[t.renderSlot(G.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(MI,{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(UI,{key:1})):t.createCommentVNode("",!0)],34))}}),qI={name:"Transform",compatConfig:{MODE:3}},zI=t.defineComponent({...qI,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Le(),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))}}),HI={name:"Viewport",compatConfig:{MODE:3}},YI=t.defineComponent({...HI,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:_,noWheelClassName:y,noPanClassName:g,emits:w,connectionStartHandle:b,userSelectionActive:S,paneDragging:E,d3Zoom:C,d3Selection:N,d3ZoomHandler:x,viewport:v,viewportRef:R,paneClickDistance:F}=Le();RI(R);const k=t.shallowRef(!1),Y=t.shallowRef(!1);let T=null,q=!1,j=0,te={x:0,y:0,zoom:0};const X=hr(s),D=hr(l),K=hr(a),A=t.toRef(()=>(!D.value||D.value&&l.value===!0)&&(X.value||u.value)),P=t.toRef(()=>X.value||c.value),U=t.toRef(()=>D.value||l.value===!0&&A.value!==!0);t.onMounted(()=>{if(!R.value){Mi("Viewport element is missing");return}const J=R.value,re=J.getBoundingClientRect(),le=yA().clickDistance(F.value).scaleExtent([n.value,o.value]).translateExtent(i.value),ue=Ft(J).call(le),fe=ue.on("wheel.zoom"),$=Ao.translate(r.value.x??0,r.value.y??0).scale(zn(r.value.zoom??1,n.value,o.value)),B=[[0,0],[re.width,re.height]],M=le.constrain()($,B,i.value);le.transform(ue,M),le.wheelDelta(Z),C.value=le,N.value=ue,x.value=fe,v.value={x:M.x,y:M.y,zoom:M.k},le.on("start",V=>{var Q;if(!V.sourceEvent)return null;j=V.sourceEvent.button,k.value=!0;const z=ie(V.transform);((Q=V.sourceEvent)==null?void 0:Q.type)==="mousedown"&&(E.value=!0),te=z,w.viewportChangeStart(z),w.moveStart({event:V,flowTransform:z})}),le.on("end",V=>{if(!V.sourceEvent)return null;if(k.value=!1,E.value=!1,G(A.value,j??0)&&!q&&w.paneContextMenu(V.sourceEvent),q=!1,ee(te,V.transform)){const Q=ie(V.transform);te=Q,w.viewportChangeEnd(Q),w.moveEnd({event:V,flowTransform:Q})}}),le.filter(V=>{var Q;const z=K.value||h.value,ae=m.value&&V.ctrlKey,I=V.button;if(I===1&&V.type==="mousedown"&&(he(V,"vue-flow__node")||he(V,"vue-flow__edge")))return!0;if(!A.value&&!z&&!P.value&&!p.value&&!m.value||S.value||!p.value&&V.type==="dblclick"||he(V,y.value)&&V.type==="wheel"||he(V,g.value)&&(V.type!=="wheel"||P.value&&V.type==="wheel"&&!K.value)||!m.value&&V.ctrlKey&&V.type==="wheel"||!z&&!P.value&&!ae&&V.type==="wheel")return!1;if(!m&&V.type==="touchstart"&&((Q=V.touches)==null?void 0:Q.length)>1)return V.preventDefault(),!1;if(!A.value&&(V.type==="mousedown"||V.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&I===0||Array.isArray(u.value)&&!u.value.includes(I)&&(V.type==="mousedown"||V.type==="touchstart"))return!1;const L=Array.isArray(u.value)&&u.value.includes(I)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!I||I<=1;return(!V.ctrlKey||X.value||V.type==="wheel")&&L}),t.watch([S,A],()=>{S.value&&!k.value?le.on("zoom",null):S.value||le.on("zoom",V=>{v.value={x:V.transform.x,y:V.transform.y,zoom:V.transform.k};const Q=ie(V.transform);q=G(A.value,j??0),w.viewportChange(Q),w.move({event:V,flowTransform:Q})})},{immediate:!0}),t.watch([S,P,d,K,m,_,y],()=>{P.value&&!K.value&&!S.value?ue.on("wheel.zoom",V=>{if(he(V,y.value))return!1;const Q=K.value||h.value,z=m.value&&V.ctrlKey;if(!(!_.value||P.value||Q||z))return!1;V.preventDefault(),V.stopImmediatePropagation();const I=ue.property("__zoom").k||1,L=Ri();if(!X.value&&V.ctrlKey&&m.value&&L){const ke=Ht(V),de=Z(V),Ne=I*2**de;le.scaleTo(ue,Ne,ke,V);return}const O=V.deltaMode===1?20:1;let oe=d.value===gr.Vertical?0:V.deltaX*O,ne=d.value===gr.Horizontal?0:V.deltaY*O;!L&&V.shiftKey&&d.value!==gr.Vertical&&!oe&&ne&&(oe=ne,ne=0),le.translateBy(ue,-(oe/I)*f.value,-(ne/I)*f.value);const be=ie(ue.property("__zoom"));T&&clearTimeout(T),Y.value?(w.move({event:V,flowTransform:be}),w.viewportChange(be),T=setTimeout(()=>{w.moveEnd({event:V,flowTransform:be}),w.viewportChangeEnd(be),Y.value=!1},150)):(Y.value=!0,w.moveStart({event:V,flowTransform:be}),w.viewportChangeStart(be))},{passive:!1}):typeof fe<"u"&&ue.on("wheel.zoom",function(V,Q){const z=!_.value&&V.type==="wheel"&&!V.ctrlKey,ae=K.value||h.value,I=m.value&&V.ctrlKey;if(!ae&&!c.value&&!I&&V.type==="wheel"||z||he(V,y.value))return null;V.preventDefault(),fe.call(this,V,Q)},{passive:!1})},{immediate:!0})});function G(J,re){return re===2&&Array.isArray(J)&&J.includes(2)}function Z(J){const re=J.ctrlKey&&Ri()?10:1;return-J.deltaY*(J.deltaMode===1?.05:J.deltaMode?1:.002)*re}function ee(J,re){return J.x!==re.x&&!Number.isNaN(re.x)||J.y!==re.y&&!Number.isNaN(re.y)||J.zoom!==re.k&&!Number.isNaN(re.k)}function ie(J){return{x:J.x,y:J.y,zoom:J.k}}function he(J,re){return J.target.closest(`.${re}`)}return(J,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:R,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(GI,{"is-selecting":U.value,"selection-key-pressed":t.unref(D),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(zI,null,{default:t.withCtx(()=>[t.renderSlot(J.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),WI=["id"],XI=["id"],ZI=["id"],JI={name:"A11yDescriptions",compatConfig:{MODE:3}},QI=t.defineComponent({...JI,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Le();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Kf)}-${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,WI),t.createElementVNode("div",{id:`${t.unref(jf)}-${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,XI),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(EA)}-${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,ZI))],64))}});function eT(){const e=Le();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function tT(e,n,o){return o===Ee.Left?e-n:o===Ee.Right?e+n:e}function nT(e,n,o){return o===Ee.Top?e-n:o===Ee.Bottom?e+n:e}const as=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=Ee.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:tT(n,e,r),cy:nT(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};as.props=["radius","centerX","centerY","position","type"],as.compatConfig={MODE:3};const Rp=as,oT=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:_,edgesUpdatable:y,edgesFocusable:g,hooks:w}=Le(),b=t.computed(()=>f(e.id)),{emit:S,on:E}=QA(b.value,a),C=t.inject(Li),N=t.getCurrentInstance(),x=t.ref(!1),v=t.ref(!1),R=t.ref(""),F=t.ref(null),k=t.ref("source"),Y=t.ref(null),T=t.toRef(()=>typeof b.value.selectable>"u"?_.value:b.value.selectable),q=t.toRef(()=>typeof b.value.updatable>"u"?y.value:b.value.updatable),j=t.toRef(()=>typeof b.value.focusable>"u"?g.value:b.value.focusable);t.provide(XA,e.id),t.provide(ZA,Y);const te=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),X=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),D=t.computed(()=>{const B=b.value.type||"default",M=C==null?void 0:C[`edge-${B}`];if(M)return M;let V=b.value.template??c.value[B];if(typeof V=="string"&&N){const Q=Object.keys(N.appContext.components);Q&&Q.includes(B)&&(V=t.resolveComponent(B,!1))}return V&&typeof V!="string"?V:(a.error(new lt(et.EDGE_TYPE_MISSING,V)),!1)}),{handlePointerDown:K}=Ep({nodeId:R,handleId:F,type:k,isValidConnection:p,edgeUpdaterType:k,onEdgeUpdate:U,onEdgeUpdateEnd:G});return()=>{const B=u(b.value.source),M=u(b.value.target),V="pathOptions"in b.value?b.value.pathOptions:{};if(!B&&!M)return a.error(new lt(et.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!B)return a.error(new lt(et.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!M)return a.error(new lt(et.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||B.hidden||M.hidden)return null;let Q;r.value===wn.Strict?Q=B.handleBounds.source:Q=[...B.handleBounds.source||[],...B.handleBounds.target||[]];const z=dp(Q,b.value.sourceHandle);let ae;r.value===wn.Strict?ae=M.handleBounds.target:ae=[...M.handleBounds.target||[],...M.handleBounds.source||[]];const I=dp(ae,b.value.targetHandle),L=(z==null?void 0:z.position)||Ee.Bottom,O=(I==null?void 0:I.position)||Ee.Top,{x:oe,y:ne}=To(B,z,L),{x:be,y:ke}=To(M,I,O);return b.value.sourceX=oe,b.value.sourceY=ne,b.value.targetX=be,b.value.targetY=ke,t.h("g",{ref:Y,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${D.value===!1?"default":b.value.type||"default"}`,s.value,te.value,{updating:x.value,selected:b.value.selected,animated:b.value.animated,inactive:!T.value&&!w.value.edgeClick.hasListeners()}],tabIndex:j.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":j.value?`${jf}-${n}`:void 0,"aria-roledescription":"edge",role:j.value?"group":"img",...b.value.domAttributes,onClick:ee,onContextmenu:ie,onDblclick:he,onMouseenter:J,onMousemove:re,onMouseleave:le,onKeyDown:j.value?$:void 0},[v.value?null:t.h(D.value===!1?c.value.default:D.value,{id:e.id,sourceNode:B,targetNode:M,source:b.value.source,target:b.value.target,type:b.value.type,updatable:q.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:X.value,markerStart:`url('#${br(b.value.markerStart,n)}')`,markerEnd:`url('#${br(b.value.markerEnd,n)}')`,sourcePosition:L,targetPosition:O,sourceX:oe,sourceY:ne,targetX:be,targetY:ke,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...V}),[q.value==="source"||q.value===!0?[t.h("g",{onMousedown:ue,onMouseenter:A,onMouseout:P},t.h(Rp,{position:L,centerX:oe,centerY:ne,radius:i.value,type:"source","data-type":"source"}))]:null,q.value==="target"||q.value===!0?[t.h("g",{onMousedown:fe,onMouseenter:A,onMouseout:P},t.h(Rp,{position:O,centerX:be,centerY:ke,radius:i.value,type:"target","data-type":"target"}))]:null]])};function A(){x.value=!0}function P(){x.value=!1}function U(B,M){S.update({event:B,edge:b.value,connection:M})}function G(B){S.updateEnd({event:B,edge:b.value}),v.value=!1}function Z(B,M){B.button===0&&(v.value=!0,R.value=M?b.value.target:b.value.source,F.value=(M?b.value.targetHandle:b.value.sourceHandle)??null,k.value=M?"target":"source",S.updateStart({event:B,edge:b.value}),K(B))}function ee(B){var M;const V={event:B,edge:b.value};T.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(M=Y.value)==null||M.blur()):o([b.value])),S.click(V)}function ie(B){S.contextMenu({event:B,edge:b.value})}function he(B){S.doubleClick({event:B,edge:b.value})}function J(B){S.mouseEnter({event:B,edge:b.value})}function re(B){S.mouseMove({event:B,edge:b.value})}function le(B){S.mouseLeave({event:B,edge:b.value})}function ue(B){Z(B,!0)}function fe(B){Z(B,!1)}function $(B){var M;!h.value&&Gf.includes(B.key)&&T.value&&(B.key==="Escape"?((M=Y.value)==null||M.blur(),d([f(e.id)])):o([f(e.id)]))}}}),rT=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}=Le(),p=(e=t.inject(Li))==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}),_=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),y=t.computed(()=>c.value.markerStart?`url(#${br(c.value.markerStart,n)})`:""),g=t.computed(()=>c.value.markerEnd?`url(#${br(c.value.markerEnd,n)})`:"");return()=>{var w,b,S;if(!m.value||!r.value)return null;const E=r.value.id,C=r.value.type,N=m.value.handleBounds;let x=(N==null?void 0:N[C])??[];if(o.value===wn.Loose){const X=(N==null?void 0:N[C==="source"?"target":"source"])??[];x=[...x,...X]}if(!x)return null;const v=(E?x.find(X=>X.id===E):x[0])??null,R=(v==null?void 0:v.position)??Ee.Top,{x:F,y:k}=To(m.value,v,R);let Y=null;h.value&&(o.value===wn.Strict?Y=((w=h.value.handleBounds[C==="source"?"target":"source"])==null?void 0:w.find(X=>{var D;return X.id===((D=i.value)==null?void 0:D.id)}))||null:Y=((b=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:b.find(X=>{var D;return X.id===((D=i.value)==null?void 0:D.id)}))||null);const T=((S=i.value)==null?void 0:S.position)??(R?Ql[R]:null);if(!R||!T)return null;const q=l.value??c.value.type??qn.Bezier;let j="";const te={sourceX:F,sourceY:k,sourcePosition:R,targetX:_.value.x,targetY:_.value.y,targetPosition:T};return q===qn.Bezier?[j]=Tp(te):q===qn.Step?[j]=is({...te,borderRadius:0}):q===qn.SmoothStep?[j]=is(te):q===qn.SimpleBezier?[j]=Op(te):j=`M${F},${k} ${_.value.x},${_.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:F,sourceY:k,sourcePosition:R,targetX:_.value.x,targetY:_.value.y,targetPosition:T,sourceNode:m.value,sourceHandle:v,targetNode:h.value,targetHandle:Y,markerEnd:g.value,markerStart:y.value,connectionStatus:d.value}):t.h("path",{d:j,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":g.value,"marker-start":y.value})))}}}),iT=["id","markerWidth","markerHeight","markerUnits","orient"],aT={name:"MarkerType",compatConfig:{MODE:3}},lT=t.defineComponent({...aT,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(mr).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(mr).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,iT))}}),sT={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},cT={name:"MarkerDefinitions",compatConfig:{MODE:3}},dT=t.defineComponent({...cT,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Le(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=br(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",sT,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(lT,{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))])]))}}),uT={name:"Edges",compatConfig:{MODE:3}},fT=t.defineComponent({...uT,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Le();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(dT),(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(DA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(oT),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(rT))],64))}}),pT=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:_,snapToGrid:y,snapGrid:g,nodeDragThreshold:w,nodesDraggable:b,elementsSelectable:S,nodesConnectable:E,nodesFocusable:C,hooks:N}=Le(),x=t.ref(null);t.provide(kp,x),t.provide(wp,e.id);const v=t.inject(Li),R=t.getCurrentInstance(),F=xp(),{node:k,parentNode:Y}=Np(e.id),{emit:T,on:q}=oI(k,l),j=t.toRef(()=>typeof k.draggable>"u"?b.value:k.draggable),te=t.toRef(()=>typeof k.selectable>"u"?S.value:k.selectable),X=t.toRef(()=>typeof k.connectable>"u"?E.value:k.connectable),D=t.toRef(()=>typeof k.focusable>"u"?C.value:k.focusable),K=t.computed(()=>te.value||j.value||N.value.nodeClick.hasListeners()||N.value.nodeDoubleClick.hasListeners()||N.value.nodeMouseEnter.hasListeners()||N.value.nodeMouseMove.hasListeners()||N.value.nodeMouseLeave.hasListeners()),A=t.toRef(()=>!!k.dimensions.width&&!!k.dimensions.height),P=t.computed(()=>{const M=k.type||"default",V=v==null?void 0:v[`node-${M}`];if(V)return V;let Q=k.template||u.value[M];if(typeof Q=="string"&&R){const z=Object.keys(R.appContext.components);z&&z.includes(M)&&(Q=t.resolveComponent(M,!1))}return Q&&typeof Q!="string"?Q:(l.error(new lt(et.NODE_TYPE_MISSING,Q)),!1)}),U=Cp({id:e.id,el:x,disabled:()=>!j.value,selectable:te,dragHandle:()=>k.dragHandle,onStart(M){T.dragStart(M)},onDrag(M){T.drag(M)},onStop(M){T.dragStop(M)},onClick(M){$(M)}}),G=t.computed(()=>k.class instanceof Function?k.class(k):k.class),Z=t.computed(()=>{const M=(k.style instanceof Function?k.style(k):k.style)||{},V=k.width instanceof Function?k.width(k):k.width,Q=k.height instanceof Function?k.height(k):k.height;return!M.width&&V&&(M.width=typeof V=="string"?V:`${V}px`),!M.height&&Q&&(M.height=typeof Q=="string"?Q:`${Q}px`),M}),ee=t.toRef(()=>Number(k.zIndex??Z.value.zIndex??0));return f(M=>{(M.includes(e.id)||!M.length)&&he()}),t.onMounted(()=>{t.watch(()=>k.hidden,(M=!1,V,Q)=>{!M&&x.value&&(e.resizeObserver.observe(x.value),Q(()=>{x.value&&e.resizeObserver.unobserve(x.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>k.type,()=>k.sourcePosition,()=>k.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:x.value,forceUpdate:!0}])})}),t.watch([()=>k.position.x,()=>k.position.y,()=>{var M;return(M=Y.value)==null?void 0:M.computedPosition.x},()=>{var M;return(M=Y.value)==null?void 0:M.computedPosition.y},()=>{var M;return(M=Y.value)==null?void 0:M.computedPosition.z},ee,()=>k.selected,()=>k.dimensions.height,()=>k.dimensions.width,()=>{var M;return(M=Y.value)==null?void 0:M.dimensions.height},()=>{var M;return(M=Y.value)==null?void 0:M.dimensions.width}],([M,V,Q,z,ae,I])=>{const L={x:M,y:V,z:I+(m.value&&k.selected?1e3:0)};typeof Q<"u"&&typeof z<"u"?k.computedPosition=PA({x:Q,y:z,z:ae},L):k.computedPosition=L},{flush:"post",immediate:!0}),t.watch([()=>k.extent,p],([M,V],[Q,z])=>{(M!==Q||V!==z)&&ie()}),k.extent==="parent"||typeof k.extent=="object"&&"range"in k.extent&&k.extent.range==="parent"?Nl(()=>A).toBe(!0).then(ie):ie(),()=>k.hidden?null:t.h("div",{ref:x,"data-id":k.id,class:["vue-flow__node",`vue-flow__node-${P.value===!1?"default":k.type||"default"}`,{[o.value]:j.value,dragging:U==null?void 0:U.value,draggable:j.value,selected:k.selected,selectable:te.value,parent:k.isParent},G.value],style:{visibility:A.value?"visible":"hidden",zIndex:k.computedPosition.z??ee.value,transform:`translate(${k.computedPosition.x}px,${k.computedPosition.y}px)`,pointerEvents:K.value?"all":"none",...Z.value},tabIndex:D.value?0:void 0,role:D.value?"group":void 0,"aria-describedby":h.value?void 0:`${Kf}-${n}`,"aria-label":k.ariaLabel,"aria-roledescription":"node",...k.domAttributes,onMouseenter:J,onMousemove:re,onMouseleave:le,onContextmenu:ue,onClick:$,onDblclick:fe,onKeydown:B},[t.h(P.value===!1?u.value.default:P.value,{id:k.id,type:k.type,data:k.data,events:{...k.events,...q},selected:k.selected,resizing:k.resizing,dragging:U.value,connectable:X.value,position:k.computedPosition,dimensions:k.dimensions,isValidTargetPos:k.isValidTargetPos,isValidSourcePos:k.isValidSourcePos,parent:k.parentNode,parentNodeId:k.parentNode,zIndex:k.computedPosition.z??ee.value,targetPosition:k.targetPosition,sourcePosition:k.sourcePosition,label:k.label,dragHandle:k.dragHandle,onUpdateNodeInternals:he})]);function ie(){const M=k.computedPosition,{computedPosition:V,position:Q}=Xl(k,y.value?Di(M,g.value):M,l.error,p.value,Y.value);(k.computedPosition.x!==V.x||k.computedPosition.y!==V.y)&&(k.computedPosition={...k.computedPosition,...V}),(k.position.x!==Q.x||k.position.y!==Q.y)&&(k.position=Q)}function he(){x.value&&d([{id:e.id,nodeElement:x.value,forceUpdate:!0}])}function J(M){U!=null&&U.value||T.mouseEnter({event:M,node:k})}function re(M){U!=null&&U.value||T.mouseMove({event:M,node:k})}function le(M){U!=null&&U.value||T.mouseLeave({event:M,node:k})}function ue(M){return T.contextMenu({event:M,node:k})}function fe(M){return T.doubleClick({event:M,node:k})}function $(M){te.value&&(!r.value||!j.value||w.value>0)&&es(k,a.value,c,s,i,!1,x.value),T.click({event:M,node:k})}function B(M){if(!(zl(M)||h.value))if(Gf.includes(M.key)&&te.value){const V=M.key==="Escape";es(k,a.value,c,s,i,V,x.value)}else j.value&&k.selected&&Io[M.key]&&(M.preventDefault(),_.value=`Moved selected node ${M.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~k.position.x}, y: ${~~k.position.y}`,F({x:Io[M.key].x,y:Io[M.key].y},M.shiftKey))}}});function mT(e={includeHiddenNodes:!1}){const{nodes:n}=Le();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 gT={class:"vue-flow__nodes vue-flow__container"},hT={name:"Nodes",compatConfig:{MODE:3}},yT=t.defineComponent({...hT,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Le(),i=mT(),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",gT,[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(pT),{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 _T(){const{emits:e}=Le();t.onMounted(()=>{if(mp()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new lt(et.MISSING_STYLES))}})}const bT=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),wT={name:"VueFlow",compatConfig:{MODE:3}},Dp=t.defineComponent({...wT,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=xl(r,"modelValue",o),l=xl(r,"nodes",o),s=xl(r,"edges",o),c=Le(r),d=lI({modelValue:a,nodes:l,edges:s},r,c);return cI(o,c.hooks),eT(),_T(),t.provide(Li,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(YI,null,{default:t.withCtx(()=>[t.createVNode(fT),bT,t.createVNode(yT),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(QI)],512))}}),kT={name:"Panel",compatConfig:{MODE:3}},CT=t.defineComponent({...kT,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Le(),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 fn=(e=>(e.Lines="lines",e.Dots="dots",e))(fn||{});const Mp=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]}`})},Lp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};fn.Lines+"",fn.Dots+"";const ET={[fn.Dots]:"#81818a",[fn.Lines]:"#eee"},NT=["id","x","y","width","height","patternTransform"],xT={key:2,height:"100",width:"100"},ST=["fill"],vT=["x","y","fill"],AT={name:"Background",compatConfig:{MODE:3}},IT=t.defineComponent({...AT,props:{id:{},variant:{default:()=>fn.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}=Le(),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||ET[e.variant||fn.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(fn).Lines?(t.openBlock(),t.createBlock(t.unref(Mp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(fn).Dots?(t.openBlock(),t.createBlock(t.unref(Lp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",xT,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,ST)])):t.createCommentVNode("",!0)])],8,NT)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,vT),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),TT={name:"ControlButton",compatConfig:{MODE:3}},PT=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},OT={class:"vue-flow__controls-button"};function $T(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",OT,[t.renderSlot(e.$slots,"default")])}const wr=PT(TT,[["render",$T]]),BT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},VT=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function RT(e,n){return t.openBlock(),t.createElementBlock("svg",BT,VT)}const DT={render:RT},MT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},LT=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function FT(e,n){return t.openBlock(),t.createElementBlock("svg",MT,LT)}const UT={render:FT},KT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},jT=[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 GT(e,n){return t.openBlock(),t.createElementBlock("svg",KT,jT)}const qT={render:GT},zT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},HT=[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 YT(e,n){return t.openBlock(),t.createElementBlock("svg",zT,HT)}const WT={render:YT},XT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},ZT=[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 JT(e,n){return t.openBlock(),t.createElementBlock("svg",XT,ZT)}const QT={render:JT},eP={name:"Controls",compatConfig:{MODE:3}},tP=t.defineComponent({...eP,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Ff.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}=Le(),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 _(){l(),n("zoomIn")}function y(){s(),n("zoomOut")}function g(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(b,S)=>(t.openBlock(),t.createBlock(t.unref(CT),{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(wr,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(DT))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(wr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(UT))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(wr,{class:"vue-flow__controls-fitview",onClick:g},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(qT))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(wr,{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(QT))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(WT))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),nP=["undo","redo","duplicate","cut","copy","paste"],Fp=()=>{};function oP(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function rP(e){if(!(e.metaKey||e.ctrlKey))return;switch(e.key.toLowerCase()){case"z":return e.shiftKey?"redo":"undo";case"y":return"redo";case"d":return"duplicate";case"x":return"cut";case"c":return"copy";case"v":return"paste"}}const iP=qe.createSharedComposable(()=>{const e=new Set;qe.useEventListener("keydown",o=>{if(oP(o.target))return;const r=rP(o);if(r)for(const i of e){if(!t.toValue(i.enabled))continue;const a=i[r];if(a){if(o.defaultPrevented){t.warn(`[useHotkeys] event for "${r}" was already defaultPrevented. Hotkey ignored.`);return}o.preventDefault(),a();return}}},{passive:!1});function n(o){if(!nP.some(i=>typeof o[i]=="function"))return Fp;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function Up(e={}){if(typeof window>"u")return Fp;const n=iP().subscribe(e);return t.onScopeDispose(n),n}const Kp=44,aP=220,jp=366,lP=1e3,sP=Kp+parseFloat(kd),zi=1,cP=0,dP=1,uP=2,fP=3,Po=parseInt(yC,10),kr="application/x-datakit+json",Hi={delete:["Delete"],undo:["Mod","Z"],redo:{mac:["Mod","Shift","Z"],windows:["Mod","Y"],linux:["Mod","Shift","Z"]},copy:["Mod","C"],paste:["Mod","V"],duplicate:["Mod","D"]},Cr={padding:80,gaps:{nodes:40,edges:80,ranks:40}},pP=1600,mP=1.2,gP=0,hP=200,Gp=Symbol("confirm-modal"),Oo="{key}",Wn={"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(Wn).filter(e=>e.includes(Oo)).map(e=>e.replace(Oo,""));function ls(e){if(!e||!Nr(e))return;const n=Yi.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Oo,"")}function Er(e){if(!e)return null;const n=Yi.find(o=>e.startsWith(o));return n||e}function Nr(e){return e?Yi.some(n=>e.startsWith(n)):!1}function qp(e){return e?Nr(e)?Er(e)+Oo:e:null}function ss(e){var o;if(!e)return!1;const n=qp(e);return n?((o=Wn[n])==null?void 0:o.readable)??!1:!1}function cs(e){var o;if(!e)return!1;const n=qp(e);return n?((o=Wn[n])==null?void 0:o.writable)??!1:!1}function yP(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var _P="\0",Xn="\0",zp="";let bP=class{constructor(n){rt(this,"_isDirected",!0);rt(this,"_isMultigraph",!1);rt(this,"_isCompound",!1);rt(this,"_label");rt(this,"_defaultNodeLabelFn",()=>{});rt(this,"_defaultEdgeLabelFn",()=>{});rt(this,"_nodes",{});rt(this,"_in",{});rt(this,"_preds",{});rt(this,"_out",{});rt(this,"_sucs",{});rt(this,"_edgeObjs",{});rt(this,"_edgeLabels",{});rt(this,"_nodeCount",0);rt(this,"_edgeCount",0);rt(this,"_parent");rt(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[Xn]={})}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]=Xn,this._children[n]={},this._children[Xn][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=Xn;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!==Xn)return o}}children(n=Xn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===Xn)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=xr(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=wP(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Hp(this._preds[o],n),Hp(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?ds(this._isDirected,arguments[0]):xr(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?ds(this._isDirected,arguments[0]):xr(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?ds(this._isDirected,arguments[0]):xr(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],Yp(this._preds[o],n),Yp(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 Hp(e,n){e[n]?e[n]++:e[n]=1}function Yp(e,n){--e[n]||delete e[n]}function xr(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+zp+a+zp+(r===void 0?_P:r)}function wP(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 ds(e,n){return xr(e,n.v,n.w,n.name)}var us=bP,kP="2.2.4",CP={Graph:us,version:kP},EP=us,NP={write:xP,read:AP};function xP(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:SP(e),edges:vP(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function SP(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 vP(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 AP(e){var n=new EP(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 IP=TP;function TP(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 Wp=class{constructor(){rt(this,"_arr",[]);rt(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}},PP=Wp,Xp=$P,OP=()=>1;function $P(e,n,o,r){return BP(e,String(n),o||OP,r||function(i){return e.outEdges(i)})}function BP(e,n,o,r){var i={},a=new PP,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 VP=Xp,RP=DP;function DP(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=VP(e,i,n,o),r},{})}var Zp=MP;function MP(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 LP=Zp,FP=UP;function UP(e){return LP(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var KP=GP,jP=()=>1;function GP(e,n,o){return qP(e,n||jP,o||function(r){return e.outEdges(r)})}function qP(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 Jp(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new fs;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 fs;return r}class fs extends Error{constructor(){super(...arguments)}}var Qp=Jp;Jp.CycleException=fs;var em=Qp,zP=HP;function HP(e){try{em(e)}catch(n){if(n instanceof em.CycleException)return!1;throw n}return!0}var tm=YP;function YP(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?WP:XP,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 WP(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]),nm(n(a[0]),l=>i.push([l,!1])))}}function XP(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),nm(n(a),l=>i.push(l)))}}function nm(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var ZP=tm,JP=QP;function QP(e,n){return ZP(e,n,"post")}var eO=tm,tO=nO;function nO(e,n){return eO(e,n,"pre")}var oO=us,rO=Wp,iO=aO;function aO(e,n){var o=new oO,r={},i=new rO,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 lO={components:IP,dijkstra:Xp,dijkstraAll:RP,findCycles:FP,floydWarshall:KP,isAcyclic:zP,postorder:JP,preorder:tO,prim:iO,tarjan:Zp,topsort:Qp},om=CP,jt={Graph:om.Graph,json:NP,alg:lO,version:om.version};let sO=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return rm(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&rm(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,cO)),r=r._prev;return"["+n.join(", ")+"]"}};function rm(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function cO(e,n){if(e!=="_next"&&e!=="_prev")return n}var dO=sO;let uO=jt.Graph,fO=dO;var pO=gO;let mO=()=>1;function gO(e,n){if(e.nodeCount()<=1)return[];let o=yO(e,n||mO);return hO(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function hO(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)ps(e,n,o,l);for(;l=i.dequeue();)ps(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(ps(e,n,o,l,!0));break}}}return r}function ps(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,ms(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,ms(n,o,d)}),e.removeNode(r.v),a}function yO(e,n){let o=new uO,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=_O(i+r+3).map(()=>new fO),l=r+1;return o.nodes().forEach(s=>{ms(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function ms(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 _O(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let im=jt.Graph;var nt={addBorderNode:vO,addDummyNode:am,applyWithChunking:Wi,asNonCompoundGraph:wO,buildLayerMatrix:NO,intersectRect:EO,mapValues:BO,maxRank:sm,normalizeRanks:xO,notime:PO,partition:IO,pick:$O,predecessorWeights:CO,range:dm,removeEmptyRanks:SO,simplify:bO,successorWeights:kO,time:TO,uniqueId:cm,zipObject:gs};function am(e,n,o,r){for(var i=r;e.hasNode(i);)i=cm(r);return o.dummy=n,e.setNode(i,o),i}function bO(e){let n=new im().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 wO(e){let n=new im({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 kO(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 gs(e.nodes(),n)}function CO(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 gs(e.nodes(),n)}function EO(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 NO(e){let n=dm(sm(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 xO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=Wi(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function SO(e){let n=e.nodes().map(l=>e.node(l).rank),o=Wi(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 vO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),am(e,"border",i,n)}function AO(e,n=lm){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const lm=65535;function Wi(e,n){if(n.length>lm){const o=AO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function sm(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return Wi(Math.max,o)}function IO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function TO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function PO(e,n){return n()}let OO=0;function cm(e){var n=++OO;return e+(""+n)}function dm(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 $O(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function BO(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 gs(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let VO=pO,RO=nt.uniqueId;var DO={run:MO,undo:FO};function MO(e){(e.graph().acyclicer==="greedy"?VO(e,o(e)):LO(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,RO("rev"))});function o(r){return i=>r.edge(i).weight}}function LO(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 FO(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 UO=nt;var KO={run:jO,undo:qO};function jO(e){e.graph().dummyChains=[],e.edges().forEach(n=>GO(e,n))}function GO(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=UO.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 qO(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:zO}=nt;var Xi={longestPath:HO,slack:YO};function HO(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=zO(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function YO(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var WO=jt.Graph,Zi=Xi.slack,um=XO;function XO(e){var n=new WO({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;ZO(n,e)<r;)i=JO(n,e),a=n.hasNode(i.v)?Zi(e,i):-Zi(e,i),QO(n,e,a);return n}function ZO(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!Zi(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function JO(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=Zi(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function QO(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var e$=um,fm=Xi.slack,t$=Xi.longestPath,n$=jt.alg.preorder,o$=jt.alg.postorder,r$=nt.simplify,i$=Zn;Zn.initLowLimValues=ys,Zn.initCutValues=hs,Zn.calcCutValue=pm,Zn.leaveEdge=gm,Zn.enterEdge=hm,Zn.exchangeEdges=ym;function Zn(e){e=r$(e),t$(e);var n=e$(e);ys(n),hs(n,e);for(var o,r;o=gm(n);)r=hm(n,e,o),ym(n,e,o,r)}function hs(e,n){var o=o$(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>a$(e,n,r))}function a$(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=pm(e,n,o)}function pm(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,s$(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function ys(e,n){arguments.length<2&&(n=e.nodes()[0]),mm(e,{},1,n)}function mm(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=mm(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function gm(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function hm(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===_m(e,e.node(f.v),s)&&c!==_m(e,e.node(f.w),s));return d.reduce((f,u)=>fm(n,u)<fm(n,f)?u:f)}function ym(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),ys(e),hs(e,n),l$(e,n)}function l$(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=n$(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 s$(e,n,o){return e.hasEdge(n,o)}function _m(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var c$=Xi,bm=c$.longestPath,d$=um,u$=i$,f$=p$;function p$(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":wm(e);break;case"tight-tree":g$(e);break;case"longest-path":m$(e);break;case"none":break;default:wm(e)}}var m$=bm;function g$(e){bm(e),d$(e)}function wm(e){u$(e)}var h$=y$;function y$(e){let n=b$(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=_$(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 _$(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 b$(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 Ji=nt;var w$={run:k$,cleanup:N$};function k$(e){let n=Ji.addDummyNode(e,"root",{},"_root"),o=C$(e),r=Object.values(o),i=Ji.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=E$(e)+1;e.children().forEach(s=>km(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function km(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=Ji.addBorderNode(e,"_bt"),d=Ji.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{km(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,_=p.borderTop?r:2*r,y=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:_,minlen:y,nestingEdge:!0}),e.setEdge(h,d,{weight:_,minlen:y,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function C$(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 E$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function N$(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 x$=nt;var S$=v$;function v$(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)Cm(e,"borderLeft","_bl",o,i,a),Cm(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function Cm(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=x$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var A$={adjust:I$,undo:T$};function I$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&Em(e)}function T$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&P$(e),(n==="lr"||n==="rl")&&(O$(e),Em(e))}function Em(e){e.nodes().forEach(n=>Nm(e.node(n))),e.edges().forEach(n=>Nm(e.edge(n)))}function Nm(e){let n=e.width;e.width=e.height,e.height=n}function P$(e){e.nodes().forEach(n=>_s(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(_s),Object.hasOwn(o,"y")&&_s(o)})}function _s(e){e.y=-e.y}function O$(e){e.nodes().forEach(n=>bs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(bs),Object.hasOwn(o,"x")&&bs(o)})}function bs(e){let n=e.x;e.x=e.y,e.y=n}let xm=nt;var $$=B$;function B$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=xm.applyWithChunking(Math.max,r),a=xm.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 V$=nt.zipObject;var R$=D$;function D$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=M$(e,n[r-1],n[r]);return o}function M$(e,n,o){let r=V$(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 L$=F$;function F$(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 U$=nt;var K$=j$;function j$(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 G$(r)}function G$(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&q$(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=>U$.pick(i,["vs","i","barycenter","weight"]))}function q$(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 z$=nt;var H$=Y$;function Y$(e,n){let o=z$.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(W$(!!n)),c=Sm(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Sm(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Sm(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 W$(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let X$=L$,Z$=K$,J$=H$;var Q$=vm;function vm(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=X$(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=vm(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&tB(p,m)}});let f=Z$(d,o);eB(f,c);let u=J$(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 eB(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function tB(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 nB=jt.Graph,oB=nt;var rB=iB;function iB(e,n,o){let r=aB(e),i=new nB({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 aB(e){for(var n;e.hasNode(n=oB.uniqueId("_root")););return n}var lB=sB;function sB(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 cB=$$,dB=R$,uB=Q$,fB=rB,pB=lB,mB=jt.Graph,Qi=nt;var gB=Am;function Am(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,Am);return}let o=Qi.maxRank(e),r=Im(e,Qi.range(1,o+1),"inEdges"),i=Im(e,Qi.range(o-1,-1,-1),"outEdges"),a=cB(e);if(Tm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){hB(c%2?r:i,c%4>=2),a=Qi.buildLayerMatrix(e);let f=dB(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Tm(e,s)}function Im(e,n,o){return n.map(function(r){return fB(e,r,o)})}function hB(e,n){let o=new mB;e.forEach(function(r){let i=r.graph().root,a=uB(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),pB(r,o,a.vs)})}function Tm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let yB=jt.Graph,pn=nt;var _B={positionX:IB};function bB(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=kB(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(_=>{let y=e.node(_),g=y.order;(g<l||m<g)&&!(y.dummy&&e.node(h).dummy)&&Pm(o,_,h)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function wB(e,n){let o={};function r(a,l,s,c,d){let f;pn.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)&&Pm(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 kB(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function Pm(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 CB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function EB(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]&&!CB(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function NB(e,n,o,r,i){let a={},l=xB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),_={};for(;h;)_[h]?u(h):(_[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,_)=>Math.min(h,a[_.w]-l.edge(_)),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 xB(e,n,o,r){let i=new yB,a=e.graph(),l=TB(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 SB(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=PB(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 vB(e,n){let o=Object.values(n),r=pn.applyWithChunking(Math.min,o),i=pn.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-pn.applyWithChunking(Math.min,d);l!=="l"&&(f=i-pn.applyWithChunking(Math.max,d)),f&&(e[s]=pn.mapValues(c,u=>u+f))})})}function AB(e,n){return pn.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 IB(e){let n=pn.buildLayerMatrix(e),o=Object.assign(bB(e,n),wB(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=EB(e,i,o,c),f=NB(e,i,d.root,d.align,s==="r");s==="r"&&(f=pn.mapValues(f,u=>-u)),r[l+s]=f})});let a=SB(e,r);return vB(r,a),AB(r,e.graph().align)}function TB(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 PB(e,n){return e.node(n).width}let Om=nt,OB=_B.positionX;var $B=BB;function BB(e){e=Om.asNonCompoundGraph(e),VB(e),Object.entries(OB(e)).forEach(([n,o])=>e.node(n).x=o)}function VB(e){let n=Om.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 $m=DO,Bm=KO,RB=f$,DB=nt.normalizeRanks,MB=h$,LB=nt.removeEmptyRanks,Vm=w$,FB=S$,Rm=A$,UB=gB,KB=$B,Rt=nt,jB=jt.Graph;var GB=qB;function qB(e,n){let o=n&&n.debugTiming?Rt.time:Rt.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>tV(e));o(" runLayout",()=>zB(r,o,n)),o(" updateInputGraph",()=>HB(e,r))})}function zB(e,n,o){n(" makeSpaceForEdgeLabels",()=>nV(e)),n(" removeSelfEdges",()=>uV(e)),n(" acyclic",()=>$m.run(e)),n(" nestingGraph.run",()=>Vm.run(e)),n(" rank",()=>RB(Rt.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>oV(e)),n(" removeEmptyRanks",()=>LB(e)),n(" nestingGraph.cleanup",()=>Vm.cleanup(e)),n(" normalizeRanks",()=>DB(e)),n(" assignRankMinMax",()=>rV(e)),n(" removeEdgeLabelProxies",()=>iV(e)),n(" normalize.run",()=>Bm.run(e)),n(" parentDummyChains",()=>MB(e)),n(" addBorderSegments",()=>FB(e)),n(" order",()=>UB(e,o)),n(" insertSelfEdges",()=>fV(e)),n(" adjustCoordinateSystem",()=>Rm.adjust(e)),n(" position",()=>KB(e)),n(" positionSelfEdges",()=>pV(e)),n(" removeBorderNodes",()=>dV(e)),n(" normalize.undo",()=>Bm.undo(e)),n(" fixupEdgeLabelCoords",()=>sV(e)),n(" undoCoordinateSystem",()=>Rm.undo(e)),n(" translateGraph",()=>aV(e)),n(" assignNodeIntersects",()=>lV(e)),n(" reversePoints",()=>cV(e)),n(" acyclic.undo",()=>$m.undo(e))}function HB(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 YB=["nodesep","edgesep","ranksep","marginx","marginy"],WB={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},XB=["acyclicer","ranker","rankdir","align"],ZB=["width","height","rank"],Dm={width:0,height:0},JB=["minlen","weight","width","height","labeloffset"],QB={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},eV=["labelpos"];function tV(e){let n=new jB({multigraph:!0,compound:!0}),o=ks(e.graph());return n.setGraph(Object.assign({},WB,ws(o,YB),Rt.pick(o,XB))),e.nodes().forEach(r=>{let i=ks(e.node(r));const a=ws(i,ZB);Object.keys(Dm).forEach(l=>{a[l]===void 0&&(a[l]=Dm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=ks(e.edge(r));n.setEdge(r,Object.assign({},QB,ws(i,JB),Rt.pick(i,eV)))}),n}function nV(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 oV(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};Rt.addDummyNode(e,"edge-proxy",a,"_ep")}})}function rV(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 iV(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 aV(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 lV(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(Rt.intersectRect(r,a)),o.points.push(Rt.intersectRect(i,l))})}function sV(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 cV(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function dV(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 uV(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 fV(e){var n=Rt.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=>{Rt.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 pV(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 ws(e,n){return Rt.mapValues(Rt.pick(e,n),Number)}function ks(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let mV=nt,gV=jt.Graph;var hV={debugOrdering:yV};function yV(e){let n=mV.buildLayerMatrix(e),o=new gV({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 _V="1.1.5",bV={graphlib:jt,layout:GB,debug:hV,util:{time:nt.time,notime:nt.notime},version:_V};const Mm=yP(bV);function Lm(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(nd,e);return o=>n(o)}function ea(e,n,o){const r=n?bn(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Sr(e,n){const o=n(e.source),r=n(e.target);return[ea(o,e.sourceField,"output"),ea(r,e.targetField,"input")]}function Cs(e,n,o,r,i){const a=i(e),l=i(o);return[ea(a,n,"output"),ea(l,r,"input")]}function Fm(e){if(e.length===0)throw new Error("getBoundingRect requires at least one rect");let n=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;for(const{x:a,y:l,width:s,height:c}of e){if(![a,l,s,c].every(Number.isFinite))throw new Error("Rect values must be finite numbers");if(s<0||c<0)throw new RangeError("Rect width and height must be non-negative");const d=a+s,f=l+c;if(!Number.isFinite(d)||!Number.isFinite(f))throw new RangeError("Rect boundaries must be finite numbers");a<n&&(n=a),l<o&&(o=l),d>r&&(r=d),f>i&&(i=f)}return{x:n,y:o,width:r-n,height:i-o}}function wV({phase:e,readonly:n,flowId:o}){const{findNode:r}=Le(o),i=at(),{state:a,groupMapById:l,getNodeById:s,moveNode:c,moveGroup:d,setGroupLayout:f,commit:u,branchGroups:p}=i,{memberGroupMap:m,groupsByOwner:h,getNodeDepth:_,getGroupDepth:y}=p,g=t.ref(),w=D=>!!D&&D.startsWith("branch:");function b(D){const K=[];for(const A of D.memberIds){const P=s(A);P&&K.push(P)}return K}const S=t.computed(()=>{const D=new Map;return m.value.forEach((K,A)=>{if(K.phase!==e||!K.position)return;const P=s(A);P&&(P.phase!==e||P.hidden||D.set(A,K))}),D}),E=t.computed(()=>{const D=new Map;return h.value.forEach((K,A)=>{const P=K.filter(U=>U.phase===e);P.length>0&&D.set(A,P)}),D}),C=t.computed(()=>{const D=[];for(const K of a.value.groups){const A=s(K.ownerId);if(!A||A.phase!==e)continue;const P=K.position,U=K.dimensions;if(!P||!U)continue;const G=b(K).filter(ee=>ee.phase===e&&!ee.hidden),Z=y(K.id);D.push({id:K.id,type:"group",position:P,width:U.width,height:U.height,data:{...K,memberIds:G.map(ee=>ee.id)},draggable:!n,selectable:!1,zIndex:Z*zi+cP})}return D}),N=t.computed(()=>{let D=0;for(const K of a.value.groups){if(K.phase!==e)continue;const A=y(K.id);A>D&&(D=A)}return D}),x=t.computed(()=>{const D=[];for(const K of a.value.groups){if(K.phase!==e||!K.position||!K.dimensions)continue;const A=s(K.ownerId);if(!A||A.phase!==e||A.hidden||!b(K).filter(Z=>Z.phase===e&&!Z.hidden).length)continue;const U=Math.max(_(A.id),y(K.id))+N.value+1,G={id:`branch:${K.id}`,source:A.id,target:K.id,sourceHandle:`branch@${K.branch}`,targetHandle:"input",markerEnd:mr.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:A.id,branch:K.branch,groupId:K.id},zIndex:U*zi+uP};D.push(G)}return D}),v=new Map,R=new Map;let F;function k(D,K=!0){if(D.phase!==e)return;const A=b(D).filter(ee=>ee.phase===e&&!ee.hidden);if(!A.length)return;const P=[];for(const ee of A){const ie=r(ee.id),he=ie==null?void 0:ie.dimensions,J=(he==null?void 0:he.width)??0,re=(he==null?void 0:he.height)??0;if(J<=0||re<=0)return;const le=ie==null?void 0:ie.computedPosition,ue=(le==null?void 0:le.x)??ee.position.x,fe=(le==null?void 0:le.y)??ee.position.y;P.push({x:ue,y:fe,width:J,height:re});const $=h.value.get(ee.id)??[];for(const B of $){if(B.phase!==e)continue;const M=v.get(B.id),V=(M==null?void 0:M.position)??B.position,Q=(M==null?void 0:M.dimensions)??B.dimensions;!V||!Q||P.push({x:V.x,y:V.y,width:Q.width,height:Q.height})}}const U=Fm(P),G=U.width+Po*2,Z=U.height+Po*2;return{position:{x:Math.round(U.x-Po),y:Math.round(U.y-Po)},dimensions:{width:Math.round(G),height:Math.round(Z)},commit:K}}function Y(){if(v.size===0){F=void 0;return}const D=[];let K=!1;v.forEach((A,P)=>{const U=f(P,A,!1);D.push({id:P,changed:U,commit:A.commit}),A.commit&&U&&!K&&(K=!0)}),v.clear(),F=void 0;for(const{id:A,changed:P,commit:U}of D){if(!P)continue;const G=l.value.get(A);if(!G)continue;const Z=S.value.get(G.ownerId);Z&&R.set(Z.id,{commit:U})}if(R.size>0){const A=Array.from(R);R.clear();for(const[P,{commit:U}]of A)q(P,U)}K&&u("*")}function T(){v.size!==0&&(F||(F=t.nextTick().then(Y)))}function q(D,K=!0){const A=l.value.get(D);if(!A)return;const P=k(A,K);P&&(v.set(D,P),T())}function j(D,K,A,P){const U=l.value.get(D);if(!U)return;if(!U.position){d(D,K,!1),q(D);return}if(A===0&&P===0){d(D,K,!1);return}d(D,K,!1);const G=[D],Z=new Set([D]),ee=new Set;for(;G.length;){const ie=G.shift(),he=l.value.get(ie);if(!he)continue;const J=b(he).filter(re=>re.phase===e&&!re.hidden);for(const re of J){ee.has(re.id)||(c(re.id,{x:re.position.x+A,y:re.position.y+P},!1),ee.add(re.id));const le=E.value.get(re.id)??[];for(const ue of le){if(Z.has(ue.id))continue;const fe=l.value.get(ue.id);fe!=null&&fe.position&&d(ue.id,{x:fe.position.x+A,y:fe.position.y+P},!1),Z.add(ue.id),G.push(ue.id)}}}}function te(D,K){const A=g.value;if(!A)return!1;if(A===D||K.some(P=>A===P))return!0;for(const P of K){const U=E.value.get(P)??[];if(U!=null&&U.some(G=>G.id===A))return!0}return!1}const X=new Map;return t.watch(()=>a.value.groups.filter(K=>K.phase===e).map(K=>{const A=K.memberIds.map(P=>{var ee,ie;const U=r(P),G=Math.round(((ee=U==null?void 0:U.dimensions)==null?void 0:ee.width)??0),Z=Math.round(((ie=U==null?void 0:U.dimensions)==null?void 0:ie.height)??0);return`${P}:${G}x${Z}`});return{id:K.id,memberIds:K.memberIds,signature:A.join(",")}}),D=>{const K=new Set(D.map(A=>A.id));for(const A of X.keys())K.has(A)||X.delete(A);for(const A of D){if(te(A.id,A.memberIds))continue;const U=X.get(A.id)!==A.signature;U&&X.set(A.id,A.signature);const G=l.value.get(A.id),Z=!!(G!=null&&G.position&&(G!=null&&G.dimensions));U&&(Z||q(A.id))}},{deep:!0,flush:"post"}),{groupsByOwner:E,memberGroupMap:S,groupNodes:C,branchEdges:x,isBranchEdgeId:w,updateGroupLayout:q,translateGroupTree:j,updateDragging:D=>{g.value=D},getNodeDepth:_,maxGroupDepth:N,waitForLayoutFlush:()=>F??Promise.resolve()}}function kV(e){t.provide(Gp,e)}function Um(){return t.inject(Gp,void 0)}function Km(){const e=Um();if(!e)throw new Error("Confirm modal not provided");return e}function CV({phase:e,groupMapById:n,getNodeDepth:o}){const r=t.shallowRef(),i=t.shallowRef();function a(d){r.value=d,i.value=void 0}function l(){r.value&&(r.value=void 0,i.value=void 0)}function s(d){let f;return n.value.forEach(u=>{if(u.phase!==e)return;const p=u.position,m=u.dimensions;if(!p||!m||!(d.x>=p.x&&d.x<=p.x+m.width&&d.y>=p.y&&d.y<=p.y+m.height))return;const _=o(u.ownerId);(!f||_>f.depth)&&(f={depth:_,id:u.id})}),f==null?void 0:f.id}function c(d){if(!r.value){i.value=void 0;return}if(!d){i.value=void 0;return}i.value=s(d)}return{activeGroupId:i,start:a,updateActiveGroup:c,end:l}}function jm(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const EV={default:iC,hover:lC,selected:aC};let Gm,Es;function ta(e){const n=e.id===Gm?"selected":e.id===Es?"hover":"default",o=EV[n],{markerEnd:r}=e,i=typeof r=="object"?{...r,color:o}:{type:r,color:o},a=e.zIndex??0,l=n==="selected"?a+2:n==="hover"?a+1:a;return{...e,style:{...e.style,stroke:o,strokeWidth:n==="selected"?1.5:void 0},markerEnd:i,zIndex:l}}const[NV,xV]=qe.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Cr.padding,gaps:s=Cr.gaps}=r,{nodes:c=Cr.gaps.nodes,edges:d=Cr.gaps.edges,ranks:f=Cr.gaps.ranks}=s,u=Le(o),p=at(),m=Um(),h=Lm(),{i18n:{t:_}}=Be(),{findNode:y,fitView:g,deleteKeyCode:w,onNodeDrag:b,onNodeDragStop:S,onConnect:E,onNodesChange:C,onEdgesChange:N,onEdgeUpdate:x,onEdgeMouseEnter:v,onEdgeMouseLeave:R,getNodes:F,setNodes:k,setEdges:Y,addSelectedNodes:T,screenToFlowCoordinate:q}=u;w.value=["Delete","Backspace"];const{state:j,commit:te,moveNode:X,selectNode:D,removeNode:K,getNodeById:A,connectEdge:P,disconnectEdge:U,getInEdgesByNodeId:G,branchGroups:Z,commit:ee,reset:ie,groupMapById:he}=p,{isGroupId:J}=Z;function re(se,_e){const ce=A(se.source),pe=A(se.target);return!!(ce&&pe&&ce.phase===_e&&pe.phase===_e)}const{groupsByOwner:le,memberGroupMap:ue,groupNodes:fe,branchEdges:$,isBranchEdgeId:B,updateGroupLayout:M,translateGroupTree:V,updateDragging:Q,getNodeDepth:z,maxGroupDepth:ae,waitForLayoutFlush:I}=wV({phase:n,readonly:i,flowId:o}),{activeGroupId:L,start:O,updateActiveGroup:oe,end:ne}=CV({phase:n,groupMapById:he,getNodeDepth:z}),be=t.computed(()=>j.value.nodes.filter(se=>se.phase===n&&!se.hidden).map(se=>{const _e=ue.value.get(se.id),ce=_e==null?void 0:_e.position,pe=_e==null?void 0:_e.dimensions,we=_e&&ce&&pe?{x:se.position.x-ce.x,y:se.position.y-ce.y}:se.position,Se=z(se.id),Oe=!!(_e&&ce&&pe),Re=(Oe?Se:0)+ae.value+1;return{id:se.id,type:"flow",position:we,data:se,deletable:!Pu(se),parentNode:Oe?_e.id:void 0,zIndex:Re*zi+fP}})),ke=t.computed(()=>j.value.edges.filter(se=>re(se,n)).filter(se=>{const _e=A(se.source),ce=A(se.target);return!(_e!=null&&_e.hidden)&&!(ce!=null&&ce.hidden)}).map(se=>{const _e=A(se.source),ce=A(se.target);if(_e){if(!ce)throw new Error(`Missing target node "${se.target}" for edge "${se.id}" in phase "${n}"`)}else throw new Error(`Missing source node "${se.source}" for edge "${se.id}" in phase "${n}"`);const pe=Math.max(z(se.source),z(se.target))+ae.value+1;return ta({id:se.id,source:se.source,target:se.target,sourceHandle:se.sourceField?`outputs@${se.sourceField}`:"output",targetHandle:se.targetField?`inputs@${se.targetField}`:"input",markerEnd:mr.ArrowClosed,data:se,updatable:!i,zIndex:pe*zi+dP})})),de=t.computed(()=>[...$.value,...ke.value]);t.watch([be,fe,de],([se,_e,ce])=>{k([..._e,...se]),Y(ce)},{immediate:!0});const Ne=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function Te({source:se,sourceHandle:_e,target:ce,targetHandle:pe}){if(!_e||!pe)return;const we=jm(_e),Se=jm(pe);if((we==null?void 0:we.io)==="input"||(Se==null?void 0:Se.io)==="output"||_e==="output"&&pe==="output")return;const Oe=G(ce);let Re=!1,Me=!1;const At=[],Ge=[],Ue=(Se==null?void 0:Se.io)==="input"?Oe.filter(We=>!We.targetField):Oe.filter(We=>!!We.targetField);Ue.length>0&&(Re=!0,Ue.forEach(We=>{Ge.push(Sr(We,A)),U(We.id,!1)}));const Ke=(Se==null?void 0:Se.io)==="input"?Se!=null&&Se.field?Oe.filter(We=>We.targetField===Se.field):Oe.filter(We=>!!We.targetField):Oe.filter(We=>!We.targetField);if(Ke.length>0){if(Ke.some(gt=>gt.source===se&&gt.target===ce&&gt.targetField===(Se==null?void 0:Se.field)&&gt.sourceField===(we==null?void 0:we.field)))return;Me=!0,Ke.forEach(gt=>{Ge.push(Sr(gt,A)),U(gt.id,!1)})}if(!P({source:se,sourceField:we==null?void 0:we.field,target:ce,targetField:Se==null?void 0:Se.field},!1)){ie(),h({message:_("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(At.push(Cs(se,we==null?void 0:we.field,ce,Se==null?void 0:Se.field,A)),Re||Me){if(!m)throw ie(),new Error("Expected confirm modal to be provided here when reachable");if(!await m(_(Re?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),At,Ge)){ie();return}}ee()}E(Te);let me=!1;const ge=()=>{me&&(me=!1,ee())};C(se=>{se.filter(pe=>pe.type==="select").filter(pe=>!J(pe.id)).sort((pe,we)=>pe.selected===we.selected?0:pe.selected?1:-1).forEach(pe=>{D(pe.selected?pe.id:void 0)});let ce=!1;se.forEach(pe=>{if(pe.type==="remove"){if(J(pe.id))return;ce=!0,K(pe.id,!1)}}),ce&&!me&&(me=!0,queueMicrotask(ge))}),b(({node:se,event:_e})=>{var At,Ge,Ue;if(!se)return;if(J(se.id)){const Ke=se.id;Q(Ke),oe(void 0);const Qt=he.value.get(Ke);if(!Qt)return;const We=Qt.position??{...se.position},gt=se.position.x-We.x,sa=se.position.y-We.y;V(Ke,se.position,gt,sa);const Ar=ue.value.get(Qt.ownerId);Ar&&M(Ar.id,!1);return}const ce=se.id;O("canvas"),Q(ce);const pe=se.parentNode;let we={...se.position};if(pe&&J(pe)){const Ke=he.value.get(pe);Ke!=null&&Ke.position&&(we={x:Ke.position.x+se.position.x,y:Ke.position.y+se.position.y})}X(ce,we,!1);const Se={x:we.x,y:we.y,width:((At=se.dimensions)==null?void 0:At.width)??0,height:((Ge=se.dimensions)==null?void 0:Ge.height)??0},Oe=_e&&"clientX"in _e?q({x:_e.clientX,y:_e.clientY}):void 0,Re={x:Se.x+Se.width/2,y:Se.y+Se.height/2};oe(Oe??Re);const Me=pe&&J(pe)?pe:(Ue=ue.value.get(ce))==null?void 0:Ue.id;Me&&M(Me,!1)}),S(({node:se})=>{var Se;if(!se)return;if(Q(void 0),J(se.id)){te();return}const _e=se.id,ce=se.parentNode;let pe={...se.position};if(ce&&J(ce)){const Oe=he.value.get(ce);Oe!=null&&Oe.position&&(pe={x:Oe.position.x+se.position.x,y:Oe.position.y+se.position.y})}X(_e,pe,!1);const we=ce&&J(ce)?ce:(Se=ue.value.get(_e))==null?void 0:Se.id;we&&M(we,!1),mt(_e),ne(),te()}),N(se=>{se.filter(pe=>pe.type==="select").sort((pe,we)=>pe.selected===we.selected?0:pe.selected?1:-1).forEach(pe=>{B(pe.id)||(Gm=pe.selected?pe.id:void 0,Y(we=>we.map(Se=>Se.id!==pe.id||!Se.markerEnd?Se:ta({...Se,zIndex:pe.selected?1:void 0}))))});let ce=!1;se.forEach(pe=>{if(pe.type==="remove"){if(B(pe.id))return;ce=!0,U(pe.id,!1)}}),ce&&!me&&(me=!0,queueMicrotask(ge))}),v(({edge:se})=>{B(se.id)||(Es=se.id,Y(_e=>_e.map(ce=>ce.id!==se.id?ce:ta(ce))))}),R(({edge:se})=>{B(se.id)||(Es=void 0,Y(_e=>_e.map(ce=>ce.id!==se.id?ce:ta(ce))))}),x(({edge:se,connection:_e})=>{B(se.id)||(U(se.id,!1),Te(_e))});function ot(se,_e,ce){var gt,sa,Ar,ug,fg;const pe=_e?y(_e.id):void 0,we=ce?y(ce.id):void 0;let Se;if(se.length>0){Se=new Mm.graphlib.Graph({multigraph:!0}),Se.setGraph({rankdir:n==="request"?"LR":"RL",nodesep:c,edgesep:d,ranksep:f});const Et=new Set;for(const It of se){const en=y(It.id);if(!en){console.warn(`Cannot find graph node '${It.id}' in ${n} phase`);continue}Et.add(It.id),ai(It)?Se.setNode(It.id,It.dimensions??en.dimensions):Se.setNode(It.id,en.dimensions)}for(const It of de.value)!Et.has(It.source)||!Et.has(It.target)||Se.setEdge(It.source,It.target,{points:[]});Mm.layout(Se)}const Oe=[],Re=Et=>({x:Et.x-Et.width/2,y:Et.y-Et.height/2,width:Et.width,height:Et.height});if(se.length>0){if(!Se)throw new Error("Expected dagreGraph to be initialized");for(const Et of se){const It=Se.node(Et.id),en=Re(It);Oe.push(en),ai(Et)?V(Et.id,en,en.x+Po,en.y+Po):X(Et.id,{x:en.x,y:en.y},!1)}}const Me=Oe.length>0?Fm(Oe):{x:0,y:0,width:0,height:0},At=Me.width,Ge=Me.height,Ue=Me.x,Ke=Me.x+Me.width,Qt=Math.max(0,Math.min(t.toValue(a==null?void 0:a.width)??Number.POSITIVE_INFINITY,pP)-At-2*c-(((gt=pe==null?void 0:pe.dimensions)==null?void 0:gt.width)??0)-(((sa=we==null?void 0:we.dimensions)==null?void 0:sa.width)??0)-2*l),We=Me.y+Ge/2;_e&&X(_e.id,{x:Ue-c-Qt/2-(((Ar=pe==null?void 0:pe.dimensions)==null?void 0:Ar.width)??0),y:We-(((ug=pe==null?void 0:pe.dimensions)==null?void 0:ug.height)??0)/2},!1),ce&&X(ce.id,{x:Ke+c+Qt/2,y:We-(((fg=we==null?void 0:we.dimensions)==null?void 0:fg.height)??0)/2},!1)}function Sn(se){let _e,ce;const pe=[];for(const we of se){if(ai(we)){pe.push(we);continue}switch(we.name){case"request":{if(n!=="request")throw new Error(`Unexpected request node in ${n} phase`);if(_e)throw new Error("Duplicated request node in request phase");_e=we;break}case"service_request":{if(n!=="request")throw new Error(`Unexpected service_request node in ${n} phase`);if(ce)throw new Error("Duplicated service_request node in request phase");ce=we;break}case"service_response":{if(n!=="response")throw new Error(`Unexpected service_response node in ${n} phase`);if(ce)throw new Error("Duplicated service_response node in response phase");ce=we;break}case"response":{if(n!=="response")throw new Error(`Unexpected response node in ${n} phase`);if(_e)throw new Error("Duplicated response node in response phase");_e=we;break}default:{pe.push(we);break}}}return{autoNodes:pe,leftNode:_e,rightNode:ce}}async function vn(se=!0){const _e=new Map(be.value.map(Re=>[Re.id,Re.data])),ce=j.value.groups.toSorted((Re,Me)=>z(Me.ownerId)-z(Re.ownerId));for(const Re of ce)ot(Re.memberIds.reduce((Me,At)=>{const Ge=A(At);if(!Ge)return console.warn(`Cannot find node '${At}' of group '${Re.id}' by getNodeById`),Me;if(Ge.phase!==n)return Me;if(Ge.type==="branch"){const Ue=le.value.get(Ge.id);Ue&&Me.push(...Ue)}return _e.delete(Ge.id),Me.push(Ge),Me},[])),await t.nextTick(),M(Re.id,!1),await I();const pe=_e.values().toArray();for(const Re of pe){if(ai(Re)||Re.type!=="branch")continue;const Me=le.value.get(Re.id);Me&&pe.push(...Me)}const{autoNodes:we,leftNode:Se,rightNode:Oe}=Sn(pe);ot(we,Se,Oe),se&&te()}function st(se){g({...Ne.value,...se})}async function Ye(se){return D(se),new Promise(_e=>setTimeout(()=>{const ce=y(se);T(ce?[ce]:[]),_e()},0))}function pt(se){const _e=F.value.filter(({type:Ue})=>Ue!=="group"),ce=_e.find(({id:Ue})=>Ue===se);if(!ce)throw new Error(`Node ${se} not found`);const{position:{x:pe,y:we},dimensions:{width:Se,height:Oe}}=ce,Re=we,Me=we+Oe,At=_e.filter(({id:Ue})=>Ue!==se).filter(({position:{y:Ue},dimensions:{height:Ke}})=>Ue<Me&&Ue+Ke>Re).map(({position:{x:Ue},dimensions:{width:Ke}})=>({left:Ue,right:Ue+Ke})).sort((Ue,Ke)=>Ue.left-Ke.left);let Ge=pe+Se+c;for(const{left:Ue,right:Ke}of At)if(!(Ke<=Ge)){if(Ge+Se<=Ue)return{x:Ge,y:Re};Ge=Math.max(Ge,Ke)+c}return{x:Ge,y:Re}}function Ct(se){if(!se)return;const _e=y(se);if(!_e)throw new Error(`Node ${se} not found`);const{position:{x:ce},dimensions:{width:pe}}=_e,we=ce+pe,{viewport:Se,dimensions:Oe,setViewport:Re}=u,{x:Me,y:At,zoom:Ge}=Se.value,{width:Ue}=Oe.value,Ke=ce*Ge+Me,Qt=we*Ge+Me,We=Ue-jp-c;if(Qt<=We)return;let gt=We-Qt;Ke+gt<0&&(gt=-Ke),gt!==0&&Re({x:Me+gt,y:At,zoom:Ge},{duration:hP})}function mt(se){if(!L.value)return!1;const{nodeId:_e,branch:ce}=s1(L.value),pe=Z.addMember(_e,ce,se,{commit:!1});return oe(void 0),pe}return{vueFlowStore:u,editorStore:p,readonly:i,nodes:be,edges:de,selectNode:Ye,autoLayout:vn,placeToRight:pt,scrollRightToReveal:Ct,fitViewParams:Ne,fitView:st,groupDrop:{activeGroupId:L,startPanelDrag:()=>O("panel"),endPanelDrag:ne,updateActiveGroup:oe,attachNodeToActiveGroup:mt}}}),na=ve(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>Ee.Left},size:{default:()=>Number.parseFloat(kd)},type:{}},setup(e){t.useCssVars(o=>({v753622c4: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",[e.type,e.position===t.unref(Ee).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),qm=ve(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>kt[e.type]),o=t.computed(()=>i1(e.type));return(r,i)=>{var l;const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:"neutral",class:t.normalizeClass(["dk-node-badge",{"icon-only":e.iconOnly,"has-colors":!!n.value.colors}]),size:e.size},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]);let $o=null;function SV(){var n;if($o)return $o;if(typeof navigator>"u")return $o="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?$o="mac":/Linux/i.test(e)&&!/Android/i.test(e)?$o="linux":$o="windows"}const vV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},AV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Win",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Spacebar",Delete:"Delete"},IV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Super",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Space",Delete:"Delete"};function TV(e,n={}){const o=n.platform??SV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?vV:o==="linux"?IV:AV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const PV={key:0,class:"label"},OV={class:"keys"},oa=ve(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=TV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:e.reverse}])},[e.label?(t.openBlock(),t.createElementBlock("span",PV,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",OV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),$V={class:"indicator-box"},BV={key:1,class:"additional-count"},ra=ve(t.defineComponent({__name:"ValueIndicator",props:{edgeId:{},sourceNode:{},sourceFieldName:{},targetNodes:{},targetFieldNames:{},mode:{},reversed:{type:Boolean,default:!1}},setup(e){const n=t.createPropsRestProxy(e,["reversed"]),o=t.computed(()=>n.mode==="input"&&n.sourceNode?n.sourceFieldName?`${n.sourceNode.name}.${n.sourceFieldName}`:n.sourceNode.name:n.mode==="output"&&n.targetNodes?n.targetNodes.map((s,c)=>{var f;const d=(f=n.targetFieldNames)==null?void 0:f[c];return d?`${s.name}.${d}`:s.name}).join(", "):""),r=t.computed(()=>{var s;let l;if(n.mode==="input"&&n.sourceNode?l=n.sourceNode:n.mode==="output"&&n.targetNodes&&n.targetNodes.length>0&&(l=n.targetNodes[0]),!!l)return(s=kt[l.type])==null?void 0:s.icon}),i=t.computed(()=>n.mode==="output"&&n.targetNodes&&n.targetNodes.length>1?n.targetNodes.length-1:0),a=t.computed(()=>n.mode==="input"?e.reversed:!e.reversed);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["value-indicator",{reversed:a.value}])},[t.createVNode(t.unref(Pe.KTooltip),{placement:"top",text:o.value},{default:t.withCtx(()=>[t.createElementVNode("div",$V,[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,color:t.unref(Wr),size:16},null,8,["color"])):t.createCommentVNode("",!0),i.value>0?(t.openBlock(),t.createElementBlock("span",BV," +"+t.toDisplayString(i.value),1)):t.createCommentVNode("",!0)])]),_:1},8,["text"])],2))}}),[["__scopeId","data-v-d8506ba3"]]),VV={class:"body"},RV={class:"name"},DV={class:"handle"},MV={class:"handle-label-wrapper"},LV={class:"handle-label-wrapper"},FV={class:"handle-label text"},UV={class:"handle"},KV={class:"handle-label-wrapper"},jV={class:"handle-label-wrapper"},GV={class:"handle-label text"},qV={key:2,class:"branch-handles"},zV={class:"handle-label-wrapper"},HV={class:"handle-label text"},zm=ve(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=xV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d,branchGroups:f}=at(),u=t.computed(()=>Co(e.data.type)),p=t.computed(()=>e.data.fields.input.length>0),m=t.computed(()=>e.data.fields.output.length>0),h=t.computed(()=>p.value&&r(e.data.id).every(A=>A.targetField===void 0)),_=t.computed(()=>m.value&&i(e.data.id).every(A=>A.sourceField===void 0)),y=t.computed(()=>e.data.expanded.input??!1),g=t.computed(()=>e.data.expanded.output??!1),w=t.computed(()=>{var A,P,U;return((U=(P=(A=u.value.io)==null?void 0:A.next)==null?void 0:P.branches)==null?void 0:U.map(({name:G})=>G))??[]}),b=t.computed(()=>w.value.length>0),S=t.computed(()=>f.findMembership(e.data.id)),E=t.computed(()=>{var A,P;if(e.data.type==="property"){const U=(A=e.data.config)==null?void 0:A.property;return cs(U)}return(P=u.value.io)==null?void 0:P.input}),C=t.computed(()=>{var A,P;if(e.data.type==="property"){const U=(A=e.data.config)==null?void 0:A.property;return ss(U)}return(P=u.value.io)==null?void 0:P.output}),N=t.computed(()=>Pu(e.data)),x=t.computed(()=>e.data.phase==="response"),v=t.computed(()=>e.data.phase==="request"?Ee.Left:Ee.Right),R=t.computed(()=>e.data.phase==="request"?Ee.Right:Ee.Left),F=t.computed(()=>e.data.phase==="request"?Ee.Right:Ee.Left),k=t.computed(()=>N.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),Y=t.computed(()=>N.value?tC:nC),T=t.computed(()=>{const A=new Map,P=r(e.data.id);for(const U of P){const G=a(U.source);if(!G)continue;const Z=G.type==="vault",ee=G.phase!==e.data.phase;if(!Z&&!ee)continue;let ie;if(U.sourceField){const he=G.fields.output.find(J=>J.id===U.sourceField);ie=he==null?void 0:he.name}if(U.targetField){const he=e.data.fields.input.find(J=>J.id===U.targetField);if(!he)continue;A.set(U.targetField,{fieldId:U.targetField,edgeId:U.id,field:he,sourceNode:G,sourceFieldName:ie})}else A.set("input",{fieldId:"input",edgeId:U.id,field:null,sourceNode:G,sourceFieldName:ie})}return A}),q=t.computed(()=>{const A=new Map,P=i(e.data.id);for(const U of P){const G=a(U.target);if(!G||!(G.phase!==e.data.phase))continue;let ee;if(U.targetField){const J=G.fields.input.find(re=>re.id===U.targetField);ee=J==null?void 0:J.name}const ie=U.sourceField||"output";if(!A.has(ie)){const J=U.sourceField&&e.data.fields.output.find(re=>re.id===U.sourceField)||null;A.set(ie,{fieldId:ie,edgeIds:[],field:J,targetNodes:[],targetFieldNames:[]})}const he=A.get(ie);he.edgeIds.push(U.id),he.targetNodes.push(G),he.targetFieldNames.push(ee)}return A});function j(A){return T.value.get(A)}function te(A){return q.value.get(A)}function X(A){!o||o.readonly||A==="input"&&!h.value||A==="output"&&!_.value||l(e.data.id,A)}async function D(){if(!o||o.readonly)return;const A=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(A),o.scrollRightToReveal(A),d.value=!0}function K(){if(e.readonly||o&&o.readonly||!S.value)return;const{ownerId:A,branch:P}=S.value,U=f.getMembers(A,P),G=U.filter(Z=>Z!==e.data.id);G.length!==U.length&&f.setMembers(A,P,G)}return t.watch(h,A=>{A||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(_,A=>{A||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(A,P)=>{qo(A,P)||l(e.data.id,"input",A.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(A,P)=>{qo(A,P)||l(e.data.id,"output",A.length>0,!0,"*")},{deep:!0}),(A,P)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:x.value,implicit:N.value,readonly:e.readonly}])},[t.createElementVNode("div",VV,[N.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Pe.KTooltip),{key:0,class:"badge",placement:"top",text:e.data.type},{default:t.withCtx(()=>[t.createVNode(qm,{"icon-only":"",size:"small",type:e.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",RV,t.toDisplayString(k.value),1),e.error?(t.openBlock(),t.createBlock(t.unref(xe.WarningIcon),{key:1,class:"error-icon",color:t.unref(Xa),size:16},null,8,["color"])):t.createCommentVNode("",!0),N.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Pe.KDropdown),{key:2,class:"menu",disabled:e.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:P[1]||(P[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(Pe.KDropdownItem),{onClick:D},{default:t.withCtx(()=>[t.createVNode(oa,{keys:t.unref(Hi).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),S.value?(t.openBlock(),t.createBlock(t.unref(Pe.KDropdownItem),{key:0,onClick:K},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(Pe.KDropdownItem),{danger:"",onClick:P[0]||(P[0]=U=>t.unref(c)(e.data.id))},{default:t.withCtx(()=>[t.createVNode(oa,{keys:t.unref(Hi).delete,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.delete")},null,8,["keys","label"])]),_:1})]),default:t.withCtx(()=>[t.createVNode(t.unref(Pe.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.MoreIcon),{color:t.unref(Wa)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:x.value}])},[E.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":p.value}])},[t.createElementVNode("div",DV,[t.createVNode(t.unref(Jt),{id:"input",position:v.value,type:"target"},null,8,["position"]),j("input")?(t.openBlock(),t.createBlock(ra,{key:0,"edge-id":j("input").edgeId,mode:"input",reversed:x.value,"source-field-name":j("input").sourceFieldName,"source-node":j("input").sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",MV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:h.value}]),onClick:P[2]||(P[2]=t.withModifiers(U=>X("input"),["stop"]))},[P[4]||(P[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(xe.UnfoldMoreIcon),{key:0,size:t.unref(Xo)},null,8,["size"])),y.value?(t.openBlock(),t.createBlock(t.unref(xe.UnfoldLessIcon),{key:1,color:h.value?void 0:t.unref(bd),size:t.unref(Xo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&y.value?(t.openBlock(),t.createBlock(na,{key:0,color:Y.value,position:v.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),p.value&&y.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.input,(U,G)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${U.id}`,class:"handle indented"},[t.createVNode(t.unref(Jt),{id:`inputs@${U.id}`,position:v.value,type:"target"},null,8,["id","position"]),j(U.id)?(t.openBlock(),t.createBlock(ra,{key:0,"edge-id":j(U.id).edgeId,mode:"input",reversed:x.value,"source-field-name":j(U.id).sourceFieldName,"source-node":j(U.id).sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",LV,[t.createElementVNode("div",FV,t.toDisplayString(U.name),1),t.createVNode(na,{color:Y.value,position:v.value,type:G<e.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),C.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":m.value}])},[t.createElementVNode("div",UV,[t.createElementVNode("div",KV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:_.value}]),onClick:P[3]||(P[3]=t.withModifiers(U=>X("output"),["stop"]))},[P[5]||(P[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),m.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[g.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(xe.UnfoldMoreIcon),{key:0,size:t.unref(Xo)},null,8,["size"])),g.value?(t.openBlock(),t.createBlock(t.unref(xe.UnfoldLessIcon),{key:1,color:_.value?void 0:t.unref(bd),size:t.unref(Xo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),m.value&&g.value?(t.openBlock(),t.createBlock(na,{key:0,color:Y.value,position:R.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Jt),{id:"output",position:R.value,type:"source"},null,8,["position"]),te("output")?(t.openBlock(),t.createBlock(ra,{key:0,mode:"output",reversed:x.value,"target-field-names":te("output").targetFieldNames,"target-nodes":te("output").targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]),m.value&&g.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.output,(U,G)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${U.id}`,class:"handle indented"},[t.createElementVNode("div",jV,[t.createElementVNode("div",GV,t.toDisplayString(U.name),1),t.createVNode(na,{color:Y.value,position:R.value,type:G<e.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Jt),{id:`outputs@${U.id}`,position:R.value,type:"source"},null,8,["id","position"]),te(U.id)?(t.openBlock(),t.createBlock(ra,{key:0,mode:"output",reversed:x.value,"target-field-names":te(U.id).targetFieldNames,"target-nodes":te(U.id).targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),b.value?(t.openBlock(),t.createElementBlock("div",qV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(w.value,U=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${U}`,class:"handle"},[t.createElementVNode("div",zV,[t.createElementVNode("div",HV,t.toDisplayString(U),1)]),t.createVNode(t.unref(Jt),{id:`branch@${U}`,connectable:!1,position:F.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-b1701720"]]),YV=ve(t.defineComponent({__name:"GroupNode",props:{data:{},active:{type:Boolean}},setup(e){const n=e,o=t.computed(()=>n.data.phase==="response"),r=t.computed(()=>o.value?Ee.Right:Ee.Left);return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-branch-group-node",{reversed:o.value,"drop-target":e.active}])},[t.createVNode(t.unref(Jt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),WV={key:0,class:"dk-flow-mask"},Hm=ve(t.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=qe.useElementBounding(i),{i18n:{t:l}}=Be(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:h,groupDrop:_}=NV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:y,propertiesPanelOpen:g,invalidConfigNodeIds:w,selectedNode:b,duplicateNode:S,commit:E}=c,{screenToFlowCoordinate:C,zoomIn:N,zoomOut:x,viewport:v,maxZoom:R,minZoom:F}=s,{activeGroupId:k,startPanelDrag:Y,endPanelDrag:T,updateActiveGroup:q,attachNodeToActiveGroup:j}=_,te=t.ref(!1);function X(Z){var ie;const ee=(ie=Z.dataTransfer)==null?void 0:ie.types.find(he=>he.startsWith(`${kr}/`));if(ee)return ee.replace(`${kr}/`,"")}function D(Z){var ee;if(e.mode==="edit"){if(((ee=Z==null?void 0:Z.node)==null?void 0:ee.type)==="group"){p(void 0);return}g.value=!0}}function K(Z){e.mode!=="edit"||te.value||(Z.preventDefault(),q(C({x:Z.clientX,y:Z.clientY})))}function A(Z){var fe;if(e.mode!=="edit"||te.value)return;const ee=(fe=Z.dataTransfer)==null?void 0:fe.getData(kr);if(!ee)return;Z.preventDefault();const ie=JSON.parse(ee);if(ie.action!=="create-node")return;const he=C({x:Z.clientX,y:Z.clientY}),{type:J,anchor:re}=ie.data,le={type:J,phase:e.phase,position:{x:he.x-re.offsetX,y:he.y-re.offsetY}},ue=y(le,!1);if(!ue){T();return}j(ue),E(),p(ue),g.value=!0,T()}async function P(){await d(),setTimeout(()=>u(),0)}const U=t.computed(()=>{if(e.mode==="preview")return[];const Z=[{name:"zoom_in",icon:xe.AddIcon,action:N,disabled:v.value.zoom>=R.value},{name:"zoom_out",icon:xe.RemoveIcon,action:x,disabled:v.value.zoom<=F.value},{name:"fit_view",icon:xe.FullscreenIcon,action:u}];return e.mode==="edit"&&Z.push({name:"auto_layout",icon:xe.AutoLayoutIcon,action:P}),Z});if(e.phase==="response"&&e.mode==="edit"){qe.useEventListener("dragstart",ee=>{X(ee)==="call"&&(te.value=!0)});const{start:Z}=qe.useTimeoutFn(()=>{te.value=!1},80);qe.useEventListener("dragover",()=>{Z()}),qe.useEventListener("dragend",()=>{te.value=!1})}e.mode==="edit"&&(qe.useEventListener("dragstart",Z=>{X(Z)&&Y()}),qe.useEventListener("dragend",()=>{T()}));async function G(){const Z=b.value;if(e.mode!=="edit"||!Z||Z.phase!==e.phase)return;const ee=S(Z.id,m(Z.id));ee&&(await p(ee),g.value=!0,h(ee))}return Up({enabled:t.computed(()=>!!b.value&&e.mode==="edit"&&b.value.phase===e.phase),duplicate:G}),n({autoLayout:d,fitView:u}),(Z,ee)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Dp),{id:e.flowId,class:t.normalizeClass(["flow",{readonly:e.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":e.mode==="edit","max-zoom":t.unref(mP),"min-zoom":t.unref(gP),"multi-selection-key-code":null,"nodes-connectable":e.mode==="edit","nodes-draggable":e.mode==="edit","pan-on-drag":e.mode==="preview"?!1:void 0,"pan-on-scroll":e.mode!=="edit"?!1:void 0,"zoom-on-double-click":e.mode!=="edit"?!1:void 0,"zoom-on-pinch":e.mode!=="edit"?!1:void 0,"zoom-on-scroll":e.mode!=="edit"?!1:void 0,onDragover:K,onDrop:A,onNodeClick:D,onNodesChange:ee[0]||(ee[0]=ie=>r("nodes-change")),onNodesInitialized:ee[1]||(ee[1]=ie=>r("initialized"))},{"node-flow":t.withCtx(({data:ie})=>[t.createVNode(zm,{data:ie,error:t.unref(w).has(ie.id),readonly:e.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:ie})=>[t.createVNode(YV,{active:t.unref(k)===ie.id,data:ie},null,8,["active","data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(IT)),t.createVNode(t.unref(tP),{"fit-view-params":t.unref(f),position:"bottom-left","show-fit-view":!1,"show-interactive":!1,"show-zoom":!1},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(U.value,ie=>(t.openBlock(),t.createBlock(t.unref(Pe.KTooltip),{key:ie.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${ie.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(wr),{disabled:ie.disabled,onClick:t.withModifiers(ie.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(ie.icon),{size:18}))]),_:2},1032,["disabled","onClick"])]),_:2},1032,["text"]))),128))]),_:1},8,["fit-view-params"])]),_:1},8,["id","class","elements-selectable","max-zoom","min-zoom","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"]),te.value?(t.openBlock(),t.createElementBlock("div",WV,t.toDisplayString(t.unref(l)("plugins.free-form.datakit.flow_editor.phase_mask_help")),1)):t.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-556f8c11"]]),Ns=ve(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const n=t.ref(!1),o=t.ref(!1),{state:r,clearPendingLayout:i,setPendingFitView:a,commit:l,clear:s}=at(),c=t.useId(),d=`${c}-request`,f=`${c}-response`,u=Le(d),p=Le(f);function m(P,U){const{onPaneClick:G,onNodesChange:Z,onEdgesChange:ee,getSelectedNodes:ie,getSelectedEdges:he}=P,{removeSelectedElements:J}=U;function re(le){if(!le){J();return}le.some(ue=>ue.type==="select")&&ie.value.length+he.value.length>0&&J()}Z(re),ee(re),G(()=>re())}m(u,p),m(p,u);const h=t.useTemplateRef("flowPanels"),_=t.useTemplateRef("requestLabel"),y=t.useTemplateRef("requestCanvasContainer"),g=t.useTemplateRef("requestFlow"),w=t.useTemplateRef("resizeHandle"),b=t.useTemplateRef("responseLabel"),S=t.useTemplateRef("responseCanvasContainer"),E=t.useTemplateRef("responseFlow"),C=qe.useElementBounding(h),N=qe.useElementBounding(_),x=qe.useElementBounding(y),v=qe.useElementBounding(w),R=qe.useElementBounding(b),F=qe.useElementBounding(S),k=t.computed(()=>Math.max(30,C.height.value*.03)),Y=t.computed(()=>x.height.value<k.value),T=t.computed(()=>F.height.value<k.value),q=t.ref("50%"),j=t.ref("50%"),te=()=>{e.resizable&&(Y.value?(q.value="50%",j.value="50%"):(q.value="0",j.value="100%"))},X=()=>{e.resizable&&(T.value?(q.value="50%",j.value="50%"):(q.value="100%",j.value="0"))},D=t.computed(()=>C.height.value-N.height.value-v.height.value-R.height.value),{isDragging:K}=qe.useDraggable(w,{onMove(P){if(!e.resizable)return;const U=Math.max(0,P.y-x.top.value),G=Math.min(1,Math.max(0,U/D.value));q.value=`${G*100}%`,j.value=`${(1-G)*100}%`},onEnd(){e.resizable&&(x.height.value<k.value?(q.value="0",j.value="100%"):F.height.value<k.value&&(q.value="100%",j.value="0"))}});function A(){t.nextTick(()=>{var P,U;(P=g.value)==null||P.fitView(),(U=E.value)==null||U.fitView()})}return t.watch([n,o,()=>r.value.pendingLayout,()=>r.value.pendingFitView],([P,U,G,Z])=>{e.inactive||!P||!U||!G&&!Z||(G&&i(),Z&&a(!1),setTimeout(async()=>{var ee,ie;G&&(await((ee=g.value)==null?void 0:ee.autoLayout(!1)),await((ie=E.value)==null?void 0:ie.autoLayout(!1)),l("*"),G==="clearHistory"&&s()),Z&&setTimeout(()=>A(),0)},0))}),(P,U)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:h,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:_,class:t.normalizeClass(["label request",{resizable:e.resizable}]),onClick:te},[e.resizable?(t.openBlock(),t.createBlock(t.unref(xe.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:Y.value}])},null,8,["class"])):t.createCommentVNode("",!0),U[4]||(U[4]=t.createElementVNode("div",{class:"label-content"}," Request ",-1))],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:y,class:t.normalizeClass(["canvas",{dragging:t.unref(K)}]),style:t.normalizeStyle({flexBasis:q.value})},[t.createVNode(Hm,{ref_key:"requestFlow",ref:g,"flow-id":d,mode:e.mode,phase:"request",onInitialized:U[0]||(U[0]=G=>n.value=!0),onNodesChange:U[1]||(U[1]=G=>n.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:t.normalizeClass(["resize-handle",{resizable:e.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:b,class:t.normalizeClass(["label response",{dragging:t.unref(K),resizable:e.resizable}]),onClick:X},[e.resizable?(t.openBlock(),t.createBlock(t.unref(xe.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:T.value}])},null,8,["class"])):t.createCommentVNode("",!0),U[5]||(U[5]=t.createElementVNode("div",{class:"label-content"}," Response ",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:S,class:t.normalizeClass(["canvas response",{dragging:t.unref(K)}]),style:t.normalizeStyle({flexBasis:j.value})},[t.createVNode(Hm,{ref_key:"responseFlow",ref:E,"flow-id":f,mode:e.mode,phase:"response",onInitialized:U[2]||(U[2]=G=>o.value=!0),onNodesChange:U[3]||(U[3]=G=>o.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-f6dd01e7"]]),XV={class:"dk-confirm-modal-body"},ZV={class:"connections"},JV=ve(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=Be(),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,_){return l.value=m,s.value=h??[],c.value=_??[],a.value=!0,await new Promise(y=>{d=y})}return n({open:p}),(m,h)=>{const _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:e.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",XV,[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",ZV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([y,g])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${g}`,class:"connection"},[t.createVNode(t.unref(xe.AddIcon),{color:t.unref(oC)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(g),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([y,g])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${g}`,class:"connection"},[t.createVNode(t.unref(xe.RemoveIcon),{color:t.unref(Xa)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(g),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),QV={class:"dk-editor-nav"},eR={class:"top"},tR={class:"bottom"},nR=ve(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Je),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:xe.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=Cl(),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",QV,[t.createElementVNode("div",eR,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:h})=>t.createVNode(t.unref(Pe.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Pe.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(Xr)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",tR,[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(Pe.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Pe.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(xe.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(Xr)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(xe.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(Xr)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),oR={class:"dk-editor-main"},rR={class:"header"},iR={class:"actions"},aR={class:"settings"},lR={ref:"canvasContainer",class:"body"},sR=ve(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=at();function c(u){const p=ri.load(u,{schema:oi,json:!0});if(typeof p!="object"||p===null)return;const m=p,h={config:{...m,nodes:m.nodes??[]}};s(h,!0)}function d(){o.value=!1}Up({enabled:o,undo:r,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(u,p)=>(t.openBlock(),t.createElementBlock("div",oR,[t.createElementVNode("header",rR,[t.createElementVNode("div",iR,[t.createVNode(t.unref(Pe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(oa,{keys:t.unref(Hi).undo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Pe.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(Pe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(oa,{keys:t.unref(Hi).redo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Pe.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",aR,[t.createVNode(qr,{label:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:f},name:"config.debug"},null,8,["label","label-attributes"])]),p[1]||(p[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(Pe.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples")},{items:t.withCtx(()=>[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(ul,(m,h)=>t.createVNode(t.unref(Pe.KDropdownItem),{key:h,onClick:_=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${h}`)),1)]),_:2},1032,["onClick"])),64))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(Pe.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.actions.view_docs"))+" ",1),t.createVNode(t.unref(xe.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Pe.KButton),{onClick:d},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",lR,[t.createVNode(Ns,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-ce8026b0"]]),cR=["draggable"],dR={class:"icon"},uR={class:"content"},fR={class:"title"},pR={class:"description"},mR=ve(t.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(c=>({f628e926:t.unref(a),v4a9b9f82:t.unref(l)}));const o=n,{summary:r,icon:i,colors:{background:a,foreground:l}={}}=ml[e.type];function s(c){o("dragstart",c,e.type)}return(c,d)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${e.type}`]:!0,unsupported:e.unsupported}]),draggable:!e.unsupported,onDragstart:s},[t.createElementVNode("div",dR,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",uR,[t.createElementVNode("div",fR,t.toDisplayString(e.type),1),t.createElementVNode("div",pR,t.toDisplayString(t.unref(r)),1)])],42,cR))}}),[["__scopeId","data-v-38d156c9"]]),gR={class:"dk-node-panel"},hR={key:0,class:"title"},yR={class:"node-list"},_R={"aria-hidden":"true",class:"preview",inert:""},Ym=ve(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),{createNode:o}=at(),r=t.inject(co.DATAKIT_M2,!1),i=["branch","cache"],a=`dk-drag-preview-${t.useId()}`,l=t.shallowRef(),s=t.computed(()=>l.value?[{id:"preview",type:"flow",data:l.value,position:{x:0,y:0}}]:[]),c=async(d,f)=>{var R,F,k;const u=d.currentTarget,{left:p,top:m,width:h,height:_}=u.getBoundingClientRect(),y=d.clientX-p,g=d.clientY-m;l.value=o({type:f}),await t.nextTick();const w=document.querySelector(`#${a}`)||u,b=w.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:S,offsetHeight:E}=w;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${S}px`,height:`${E}px`}),document.body.appendChild(b);const C=y/h,N=g/_,x={ratioX:C,ratioY:N,offsetX:S*C,offsetY:E*N},v={action:"create-node",data:{type:f,anchor:x}};(R=d.dataTransfer)==null||R.setData(kr,JSON.stringify(v)),(F=d.dataTransfer)==null||F.setData(`${kr}/${f}`,f),(k=d.dataTransfer)==null||k.setDragImage(b,x.offsetX,x.offsetY),requestAnimationFrame(()=>{b.remove(),l.value=void 0})};return(d,f)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",gR,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",hR,[t.createVNode(u,{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",yR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(ml)),p=>(t.openBlock(),t.createBlock(mR,{key:p,type:p,unsupported:!t.unref(r)&&i.includes(p),onDragstart:c},null,8,["type","unsupported"]))),128))]),t.createElementVNode("div",_R,[t.createVNode(t.unref(Dp),{nodes:s.value},{"node-flow":t.withCtx(p=>[t.createVNode(zm,{id:a,data:p.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-03b0fafb"]]);function bR(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=at(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var h;return((h=l.value.get("vault"))==null?void 0:h.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(h,_)=>{e(s.id,"output",h,!1);const y={...s.config,[h]:_};r(s.id,y)},removeVault:h=>{const _=_n(s,"output",h);if(!_)return;const y=s.fields.output.length===1;o(s.id,_.id,!0,!1);const g=zo(s.config,h);r(s.id,g,!y),y&&a(s.id)},updateVault:(h,_,y=!0)=>{const g={...s.config,[h]:_};r(s.id,g,y)},renameVault:(h,_,y=!0)=>{var S;const g=_n(s,"output",h);if(!g)return;i(s.id,g.id,_,!1);const w=((S=s.config)==null?void 0:S[h])??"",b={...zo(s.config,h),[_]:w};r(s.id,b,y)}}}const wR=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Fe.useI18n(),i=t.inject(De.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),h=e.validateName(m,e.isEditing);return l.value=h||"",h===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,h)=>{const _=t.resolveComponent("KInput"),y=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(Vo.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:e.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:u},{"form-prefix":t.withCtx(()=>[t.createVNode(_,{"model-value":a.value,"onUpdate:modelValue":[h[0]||(h[0]=g=>a.value=g),f],"data-testid":"vault-secret-picker-secret-name-input",error:!!l.value,"error-message":l.value,label:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.placeholder"),required:""},null,8,["model-value","error","error-message","label","label-attributes","placeholder"])]),_:1},8,["additional-disabled","config","proceed-button-text","setup","title"])):(t.openBlock(),t.createBlock(y,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),kR={class:"dk-vault-panel"},CR={class:"title"},ER={class:"vault-list"},NR={key:0,class:"vault-list-item"},xR={class:"vault-list-item-key"},SR={class:"vault-list-item-key-text"},vR=ve(t.defineComponent({__name:"VaultField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=zr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=Fe.useI18n(),f=t.computed(()=>new Set(i.value.map(g=>g.key))),u=()=>{const g=a();c.value=g,s.value=g},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=g=>{if(!s.value)throw new Error("no selected entry");const w=s.value.key,b=w!==g.secretName,S=s.value.value!==g.secretRef,E=b||S;s.value.value=g.secretRef,s.value.key=g.secretName,c.value?r("add",g.secretName,g.secretRef):E&&r("update",g.secretName,g.secretRef,b?w:void 0),c.value=null,p()},h=g=>{s.value=g},_=g=>{l(g.id),r("remove",g.key)},y=(g,w)=>{var b;if(!g)return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(g)&&!(w&&g===((b=s.value)==null?void 0:b.key)))return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(g,w)=>{var C,N;const b=t.resolveComponent("KButton"),S=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",kR,[t.createElementVNode("h3",CR,t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(b,{appearance:"tertiary",class:"add-button",size:"small",onClick:u},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",ER,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),x=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:x.id},[x.key?(t.openBlock(),t.createElementBlock("div",NR,[t.createElementVNode("div",xR,[t.createVNode(t.unref(xe.KeyIcon),{color:t.unref(Wr),size:16},null,8,["color"]),t.createElementVNode("div",SR,t.toDisplayString(x.key),1)]),t.createVNode(E,null,{items:t.withCtx(()=>[t.createVNode(S,{onClick:v=>h(x)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),t.createVNode(S,{danger:"",onClick:v=>_(x)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.MoreIcon),{color:t.unref(Wa)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(wR,{"is-editing":!!s.value&&!c.value,"secret-name":(C=s.value)==null?void 0:C.key,"secret-ref":(N=s.value)==null?void 0:N.value,"validate-name":y,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function AR(){const{getSchema:e}=He();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=ln(n);return o.fields.forEach(r=>{const i=Object.keys(r)[0];if(i==="cache"){const a=r[i];r[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]}}}),o})}const IR={class:"dk-cache-panel"},TR={class:"title"},PR={key:0,class:"cache-item"},OR={class:"cache-item-key"},$R={class:"cache-item-key-text"},BR={class:"dk-resource-cache-form"},VR={key:1},RR={key:2,class:"dk-cache-inline-redis"},DR=ve(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const o=n,{getDefault:r,formData:i}=He(),a=Nt("cache");if(a.error)throw new Error("No cache schema");const l=t.ref(!1),{i18n:{t:s}}=Fe.useI18n(),c=t.computed(()=>!(d.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),d=t.computed(()=>{var S;return(S=a.value.value)==null?void 0:S.strategy}),f=t.computed(()=>{var S;return(S=a.value.value)!=null&&S.redis?ri.dump(a.value.value.redis,{indent:2,noRefs:!0}):""}),u=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},h=()=>{u(),a.value.value||(a.value.value=r("cache"),a.value.value.strategy="memory")},_=()=>{l.value=!1,o("update",i)},y=Bs.createdBundledHighlighter({langs:{yaml:()=>import("@shikijs/langs/yaml")},themes:{"github-dark":()=>import("@shikijs/themes/github-dark")},engine:()=>mg.createJavaScriptRegexEngine()}),{codeToHtml:g}=Bs.createSingletonShorthands(y),w=()=>{var S,E;d.value==="memory"&&((S=i.cache)!=null&&S.partial_id)&&((E=i.cache)==null||delete E.partial_id)};async function b({codeElement:S,language:E,code:C}){S.innerHTML=await g(C,{lang:E,theme:"github-dark",structure:"inline"})}return(S,E)=>{const C=t.resolveComponent("KButton"),N=t.resolveComponent("KDropdownItem"),x=t.resolveComponent("KDropdown"),v=t.resolveComponent("KLabel"),R=t.resolveComponent("KCodeBlock"),F=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",IR,[t.createElementVNode("h3",TR,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",PR,[t.createElementVNode("div",OR,[t.createVNode(t.unref(xe.DeployIcon),{color:t.unref(Wr),size:t.unref(wd)},null,8,["color","size"]),t.createElementVNode("div",$R,t.toDisplayString(e.strategy),1)]),t.createVNode(x,null,{items:t.withCtx(()=>[t.createVNode(N,{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),t.createVNode(N,{danger:"",onClick:m},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:t.withCtx(()=>[t.createVNode(C,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.MoreIcon),{color:t.unref(Wa)},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(C,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode(F,{"action-button-disabled":!c.value,"action-button-text":t.unref(s)("actions.save"),"max-width":"640px",title:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:l.value,onCancel:p,onProceed:_},{default:t.withCtx(()=>{var k,Y;return[t.createElementVNode("div",BR,[t.createVNode(_d,{items:[{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":w},null,8,["items"]),d.value==="memory"?(t.openBlock(),t.createBlock(ht,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),d.value==="redis"?(t.openBlock(),t.createElementBlock("div",VR,[t.createVNode(v,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(oo.RedisConfigurationSelector),{"model-value":(k=t.unref(i).cache)==null?void 0:k.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":E[0]||(E[0]=T=>t.unref(i).cache.partial_id=T)},null,8,["model-value"])])):t.createCommentVNode("",!0),d.value==="redis"&&!((Y=t.unref(i).cache)!=null&&Y.partial_id)&&f.value?(t.openBlock(),t.createElementBlock("div",RR,[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),t.createVNode(R,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:b},null,8,["code"])])):t.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-ad53942e"]]),MR={class:"dk-resources-panel"},LR=ve(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=AR(),o=t.ref(0),{addVault:r,removeVault:i,updateVault:a,renameVault:l,formData:s}=bR();function c(_,y,g){g&&g!==_&&l(g,_,!1),a(_,y)}const{state:d,commit:f}=at(),u=t.computed(()=>({cache:d.value.cacheConfig}));function p(_){d.value.cacheConfig=_.cache,f()}function m(){d.value.cacheConfig=void 0,f()}function h(){o.value++}return(_,y)=>(t.openBlock(),t.createElementBlock("div",MR,[t.createVNode(yt,{data:t.unref(s),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(vR,{name:"vault",onAdd:t.unref(r),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),y[0]||(y[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(yt,{key:`${o.value}`,data:u.value,schema:t.unref(n)},{default:t.withCtx(()=>{var g;return[t.createVNode(DR,{strategy:(g=u.value.cache)==null?void 0:g.strategy,onCancel:h,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),FR={class:"header"},UR={class:"title"},KR={class:"body"},jR={class:"panel"},GR=ve(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{sidePanelExpanded:o}=Cl(),{propertiesPanelOpen:r,selectedNode:i}=at(),a=t.inject(co.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,d=>{d||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(d,f)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",FR,[t.createElementVNode("h2",UR,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",KR,[t.createElementVNode("div",jR,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(u,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=p=>l.value=p),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),l.value==="nodes"?(t.openBlock(),t.createBlock(Ym,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(LR,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(Ym,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),qR=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock($t,{items:t.unref(La)([...t.unref(Tu)]),name:e.name},null,8,["items","name"]))}}),zR=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=He(),{i18n:o}=Be(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(xt,{"as-child":"",name:e.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($t,{key:l,clearable:"","enable-filtering":"",items:e.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)},t.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:t.withCtx(s=>[t.renderSlot(i.$slots,"item-label",t.mergeProps({ref_for:!0},s))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),HR=["data-testid"],YR={class:"dk-inputs-map-field-entry-body"},WR={class:"dk-inputs-map-field-entry-content"},XR=ve(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}=zr(o,r),{i18n:{t:c}}=Be(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(E,C="key"){var N;d.value&&(await t.nextTick(),(N=d.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function h(){const{id:E}=a(),C=i.value.findIndex(({key:N})=>!N);m(C===-1?i.value.length-1:C),f.value=E}function _(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function y(E){p=E.key}function g(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 C=o.fieldNameValidator("input",p,E.key);if(C)return u.value[E.id]=C,C}function b(E){w(E)}function S(E,C){E.id!==f.value&&r("change:inputs",E.key,C)}return t.watch(()=>i.value,E=>{f.value&&(E.find(({id:C})=>C===f.value)||(f.value=null))}),(E,C)=>{const N=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),v=t.resolveComponent("KInput"),R=t.resolveComponent("KSelect"),F=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(N,{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),(k,Y)=>(t.openBlock(),t.createElementBlock("div",{key:k.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${Y}`},[t.createVNode(x,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${Y}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),t.createElementVNode("div",YR,[t.createElementVNode("div",WR,[t.createVNode(v,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${Y}`,modelValue:k.key,"onUpdate:modelValue":[T=>k.key=T,T=>w(k)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Y,"data-testid":`ff-key-${t.unref(s).path.value}.${Y}`,error:!!u.value[k.id],"error-message":u.value[k.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:T=>b(k),onChange:T=>g(k),onFocus:T=>y(k)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(R,{modelValue:k.value,"onUpdate:modelValue":T=>k.value=T,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${Y}`,"enable-filtering":"",items:e.items,label:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:T=>S(k,(T==null?void 0:T.value)??null)},t.createSlots({_:2},[E.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:T})=>[t.renderSlot(E.$slots,"item-label",t.mergeProps({ref_for:!0},T),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(F,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${Y}`,icon:"",onClick:T=>_(k)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,HR))),128)),t.createVNode(F,{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(xe.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-dda8b239"]]),ZR={class:"dk-source-item"},ia=ve(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("span",ZR,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(kt)[e.item.type].icon),{color:t.unref(Wr),size:t.unref(Xr)},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),JR={key:1,class:"dk-inputs-field-or"},xn=ve(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}=He(),{i18n:{t:i}}=Be(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?zR:XR: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.createVNode(t.unref(Pe.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(r)("input")?(t.openBlock(),t.createBlock($t,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":t.withCtx(h=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),()=>[t.createVNode(ia,{item:h},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",JR,[t.createElementVNode("span",null,t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(Pe.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:3,"field-name-validator":e.fieldNameValidator,items:e.items,"key-order":e.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},{"item-label":t.withCtx(h=>[t.createVNode(ia,{item:h},null,8,["item"])]),_:1},8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-90518c04"]]),QR={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"},eD={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 tD(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function Jn(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Bo(e){const{i18n:{t:n}}=Be(),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 Wm(e,n){const{i18n:{t:o}}=Be();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 nD(e=0,n=1/0,o){const{i18n:{t:r}}=Be();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 Xm(e){const{i18n:{t:n}}=Be();return function(r){if(!tD(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 xs(e,n){const{i18n:{t:o}}=Be();return function(i){if(i==null)return;const a=Xm(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 Ss(e=-1/0,n=1/0,o){const{i18n:{t:r}}=Be();return function(a){if(a==null)return;const l=Xm(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 oD(e,n){const{state:o}=at(),{i18n:{t:r}}=Be();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 rD(e,n,o){const{i18n:{t:r}}=Be();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 iD(){const{i18n:{t:e}}=Be();return function(o){if(hl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Zm(e){const{i18n:{t:n}}=Be(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Jn(Bo(o),Wm("identifier",o),iD(),oD(e,o))}function aD(e){const{i18n:{t:n}}=Be(),{getNodeById:o}=at();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 Jn(Bo(s),rD(i,o(e),l))(a)}}function lD(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 vr(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=at(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>lD(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(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function mn(e,n){const o=t.inject(co.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:d,disconnectEdge:f,connectEdge:u,invalidConfigNodeIds:p,commit:m,revert:h}=at(),{i18n:{t:_}}=Be(),y=Km(),g=t.computed(()=>{const D=a(e);if(!D)throw new Error("Node not existed");return D}),w=t.computed(()=>{const K=r.value.edges.filter(A=>A.target===e).reduce((A,P)=>{var ie,he;const U=a(P.source),G=(ie=bn(U,"output",P.sourceField))==null?void 0:ie.id,Z=(he=bn(g.value,"input",P.targetField))==null?void 0:he.name,ee=U.id+(G?`.${G}`:"");return Z?A.inputs={...A.inputs,[Z]:ee}:A.input=ee,A},{});return g.value.fields.input.forEach(A=>{K.inputs||(K.inputs={}),K.inputs[A.name]||(K.inputs[A.name]=null)}),{...g.value.config,...K,name:g.value.name}}),b=D=>{i(e,D??"",!0,`${e}:rename`)},S=(D,K=!0)=>{if(!n)throw new Error("getFormInnerData is not defined");const A=zo(n(),["name","input","inputs"]),P=D?`update:${e}:${D}`:void 0;d(e,A,K,P)},E=(D,K)=>{const A=_n(g.value,D,K);if(!A)throw new Error(`Field with name "${K}" not found in node "${g.value.name}"`);return A},C=(D,K,A)=>{const P=!!A;l(e,D,K,!P),P&&F(K,A)},N=(D,K,A)=>{const P=E(D,K).id;s(e,P,A)},x=(D,K)=>{const A=E(D,K).id;c(e,A)},v=t.computed(()=>r.value.edges.filter(D=>D.target===e&&!D.targetField)[0]),R=t.computed(()=>r.value.edges.filter(D=>D.target===e&&D.targetField)),F=async(D,K)=>{const A=K==null,P=E("input",D).id;if(A){const le=R.value.find(ue=>ue.targetField===P);le&&f(le.id);return}const{nodeId:U,fieldId:G}=$u(K),Z=E("input",D).id,ee=[];v.value&&(ee.push(Sr(v.value,a)),f(v.value.id,!1));const ie=R.value.find(le=>le.targetField===P);ie&&(ee.push(Sr(ie,a)),f(ie.id,!1)),u({source:U,sourceField:G,target:e,targetField:Z},!1);const he=Cs(U,G,e,Z,a),J=ee[0]&&he?ee[0][1]===he[1]:!1;if(m(),J||ee.length===0)return;await y(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[he],ee)||h()},k=async D=>{if(D==null){v.value&&f(v.value.id);return}const A=[];for(const ee of R.value)A.push(Sr(ee,a)),f(ee.id,!1);v.value&&f(v.value.id,!1);const{nodeId:P,fieldId:U}=$u(D);u({source:P,sourceField:U,target:e,targetField:void 0},!1);const G=Cs(P,U,e,void 0,a);if(m(),A.length===0)return;await y(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[G],A)||h()},Y=D=>{const K=[...r.value.edges,{source:D,target:e}];return wl(ci(K))},T=t.computed(()=>{var K,A;const D=[];for(const P of r.value.nodes)if(!(!o&&P.type==="vault"||!((K=Co(P.type).io)!=null&&K.output))&&P.fields.output&&P.id!==e&&!(P.type==="property"&&!ss((A=P.config)==null?void 0:A.property))&&!Y(P.id)&&!(g.value.phase==="request"&&P.phase==="response")&&!(P.type==="vault"&&P.fields.output.length===0)){D.push({value:P.id,label:P.name,type:P.type});for(const G of P.fields.output)D.push({value:`${P.id}.${G.id}`,label:`${P.name}.${G.name}`,type:P.type})}return D}),q=t.computed(()=>g.value.fields.input.map(D=>D.name)||[]);function j(D){p.value.delete(e),D||p.value.add(e)}const te=aD(e);function X(D,K,A){const P=a(e);if(!P)throw new Error("Node not found when validating field name");const U=_n(P,D,K);return te(D,A,U==null?void 0:U.id)}return{formData:w,inputOptions:T,inputEdge:v,inputsEdges:R,inputsFieldNames:q,currentNode:g,setName:b,setConfig:S,addField:C,renameFieldByName:N,removeFieldByName:x,setInputs:F,setInput:k,nameValidator:Zm(e),fieldNameValidator:X,toggleNodeValid:j}}function gn(e){const{getSchema:n}=He();return t.computed(()=>{if(Vt(e))switch(e){case"response":return eD;case"service_request":return QR}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 Qn=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Be(),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"])}}}),sD=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Be(),o=t.useTemplateRef("form"),r=gn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=mn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:h}=vr({validationConfig:{url:Jn(Bo({fieldName:"URL"}),Wm("url",{fieldName:"URL"})),timeout:Jn(xs("integer"),Ss(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),_=h("url",()=>l("url")),y=h("timeout",()=>l("timeout"));return(g,w)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{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(mo,{error:t.unref(_).error.value,"error-message":t.unref(_).errorMessage.value,name:"url",onBlur:t.unref(_).onBlur,"onUpdate:modelValue":t.unref(_).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(qR,{name:"method",onUpdate:w[0]||(w[0]=S=>t.unref(l)())}),t.createVNode(Mn,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"timeout",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(mo,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=S=>t.unref(l)("ssl_server_name"))}),t.createVNode(xn,{"field-name-validator":t.unref(m),"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"])}}}),cD=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=mn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(yt,{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"]))}}),dD=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=mn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(yt,{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"]))}}),Jm={jqlang:"https://jqlang.org/manual/"},uD=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=Be(),r=t.useTemplateRef("form"),i=gn("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:h,nameValidator:_,toggleNodeValid:y,fieldNameValidator:g}=mn(e.nodeId,()=>r.value.getInnerData());function w(x,v){u("input",x,v)}function b(x){p("input",x)}function S(x,v){m("input",x,v)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=vr({validationConfig:{jq:Jn(Bo({fieldName:E}),nD(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:y}),N=C("jq",()=>s("jq"));return(x,v)=>{const R=t.resolveComponent("KLabel"),F=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(a).name,validate:t.unref(_),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(R,{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(mo,{autosize:"",error:t.unref(N).error.value,"error-message":t.unref(N).errorMessage.value,label:t.unref(E),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(N).onBlur,"onUpdate:modelValue":t.unref(N).onUpdate},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(F,{"hide-icon":"",href:t.unref(Jm).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Jm).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(g),"field-names":t.unref(h),items:t.unref(c),"onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":S},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),fD=ve(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}=zr(o,r,!1),{i18n:d}=Be(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(E,C="key"){var N;f.value&&(await t.nextTick(),(N=f.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function h(){const E=l(),C=a.value.findIndex(({key:N})=>!N);m(C===-1?a.value.length-1:C),u.value=E}function _(E){var C;E.id===((C=u.value)==null?void 0:C.id)&&(u.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function y(E){p=E.key}function g(E){var C;if(b(E)){E.key=p,delete i.value[E.id];return}if(E.id===((C=u.value)==null?void 0:C.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,C){var x;if(C.id===((x=u.value)==null?void 0:x.id))return;const N=E.target.value.trim();r("change:value",C.key,N)}function b(E){delete i.value[E.id];const C=o.fieldNameValidator("output",p,E.key);if(C)return i.value[E.id]=C,C}function S(E){b(E)}return t.watchEffect(()=>{u.value&&!a.value.some(E=>E.id===u.value.id)&&a.value.push(u.value)}),(E,C)=>{const N=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton"),R=t.resolveComponent("KInput"),F=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(N,{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),(k,Y)=>(t.openBlock(),t.createBlock(F,{key:k.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${Y}`},{actions:t.withCtx(()=>[t.createVNode(v,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${Y}`,icon:"",onClick:T=>_(k)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(R,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${Y}`,modelValue:k.key,"onUpdate:modelValue":[T=>k.key=T,T=>b(k)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Y,"data-testid":`ff-key-${t.unref(c).path.value}.${Y}`,error:!!i.value[k.id],"error-message":i.value[k.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:T=>S(k),onChange:T=>g(k),onFocus:T=>y(k)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(R,{modelValue:k.value,"onUpdate:modelValue":T=>k.value=T,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${Y}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:T=>w(T,k)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(v,{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(xe.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-5e17f8cb"]]);function pD(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 aa(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 mD(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 gD=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=at(),{fieldNameValidator:c}=mn(e.nodeId),d=gn("static"),f=Zm(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(S=>S.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const h=t.computed(()=>{var v;if(!u.value)return{};const b=((v=u.value.config)==null?void 0:v.values)??{},S={},E=o(u.value.id).map(R=>R.sourceField).filter(Boolean).map(R=>bn(u.value,"output",R)).map(R=>R==null?void 0:R.name).filter(Boolean),C=u.value.fields.output.map(R=>R.name),N=Object.keys(b);return new Set([...N,...E,...C]).forEach(R=>{if(R in b){S[R]=b[R];return}S[R]=""}),{name:u.value.name,values:pD(S)}});function _(b,S){if(!u.value)throw new Error("No selected node");const E=S!==void 0;if(r(e.nodeId,"output",b,!E),E){const C={values:aa({...h.value.values,[b]:S})};l(e.nodeId,C)}}function y(b,S){if(!u.value)throw new Error("No selected node");const E=_n(u.value,"output",b);if(!E)throw new Error("No field found to rename");const C={values:aa(mD(h.value.values??{},b,S))};l(e.nodeId,C,!1),i(e.nodeId,E.id,S)}function g(b){var C;if(!u.value)throw new Error("No selected node");const S=_n(u.value,"output",b);if(!S)throw new Error("No field found to delete");a((C=u.value)==null?void 0:C.id,S.id,!0,!1);const E={values:aa({...h.value.values})};delete E.values[b],l(e.nodeId,E)}function w(b,S){if(!u.value)throw new Error("No selected node");const E={...h.value.values};E[b]=S;const C={values:aa(E)};l(e.nodeId,C)}return(b,S)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>{var E;return[t.createVNode(Qn,{name:((E=u.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(fD,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":_,"onChange:value":w,"onRemove:field":g,"onRename:field":y},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),hD={class:"dk-kong-property-item"},yD={class:"property-type"},_D={class:"property-badges"},bD=ve(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=Be(),r=e,i=n,{formData:a}=He(),l=t.ref(Er(a.property)),s=t.computed(()=>Nr(a.property)),c=t.ref(ls(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(Wn).map(([m])=>{var y;const h=Nr(m)?(y=a.property)==null?void 0:y.startsWith(m.replace(Oo,"")):a.property===m;return{label:h&&c.value?m.replace(Oo,c.value):m,value:m,selected:h}}));function u(m){const h=Yi.find(_=>{var y;return(y=a.property)==null?void 0:y.startsWith(_)});h&&(a.property=h+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Er(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Er(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=ls(m),l.value=Er(m)}),(m,h)=>{const _=t.resolveComponent("KBadge"),y=t.resolveComponent("KSelect"),g=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(y,{key:d.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.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=>e.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",hD,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",yD,t.toDisplayString(t.unref(Wn)[w.value].dataType),1)]),t.createElementVNode("div",_D,[t.unref(Wn)[w.value].readable?(t.openBlock(),t.createBlock(_,{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(Wn)[w.value].writable?(t.openBlock(),t.createBlock(_,{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(g,{key:0,"model-value":c.value,"onUpdate:modelValue":[h[1]||(h[1]=w=>c.value=w),u],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:h[2]||(h[2]=w=>e.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),wD=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=at(),a=gn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,fieldNameValidator:_}=mn(e.nodeId,()=>n.value.getInnerData()),y=t.computed(()=>cs(l.value.property));function g(b){var E;const S=(E=o.value)==null?void 0:E.id;if(!S)throw new Error("Expected selectedNode to be defined");ss(b)||i(S,!1),cs(b)||r(S,!1),c()}const{fields:w}=vr({validationConfig:()=>({property:Bo({fieldName:"Property"}),key:Nr(l.value.property)?Bo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:ls(l.value.property)}),toggleNodeValid:h});return(b,S)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode($t,{name:"content_type",onUpdate:S[0]||(S[0]=E=>t.unref(c)())}),t.createVNode(bD,{validators:t.unref(w),"onUpdate:modelValue":g,"onUpdate:propertyKey":S[1]||(S[1]=E=>t.unref(c)("property-key"))},null,8,["validators"]),y.value?(t.openBlock(),t.createBlock(xn,{key:0,"field-name-validator":t.unref(_),"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"]))}}),kD=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=mn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:m}=vr({validationConfig:{status:Jn(xs("integer",{fieldName:"Status"}),Ss(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),h=m("status",()=>a("status"));return(_,y)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Mn,{error:t.unref(h).error.value,"error-message":t.unref(h).errorMessage.value,name:"status",onBlur:t.unref(h).onBlur,"onUpdate:modelValue":t.unref(h).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(qr,{name:"warn_headers_sent","onUpdate:modelValue":y[0]||(y[0]=g=>t.unref(a)())}),t.createVNode(xn,{"field-name-validator":t.unref(p),"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"]))}});function CD(e){const n=mn(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=at(),{i18n:{t:l}}=Be(),s=Km(),c=Lm(),d=t.computed(()=>{var b;const g={...n.formData.value},w=nr(((b=n.currentNode.value)==null?void 0:b.type)||"branch");for(const S of w)(!(S in g)||g[S]==null)&&(g[S]=[]);return g});function f(g,w,b){const S=r(g),E=r(b),C=S?`${S.name}.${w}`:`${g}.${w}`,N=E?E.name:b;return[C,N]}function u(g){return(g==null?[]:Array.isArray(g)?g:[g]).filter(w=>Ou(w))}function p(g,w){return i.wouldCreateCycle(g,w)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(g,w,b){const S=[],E=[],C=[];for(const N of b){const x=i.findMembership(N);if(!x||x.ownerId===g&&x.branch===w)continue;const v=i.getMembers(x.ownerId,x.branch).filter(R=>R!==N);C.push({ownerId:x.ownerId,branch:x.branch,members:v}),S.push(f(g,w,N)),E.push(f(x.ownerId,x.branch,N))}return{conflictUpdates:C,addedAssignments:S,removedAssignments:E}}function h(g,w,b,S){let E=!1;for(const C of S)E=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||E;return E=i.setMembers(g,w,b,{commit:!1})||E,E}async function _(g,w){const b=n.currentNode.value,S=u(w),E=i.prepareMembers(b.id,g,S),C=i.getMembers(b.id,g);if(yl(C,E))return!0;const N=E.filter(k=>!C.includes(k));for(const k of N)if(p(b.id,k))return!1;const{conflictUpdates:x,addedAssignments:v,removedAssignments:R}=m(b.id,g,N);return x.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),v,R)?!1:(h(b.id,g,E,x)&&a(),!0)}const y=t.computed(()=>{const g=n.currentNode.value;return!g||!i?[]:o.value.nodes.filter(w=>w.id!==e&&!Vt(w.type)&&w.phase===g.phase&&!i.wouldCreateCycle(g.id,w.id)).map(w=>({value:w.id,label:w.name,type:w.type}))});return{...n,formData:d,branchOptions:y,updateBranchMembers:_}}const ED=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Be(),o=gn("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:d,setInputs:f,inputsFieldNames:u,fieldNameValidator:p,updateBranchMembers:m}=CD(e.nodeId);async function h(_,y){await m(_,y)||(r.value+=1)}return(_,y)=>(t.openBlock(),t.createBlock(yt,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Pe.KLabel),{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($t,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:y[0]||(y[0]=g=>h("then",g))},{"item-label":t.withCtx(g=>[t.createVNode(ia,{item:g},null,8,["item"])]),_:1},8,["items"]),t.createVNode($t,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:y[1]||(y[1]=g=>h("else",g))},{"item-label":t.withCtx(g=>[t.createVNode(ia,{item:g},null,8,["item"])]),_:1},8,["items"]),t.createVNode(xn,{"field-name-validator":t.unref(p),"field-names":t.unref(u),items:t.unref(l),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),ND=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("cache"),{i18n:{t:r}}=Be(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=mn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:h}=vr({validationConfig:()=>({ttl:Jn(xs("integer",{fieldName:"TTL"}),Ss(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),_=h("ttl",()=>l("ttl"));return(y,g)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Pe.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(qr,{name:"bypass_on_error","onUpdate:modelValue":g[0]||(g[0]=w=>t.unref(l)("bypass_on_error"))}),t.createVNode(Mn,{error:t.unref(_).error.value,"error-message":t.unref(_).errorMessage.value,name:"ttl",onBlur:t.unref(_).onBlur,"onUpdate:modelValue":t.unref(_).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(m),"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"]))}}),xD=["innerHTML"],SD=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${jp}px`},offsetTop:{default:`${sP}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=at(),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 sD;case"service_request":return cD;case"response":return dD;case"jq":return uD;case"static":return gD;case"property":return wD;case"exit":return kD;case"branch":return ED;case"cache":return ND;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Pe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":e.maxWidth,"offset-top":e.offsetTop,visible:e.visible,"z-index":t.unref(lP),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(Bt)(o.value.type)},null,8,xD)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(qm,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),vD=ve(SD,[["__scopeId","data-v-bad25d77"]]),AD={class:"dk-editor-content"},ID={class:"main"},TD=ve(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=at();function r(){n.value=!1}t.watch(o,a=>{a||r()});const i=t.ref(!1);return t.onMounted(()=>{i.value=!0}),(a,l)=>{var s;return t.openBlock(),t.createElementBlock("div",AD,[t.createVNode(t.unref(GR)),t.createElementVNode("div",ID,[t.createVNode(sR)]),t.createVNode(vD,{"node-id":(s=t.unref(o))==null?void 0:s.id,visible:t.unref(n),onClose:r},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-8f04afa6"]]),PD={key:0,class:"dk-editor-modal"},OD=ve(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({v8758bbfe:`${t.unref(aP)}px`,v30e03211:`${t.unref(Kp)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=at();kV(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=qe.useScrollLock(document);t.watch(n,s=>{a.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(t.openBlock(),t.createElementBlock("div",PD,[t.createVNode(nR,{class:"nav",onBack:l}),t.createVNode(TD,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(JV,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),$D={class:"dk-flow-editor"},BD={class:"flow-panels-container"},VD={class:"overlay"},RD=ve(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Je),{formData:r}=He(),i=n;function a(c,d,f,u){const p={...r.config,nodes:c};f!==void 0&&(p.resources=f);const m={...r.__ui_data,...d};r.config=p,r.__ui_data=m,u!=null?r.partials=[{id:u}]:r.partials&&(r.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=ju(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),N1({enabled:l}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",$D,[t.createElementVNode("div",BD,[t.createVNode(Ns,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",VD,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=u=>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(xe.ExpandIcon))]),_:1})])]),t.createVNode(OD,{open:t.unref(l),"onUpdate:open":d[1]||(d[1]=u=>t.isRef(l)?l.value=u:null)},null,8,["open"])])}}}),[["__scopeId","data-v-82ca6e78"]]);function DD(e,n){const o=[],r=(i,a)=>{typeof a=="string"&&o.push({nodeName:e.name,path:["nodes",n,...i],value:a})};if("input"in e&&e.input!=null&&r(["input"],e.input),"inputs"in e&&e.inputs&&typeof e.inputs=="object")for(const[i,a]of Object.entries(e.inputs))a!=null&&r(["inputs",i],a);if("output"in e&&e.output!=null&&r(["output"],e.output),"outputs"in e&&e.outputs&&typeof e.outputs=="object")for(const[i,a]of Object.entries(e.outputs))a!=null&&r(["outputs",i],a);return o}function MD(e){const n=e.path[2];return n==="output"||n==="outputs"}function Qm(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function eg(e,n){const o=e.input!==void 0&&e.input!==null,r=Qm(e.inputs);o&&r&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=e.output!==void 0&&e.output!==null,a=Qm(e.outputs);i&&a&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function tg(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,d)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,d)=>{for(const f of DD(c,d)){const u=f.value.split(".",1)[0];if(a.has(u)||o.addIssue({code:"custom",message:`Unknown node "${u}" in connection "${f.value}"`,path:f.path}),MD(f)){const p=`${f.nodeName}->${u}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${u}" and "${u}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${u}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${u}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${u}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const LD=W.z.enum(Au),FD=W.z.enum(wo),ng=e=>wo.includes(e),vs=W.z.enum(Iu),og=vs.options;W.z.union([vs,LD]);const UD=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,rg=W.z.string().min(1).max(255).regex(UD,"Invalid node name (snake_case / kebab-case only)").refine(e=>!ng(e),"Name clashes with reserved implicit node").brand(),la=W.z.union([FD,rg]),KD=W.z.string().min(1).brand(),jD=["then","else"];W.z.enum(jD);const ut=W.z.string().refine(e=>{if(la.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return la.safeParse(o).success&&KD.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),ig=W.z.enum(Tu),eo=W.z.object({type:W.z.string(),name:rg,input:ut,inputs:W.z.record(W.z.string(),ut).nullish(),output:ut,outputs:W.z.record(W.z.string(),ut).nullish()}).loose().superRefine((e,n)=>{eg(e,n)}),GD=W.z.object({type:W.z.string(),name:W.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),og.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${og.join(", ")}`})}),qD=eo.safeExtend({type:W.z.literal("call"),method:ig.nullish(),ssl_server_name:W.z.string().min(1).nullish(),timeout:W.z.number().int().min(0).max(2147483646).nullish(),url:W.z.url(),inputs:W.z.object({body:ut,headers:ut,query:ut}).partial().nullish(),outputs:W.z.object({body:ut,headers:ut,status:ut}).partial().nullish()}).strict(),zD=eo.safeExtend({type:W.z.literal("exit"),status:W.z.number().int().min(200).max(599).nullish(),warn_headers_sent:W.z.boolean().nullish(),output:W.z.never().optional(),outputs:W.z.never().optional()}).strict(),HD=eo.safeExtend({type:W.z.literal("jq"),jq:W.z.string().min(1).max(10240),outputs:W.z.never().optional()}).strict(),YD=eo.safeExtend({type:W.z.literal("property"),content_type:W.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:W.z.string().min(1),inputs:W.z.never().optional(),outputs:W.z.never().optional()}).strict(),WD=eo.safeExtend({type:W.z.literal("static"),values:W.z.record(W.z.string(),W.z.unknown()),input:W.z.never().optional(),inputs:W.z.never().optional()}).strict(),XD=eo.safeExtend({type:W.z.literal("cache"),bypass_on_error:W.z.boolean().nullish(),inputs:W.z.object({data:ut,key:ut,ttl:ut}).partial().nullish(),outputs:W.z.object({data:ut,hit:ut,miss:ut,stored:ut}).partial().nullish(),ttl:W.z.number().int().gt(0).nullish()}).strict(),ZD=eo.safeExtend({type:W.z.literal("branch"),then:W.z.array(la).nullish(),else:W.z.array(la).nullish()}).strict(),JD=GD.pipe(W.z.discriminatedUnion("type",[qD,zD,HD,YD,WD,XD,ZD])),QD=W.z.record(W.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),W.z.string().min(1).max(4095)),eM=W.z.object({dictionary_name:W.z.string().default("kong_db_cache")}),tM=W.z.object({host:W.z.string().default("127.0.0.1"),port:W.z.number().int().min(0).max(65535).default(6379)}),nM=W.z.object({ip:W.z.string().default("127.0.0.1"),port:W.z.number().int().min(0).max(65535).default(6379)}),oM=W.z.object({host:W.z.string().optional().default("127.0.0.1"),port:W.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:W.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:W.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:W.z.number().int().min(0).max(2147483646).default(2e3),username:W.z.string().optional(),password:W.z.string().optional(),sentinel_username:W.z.string().optional(),sentinel_password:W.z.string().optional(),database:W.z.number().int().optional().default(0),keepalive_pool_size:W.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:W.z.number().int().min(0).max(2147483646).optional(),sentinel_master:W.z.string().optional(),sentinel_role:W.z.enum(["master","slave","any"]).optional(),sentinel_nodes:W.z.array(tM).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:W.z.array(nM).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:W.z.boolean().default(!1).optional(),ssl_verify:W.z.boolean().default(!1).optional(),server_name:W.z.string().optional(),cluster_max_redirections:W.z.number().int().default(5).optional(),connection_is_proxied:W.z.boolean().default(!1).optional(),timeout:W.z.number().int().optional(),sentinel_addresses:W.z.array(W.z.string()).min(1).optional(),cluster_addresses:W.z.array(W.z.string()).min(1).optional()}).superRefine((e,n)=>{var c;const o=e.host!==void 0&&e.host!==null,r=e.port!==void 0&&e.port!==null;(o&&!r||!o&&r)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,l=!!((c=e.sentinel_nodes)!=null&&c.length),s=[i,a,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!o&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),rM=W.z.object({strategy:W.z.enum(["memory","redis"]).optional(),memory:eM,redis:oM}),iM=W.z.object({vault:QD.nullish(),cache:rM.nullish()});W.z.array(W.z.object({id:W.z.string()})),W.z.object({nodes:W.z.array(JD).min(1,"At least one node is required"),debug:W.z.boolean().nullish(),resources:iM.nullish()}).strict().superRefine((e,n)=>{tg(e,wo,n)});const ag=vs.options,As=W.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!ng(e),"Node name conflicts with reserved implicit node"),ft=W.z.string().refine(e=>{if(!e||/\s/.test(e))return!1;const n=e.indexOf(".");if(n===-1)return!0;const o=e.slice(0,n),r=e.slice(n+1);return o.length>0&&r.length>0},"Invalid connection"),to=W.z.object({type:W.z.string(),name:As,input:ft.nullish(),inputs:W.z.record(W.z.string(),ft.nullish()).nullish(),output:ft.nullish(),outputs:W.z.record(W.z.string(),ft.nullish()).nullish()}).loose().superRefine((e,n)=>{eg(e,n)}),aM=W.z.object({type:W.z.string(),name:W.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),ag.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${ag.join(", ")}`})}),lM=to.safeExtend({type:W.z.literal("call"),method:ig.nullish(),ssl_server_name:W.z.string().nullish(),timeout:W.z.union([W.z.number(),W.z.string()]).nullish(),url:W.z.string().nullish(),inputs:W.z.object({body:ft.nullish(),headers:ft.nullish(),query:ft.nullish()}).partial().nullish(),outputs:W.z.object({body:ft.nullish(),headers:ft.nullish(),status:ft.nullish()}).partial().nullish()}).strict(),sM=to.safeExtend({type:W.z.literal("exit"),status:W.z.union([W.z.number(),W.z.string()]).nullish(),warn_headers_sent:W.z.boolean().nullish(),output:W.z.never().optional(),outputs:W.z.never().optional()}).strict(),cM=to.safeExtend({type:W.z.literal("jq"),jq:W.z.string().nullish(),outputs:W.z.never().optional()}).strict(),dM=to.safeExtend({type:W.z.literal("property"),content_type:W.z.string().nullish(),property:W.z.string().nullish(),inputs:W.z.never().optional(),outputs:W.z.never().optional()}).strict(),uM=to.safeExtend({type:W.z.literal("static"),values:W.z.record(W.z.string(),W.z.unknown()).nullish(),input:W.z.never().optional(),inputs:W.z.never().optional()}).strict(),fM=to.safeExtend({type:W.z.literal("cache"),bypass_on_error:W.z.boolean().nullish(),inputs:W.z.object({data:ft.nullish(),key:ft.nullish(),ttl:ft.nullish()}).partial().nullish(),outputs:W.z.object({data:ft.nullish(),hit:ft.nullish(),miss:ft.nullish(),stored:ft.nullish()}).partial().nullish(),ttl:W.z.union([W.z.number(),W.z.string()]).nullish()}).strict(),pM=to.safeExtend({type:W.z.literal("branch"),then:W.z.array(As).nullish(),else:W.z.array(As).nullish()}).strict(),mM=aM.pipe(W.z.discriminatedUnion("type",[lM,sM,cM,dM,uM,fM,pM])),gM=W.z.record(W.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),W.z.string().min(1).max(4095)),hM=W.z.object({dictionary_name:W.z.string().default("kong_db_cache")}),yM=W.z.object(),_M=W.z.object({strategy:W.z.enum(["memory","redis"]).optional(),memory:hM.optional(),redis:yM.optional()}),bM=W.z.object({vault:gM.nullish(),cache:_M.nullish()}),wM=W.z.object({nodes:W.z.array(mM).nullish(),debug:W.z.boolean().nullish(),resources:bM.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||tg(e,wo,n)}).nullish(),kM={class:"option-label"},CM=["innerHTML"],EM=ve(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}=Xe.createI18n("en-us",Je),o=e,r=t.inject(co.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(co.DATAKIT_M2,!1),{editorMode:a}=Cl(),l=t.computed(()=>r&&c.value?a.value:"code"),s={flow:xe.DesignIcon,code:xe.CodeblockIcon},c=t.ref(!0),d=t.computed(()=>{const _=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return _[0].disabled=!c.value,_}),f=t.computed(()=>{switch(l.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}});t.watch(l,()=>{var _;(_=o.onValidityChange)==null||_.call(o,{model:"config",valid:!0})});function u(){var _;(_=o.onValidityChange)==null||_.call(o,{model:"config",valid:!0})}function p(){u()}function m(_){var w;u();const{success:y}=wM.safeParse(_);let g=y;if(!i&&g){const b=_;(w=b==null?void 0:b.resources)!=null&&w.vault&&(g=!1)}c.value=g}function h(_){var y;c.value=!1,(y=o.onValidityChange)==null||y.call(o,{model:"config",valid:!1,error:_})}return(_,y)=>{const g=t.resolveComponent("KTooltip");return t.openBlock(),t.createBlock(xd,t.mergeProps(o,{class:"dk-form"}),t.createSlots({default:t.withCtx(w=>[t.createVNode(yt,t.mergeProps(w,{tag:"div"}),{default:t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(RD,{key:0,"is-editing":o.isEditing,onChange:p},null,8,["is-editing"])):l.value==="code"?(t.openBlock(),t.createBlock(r1,{key:1,class:"code-editor",editing:o.isEditing,onChange:m,onError:h},null,8,["editing"])):t.createCommentVNode("",!0)]),_:1},16)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:f.value},null,8,CM)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Pe.KSegmentedControl),{"model-value":l.value,options:d.value,"onUpdate:modelValue":y[0]||(y[0]=w=>a.value=w)},{"option-label":t.withCtx(({option:w})=>[t.createVNode(g,{disabled:c.value||w.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",kM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(s[w.value]))),t.createTextVNode(" "+t.toDisplayString(w.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])]),key:"0"}:void 0]),1040)}}}),[["__scopeId","data-v-6b230b53"]]),lg=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))},sg=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},NM=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Fe.useI18n(),l={prepareFormData:c=>{var f,u;const d=so(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{sg(p.headers),sg(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=so(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{lg(p.headers),lg(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(yt,{config:l,data:e.data,schema:e.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(xt,{"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-proxy.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(Yr)]),_:1},8,["data","schema"]))}}),xM=t.defineComponent({__name:"AIMcpProxyForm",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(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ha,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(NM,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),SM=ve(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change"],setup(e,{emit:n}){const o=n,r=t.computed(()=>{const l=e.schema.fields.find(d=>Object.keys(d)[0]==="config").config.fields,s=[],c=[];for(const d of l){const f=Object.keys(d)[0];d[f].required?s.push(f):c.push(f)}return{required:s,nonRequired:c}}),i={hasValue:l=>!!(l!=null&&l.config)};function a(l){o("change",l)}return(l,s)=>(t.openBlock(),t.createBlock(yt,{config:i,data:e.data,schema:e.schema,tag:"div",onChange:a},{default:t.withCtx(()=>[t.createVNode(xt,{"as-child":"",name:"config",omit:r.value.nonRequired,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(Yr,{class:"ff-advanced-fields"},{default:t.withCtx(()=>[t.createVNode(xt,{"as-child":"",name:"config",omit:r.value.required,"reset-label-path":"reset"},null,8,["omit"])]),_:1})]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-3e5ed51d"]]),cg=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:xM,CommonForm:t.defineComponent({__name:"CommonForm",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 n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(xd,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(SM,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:EM,RequestCalloutForm:vk,ServiceProtectionForm:PC},Symbol.toStringTag,{value:"Module"})),vM={class:"kong-ui-entities-plugin-form"},AM={key:1,class:"entity-form"},IM={class:"plugin-config-empty-state"},TM=ve(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},engine:{type:String,required:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var ie,he;const o=Object.keys(De.sharedForms),r=Object.keys(cg);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}=ye.useAxios((ie=a.config)==null?void 0:ie.axiosRequestConfig),{parseSchema:s}=Fe.useSchemas({entityId:((he=a.entityMap.focusedEntity)==null?void 0:he.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}=Fe.usePluginHelpers(),m=Fe.useExperimentalFreeForms(),{objectsAreEqual:h}=ye.useHelpers(),{i18n:{t:_}}=Be(),y=J=>a.config.app==="konnect"?J.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?J.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):J,g=(J,re)=>{let le=`${a.config.apiBaseUrl}${Ze.form[a.config.app].entityGetOne}`;return le=y(le),le=le.replace(/{entity}/gi,J),le=le.replace(/{id}/gi,re),le},w=J=>{let re=`${a.config.apiBaseUrl}${Ze.form[a.config.app].entityGetAll}`;return re=y(re),re=re.replace(/{entity}/gi,J),re},b=(J,re)=>{const le=g(J,re);return l.get(le)},S=(J,re)=>{const le=w(J);return a.config.app==="konnect"?l.get(le).then(ue=>{const{data:{data:fe}}=ue;if(delete re.size,delete re.offset,fe.length&&Object.keys(re).length===1){const $=Object.keys(re)[0],B=fe.filter(M=>M[$]?!!M[$].toLowerCase().includes(re[$].toLowerCase()):!1);ue.data.data=B}return ue}):l.get(le,{params:re})},E=(J,re,le)=>{const ue=w(J);if(a.config.app==="konnect"){const{size:fe,offset:$,...B}=re;if(J==="consumer_groups")return l.get(ue,{params:{size:1e3},signal:le}).then(V=>{const{data:{data:Q}}=V;if(Q.length&&Object.keys(B).length===1){const z=Object.keys(B)[0],ae=Q.filter(I=>I[z]?!!I[z].toLowerCase().includes(B[z].toLowerCase()):!1);V.data.data=ae}return V});const M={size:fe,offset:$};for(const V of Object.keys(B))M.filter={[V]:{contains:B[V]}};return l.get(ue,{params:M,signal:le})}return l.get(ue,{params:re,signal:le})},C=(J,re=50)=>{const le=w(J);return l.get(le,{params:{size:re}})};t.provide(De.FORMS_API_KEY,{getOne:b,getAll:S,getAllV2:E,peek:C}),t.provide(De.FORMS_CONFIG,a.config);const N=t.ref(""),x=t.ref(""),v=t.ref(null),R=t.ref({}),F=t.reactive({}),k=t.reactive({}),Y=t.computed(()=>{var J;return(J=v.value)==null?void 0:J.options}),T=t.ref(!1),q=t.ref(),j=(J,re)=>{T.value=J??"",q.value=re},te=J=>{var re;(re=q.value)==null||re.call(q,J),T.value=!1},X=()=>{var B,M;const J={...a.schema},re=k,le=F,ue=Object.keys(re),fe={};if(!u(R.value))for(let V=0;V<((M=(B=R.value)==null?void 0:B.fields)==null?void 0:M.length);V++)J[R.value.fields[V].model]=R.value.fields[V];De.customFields.forEach(V=>{J[V]&&(J[V].fields.forEach(Q=>{Q.fields&&Q.fields.forEach(z=>{J[z.model]=z}),Q.model&&(J[Q.model]=Q)}),delete J[V])}),ue.forEach(V=>{var be;if(!J[V]){V==="partials"&&(fe[V]=re[V]);return}const Q=J[V];let z=re[V];const ae=le[V],I=Array.isArray(z)?"array":typeof z,L=Q?Q.valueType:null,O=Q?Q.valueArrayType:null,oe=Q?Q.transform:null;if(z==null&&ae==null&&!Q.submitWhenNull)return;if(Q){if(L&&I!==L)switch(L){case"array":I==="string"&&z.length&&(z=z.split(",").map(ke=>{if(ke=ke.trim(),O==="string")return String(ke);if(O==="number")return Number(ke);if(O==="boolean"){if(typeof ke=="string")return ke.toLowerCase()==="true"||ke==="1";if(typeof ke=="number")return ke===1}return ke})),(!z||!z.length)&&(z=Q.submitWhenNull?null:[]);break;case"number":z=Number(z);break;case"boolean":I==="string"&&(z=z.toLowerCase()==="true"||z==="1"),I==="number"&&(z=z===1);break;case"string":z=z==null?"":String(z);break}else L==="array"&&(!z||!z.length?z=Q.submitWhenNull?null:[]:((be=Q.inputAttributes)==null?void 0:be.type)==="number"&&(z=z.map(ke=>Number(ke))));if(Q.type==="array"&&Q.nestedFields){const ke=de=>{Object.keys(de).forEach(Ne=>{de[Ne]&&typeof de[Ne]=="object"&&!Array.isArray(de[Ne])&&de[Ne]!==null?ke(de[Ne]):(de[Ne]===void 0||de[Ne]===null||typeof de[Ne]=="number"&&isNaN(de[Ne])||typeof de[Ne]=="string"&&de[Ne].trim().length===0)&&delete de[Ne]})};z&&typeof z=="object"&&ke(z)}Q.type==="object-advanced"&&Q.fields&&z!==null&&(Object.entries(z).length===0?z=null:Object.keys(z).forEach(ke=>{Array.isArray(z[ke])||(z[ke]=z[ke].split(","))}))}let ne=c(V);if(Q.fieldNameHasDashes){const[ke,...de]=ne.split(".").reverse();ne=[ke.replace(/_/g,"-"),...de].reverse().join(".")}if(L==="object-expand"){let ke;[ne,ke]=ne.split(".");let de={};fe[ne]&&(de=fe[ne]),de[ke]=z,z=de}ae!==void 0&&z===""&&z!==ae?fe[ne]=L==="object"?{}:null:Q.type==="checklist"&&z===""?fe[ne]=[]:z!==""&&(fe[ne]=z),fe[ne]=oe?oe(z):fe[ne],p(ne,fe)});const $=d(fe);return x.value&&Object.assign($,U.value),$},D=(J,re={})=>{f(k,re,J,a.editing),i("model-updated",{model:k,originalModel:F,data:X()})},K=(J,re)=>{var fe;const le={[re]:J};typeof((fe=a.schema[re])==null?void 0:fe.modelTransformer)=="function"&&(le[re]=a.schema[re].modelTransformer(J));const ue=Object.assign({},k,le);Object.assign(k,ue),i("model-updated",{model:k,originalModel:F,data:X()})},A=J=>{i("validity-change",J)},P=(J,re)=>{Object.keys(J).forEach(le=>{var M,V;let ue=re?`${re}-${le}`:le,fe=a.schema[ue];if(!fe){const Q=re?`${re}-${le.replace(/-/g,"_")}`:le.replace(/-/g,"_");(M=a.schema[Q])!=null&&M.fieldNameHasDashes&&(ue=Q,fe=a.schema[ue]),re&&((V=a.schema[re])==null?void 0:V.keyFromObject)===le&&(ue=re,fe=a.schema[ue])}const $=J[le],B=typeof $;if(fe&&fe.type==="object-advanced"&&!$){k[ue]={},F[ue]={};return}if(Array.isArray($)){k[ue]=JSON.parse(JSON.stringify($)),F[ue]=JSON.parse(JSON.stringify($));return}if(B==="object"&&$&&!$.length)return P($,ue);if(B==="object"&&$&&$.length&&fe.type==="input"){k[ue]=$.join(", "),F[ue]=$.join(", ");return}k[ue]=$,F[ue]=$}),i("model-updated",{model:k,originalModel:F,data:X()})},U=t.shallowRef(a.record),G=J=>{U.value=J,i("model-updated",{model:{...k,...J},originalModel:F,data:X()})},Z=t.ref(!0),ee=()=>{var J;if(a.record&&a.schema&&(P({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)&&P({consumer_id:a.record.consumer_id||a.record.consumer}),P(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)&&P({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&&D("redis",{partials:a.record.partials}),x.value?G(a.record):P(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const re={};for(const le in a.entityMap){const ue=a.entityMap[le].id,fe=a.entityMap[le].idField,$=fe==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(fe).replace("_","-"));Object.prototype.hasOwnProperty.call(k,$)&&(re[$]=ue)}P(re)}if((J=a.entityMap.consumer)!=null&&J.id&&a.schema&&a.credential){const re={};Object.prototype.hasOwnProperty.call(k,"consumer")&&(re.consumer=a.entityMap.consumer.id),P(re)}Z.value=!1};return t.watch(Z,J=>{i("loading",J)}),t.watch(()=>a.schema,(J,re)=>{var ue,fe;if(h(J||{},re||{}))return;const le=s(J,void 0,void 0,a.engine);Object.assign(k,le.model),R.value={fields:(fe=(ue=R.value)==null?void 0:ue.fields)==null?void 0:fe.map($=>({...$,disabled:$.disabled||!1}))},Object.assign(F,JSON.parse(JSON.stringify(le.model))),x.value=a.engine?a.engine==="vfg"?void 0:Da(le.model.name,m)||"CommonForm":Da(le.model.name,m),N.value=De.getSharedFormName(le.model.name),ee()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var J,re;v.value=s(a.schema,void 0,void 0,a.engine),Object.assign(k,((J=v.value)==null?void 0:J.model)||{}),R.value=((re=v.value)==null?void 0:re.schema)||{},ee()}),(J,re)=>{var ue;const le=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",vM,[Z.value?(t.openBlock(),t.createBlock(le,{key:0,type:"form"})):k.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",AM,[x.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(cg[x.value]),{key:0,"form-model":k,"form-options":Y.value,"form-schema":R.value,"is-editing":e.editing,model:e.record,"on-form-change":G,"on-model-updated":K,"on-validity-change":A,schema:e.rawSchema,onGlobalAction:re[0]||(re[0]=(fe,$)=>J.$emit("globalAction",fe,$))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Vo.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:j}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):N.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(De.sharedForms)[N.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":k,"form-options":Y.value,"form-schema":R.value,"is-editing":e.editing,"on-model-updated":K,"on-partial-toggled":D,"show-new-partial-modal":fe=>J.$emit("showNewPartialModal",fe)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Vo.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:j}),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(De.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:k,options:Y.value,schema:R.value,onModelUpdated:K,onPartialToggled:D,onRefreshModel:X,onShowNewPartialModal:re[1]||(re[1]=fe=>J.$emit("showNewPartialModal",fe))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",IM,t.toDisplayString(t.unref(_)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ue=t.unref(Gt)[k.name])!=null&&ue.fieldRules&&(a.config.isNewOtelSchema||k.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(A0,{rules:t.unref(Gt)[k.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Vo.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:j}),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(Vo.VaultSecretPicker),{config:a.config,setup:T.value,onCancel:re[2]||(re[2]=()=>T.value=!1),onProceed:te},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-3a5319dd"]]),PM={key:1},OM=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",PM,[t.renderSlot(n.$slots,"default")]))}}),$M={class:"kong-ui-entities-plugin-form-container"},BM={key:0},VM={class:"plugin-form-actions"},RM=ve(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},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var ae;const o=n,r=e,i=no.useRouter(),{i18n:{t:a}}=Fe.useI18n(),{customSchemas:l,typedefs:s}=Fe.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Fe.usePluginHelpers(),{getMessageFromError:d}=ye.useErrors(),{capitalize:f}=ye.useStringHelpers(),{objectsAreEqual:u}=ye.useHelpers(),{axiosInstance:p}=ye.useAxios((ae=r.config)==null?void 0:ae.axiosRequestConfig),m=t.ref(!1),h=t.computed(()=>!!r.pluginId),_=t.computed(()=>r.pluginId?ye.EntityBaseFormType.Edit:ye.EntityBaseFormType.Create),y=t.ref(void 0),g=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),S=t.ref({}),E=t.ref(),C=t.ref();t.provide(Cd,{redisType:E,redisPath:C,isEditing:h.value});const N=t.ref(!1),x=t.reactive({enabled:!0,protocols:[],tags:[]}),v=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),R=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&R.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const F=t.ref(""),k=t.computed(()=>{var L;if(w.value){let O=Ze.form[r.config.app].credential[_.value];return O=O.replace(/{resourceEndpoint}/gi,j.value),O}let I;return r.config.entityType&&r.config.entityId?I=Ze.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):I=Ze.form[r.config.app].edit.all,r.config.app==="konnect"&&((L=Gt[r.pluginType])!=null&&L.useUIData)?`${I}?__ui_data=true`:I}),Y=()=>{m.value=!m.value},T=t.computed(()=>{var be,ke,de,Ne,Te,me,ge,ot;const I=r.config.entityType==="consumers"&&r.config.entityId||((ke=(be=b.value)==null?void 0:be.consumer)==null?void 0:ke.id),L=r.config.entityType==="consumer_groups"&&r.config.entityId||((Ne=(de=b.value)==null?void 0:de.consumer_group)==null?void 0:Ne.id),O=r.config.entityType==="services"&&r.config.entityId||((me=(Te=b.value)==null?void 0:Te.service)==null?void 0:me.id),oe=r.config.entityType==="routes"&&r.config.entityId||((ot=(ge=b.value)==null?void 0:ge.route)==null?void 0:ot.id);if(!(I||L||O||oe))return{global:{entity:H.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ne={};return O&&(ne.service={entity:H.PluginScope.SERVICE,entityEndpoint:"services",id:O,idField:An.SERVICE}),oe&&(ne.route={entity:H.PluginScope.ROUTE,entityEndpoint:"routes",id:oe,idField:An.ROUTE}),I&&(ne.consumer={entity:H.PluginScope.CONSUMER,entityEndpoint:"consumers",id:I,idField:An.CONSUMER}),L&&(ne.consumer_group={entity:H.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:L,idField:An.CONSUMER_GROUP}),r.config.entityType&&(ne.focusedEntity={entity:H.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:An[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),ne}),q=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||_.value===ye.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}),j=t.computed(()=>{var O;const I=r.developer?"developers":"consumers",L=((O=io[r.pluginType])==null?void 0:O.endpoint)||"/plugins";return`${I}/${r.config.entityId}${r.developer?"/credentials":""}${L}`}),te=I=>{const L=Array.from(new Set(I.map(O=>typeof O)));return L.length>1?"string":L[0]},X=(I,L,O,oe)=>{var de,Ne;let ne=L&&L.fields||[];const be=l[r.pluginType],ke=(Ne=(de=io[r.pluginType])==null?void 0:de.schema)==null?void 0:Ne.fields;return Array.isArray(ne)&&(ne=ne.reduce((Te,me)=>{const ge=Object.keys(me)[0];return ge.match(/-/g)?Te[ge.replace(/-/g,"_")]={...me[ge],fieldNameHasDashes:!0}:Te[ge]=me[ge],Te},{})),Object.keys(ne).sort().forEach(Te=>{var Sn,vn,st,Ye,pt,Ct,mt;const me=ne[Te];me.type==="set"&&(me.type="array");const ge=I?`${I}-${Te}`:`${Te}`;if((Sn=be==null?void 0:be.fieldsToDelete)!=null&&Sn.includes(ge)){td(O,ge);return}if(Object.prototype.hasOwnProperty.call(me,"overwrite")||me.hidden)return;if(me.type==="table")return X(ge,me.schema,O);if(me.fields)return oe&&me.type==="record"?(O[ge]={type:"object",model:Te,schema:{fields:Object.values(X(ge,me,{},!0))}},O):X(ge,me,O);if(O[ge]={id:ge,model:Te},O[ge].type=me.type==="boolean"?"checkbox":"input",O[ge].required=me.required,O[ge].referenceable=me.referenceable,ge.startsWith("config-"))if(!oe&&me.type==="array"&&(F.value=ge),oe&&F.value&&ge.startsWith(F.value)){const $e=ge.slice(F.value.length+1);O[ge].label=$e.split("-").map(c).join(".")}else O[ge].label=c(ge);if((I==="config"||I.startsWith("config-"))&&(vn=ne[Te])!=null&&vn.description&&(O[ge].help=Ir.marked.parse(ne[Te].description,{mangle:!1,headerIds:!1})),me.type==="map"){if(O[ge].type="object-advanced",O[ge].values=me.values,me.values.type==="array"){const{type:$e}=me.values.elements||{};O[ge].schema={fields:[{schema:{fields:[{...Ve,model:ge,valueArrayType:$e==="integer"?"number":$e||"string",inputAttributes:{...Ve.inputAttributes,type:$e==="integer"?"number":"text",inputMode:$e==="integer"?"numeric":"text"}}]}}]}}else me.values.fields&&(O[ge].schema={fields:[{type:"object",model:"object",schema:{fields:me.values.fields.map($e=>{const se=Object.keys($e)[0];return{model:se,type:"input",label:f(se),placeholder:se,inputType:$e[se].type}})}}]});return O}if(me.enum&&me.type==="array"&&(O[ge].type="checklist",O[ge].values=me.enum,O[ge].multi=!0,O[ge].multiSelect=!0),me.one_of&&me.type!=="array"&&(O[ge].type="select",O[ge].values=me.one_of,O[ge].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),me.elements&&me.type==="array"){const $e=me.elements;if(O[ge].referenceable=$e.referenceable,O[ge].elements=$e,["string","integer","number"].includes($e.type)&&!$e.one_of){const{id:se,help:_e,label:ce,hint:pe,values:we,referenceable:Se,model:Oe}=O[ge],{inputAttributes:Re,...Me}=JSON.parse(JSON.stringify(Ve));Re.type=$e.type==="string"?"text":"number",O[ge]={id:se,help:_e,label:ce,hint:pe,values:we,referenceable:Se,model:Oe,inputAttributes:Re,...Me}}}if(me.hint&&(O[ge].hint=me.hint),be&&!be.overwriteDefault&&Object.keys(be).forEach($e=>{if($e===ge){const{help:se,label:_e,hint:ce,values:pe,referenceable:we,elements:Se}=O[ge],{help:Oe,...Re}=be[$e];O[ge]={help:se,label:_e,hint:ce,values:pe,referenceable:we,elements:Se,...Re},typeof Oe=="string"&&(O[ge].help=Ir.marked.parse(Oe,{mangle:!1,headerIds:!1}))}}),me.type==="array"&&((st=me.elements)==null?void 0:st.type)==="record"&&Array.isArray(me.elements.fields)){let $e={};for(const _e of me.elements.fields)$e={...$e,..._e};const se=(Ct=(pt=(Ye=O[ge])==null?void 0:Ye.items)==null?void 0:pt.schema)==null?void 0:Ct.fields;if(Array.isArray(se))for(const _e of O[ge].items.schema.fields){const ce=(mt=$e[_e.model])==null?void 0:mt.description;_e.help===void 0&&typeof ce=="string"&&(_e.help=Ir.marked.parse(ce,{mangle:!1,headerIds:!1}))}if(se||(O[ge].type="array",O[ge].newElementButtonLabelClasses="kong-form-new-element-button-label",O[ge].fieldClasses="array-card-container-wrapper",O[ge].itemContainerComponent="FieldArrayCardContainer",O[ge].items={type:"object",schema:{fields:Object.values(X(ge,me.elements,{},!0))}},O[ge].items.schema.fields.forEach(_e=>{var ce,pe;for(const we of me.elements.fields){const Se=Object.keys(we)[0],Oe=((pe=(ce=_e.id)==null?void 0:ce.split)==null?void 0:pe.call(ce,"-"))??[];if(Oe[Oe.length-1]===Se){_e.model=Se,_e.label=c(Se);break}}}),me.elements.type==="record"&&(O[ge].nestedFields=!0)),!O[ge].nestedFields)O[ge].items.default=()=>me.elements.fields.reduce((_e,ce)=>{const pe=Object.keys(ce)[0];return _e[pe]=ce[pe].default,_e},{});else{const _e=(ce,pe)=>{if(ce.type==="object"){ce.model&&(pe[ce.model]={});for(const we of ce.schema.fields)_e(we,ce.model?pe[ce.model]:pe)}else ce.model&&(pe[ce.model]=ce.default)};O[ge].items.default=()=>{const ce={};return _e(O[ge].items,ce),ce}}}if(w.value&&ke){for(let $e=0;$e<ke.length;$e++)if(ke[$e][ge]){O[ge]={...O[ge],...ke[$e][ge]};break}}if(me.required&&me.type!=="boolean"&&(O[ge].required=!0,O[ge].selectOptions={hideNoneSelectedText:!0}),me.required&&me.type==="boolean"&&(O[ge].default=me.default??!1),me.default!=null&&typeof me.default!="object"&&me.default!=="function"&&(O[ge].default=me.default),O[ge].type==="input"){["string","number"].includes(typeof O[ge].default)&&r.config.app==="konnect"&&(O[ge].placeholder=`Default: ${O[ge].default===""?"<empty string>":O[ge].default}`);const{type:$e}=me.elements||{};$e&&(O[ge].valueArrayType=$e==="integer"?"number":$e),O[ge].inputType=me.type==="array"||me.type==="string"?me.encrypted?"password":"text":me.type}let ot="string";me.enum?ot=te(me.enum):me.type==="boolean"?ot="boolean":me.type==="number"||me.type==="integer"?(ot="number",O[ge].inputType="number"):me.type==="array"?(ot="array",O[ge].default=me.default,me.len_min>0&&(O[ge].submitWhenNull=!0)):me.type==="foreign"?ot="object":me.default&&Array.isArray(me.default)?(ot="array",O[ge].valueArrayType=te(me.default)):me.default&&(ot=typeof me.default),O[ge].valueType=ot,me.fieldNameHasDashes&&(O[ge].fieldNameHasDashes=!0)}),O},D=()=>{var ge,ot,Sn,vn,st,Ye,pt,Ct,mt,$e,se,_e;const I=((ge=Gt[r.pluginType])==null?void 0:ge.scope.includes(H.PluginScope.SERVICE))??!0,L=((ot=Gt[r.pluginType])==null?void 0:ot.scope.includes(H.PluginScope.ROUTE))??!0,O=((Sn=Gt[r.pluginType])==null?void 0:Sn.scope.includes(H.PluginScope.CONSUMER))??!0,oe=r.config.disableConsumerGroupScope?!1:((vn=Gt[r.pluginType])==null?void 0:vn.scope.includes(H.PluginScope.CONSUMER_GROUP))??!0,ne=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Ye=(st=b.value)==null?void 0:st.consumer)!=null&&Ye.id),be=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((Ct=(pt=b.value)==null?void 0:pt.consumer_group)!=null&&Ct.id),ke=r.config.entityType==="services"&&!!r.config.entityId||!!(($e=(mt=b.value)==null?void 0:mt.service)!=null&&$e.id),de=r.config.entityType==="routes"&&!!r.config.entityId||!!((_e=(se=b.value)==null?void 0:se.route)!=null&&_e.id),Ne=[],Te=(ce,pe,we)=>ce?a("plugins.form.disable_source_scope_change",{scope:we}):pe?a("plugins.form.disable_data_retrieving",{scope:we}):"",me=ce=>{var pe,we;return((we=(pe=r.scopedEntitiesPermissions)==null?void 0:pe[ce])==null?void 0:we.canRetrieve)===!1};if(I){const ce=me("service"),pe="services",we=ke&&r.disableScopeSelection;Ne.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:pe,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:we||ce,disabledTooltip:Te(we,ce,pe)})}if(L){const ce=me("route"),pe="routes",we=de&&r.disableScopeSelection;Ne.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:pe,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:we||ce,disabledTooltip:Te(we,ce,pe)})}if(O){const ce=me("consumer"),pe="consumers",we=ne&&r.disableScopeSelection;Ne.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:pe,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:we||ce,disabledTooltip:Te(we,ce,pe)})}if(oe){const ce=me("consumer_group"),pe="consumer_groups",we=be&&r.disableScopeSelection;Ne.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:pe,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:we||ce,disabledTooltip:Te(we,ce,pe)})}if(Ne.length){const ce=[...I?["service"]:[],...L?["route"]:[],...O?["consumer"]:[],...oe?["consumer_group"]:[]],we=ce.splice(ce.length-2,2).map(Oe=>a(Oe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Oe}.plural`)).join(`${ce.length>0?",":""} and/or `),Se=["Specific",[...ce.length>0?[ce.map(Oe=>a(Oe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Oe}.plural`)).join(", ")]:[],we].join(", ")].join(" ");q.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Se,fields:[]}),q.selectionGroup.fields[1].fields=Ne}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(q,l[r.pluginType].formSchema)},K=t.computed(()=>!u(v.fields,x,!0)),A=t.computed(()=>!Q.value&&!N.value&&(_.value===ye.EntityBaseFormType.Create||K.value)),P=t.ref(!1),U=t.ref(),G=I=>{r.credential&&I.password&&(I.password=""),v.fields.id=(I==null?void 0:I.id)||void 0,U.value=I==null?void 0:I.ordering,Object.assign(x,v.fields),b.value=I,P.value=!0},Z=t.ref({}),ee=I=>{var L;v.fields=I.model,v.fields.id=((L=b.value)==null?void 0:L.id)||void 0,Object.assign(x,I.originalModel),Z.value=I.data,r.isWizardStep&&o("model-updated",{model:v.fields,data:I.data,resourceEndpoint:j.value})},ie=t.ref(new Map),he=t.computed(()=>[v.clientErrorMessage,v.serverErrorMessage].filter(Boolean).join("; ")),J=I=>{I.valid?ie.value.delete(I.model):ie.value.set(I.model,I.error),v.clientErrorMessage=[...ie.value.entries()].map(([L,O])=>`${L}: ${typeof O=="string"?O:d(O)}`).join("; "),v.clientErrorMessage&&(v.serverErrorMessage="")};t.watch([T,P],(I,L)=>{const O=I[0]!==L[0],oe=I[1],ne=L[1];if(!w.value&&_.value===ye.EntityBaseFormType.Edit&&(O||oe&&oe!==ne)){const be=X("config",S.value,q);ue.value&&(be._isCustomPlugin=!0),E.value&&(be._supported_redis_partial_type=E.value),g.value=be}},{deep:!0});const re=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},le=t.computed(()=>{const I=r.config.entityType&&r.config.entityId&&!r.developer,L=w.value?Ze.form[r.config.app].credential[_.value]:Ze.form[r.config.app][_.value][I?"forEntity":"all"];let O=`${r.config.apiBaseUrl}${L}`;return r.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),O=O.replace(/{resourceEndpoint}/gi,j.value),O=O.replace(/{id}/gi,r.pluginId),O=O.replace(/{entityType}/gi,r.config.entityType||""),O=O.replace(/{entityId}/gi,r.config.entityId||""),O}),ue=t.computed(()=>!Object.keys(Gt).includes(r.pluginType)),fe=t.computed(()=>{const I=Z.value;if(w.value){for(const L in H.PluginScope){const O=H.PluginScope[L];I[O]&&!I[O].id&&(I[O]={id:r.config.entityId})}delete I.created_at}return Z.value.partials&&C.value&&td(I,C.value),I}),$=t.computed(()=>{const{__ui_data:I,...L}={...fe.value};return L}),B=async()=>{if(!v.clientErrorMessage&&!r.isWizardStep)try{v.isReadonly=!0;let I;const L=JSON.parse(JSON.stringify(fe.value)),O=l[r.pluginType];typeof(O==null?void 0:O.shamefullyTransformPayload)=="function"&&O.shamefullyTransformPayload({originalModel:x,model:v.fields,payload:L,schema:g.value}),_.value==="create"?I=await p.post(le.value,L):_.value==="edit"&&(I=r.config.app==="konnect"||E.value&&L.partials?await p.put(le.value,Object.assign({ordering:U.value},L)):await p.patch(le.value,L)),Object.assign(x,v.fields),o("update",I==null?void 0:I.data)}catch(I){v.serverErrorMessage=d(I),o("error",I)}finally{v.isReadonly=!1}},M=t.computed(()=>{var oe;const I=w.value?(oe=io[r.pluginType])==null?void 0:oe.schemaEndpoint:r.pluginType,L=w.value?Ze.form[r.config.app].credentialSchema:Ze.form[r.config.app].pluginSchema;let O=`${r.config.apiBaseUrl}${L}`;return r.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),O=O.replace(/{plugin}/gi,I),O}),V=t.ref(""),Q=t.ref(!1),z=t.ref("");return t.onBeforeMount(async()=>{var I,L,O,oe;Q.value=!0;try{if(w.value&&r.config.app==="konnect"){const ne=(I=io[r.pluginType])==null?void 0:I.schemaEndpoint,be=Ig[ne];V.value=ne,g.value=X("",be,{}),Q.value=!1}else{const ne=r.schema??(await p.get(M.value)).data;if(y.value=ne,ne)if(w.value)g.value=X("",ne,{}),Q.value=!1;else{const be=ne.fields.find(de=>de.config);S.value=be?be.config:ne,ne.supported_partials&&(E.value=Object.keys(ne.supported_partials).find(de=>[Pr.REDIS_CE,Pr.REDIS_EE].includes(de)),C.value=(L=ne.supported_partials[E.value])==null?void 0:L[0]),D();const ke=(O=ne.fields.find(de=>de.protocols))==null?void 0:O.protocols;if(ke){const{default:de=[],elements:Ne={}}=ke;q.protocols.default=de,q.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:de.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(oe=Ne.one_of)!=null&&oe.length&&(q.protocols.values=Ne.one_of.map(Te=>({label:Te,value:Te})))}if(P.value||_.value===ye.EntityBaseFormType.Create){const de=X("config",S.value,q);E.value&&(de._supported_redis_partial_type=E.value),ue.value&&(de._isCustomPlugin=!0),g.value=de}}}}catch(ne){console.error(ne),z.value=d(ne),o("error:fetch-schema",ne)}finally{Q.value=!1}}),(I,L)=>{const O=t.resolveComponent("KSkeleton"),oe=t.resolveComponent("KEmptyState"),ne=t.resolveComponent("KButton"),be=t.resolveComponent("KTabs"),ke=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",$M,[Q.value?(t.openBlock(),t.createBlock(O,{key:0,type:"form"})):z.value?(t.openBlock(),t.createBlock(oe,{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(ye.EntityBaseForm),{key:2,"can-submit":A.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ye.SupportedEntityType).Plugin,"error-message":he.value,"fetch-url":k.value,"form-fields":fe.value,"is-readonly":v.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:re,"onFetch:error":L[4]||(L[4]=de=>I.$emit("error",de)),"onFetch:success":G,onLoading:L[5]||(L[5]=de=>I.$emit("loading",de))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",BM)):(t.openBlock(),t.createBlock(OM,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",VM,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ne,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:L[3]||(L[3]=de=>Y())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(ne,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:v.isReadonly,onClick:re},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(ne,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!A.value||v.isReadonly,type:"submit",onClick:B},{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:B},null,32),t.createVNode(TM,{config:e.config,credential:w.value,editing:_.value===t.unref(ye.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":T.value,"raw-schema":y.value,record:b.value,schema:g.value,onGlobalAction:L[0]||(L[0]=(de,Ne)=>I.$emit("globalAction",de,Ne)),onLoading:L[1]||(L[1]=de=>N.value=de),onModelUpdated:ee,onShowNewPartialModal:L[2]||(L[2]=de=>I.$emit("showNewPartialModal",de)),onValidityChange:J},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","engine","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(ke,{"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:Y},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(be,{"data-testid":"form-view-configuration-slideout-tabs",tabs:R.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ye.JsonCodeBlock),{config:e.config,"entity-record":$.value,"fetcher-url":le.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ye.YamlCodeBlock),{"entity-record":$.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ye.TerraformCodeBlock),{"credential-type":V.value,"entity-record":$.value,"entity-type":t.unref(ye.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-b9713619"]]),DM={class:"kong-ui-entities-plugins-list"},MM={class:"button-row"},LM={class:"name-cell-wrapper"},FM={class:"info-wrapper"},UM={key:0,class:"info-name"},KM={key:1,class:"info-name"},jM={key:2,class:"info-type"},GM={key:1},qM=ve(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 V,Q;const o=Fe.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Fe.useI18n(),l=no.useRouter(),{axiosInstance:s}=ye.useAxios((V=i.config)==null?void 0:V.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ye.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var z;return((z=i.config)==null?void 0:z.entityType)==="consumers"}),m=t.computed(()=>{var z;return((z=i.config)==null?void 0:z.entityType)==="consumer_groups"}),h=i.config.app==="konnect"||ye.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),_=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),y={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(Q=i.config)!=null&&Q.entityId||(y.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),y.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(y.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),y.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const g=y,w=t.computed(()=>{var ae,I,L,O;let z=i.config.entityType?`${i.config.apiBaseUrl}${Ze.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Ze.list[i.config.app].all}`;return i.config.app==="konnect"?z=z.replace(/{controlPlaneId}/gi,((ae=i.config)==null?void 0:ae.controlPlaneId)||""):i.config.app==="kongManager"&&(z=z.replace(/\/{workspace}/gi,(I=i.config)!=null&&I.workspace?`/${i.config.workspace}`:"")),z.replace(/{entityType}/gi,((L=i.config)==null?void 0:L.entityType)||"").replace(/{entityId}/gi,((O=i.config)==null?void 0:O.entityId)||"")}),b=t.ref(""),S=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:y.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:{...y.enabled,label:a("search.filter.field.enabled")},name:y.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:C,fetcherCacheKey:N}=ye.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),x=()=>{b.value=""},v=()=>{N.value++},R=t.ref(null),F=z=>{var I,L,O,oe;const ae=[];return((I=z.route)!=null&&I.id||z.route_id)&&ae.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((L=z.service)!=null&&L.id||z.service_id)&&ae.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((O=z.consumer)!=null&&O.id||z.consumer_id)&&ae.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((oe=z.consumer_group)!=null&&oe.id||z.consumer_group_id)&&ae.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),ae.length?ae:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},k=async(z,ae)=>{var I;return z===null?!1:await((I=i.canRetrieveScopedEntity)==null?void 0:I.call(i,z,ae.id))},Y=(z,ae)=>{var L,O,oe,ne,be;let I=null;switch(z){case"route":I=(L=ae.route)==null?void 0:L.id;break;case"service":I=(O=ae.service)==null?void 0:O.id;break;case"consumer":I=(oe=ae.consumer)==null?void 0:oe.id;break;case"consumer_group":I=(ne=ae.consumer_group)==null?void 0:ne.id;break}I&&((be=i.config)!=null&&be.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(z,I))},T=t.ref(!1),q=t.ref(null),j=t.computed(()=>{const z={action:"disable",id:"",name:""};if(q.value){const{enabled:ae,id:I,name:L}=q.value;z.action=ae?"disable":"enable",z.id=I,z.name=o.getDisplayName(L)||I}return z}),te=z=>{T.value=!0,q.value=z},X=()=>{T.value=!1,q.value=null},D=async()=>{var L,O,oe,ne,be,ke,de,Ne;if(!await((L=i.canEdit)==null?void 0:L.call(i,q.value))||!q.value)return;let ae=`${i.config.apiBaseUrl}${(be=Ze.item[i.config.app])==null?void 0:be[(O=i.config)!=null&&O.entityType?"forEntity":"all"].replace(/{entityType}/gi,((oe=i.config)==null?void 0:oe.entityType)||"").replace(/{entityId}/gi,((ne=i.config)==null?void 0:ne.entityId)||"")}`.replace(/{id}/gi,q.value.id||"");i.config.app==="konnect"?ae=ae.replace(/{controlPlaneId}/gi,((ke=i.config)==null?void 0:ke.controlPlaneId)||""):i.config.app==="kongManager"&&(ae=ae.replace(/\/{workspace}/gi,(de=i.config)!=null&&de.workspace?`/${i.config.workspace}`:""));const I=!q.value.enabled;try{const{data:Te}=((Ne=i.config)==null?void 0:Ne.app)==="konnect"?await s.put(ae,{...q.value,enabled:I},{timeout:12e4}):await s.patch(ae,{...q.value,enabled:I},{timeout:12e4});r("toggle-enabled",I,Te),q.value.enabled=I}catch(Te){r("error",Te)}},K=async(z,ae)=>{const I=z.id;if(!await ae(I)){r("copy:error",{entity:z,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:z,field:"id",message:a("copy.success",{val:I})})},A=async(z,ae)=>{const I=JSON.stringify(z);if(!await ae(I)){r("copy:error",{entity:z,message:a("errors.copy")});return}r("copy:success",{entity:z,message:a("copy.success_brief")})},P=async z=>{var I;await((I=i.canRetrieve)==null?void 0:I.call(i,z))&&l.push(i.config.getViewRoute(z))},U=z=>({label:a("actions.view"),to:i.config.getViewRoute(z)}),G=z=>({label:a("actions.edit"),to:i.config.getEditRoute(z)}),Z=z=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(z)}),ee=t.ref(void 0),ie=t.ref(!1),he=t.ref(!1),J=t.ref(""),re=ye.useDeleteUrlBuilder(i.config,w.value),le=z=>{ee.value=z,ie.value=!0},ue=()=>{ie.value=!1},fe=async()=>{var z,ae,I;if((z=ee.value)!=null&&z.id){he.value=!0;try{await s.delete(re(ee.value.id)),he.value=!1,ie.value=!1,N.value++,r("delete:success",ee.value)}catch(L){J.value=((I=(ae=L.response)==null?void 0:ae.data)==null?void 0:I.message)||L.message||a("errors.delete"),r("error",L)}finally{he.value=!1}}},$=()=>{l.push(i.config.createRoute)};t.watch(C,z=>{var ae,I,L;if(z.status===ye.FetcherStatus.Error){R.value={title:a("errors.general")},(L=(I=(ae=z.error)==null?void 0:ae.response)==null?void 0:I.data)!=null&&L.message&&(R.value.message=z.error.response.data.message),r("error",z.error);return}R.value=null});const B=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")}),M=t.ref(!1);return t.onBeforeMount(async()=>{M.value=await i.canCreate(),M.value&&(B.value.title=a("plugins.list.empty_state.title"),B.value.ctaText=a("actions.create"))}),(z,ae)=>{const I=t.resolveComponent("KButton"),L=t.resolveComponent("KEmptyState"),O=t.resolveComponent("KBadge"),oe=t.resolveComponent("KTruncate"),ne=t.resolveComponent("KInputSwitch"),be=t.resolveComponent("KDropdownItem"),ke=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",DM,[t.createVNode(t.unref(ye.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":B.value,"enable-entity-actions":"","error-message":R.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(N),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(g),title:e.title,"title-tag":e.titleTag,onClearSearchInput:x,"onClick:row":ae[4]||(ae[4]=de=>P(de)),onSort:v,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ye.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":ae[0]||(ae[0]=de=>b.value=de),config:S.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",MM,[!u.value&&f.value?(t.openBlock(),t.createBlock(I,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ae[1]||(ae[1]=de=>z.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(I,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.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:de})=>[t.createElementVNode("div",LM,[t.createVNode(t.unref(Ro.PluginIcon),{class:"plugin-icon",name:de.name,size:24},null,8,["name"]),t.createElementVNode("div",FM,[de.instance_name?(t.openBlock(),t.createElementBlock("span",UM,t.toDisplayString(de.instance_name),1)):(t.openBlock(),t.createElementBlock("span",KM,t.toDisplayString(t.unref(o).getDisplayName(de.name)),1)),de.instance_name?(t.openBlock(),t.createElementBlock("span",jM,t.toDisplayString(t.unref(o).getDisplayName(de.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:de})=>[F(de).length>0?(t.openBlock(),t.createBlock(oe,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(F(de),Ne=>(t.openBlock(),t.createBlock(t.unref(ye.PermissionsWrapper),{key:Ne.badgeText,"auth-function":()=>k(Ne.type,de),"force-show":""},{default:t.withCtx(({isAllowed:Te})=>[t.createVNode(O,{class:t.normalizeClass(Te||"disabled"),onClick:t.withModifiers(me=>Te&&Ne.type&&Y(Ne.type,de),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(Ne.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",GM,"-"))]),enabled:t.withCtx(({row:de})=>[t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(de)&&await e.canToggle(de)),"force-show":""},{default:t.withCtx(({isAllowed:Ne})=>{var Te,me;return[t.createElementVNode("div",{onClick:ae[3]||(ae[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(ne,{disabled:!Ne,"disabled-tooltip-text":!Ne&&((me=(Te=e.config).getToggleDisabledTooltip)==null?void 0:me.call(Te,de))||void 0,"model-value":de.enabled,onClick:t.withModifiers(ge=>Ne&&te(de),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:de})=>[t.createVNode(O,{appearance:t.unref(Jc)(de)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Jc)(de)?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:de})=>[t.createVNode(t.unref(ye.TableTags),{tags:de},null,8,["tags"])]),actions:t.withCtx(({row:de})=>[t.createVNode(ke,null,{default:t.withCtx(({copyToClipboard:Ne})=>[t.createVNode(be,{"data-testid":"action-entity-copy-id",onClick:Te=>K(de,Ne)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(ke,null,{default:t.withCtx(({copyToClipboard:Ne})=>[t.createVNode(be,{"data-testid":"action-entity-copy-json",onClick:Te=>A(de,Ne)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(de)},{default:t.withCtx(()=>[t.createVNode(be,{"data-testid":"action-entity-view","has-divider":"",item:U(de)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canEdit(de)},{default:t.withCtx(()=>[t.createVNode(be,{"data-testid":"action-entity-edit",item:G(de)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(ye.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(de)},{default:t.withCtx(()=>[Z(de)?(t.openBlock(),t.createBlock(be,{key:0,"data-testid":"action-entity-config-dyn-order",item:Z(de)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canDelete(de)},{default:t.withCtx(()=>[t.createVNode(be,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:Ne=>le(de)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var de;return[t.createVNode(L,{"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:t.unref(a)("plugins.list.empty_state_v2.description"),title:t.unref(a)("plugins.list.empty_state_v2.title")},t.createSlots({icon:t.withCtx(()=>[t.createVNode(t.unref(xe.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[M.value?(t.openBlock(),t.createBlock(I,{key:0,"data-testid":"entity-create-button",onClick:$},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(I,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ae[2]||(ae[2]=Ne=>z.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(de=e.config)!=null&&de.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","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(ye.EntityToggleModal),{action:j.value.action,"entity-id":j.value.id,"entity-name":j.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":D,visible:T.value,onCancel:X,onProceed:X},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ye.EntityDeleteModal),{"action-pending":he.value,description:t.unref(a)("delete.description"),"entity-name":ee.value&&(ee.value.instance_name||ee.value.name||ee.value.id),"entity-type":t.unref(ye.EntityTypes).Plugin,error:J.value,title:t.unref(a)("delete.title"),visible:ie.value,onCancel:ue,onProceed:fe},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-582a936c"]]),zM={class:"plugin-select-card-wrapper"},HM=["data-testid"],YM={class:"plugin-card-header"},WM={class:"plugin-card-title"},XM={key:0,class:"plugin-card-actions"},ZM=["data-testid","title"],JM={key:0,class:"plugin-card-text"},QM={key:0},e2=["title"],Is=ve(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=no.useRouter(),{i18n:{t:a}}=Fe.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===H.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},_=(g,w)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(g,w))},y=()=>{if(!s.value&&r.config.app==="konnect"){const g=r.config;p.value&&g.createCustomRoute?i.push(g.createCustomRoute):m.value&&d()}};return(g,w)=>{const b=t.resolveComponent("KButton"),S=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",zM,[t.createVNode(C,{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]=N=>s.value||m.value?void 0:f())},[t.createElementVNode("div",YM,[t.createElementVNode("div",WM,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",XM,[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(xe.MoreIcon),{size:t.unref(wd)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(S,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(N=>_(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(S,{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:y},[t.createVNode(t.unref(Ro.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",JM,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",QM,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,e2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,ZM),t.createElementVNode("div",{class:"plugin-card-footer",onClick:y},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,HM)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),t2=ve(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}}=Fe.useI18n(),{getMessageFromError:l}=ye.useErrors(),{axiosInstance:s}=ye.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var _;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((_=o.plugin)==null?void 0:_.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 _=o.plugin.customPluginType==="streaming"?Ze.select[o.config.app].streamingCustomPluginItem:Ze.select[o.config.app].schemaCustomPluginItem;let y=`${o.config.apiBaseUrl}${_}`;return y=y.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),y=y.replace(/{pluginId}/gi,o.plugin.id),y}return null}),m=async()=>{var _,y,g,w;if(d.value=!0,f.value="",!(!((_=o.plugin)!=null&&_.name)||((y=o.config)==null?void 0:y.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:S}=b;(S==null?void 0:S.status)===400&&((w=(g=S.data)==null?void 0:g.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(_,y)=>{const g=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ye.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(ye.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:y[0]||(y[0]=b=>_.$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:y[2]||(y[2]=b=>_.$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(g,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:y[1]||(y[1]=b=>_.$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"]]),n2={class:"custom-plugins-grid"},o2={class:"empty-state-title"},r2={class:"empty-state-description"},Ts=310,i2=ve(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}}=Fe.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Fe.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))[H.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:H.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(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 C;E&&(r("revalidate"),r("delete:success",((C=u.value)==null?void 0:C.name)||"")),f.value=!1,u.value=null},h=t.ref(Ts),_=t.ref(null),y=t.ref(null),g=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),w=t.ref(!1),b=()=>{h.value=Math.max(a(y.value),Ts),S()},S=()=>{var E,C;(E=y.value)!=null&&E.length&&(w.value=l(_.value,(C=y.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(y.value),Ts),S(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(E,C)=>{const N=t.resolveComponent("KEmptyState"),x=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",n2,[d.value.length?(t.openBlock(),t.createBlock(x,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=v=>s.value=v),class:"custom-plugins-collapse","data-testid":`${t.unref(H.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(H.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:_,class:"plugin-card-container",style:t.normalizeStyle(g.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(v,R)=>(t.openBlock(),t.createBlock(Is,{key:`plugin-card-${R}`,ref_for:!0,ref_key:"pluginCardRef",ref:y,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:v,onCustomPluginDelete:F=>p(v),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(()=>[C[2]||(C[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(N,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",o2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",r2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(t2,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:C[1]||(C[1]=v=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Ps=310,dg=ve(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}}=Fe.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Fe.usePluginHelpers(),c=t.ref(Ps),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),Ps),h()},h=()=>{var _,y;(_=f.value)!=null&&_.length&&(p.value=s(d.value,(y=f.value)==null?void 0:y.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),Ps),h(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(_,y)=>{const g=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(g,{modelValue:o.value,"onUpdate:modelValue":y[0]||(y[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(Is,{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(()=>[y[1]||(y[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),a2={class:"plugin-select-grid"},l2={class:"empty-state-title"},s2={class:"empty-state-description"},Os=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}}=Fe.useI18n(),a=t.ref(!1),l=t.ref(Ds),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[H.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",a2,[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",l2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",s2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(dg,{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(Rs),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(dg,{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))])}}}),c2={class:"kong-ui-entities-plugin-select-form"},d2={class:"plugins-filter-input-container"},u2={key:0},f2={key:3,"aria-live":"polite",class:"plugins-results-container"},p2={"data-testid":"kong-tab"},m2={class:"tab-description"},g2={"data-testid":"custom-tab"},h2={class:"tab-description"},y2=ve(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 K;const o=e,r=n,i=no.useRoute(),a=no.useRouter(),{i18n:{t:l}}=Fe.useI18n(),{pluginMetaData:s}=Fe.usePluginMetaData(),{getMessageFromError:c}=ye.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ye.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),_=t.ref([]),y=t.ref([]),g=t.ref({}),w=t.ref([]),{axiosInstance:b}=ye.useAxios((K=o.config)==null?void 0:K.axiosRequestConfig),S=t.computed(()=>g.value?Object.entries(g.value).filter(([A])=>A!==H.PluginGroup.CUSTOM_PLUGINS).reduce((A,[,P])=>{for(const U of P)A[U.id]=U;return A},{}):{}),E=t.computed(()=>{var U;if(!g.value)return{};const A=u.value.toLowerCase(),P=JSON.parse(JSON.stringify(g.value));for(const G in g.value){const Z=((U=g.value[G])==null?void 0:U.filter(ee=>ee.name.toLowerCase().includes(A)||ee.id.toLowerCase().includes(A)||ee.group.toLowerCase().includes(A)))||[];Z.length?P[G]=Z:delete P[G]}return P}),C=t.computed(()=>o.highlightedPluginIds.reduce((A,P)=>{const U=S.value[P];return U&&A.push(U),A},[])),N=t.computed(()=>Object.keys(E.value).length>0),x=t.computed(()=>Object.keys(g.value).length>0&&!N.value),v=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)}]:[]),R=t.computed(()=>{var P;let A=v.value.length&&((i==null?void 0:i.hash)||((P=v.value[0])==null?void 0:P.hash))||"";return A==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(A="#kong"),A}),F=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),..._.value])].filter(A=>!o.ignoredPlugins.includes(A)).filter(A=>o.config.entityType&&(o.config.entityType==="services"&&s[A]&&!s[A].scope.includes(H.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[A]&&!s[A].scope.includes(H.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[A]&&!s[A].scope.includes(H.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[A]&&!s[A].scope.includes(H.PluginScope.CONSUMER))?!1:A).reduce((A,P)=>{var ie;const U=s[P]&&s[P].name||P,G={...s[P],id:P,name:U,available:_.value.includes(P),disabledMessage:"",group:((ie=s[P])==null?void 0:ie.group)||H.PluginGroup.CUSTOM_PLUGINS};G.group===H.PluginGroup.CUSTOM_PLUGINS&&(G.customPluginType=y.value.find(he=>he.name===P)?"streaming":"schema"),o.disabledPlugins&&(G.disabledMessage=o.disabledPlugins[P]);const Z=G.group||l("plugins.select.misc_plugins");let ee=A[Z];return ee||(ee=[]),ee.push(G),ee.sort(d("name")),A[Z]=ee,A},{}),k=t.computed(()=>{var P;let A=`${o.config.apiBaseUrl}${Ze.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=((P=o.config.gatewayInfo)==null?void 0:P.edition)==="community"?`${o.config.apiBaseUrl}${Ze.select[o.config.app].availablePluginsForOss}`:A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A}),Y=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let A=`${o.config.apiBaseUrl}${Ze.select[o.config.app].streamingCustomPlugins}`;return A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),A}return null}),T=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let A=`${o.config.apiBaseUrl}${Ze.list[o.config.app].forEntity}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),q=A=>{a.replace({hash:A,query:i.query})};t.watch(()=>o.disabledPlugins,(A,P)=>{!f(A,P)&&!p.value&&(g.value=F())}),t.watch(()=>o.ignoredPlugins,(A,P)=>{!f(A,P)&&!p.value&&(g.value=F())}),t.watch(p,A=>{r("loading",A)});const j=t.ref(!1),te=t.ref(!1),X=t.ref(!1);t.onBeforeMount(async()=>{j.value=await o.canCreateCustomPlugin(),te.value=await o.canEditCustomPlugin(),X.value=await o.canDeleteCustomPlugin()});const D=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var A,P;(P=(A=D.value)==null?void 0:A.input)==null||P.focus();try{const{data:U}=await b.get(k.value);if(o.config.app==="konnect"){const{names:G}=U;if(_.value=G||[],Y.value){const{data:Z}=await b.get(Y.value);y.value=Z.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:G}}=U;_.value=G?Object.keys(G):[]}}catch(U){m.value=!0,h.value=c(U)}if(T.value)try{const{data:{data:U}}=await b.get(T.value);if(U!=null&&U.length){const G=U.reduce((Z,ee)=>(ee.name&&Z.push(ee.name),Z),[]);w.value=w.value.concat(G)}}catch{}m.value||(g.value=F()),p.value=!1}),(A,P)=>{const U=t.resolveComponent("KInput"),G=t.resolveComponent("KSkeletonBox"),Z=t.resolveComponent("KSkeleton"),ee=t.resolveComponent("KEmptyState"),ie=t.resolveComponent("KTooltip"),he=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",c2,[t.createElementVNode("div",d2,[t.createVNode(U,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":P[0]||(P[0]=J=>u.value=J),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",u2,[t.createVNode(G,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(Z,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(ee,{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(ee,{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",f2,[v.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(he,{key:0,modelValue:R.value,"onUpdate:modelValue":P[5]||(P[5]=J=>R.value=J),"data-testid":"plugins-tabs",tabs:v.value,onChange:q},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",p2,[t.createElementVNode("p",m2,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Os,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:P[1]||(P[1]=J=>A.$emit("plugin-clicked",J))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",g2,[t.renderSlot(A.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",h2,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(i2,{"can-create-custom-plugin":j.value,"can-delete-custom-plugin":X.value,"can-edit-custom-plugin":te.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":P[2]||(P[2]=J=>A.$emit("delete-custom:success",J)),onPluginClicked:P[3]||(P[3]=J=>A.$emit("plugin-clicked",J)),onRevalidate:P[4]||(P[4]=()=>g.value=F())},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(ie,{"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(Os,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:P[6]||(P[6]=J=>A.$emit("plugin-clicked",J))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-7b1adaaa"]]),_2={class:"datakit-config-card-canvas"},b2={class:"config-card-details-label","data-testid":"datakit-configuration-label"},w2={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},k2={class:"canvas-wrapper"},C2=ve(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return ju(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",_2,[t.createElementVNode("div",b2,[t.createVNode(r,null,{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",w2,[t.createElementVNode("div",k2,[t.createVNode(Ns,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),E2={class:"kong-ui-entity-plugin-config-card"},N2={class:"name-cell-wrapper"},x2={class:"info-name"},S2={key:0},v2={key:0},A2={key:0},I2={key:0},T2={key:0},$s="config",P2=ve(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 C;const o=n,r=e,{i18n:{t:i}}=Fe.useI18n(),a=Fe.usePluginMetaData(),{setFieldType:l}=Fe.usePluginHelpers(),{getPropValue:s}=ye.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),d=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var x;let N=(x=Ze.item[r.config.app])==null?void 0:x[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const v=r.expandPartial?"&":"?";N=N.concat(`${v}__ui_data=true`)}return N}),u=t.computed(()=>{var v,R;const N={},x=((v=b.value)==null?void 0:v.fields)||[];for(let F=0;F<x.length;F++){const k=b.value.fields[F],Y=(R=Object.keys(k))==null?void 0:R[0];l(N,Y,k[Y])}return{...N,instance_name:{section:ye.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ye.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ye.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ye.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ye.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ye.ConfigurationSchemaType.BadgeTag,section:ye.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var x,v,R;if(!((x=b.value)!=null&&x.fields))return[];const N=(v=b.value.fields)==null?void 0:v.find(F=>{var Y;return((Y=Object.keys(F))==null?void 0:Y[0])===$s});return((R=N==null?void 0:N[$s])==null?void 0:R.fields)||[]}),m=t.computed(()=>{var x,v;const N={};if(!p.value)return N;for(let R=0;R<((x=p.value)==null?void 0:x.length);R++){const F=p.value[R],k=(v=Object.keys(F))==null?void 0:v[0],Y=F[k];Y.required&&(N[k]={order:1}),l(N,k,Y)}return N}),h=N=>{var v;const x=(v=a.pluginMetaData[r.config.pluginType])==null?void 0:v.scope;return x?Object.fromEntries(Object.entries(N).filter(([R,F])=>F?!0:!(R==="service"&&!x.includes(H.PluginScope.SERVICE)||R==="route"&&!x.includes(H.PluginScope.ROUTE)||R==="consumer"&&!x.includes(H.PluginScope.CONSUMER)||R==="consumer_group"&&!x.includes(H.PluginScope.CONSUMER_GROUP)))):N},_=N=>zo(N,"__ui_data"),{getMessageFromError:y}=ye.useErrors(),{axiosInstance:g}=ye.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),w=t.computed(()=>{var x,v;let N=`${r.config.apiBaseUrl}${Ze.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((x=r.config)==null?void 0:x.controlPlaneId)||""):r.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(v=r.config)!=null&&v.workspace?`/${r.config.workspace}`:"")),N=N.replace(/{plugin}/gi,r.config.pluginType),N}),b=t.ref({});ye.useSchemaProvider(b);const S=t.ref(!1),E=t.ref("");return t.onBeforeMount(async()=>{S.value=!0;try{const{data:N}=await g.get(w.value);b.value=N}catch(N){E.value=y(N),o("error:fetch-schema",N)}finally{S.value=!1}}),(N,x)=>{const v=t.resolveComponent("KSkeleton"),R=t.resolveComponent("KEmptyState"),F=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",E2,[S.value?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):E.value?(t.openBlock(),t.createBlock(R,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(E.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ye.EntityBaseConfigCard),{key:2,"code-block-record-formatter":_,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":u.value,"entity-type":t.unref(ye.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":$s,"plugin-config-schema":m.value,"record-resolver":h,"onFetch:error":x[0]||(x[0]=k=>N.$emit("fetch:error",k)),"onFetch:success":x[1]||(x[1]=k=>N.$emit("fetch:success",k)),onLoading:x[2]||(x[2]=k=>N.$emit("loading",k))},t.createSlots({name:t.withCtx(k=>[t.createElementVNode("div",N2,[t.createVNode(t.unref(Ro.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",k),size:24},null,8,["name"]),t.createElementVNode("span",x2,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",k))),1)])]),consumer:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(F,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",S2,"–"))]),route:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",k).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(F,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",v2,"–"))]),service:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",k).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(F,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",A2,"–"))]),consumer_group:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(F,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",I2,"–"))]),partials:t.withCtx(k=>{var Y,T,q,j,te,X,D,K,A;return[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:(T=(Y=t.unref(s)("rowValue",k))==null?void 0:Y[0])==null?void 0:T.id,value:((j=(q=t.unref(s)("rowValue",k))==null?void 0:q[0])==null?void 0:j.id)+((X=(te=t.unref(s)("rowValue",k))==null?void 0:te[0])!=null&&X.name?"/"+((K=(D=t.unref(s)("rowValue",k))==null?void 0:D[0])==null?void 0:K.name):""),type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var P,U;return N.$emit("navigation-click",(U=(P=t.unref(s)("rowValue",k))==null?void 0:P[0])==null?void 0:U.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(F,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"partial-copy-uuid",text:(A=t.unref(s)("rowValue",k))==null?void 0:A[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",T2,"–"))]}),_:2},[d.value?{name:"config-card-item-nodes",fn:t.withCtx(k=>[t.createVNode(C2,{"plugin-data":k.record},null,8,["plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-a5302acb"]]),{usePluginMetaData:O2,useProvideExperimentalFreeForms:$2}=Fe;Object.defineProperty(Ae,"PluginGroup",{enumerable:!0,get:()=>H.PluginGroup}),Object.defineProperty(Ae,"PluginScope",{enumerable:!0,get:()=>H.PluginScope}),Object.defineProperty(Ae,"PluginIcon",{enumerable:!0,get:()=>Ro.PluginIcon}),Object.defineProperty(Ae,"getPluginIconURL",{enumerable:!0,get:()=>Ro.getPluginIconURL}),Ae.EXPERIMENTAL_FREE_FORM_PROVIDER=Ma,Ae.EntityTypeIdField=An,Ae.FEATURE_FLAGS=co,Ae.PLUGIN_GROUPS_COLLAPSE_STATUS=Ds,Ae.PluginConfigCard=P2,Ae.PluginForm=RM,Ae.PluginGroupArray=Rs,Ae.PluginList=qM,Ae.PluginPartialType=Pr,Ae.PluginSelect=y2,Ae.PluginSelectCard=Is,Ae.PluginSelectGrid=Os,Ae.TOASTER_PROVIDER=nd,Ae.pluginEndpoints=Ze,Ae.usePluginMetaData=O2,Ae.useProvideExperimentalFreeForms=$2,Object.defineProperty(Ae,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 lt extends Error{constructor(n,...o){var r;super((r=up[n])==null?void 0:r.call(up,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function Zl(e){return"clientX"in e}function MA(e){return"sourceEvent"in e}function Zt(e,n){const o=Zl(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 Ri=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function LA(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 Di(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const FA=()=>!0;function Jl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function UA(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())$i(i,Oi(a))>0&&r.push(a);return r}const KA=250;function jA(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=UA(e,o,n+KA);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}=Po(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 fp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=FA},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}=Zt(e),g=l.elementFromPoint(_,y),w=g!=null&&g.classList.contains(`${s}-flow__handle`)?g:h,b={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const S=pp(void 0,w),E=w.getAttribute("data-nodeid"),C=w.getAttribute("data-handleid"),N=w.classList.contains("connectable"),x=w.classList.contains("connectableend");if(!E||!S)return b;const v={source:m?E:r,sourceHandle:m?C:i,target:m?r:E,targetHandle:m?i:C};b.connection=v;const L=N&&x&&(o===wn.Strict?m&&S==="source"||!m&&S==="target":E!==r||C!==i);b.isValid=L&&d(v,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(E)}),b.toHandle=n}return b}function pp(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function GA(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function qA(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function zA(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===wn.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,...Po(d,u,u.position,!0)}:u}const Ql={[Ee.Left]:Ee.Right,[Ee.Right]:Ee.Left,[Ee.Top]:Ee.Bottom,[Ee.Bottom]:Ee.Top},HA=["production","prod"];function Mi(e,...n){mp()&&console.warn(`[Vue Flow]: ${e}`,...n)}function mp(){return!HA.includes(process.env.NODE_ENV||"")}function gp(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,...Bi(l)}}):null}function es(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 tt(e){return typeof t.unref(e)<"u"}function YA(e,n,o,r){if(!e||!e.source||!e.target)return o(new lt(et.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return kn(e)?i=e:i={...e,id:Wf(e)},i=Hf(i,void 0,r),AA(i,n)?!1:i}function WA(e,n,o,r,i){if(!n.source||!n.target)return i(new lt(et.EDGE_INVALID,e.id)),!1;if(!o)return i(new lt(et.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Wf(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function hp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!Hn(l)){o(new lt(et.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=xA(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 lt(et.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 yp(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 ts(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}`;yp("source",c,f,e,i,l),yp("target",c,d,e,a,s)}}function _p(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function ns(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=kn(d)?d:YA(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new lt(et.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new lt(et.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new lt(et.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new lt(et.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Hf(f,m,a),sourceNode:u,targetNode:p})}return c}const bp=Symbol("vueFlow"),wp=Symbol("nodeId"),kp=Symbol("nodeRef"),XA=Symbol("edgeId"),ZA=Symbol("edgeRef"),Li=Symbol("slots");function Cp(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:_,selectNodesOnDrag:y,removeSelectedElements:g,addSelectedNodes:w,updateNodePositions:b,emits:S}=Le(),{onStart:E,onDrag:C,onStop:N,onClick:x,el:v,disabled:V,id:L,selectable:k,dragHandle:Y}=e,P=t.shallowRef(!1);let G=[],j,te=null,X={x:void 0,y:void 0},D={x:0,y:0},U=null,A=!1,T=0,K=!1;const z=eI(),J=({x:le,y:fe})=>{X={x:le,y:fe};let ue=!1;if(G=G.map($=>{const B={x:le-$.distance.x,y:fe-$.distance.y},{computedPosition:F}=Xl($,o.value?Di(B,r.value):B,S.error,l.value,$.parentNode?m($.parentNode):void 0);return ue=ue||$.position.x!==F.x||$.position.y!==F.y,$.position=F,$}),!!ue&&(b(G,!0,!0),P.value=!0,U)){const[$,B]=Wl({id:L,dragItems:G,findNode:m});C({event:U,node:$,nodes:B})}},Q=()=>{if(!te)return;const[le,fe]=op(D,te,f.value);if(le!==0||fe!==0){const ue={x:(X.x??0)-le/c.value.zoom,y:(X.y??0)-fe/c.value.zoom};p({x:le,y:fe})&&J(ue)}T=requestAnimationFrame(Q)},ie=(le,fe)=>{A=!0;const ue=m(L);!y.value&&!h.value&&ue&&(ue.selected||g()),ue&&t.toValue(k)&&y.value&&es(ue,h.value,w,g,_,!1,fe);const $=z(le.sourceEvent);if(X=$,G=OA(a.value,u.value,$,m,L),G.length){const[B,F]=Wl({id:L,dragItems:G,findNode:m});E({event:le.sourceEvent,node:B,nodes:F})}},he=(le,fe)=>{var ue;le.sourceEvent.type==="touchmove"&&le.sourceEvent.touches.length>1||(s.value===0&&ie(le,fe),X=z(le.sourceEvent),te=((ue=n.value)==null?void 0:ue.getBoundingClientRect())||null,D=Zt(le.sourceEvent,te))},Z=(le,fe)=>{const ue=z(le.sourceEvent);if(!K&&A&&d.value&&(K=!0,Q()),!A){const $=ue.xSnapped-(X.x??0),B=ue.ySnapped-(X.y??0);Math.sqrt($*$+B*B)>s.value&&ie(le,fe)}(X.x!==ue.xSnapped||X.y!==ue.ySnapped)&&G.length&&A&&(U=le.sourceEvent,D=Zt(le.sourceEvent,te),J(ue))},re=le=>{let fe=!1;if(!A&&!P.value&&!h.value){const ue=le.sourceEvent,$=z(ue),B=$.xSnapped-(X.x??0),F=$.ySnapped-(X.y??0),R=Math.sqrt(B*B+F*F);R!==0&&R<=s.value&&(x==null||x(ue),fe=!0)}if(G.length&&!fe){b(G,!1,!1);const[ue,$]=Wl({id:L,dragItems:G,findNode:m});N({event:le.sourceEvent,node:ue,nodes:$})}G=[],P.value=!1,K=!1,A=!1,X={x:void 0,y:void 0},cancelAnimationFrame(T)};return t.watch([()=>t.toValue(V),v],([le,fe],ue,$)=>{if(fe){const B=Ft(fe);le||(j=NS().on("start",F=>he(F,fe)).on("drag",F=>Z(F,fe)).on("end",F=>re(F)).filter(F=>{const R=F.target,ee=t.toValue(Y);return!F.button&&(!i.value||!sp(R,`.${i.value}`,fe)&&(!ee||sp(R,ee,fe)))}),B.call(j)),$(()=>{B.on(".drag",null),j&&(j.on("start",null),j.on("drag",null),j.on("end",null))})}}),P}function JA(){return{doubleClick:Ce(),click:Ce(),mouseEnter:Ce(),mouseMove:Ce(),mouseLeave:Ce(),contextMenu:Ce(),updateStart:Ce(),update:Ce(),updateEnd:Ce()}}function QA(e,n){const o=JA();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 eI(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Le();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=MA(i)?i.sourceEvent:i,{x:c,y:d}=Zt(s,l),f=_r({x:c,y:d},e.value),{x:u,y:p}=o.value?Di(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Fi(){return!0}function Ep({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:_,findNode:y,panBy:g,startConnection:w,updateConnection:b,endConnection:S,emits:E,viewport:C,edges:N,nodes:x,isValidConnection:v,nodeLookup:V}=Le();let L=null,k=!1,Y=null;function P(j){var te;const X=t.toValue(o)==="target",D=Zl(j),U=zf(j.target);if(D&&j.button===0||!D){let A=function(M){$=Zt(M,le),J=jA(_r($,C.value,!1,[1,1]),f.value,V.value,R),B||(F(),B=!0);const O=fp(M,{handle:J,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:X?"target":"source",isValidConnection:z,doc:U,lib:"vue",flowId:s,nodeLookup:V.value},N.value,x.value,y);Y=O.handleDomNode,L=O.connection,k=qA(!!J,O.isValid);const oe={...I,isValid:k,to:O.toHandle&&k?Hl({x:O.toHandle.x,y:O.toHandle.y},C.value):$,toHandle:O.toHandle,toPosition:k&&O.toHandle?O.toHandle.position:Ql[R.position],toNode:O.toHandle?V.value.get(O.toHandle.nodeId):null};if(!(k&&J&&(I!=null&&I.toHandle)&&oe.toHandle&&I.toHandle.type===oe.toHandle.type&&I.toHandle.nodeId===oe.toHandle.nodeId&&I.toHandle.id===oe.toHandle.id&&I.to.x===oe.to.x&&I.to.y===oe.to.y)){if(b(J&&k?Hl({x:J.x,y:J.y},C.value):$,O.toHandle,GA(!!J,k)),I=oe,!J&&!k&&!Y)return Jl(ue);L&&L.source!==L.target&&Y&&(Jl(ue),ue=Y,Y.classList.add("connecting","vue-flow__handle-connecting"),Y.classList.toggle("valid",!!k),Y.classList.toggle("vue-flow__handle-valid",!!k))}},T=function(M){(J||Y)&&L&&k&&(a?a(M,L):E.connect(L)),E.connectEnd(M),i&&(l==null||l(M)),Jl(ue),cancelAnimationFrame(Q),S(M),B=!1,k=!1,L=null,Y=null,U.removeEventListener("mousemove",A),U.removeEventListener("mouseup",T),U.removeEventListener("touchmove",A),U.removeEventListener("touchend",T)};const K=y(t.toValue(n));let z=t.toValue(r)||v.value||Fi;!z&&K&&(z=(X?K.isValidSourcePos:K.isValidTargetPos)||Fi);let J,Q=0;const{x:ie,y:he}=Zt(j),Z=U==null?void 0:U.elementFromPoint(ie,he),re=pp(t.toValue(i),Z),le=(te=c.value)==null?void 0:te.getBoundingClientRect();if(!le||!re)return;const fe=zA(t.toValue(n),re,t.toValue(e),V.value,d.value);if(!fe)return;let ue,$=Zt(j,le),B=!1;const F=()=>{if(!h.value)return;const[M,O]=op($,le,_.value);g({x:M,y:O}),Q=requestAnimationFrame(F)},R={...fe,nodeId:t.toValue(n),type:re,position:fe.position},ee=V.value.get(t.toValue(n)),ae={inProgress:!0,isValid:null,from:Po(ee,R,Ee.Left,!0),fromHandle:R,fromPosition:R.position,fromNode:ee,to:$,toHandle:null,toPosition:Ql[R.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:re,position:(Z==null?void 0:Z.getAttribute("data-handlepos"))||Ee.Top,...$},{x:ie-le.left,y:he-le.top}),E.connectStart({event:j,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:re});let I=ae;U.addEventListener("mousemove",A),U.addEventListener("mouseup",T),U.addEventListener("touchmove",A),U.addEventListener("touchend",T)}}function G(j){var te,X;if(!u.value)return;const D=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:j,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:Ee.Top,...Zt(j)},void 0,!0);return}let U=t.toValue(r)||v.value||Fi;const A=y(t.toValue(n));if(!U&&A&&(U=(D?A.isValidSourcePos:A.isValidTargetPos)||Fi),A&&(typeof A.connectable>"u"?m.value:A.connectable)===!1)return;const T=zf(j.target),K=fp(j,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:Ee.Top,...Zt(j)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:U,doc:T,lib:"vue",flowId:s,nodeLookup:V.value},N.value,x.value,y),z=((te=K.connection)==null?void 0:te.source)===((X=K.connection)==null?void 0:X.target);K.isValid&&K.connection&&!z&&E.connect(K.connection),E.clickConnectEnd(j),S(j,!0)}return{handlePointerDown:P,handleClick:G}}function tI(){return t.inject(wp,"")}function Np(e){const n=e??tI()??"",o=t.inject(kp,t.ref(null)),{findNode:r,edges:i,emits:a}=Le(),l=r(n);return l||a.error(new lt(et.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>Qf([l],i.value))}}function nI(){return{doubleClick:Ce(),click:Ce(),mouseEnter:Ce(),mouseMove:Ce(),mouseLeave:Ce(),contextMenu:Ce(),dragStart:Ce(),drag:Ce(),dragStop:Ce()}}function oI(e,n){const o=nI();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 xp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Le();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,_=[];for(const y of e.value)if(y.draggable||l&&typeof y.draggable>"u"){const g={x:y.computedPosition.x+m,y:y.computedPosition.y+h},{computedPosition:w}=Xl(y,g,s.error,n.value,y.parentNode?r(y.parentNode):void 0);_.push({id:y.id,position:w,from:y.position,distance:{x:c.x,y:c.y},dimensions:y.dimensions})}o(_,!0,!1)}}const os=.1,rI=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function Nn(){return Mi("Viewport not initialized yet."),Promise.resolve(!1)}const iI={zoomIn:Nn,zoomOut:Nn,zoomTo:Nn,fitView:Nn,setCenter:Nn,fitBounds:Nn,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:Nn,setTransform:Nn,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function aI(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?sr:Ci).scaleBy(rs(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}=qf({x:-r,y:-i},e.translateExtent),u=Ao.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?sr:Ci).transform(rs(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"?sr:Ci).scaleTo(rs(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:os,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=Zf(s),{x:d,y:f,zoom:u}=ep(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??os,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:os})=>{const{x:l,y:s,zoom:c}=ep(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>_r(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 _r(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 Hl(s,e.viewport)}return{x:0,y:0}}}:iI)}function rs(e,n=0,o=rI,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function lI(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);_=Eo([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)&&(y==null||y.pause(),o.setElements(w),!y&&!g&&w.length?g=!0:y==null||y.resume())}),y=Eo([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,b])=>{var S;(S=e.modelValue)!=null&&S.value&&Array.isArray(e.modelValue.value)&&(_==null||_.pause(),e.modelValue.value=[...w,...b],t.nextTick(()=>{_==null||_.resume()}))},{immediate:g}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},a=()=>{r.run(()=>{let _,y,g=!!o.nodes.value.length;_=Eo([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)&&(y==null||y.pause(),o.setNodes(w),!y&&!g&&w.length?g=!0:y==null||y.resume())}),y=Eo([o.nodes,()=>o.nodes.value.length],([w])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(_==null||_.pause(),e.nodes.value=[...w],t.nextTick(()=>{_==null||_.resume()}))},{immediate:g}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},l=()=>{r.run(()=>{let _,y,g=!!o.edges.value.length;_=Eo([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)&&(y==null||y.pause(),o.setEdges(w),!y&&!g&&w.length?g=!0:y==null||y.resume())}),y=Eo([o.edges,()=>o.edges.value.length],([w])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(_==null||_.pause(),e.edges.value=[...w],t.nextTick(()=>{_==null||_.resume()}))},{immediate:g}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&tt(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&tt(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&tt(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&tt(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{tt(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const _=async y=>{let g=y;typeof n.autoConnect=="function"&&(g=await n.autoConnect(y)),g!==!1&&o.addEdges([g])};t.watch(()=>n.autoConnect,()=>{tt(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(y,g,w)=>{y?o.onConnect(_):o.hooks.value.connect.off(_),w(()=>{o.hooks.value.connect.off(_)})},{immediate:!0})})},m=()=>{const _=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const y of Object.keys(n)){const g=y;if(!_.includes(g)){const w=t.toRef(()=>n[g]),b=o[g];t.isRef(b)&&r.run(()=>{t.watch(w,S=>{tt(S)&&(b.value=S)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function sI(){return{edgesChange:Ce(),nodesChange:Ce(),nodeDoubleClick:Ce(),nodeClick:Ce(),nodeMouseEnter:Ce(),nodeMouseMove:Ce(),nodeMouseLeave:Ce(),nodeContextMenu:Ce(),nodeDragStart:Ce(),nodeDrag:Ce(),nodeDragStop:Ce(),nodesInitialized:Ce(),miniMapNodeClick:Ce(),miniMapNodeDoubleClick:Ce(),miniMapNodeMouseEnter:Ce(),miniMapNodeMouseMove:Ce(),miniMapNodeMouseLeave:Ce(),connect:Ce(),connectStart:Ce(),connectEnd:Ce(),clickConnectStart:Ce(),clickConnectEnd:Ce(),paneReady:Ce(),init:Ce(),move:Ce(),moveStart:Ce(),moveEnd:Ce(),selectionDragStart:Ce(),selectionDrag:Ce(),selectionDragStop:Ce(),selectionContextMenu:Ce(),selectionStart:Ce(),selectionEnd:Ce(),viewportChangeStart:Ce(),viewportChange:Ce(),viewportChangeEnd:Ce(),paneScroll:Ce(),paneClick:Ce(),paneContextMenu:Ce(),paneMouseEnter:Ce(),paneMouseMove:Ce(),paneMouseLeave:Ce(),edgeContextMenu:Ce(),edgeMouseEnter:Ce(),edgeMouseMove:Ce(),edgeMouseLeave:Ce(),edgeDoubleClick:Ce(),edgeClick:Ce(),edgeUpdateStart:Ce(),edgeUpdate:Ce(),edgeUpdateEnd:Ce(),updateNodeInternals:Ce(),error:Ce(e=>Mi(e.message))}}function cI(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),di(()=>{r.off(i)})}})}function Sp(){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:ql.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:gr.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:qn.Bezier,style:{}},connectionMode:wn.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:Ri()?"Meta":"Control",zoomActivationKeyCode:Ri()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:sI(),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 dI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function uI(e,n,o){const r=aI(e),i=$=>{const B=$??[];e.hooks.updateNodeInternals.trigger(B)},a=$=>vA($,e.nodes,e.edges),l=$=>SA($,e.nodes,e.edges),s=$=>Qf($,e.edges),c=({id:$,type:B,nodeId:F})=>{var R;return Array.from(((R=e.connectionLookup.get(`${F}-${B}-${$??null}`))==null?void 0:R.values())??[])},d=$=>{if($)return n.value.get($)},f=$=>{if($)return o.value.get($)},u=($,B,F)=>{var R,ee;const q=[];for(const ae of $){const I={id:ae.id,type:"position",dragging:F,from:ae.from};if(B&&(I.position=ae.position,ae.parentNode)){const M=d(ae.parentNode);I.position={x:I.position.x-(((R=M==null?void 0:M.computedPosition)==null?void 0:R.x)??0),y:I.position.y-(((ee=M==null?void 0:M.computedPosition)==null?void 0:ee.y)??0)}}q.push(I)}q!=null&&q.length&&e.hooks.nodesChange.trigger(q)},p=$=>{if(!e.vueFlowRef)return;const B=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!B)return;const F=window.getComputedStyle(B),{m22:R}=new window.DOMMatrixReadOnly(F.transform),ee=[];for(const q of $){const ae=q,I=d(ae.id);if(I){const M=Bi(ae.nodeElement);if(!!(M.width&&M.height&&(I.dimensions.width!==M.width||I.dimensions.height!==M.height||ae.forceUpdate))){const oe=ae.nodeElement.getBoundingClientRect();I.dimensions=M,I.handleBounds.source=gp("source",ae.nodeElement,oe,R,I.id),I.handleBounds.target=gp("target",ae.nodeElement,oe,R,I.id),ee.push({id:I.id,type:"dimensions",dimensions:M})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),ee.length&&e.hooks.nodesChange.trigger(ee)},m=($,B)=>{const F=new Set,R=new Set;for(const ae of $)Hn(ae)?F.add(ae.id):kn(ae)&&R.add(ae.id);const ee=En(n.value,F,!0),q=En(o.value,R);if(e.multiSelectionActive){for(const ae of F)ee.push(Cn(ae,B));for(const ae of R)q.push(Cn(ae,B))}ee.length&&e.hooks.nodesChange.trigger(ee),q.length&&e.hooks.edgesChange.trigger(q)},h=$=>{if(e.multiSelectionActive){const B=$.map(F=>Cn(F.id,!0));e.hooks.nodesChange.trigger(B);return}e.hooks.nodesChange.trigger(En(n.value,new Set($.map(B=>B.id)),!0)),e.hooks.edgesChange.trigger(En(o.value))},_=$=>{if(e.multiSelectionActive){const B=$.map(F=>Cn(F.id,!0));e.hooks.edgesChange.trigger(B);return}e.hooks.edgesChange.trigger(En(o.value,new Set($.map(B=>B.id)))),e.hooks.nodesChange.trigger(En(n.value,new Set,!0))},y=$=>{m($,!0)},g=$=>{const F=($||e.nodes).map(R=>(R.selected=!1,Cn(R.id,!1)));e.hooks.nodesChange.trigger(F)},w=$=>{const F=($||e.edges).map(R=>(R.selected=!1,Cn(R.id,!1)));e.hooks.edgesChange.trigger(F)},b=$=>{if(!$||!$.length)return m([],!1);const B=$.reduce((F,R)=>{const ee=Cn(R.id,!1);return Hn(R)?F.nodes.push(ee):F.edges.push(ee),F},{nodes:[],edges:[]});B.nodes.length&&e.hooks.nodesChange.trigger(B.nodes),B.edges.length&&e.hooks.edgesChange.trigger(B.edges)},S=$=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([$,e.maxZoom]),e.minZoom=$},E=$=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([e.minZoom,$]),e.maxZoom=$},C=$=>{var B;(B=e.d3Zoom)==null||B.translateExtent($),e.translateExtent=$},N=$=>{e.nodeExtent=$,i()},x=$=>{var B;(B=e.d3Zoom)==null||B.clickDistance($)},v=$=>{e.nodesDraggable=$,e.nodesConnectable=$,e.elementsSelectable=$},V=$=>{const B=$ instanceof Function?$(e.nodes):$;!e.initialized&&!B.length||(e.nodes=hp(B,d,e.hooks.error.trigger))},L=$=>{const B=$ instanceof Function?$(e.edges):$;if(!e.initialized&&!B.length)return;const F=ns(B,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);ts(e.connectionLookup,o.value,F),e.edges=F},k=$=>{const B=$ instanceof Function?$([...e.nodes,...e.edges]):$;!e.initialized&&!B.length||(V(B.filter(Hn)),L(B.filter(kn)))},Y=$=>{let B=$ instanceof Function?$(e.nodes):$;B=Array.isArray(B)?B:[B];const F=hp(B,d,e.hooks.error.trigger),R=[];for(const ee of F)R.push(ip(ee));R.length&&e.hooks.nodesChange.trigger(R)},P=$=>{let B=$ instanceof Function?$(e.edges):$;B=Array.isArray(B)?B:[B];const F=ns(B,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),R=[];for(const ee of F)R.push(ip(ee));R.length&&e.hooks.edgesChange.trigger(R)},G=($,B=!0,F=!1)=>{const R=$ instanceof Function?$(e.nodes):$,ee=Array.isArray(R)?R:[R],q=[],ae=[];function I(O){const oe=s(O);for(const ne of oe)(!tt(ne.deletable)||ne.deletable)&&ae.push(lp(ne.id,ne.source,ne.target,ne.sourceHandle,ne.targetHandle))}function M(O){const oe=[];for(const ne of e.nodes)ne.parentNode===O&&oe.push(ne);if(oe.length){for(const ne of oe)q.push(ap(ne.id));B&&I(oe);for(const ne of oe)M(ne.id)}}for(const O of ee){const oe=typeof O=="string"?d(O):O;oe&&(tt(oe.deletable)&&!oe.deletable||(q.push(ap(oe.id)),B&&I([oe]),F&&M(oe.id)))}ae.length&&e.hooks.edgesChange.trigger(ae),q.length&&e.hooks.nodesChange.trigger(q)},j=$=>{const B=$ instanceof Function?$(e.edges):$,F=Array.isArray(B)?B:[B],R=[];for(const ee of F){const q=typeof ee=="string"?f(ee):ee;q&&(tt(q.deletable)&&!q.deletable||R.push(lp(typeof ee=="string"?ee:ee.id,q.source,q.target,q.sourceHandle,q.targetHandle)))}e.hooks.edgesChange.trigger(R)},te=($,B,F=!0)=>{const R=f($.id);if(!R)return!1;const ee=e.edges.indexOf(R),q=WA($,B,R,F,e.hooks.error.trigger);if(q){const[ae]=ns([q],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((I,M)=>M===ee?ae:I),ts(e.connectionLookup,o.value,[ae]),ae}return!1},X=($,B,F={replace:!1})=>{const R=f($);if(!R)return;const ee=typeof B=="function"?B(R):B;R.data=F.replace?ee:{...R.data,...ee}},D=$=>rp($,e.nodes),U=$=>{const B=rp($,e.edges);return ts(e.connectionLookup,o.value,B),B},A=($,B,F={replace:!1})=>{const R=d($);if(!R)return;const ee=typeof B=="function"?B(R):B;F.replace?e.nodes.splice(e.nodes.indexOf(R),1,ee):Object.assign(R,ee)},T=($,B,F={replace:!1})=>{const R=d($);if(!R)return;const ee=typeof B=="function"?B(R):B;R.data=F.replace?ee:{...R.data,...ee}},K=($,B,F=!1)=>{F?e.connectionClickStartHandle=$:e.connectionStartHandle=$,e.connectionEndHandle=null,e.connectionStatus=null,B&&(e.connectionPosition=B)},z=($,B=null,F=null)=>{e.connectionStartHandle&&(e.connectionPosition=$,e.connectionEndHandle=B,e.connectionStatus=F)},J=($,B)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,B?e.connectionClickStartHandle=null:e.connectionStartHandle=null},Q=$=>{const B=NA($),F=B?null:yr($)?$:d($.id);return!B&&!F?[null,null,B]:[B?$:Oi(F),F,B]},ie=($,B=!0,F=e.nodes)=>{const[R,ee,q]=Q($);if(!R)return[];const ae=[];for(const I of F||e.nodes){if(!q&&(I.id===ee.id||!I.computedPosition))continue;const M=Oi(I),O=$i(M,R);(B&&O>0||O>=Number(R.width)*Number(R.height))&&ae.push(I)}return ae},he=($,B,F=!0)=>{const[R]=Q($);if(!R)return!1;const ee=$i(R,B);return F&&ee>0||ee>=Number(R.width)*Number(R.height)},Z=$=>{const{viewport:B,dimensions:F,d3Zoom:R,d3Selection:ee,translateExtent:q}=e;if(!R||!ee||!$.x&&!$.y)return!1;const ae=Ao.translate(B.x+$.x,B.y+$.y).scale(B.zoom),I=[[0,0],[F.width,F.height]],M=R.constrain()(ae,I,q),O=e.viewport.x!==M.x||e.viewport.y!==M.y||e.viewport.zoom!==M.k;return R.transform(ee,M),O},re=$=>{const B=$ instanceof Function?$(e):$,F=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];tt(B.defaultEdgeOptions)&&(e.defaultEdgeOptions=B.defaultEdgeOptions);const R=B.modelValue||B.nodes||B.edges?[]:void 0;R&&(B.modelValue&&R.push(...B.modelValue),B.nodes&&R.push(...B.nodes),B.edges&&R.push(...B.edges),k(R));const ee=()=>{tt(B.maxZoom)&&E(B.maxZoom),tt(B.minZoom)&&S(B.minZoom),tt(B.translateExtent)&&C(B.translateExtent)};for(const q of Object.keys(B)){const ae=q,I=B[ae];![...dI,...F].includes(ae)&&tt(I)&&(e[ae]=I)}Nl(()=>e.d3Zoom).not.toBeNull().then(ee),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:k,setNodes:V,setEdges:L,addNodes:Y,addEdges:P,removeNodes:G,removeEdges:j,findNode:d,findEdge:f,updateEdge:te,updateEdgeData:X,updateNode:A,updateNodeData:T,applyEdgeChanges:U,applyNodeChanges:D,addSelectedElements:y,addSelectedNodes:h,addSelectedEdges:_,setMinZoom:S,setMaxZoom:E,setTranslateExtent:C,setNodeExtent:N,setPaneClickDistance:x,removeSelectedElements:b,removeSelectedNodes:g,removeSelectedEdges:w,startConnection:K,updateConnection:z,endConnection:J,setInteractive:v,setState:re,getIntersectingNodes:ie,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:he,panBy:Z,fitView:$=>r.value.fitView($),zoomIn:$=>r.value.zoomIn($),zoomOut:$=>r.value.zoomOut($),zoomTo:($,B)=>r.value.zoomTo($,B),setViewport:($,B)=>r.value.setViewport($,B),setTransform:($,B)=>r.value.setTransform($,B),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:($,B,F)=>r.value.setCenter($,B,F),fitBounds:($,B)=>r.value.fitBounds($,B),project:$=>r.value.project($),screenToFlowCoordinate:$=>r.value.screenToFlowCoordinate($),flowToScreenCoordinate:$=>r.value.flowToScreenCoordinate($),toObject:()=>{const $=[],B=[];for(const F of e.nodes){const{computedPosition:R,handleBounds:ee,selected:q,dimensions:ae,isParent:I,resizing:M,dragging:O,events:oe,...ne}=F;$.push(ne)}for(const F of e.edges){const{selected:R,sourceNode:ee,targetNode:q,events:ae,...I}=F;B.push(I)}return JSON.parse(JSON.stringify({nodes:$,edges:B,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:$=>new Promise(B=>{const{nodes:F,edges:R,position:ee,zoom:q,viewport:ae}=$;if(F&&V(F),R&&L(R),ae!=null&&ae.x&&(ae!=null&&ae.y)||ee){const I=(ae==null?void 0:ae.x)||ee[0],M=(ae==null?void 0:ae.y)||ee[1],O=(ae==null?void 0:ae.zoom)||q||e.viewport.zoom;return Nl(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:I,y:M,zoom:O}).then(()=>{B(!0)})})}else B(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const $=Sp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const B=Ao.translate($.defaultViewport.x??0,$.defaultViewport.y??0).scale(zn($.defaultViewport.zoom??1,$.minZoom,$.maxZoom)),F=e.viewportRef.getBoundingClientRect(),R=[[0,0],[F.width,F.height]],ee=e.d3Zoom.constrain()(B,R,$.translateExtent);e.d3Zoom.transform(e.d3Selection,ee)}re($)},$destroy:()=>{}}}const fI=["data-id","data-handleid","data-nodeid","data-handlepos"],pI={name:"Handle",compatConfig:{MODE:3}},Jt=t.defineComponent({...pI,props:{id:{default:null},type:{},position:{default:()=>Ee.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}=Le(),{id:m,node:h,nodeEl:_,connectedEdges:y}=Np(),g=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),S=t.toRef(()=>{var L,k,Y,P,G,j;return((L=l.value)==null?void 0:L.nodeId)===m&&((k=l.value)==null?void 0:k.id)===e.id&&((Y=l.value)==null?void 0:Y.type)===r.value||((P=c.value)==null?void 0:P.nodeId)===m&&((G=c.value)==null?void 0:G.id)===e.id&&((j=c.value)==null?void 0:j.type)===r.value}),E=t.toRef(()=>{var L,k,Y;return((L=s.value)==null?void 0:L.nodeId)===m&&((k=s.value)==null?void 0:k.id)===e.id&&((Y=s.value)==null?void 0:Y.type)===r.value}),{handlePointerDown:C,handleClick:N}=Ep({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),x=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!y.value.some(L=>{const k=L[`${r.value}Handle`];return L[r.value]!==m?!1:k?k===e.id:!0}):typeof e.connectable=="number"?y.value.filter(L=>{const k=L[`${r.value}Handle`];return L[r.value]!==m?!1:k?k===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,y.value):tt(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var L;if(!h.dimensions.width||!h.dimensions.height)return;const k=(L=h.handleBounds[r.value])==null?void 0:L.find(D=>D.id===e.id);if(!d.value||k)return;const Y=d.value.querySelector(".vue-flow__transformationpane");if(!_.value||!g.value||!Y||!e.id)return;const P=_.value.getBoundingClientRect(),G=g.value.getBoundingClientRect(),j=window.getComputedStyle(Y),{m22:te}=new window.DOMMatrixReadOnly(j.transform),X={id:e.id,position:e.position,x:(G.left-P.left)/te,y:(G.top-P.top)/te,type:r.value,nodeId:m,...Bi(g.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],X]});function v(L){const k=Zl(L);x.value&&w.value&&(k&&L.button===0||!k)&&C(L)}function V(L){!m||!s.value&&!w.value||x.value&&N(L)}return n({handleClick:N,handlePointerDown:C,onClick:V,onPointerDown:v}),(L,k)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:g,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":L.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${L.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&&!S.value||b.value&&S.value)}]]),onMousedown:v,onTouchstartPassive:v,onClick:V},[t.renderSlot(L.$slots,"default",{id:L.id})],42,fI))}}),Ui=function({sourcePosition:e=Ee.Bottom,targetPosition:n=Ee.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(Jt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(Jt,{type:"source",position:e,connectable:r,isValidConnection:a})]};Ui.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Ui.inheritAttrs=!1,Ui.compatConfig={MODE:3};const mI=Ui,Ki=function({targetPosition:e=Ee.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(Jt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Ki.props=["targetPosition","label","isValidTargetPos","connectable","data"],Ki.inheritAttrs=!1,Ki.compatConfig={MODE:3};const gI=Ki,ji=function({sourcePosition:e=Ee.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(Jt,{type:"source",position:e,connectable:o,isValidConnection:r})]};ji.props=["sourcePosition","label","isValidSourcePos","connectable","data"],ji.inheritAttrs=!1,ji.compatConfig={MODE:3};const hI=ji,yI=["transform"],_I=["width","height","x","y","rx","ry"],bI=["y"],wI={name:"EdgeText",compatConfig:{MODE:3}},kI=t.defineComponent({...wI,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,_I)):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,bI)],8,yI))}}),CI=["id","d","marker-end","marker-start"],EI=["d","stroke-width"],NI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Gi=t.defineComponent({...NI,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,CI),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,EI)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(kI,{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 vp({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 Ap({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 qi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Ip({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case Ee.Left:l=n-qi(n-r,a),s=o;break;case Ee.Right:l=n+qi(r-n,a),s=o;break;case Ee.Top:l=n,s=o-qi(o-i,a);break;case Ee.Bottom:l=n,s=o+qi(i-o,a);break}return[l,s]}function Pp(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top,curvature:s=.25}=e,[c,d]=Ip({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Ip({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,h,_]=Ap({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,_]}function Tp({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case Ee.Left:case Ee.Right:a=.5*(n+r),l=o;break;case Ee.Top:case Ee.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function Op(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top}=e,[s,c]=Tp({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Tp({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,h]=Ap({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 $p={[Ee.Left]:{x:-1,y:0},[Ee.Right]:{x:1,y:0},[Ee.Top]:{x:0,y:-1},[Ee.Bottom]:{x:0,y:1}};function xI({source:e,sourcePosition:n=Ee.Bottom,target:o}){return n===Ee.Left||n===Ee.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 Bp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function SI({source:e,sourcePosition:n=Ee.Bottom,target:o,targetPosition:r=Ee.Top,center:i,offset:a}){const l=$p[n],s=$p[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=xI({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,_;const y={x:0,y:0},g={x:0,y:0},[w,b,S,E]=vp({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??w,_=i.y??b;const N=[{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"?N:x:m=u==="x"?x:N}else{const N=[{x:c.x,y:d.y}],x=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?x:N:m=l.y===p?N:x,n===r){const Y=Math.abs(e[u]-o[u]);if(Y<=a){const P=Math.min(a-1,a-Y);l[u]===p?y[u]=(c[u]>e[u]?-1:1)*P:g[u]=(d[u]>o[u]?-1:1)*P}}if(n!==r){const Y=u==="x"?"y":"x",P=l[u]===s[Y],G=c[Y]>d[Y],j=c[Y]<d[Y];(l[u]===1&&(!P&&G||P&&j)||l[u]!==1&&(!P&&j||P&&G))&&(m=u==="x"?N:x)}const v={x:c.x+y.x,y:c.y+y.y},V={x:d.x+g.x,y:d.y+g.y},L=Math.max(Math.abs(v.x-m[0].x),Math.abs(V.x-m[0].x)),k=Math.max(Math.abs(v.y-m[0].y),Math.abs(V.y-m[0].y));L>=k?(h=(v.x+V.x)/2,_=m[0].y):(h=m[0].x,_=(v.y+V.y)/2)}return[[e,{x:c.x+y.x,y:c.y+y.y},...m,{x:d.x+g.x,y:d.y+g.y},o],h,_,S,E]}function vI(e,n,o,r){const i=Math.min(Bp(e,n)/2,Bp(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 is(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,h,_]=SI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((g,w,b)=>{let S;return b>0&&b<u.length-1?S=vI(u[b-1],w,u[b+1],s):S=`${b===0?"M":"L"}${w.x} ${w.y}`,g+=S,g},""),p,m,h,_]}function AI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=vp({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const II=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]=AI(e);return t.h(Gi,{path:o,labelX:r,labelY:i,...n,...e})}}}),Vp=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]=is({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Gi,{path:o,labelX:r,labelY:i,...n,...e})}}}),PI=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(Vp,{...e,...n,borderRadius:0})}}),TI=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]=Pp({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Gi,{path:o,labelX:r,labelY:i,...n,...e})}}}),OI=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]=Op({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Gi,{path:o,labelX:r,labelY:i,...n,...e})}}}),$I={input:hI,default:mI,output:gI},BI={default:TI,straight:II,step:PI,smoothstep:Vp,simplebezier:OI};function VI(e,n,o){const r=t.computed(()=>_=>n.value.get(_)),i=t.computed(()=>_=>o.value.get(_)),a=t.computed(()=>{const _={...BI,...e.edgeTypes},y=Object.keys(_);for(const g of e.edges)g.type&&!y.includes(g.type)&&(_[g.type]=g.type);return _}),l=t.computed(()=>{const _={...$I,...e.nodeTypes},y=Object.keys(_);for(const g of e.nodes)g.type&&!y.includes(g.type)&&(_[g.type]=g.type);return _}),s=t.computed(()=>e.onlyRenderVisibleElements?Jf(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 _=[];for(const y of e.edges){const g=n.value.get(y.source),w=n.value.get(y.target);RA({sourcePos:g.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:g.dimensions.width,sourceHeight:g.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&_.push(y)}return _}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const _=[];for(const y of e.nodes)y.selected&&_.push(y);return _}),u=t.computed(()=>{const _=[];for(const y of e.edges)y.selected&&_.push(y);return _}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const _=[];for(const y of e.nodes)y.dimensions.width&&y.dimensions.height&&y.handleBounds!==void 0&&_.push(y);return _}),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 Yn{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)??Yn.instance;return Yn.instance=r??new Yn,o&&(o.config.globalProperties.$vueFlowStorage=Yn.instance),Yn.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=Sp(),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=VI(i,s,c),f=uI(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...$1(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 Le(e){const n=Yn.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(bp,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=y=>{d.applyNodeChanges(y)},_=y=>{d.applyEdgeChanges(y)};u?(d.onNodesChange(h),d.onEdgesChange(_)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(_)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(_)})},{immediate:!0}),di(()=>{if(s){const u=n.get(s.id);u?u.$destroy():Mi(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(bp,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new lt(et.USEVUEFLOW_OPTIONS))}return s}function RI(e){const{emits:n,dimensions:o}=Le();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Bi(i);(l.width===0||l.height===0)&&n.error(new lt(et.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 DI={name:"UserSelection",compatConfig:{MODE:3}},MI=t.defineComponent({...DI,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))}}),LI=["tabIndex"],FI={name:"NodesSelection",compatConfig:{MODE:3}},UI=t.defineComponent({...FI,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Le(),s=xp(),c=t.ref(null),d=Cp({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(()=>Zf(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||Io[h.key]&&(h.preventDefault(),s({x:Io[h.key].x,y:Io[h.key].y},h.shiftKey))}return(h,_)=>!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,LI)],6)):t.createCommentVNode("",!0)}});function KI(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const jI={name:"Pane",compatConfig:{MODE:3}},GI=t.defineComponent({...jI,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:_,multiSelectionKeyCode:y,multiSelectionActive:g,edgeLookup:w,nodeLookup:b,connectionLookup:S,defaultEdgeOptions:E,connectionStartHandle:C}=Le(),N=t.ref(null),x=t.ref(new Set),v=t.ref(new Set),V=t.ref(),L=t.toRef(()=>c.value&&(e.isSelecting||a.value)),k=t.toRef(()=>C.value!==null);let Y=!1,P=!1;const G=hr(_,{actInsideInputWithModifier:!1}),j=hr(y);t.watch(G,z=>{z&&(p(u.value),m(f.value),d.value=!1)}),t.watch(j,z=>{g.value=z});function te(z,J){return Q=>{Q.target===J&&(z==null||z(Q))}}function X(z){if(Y||k.value){Y=!1;return}i.paneClick(z),l(),d.value=!1}function D(z){z.preventDefault(),z.stopPropagation(),i.paneContextMenu(z)}function U(z){i.paneScroll(z)}function A(z){var J,Q,ie;if(V.value=(J=n.value)==null?void 0:J.getBoundingClientRect(),!c.value||!e.isSelecting||z.button!==0||z.target!==N.value||!V.value)return;(ie=(Q=z.target)==null?void 0:Q.setPointerCapture)==null||ie.call(Q,z.pointerId);const{x:he,y:Z}=KI(z,V.value);P=!0,Y=!1,l(),s.value={width:0,height:0,startX:he,startY:Z,x:he,y:Z},i.selectionStart(z)}function T(z){var J;if(!V.value||!s.value)return;Y=!0;const{x:Q,y:ie}=Zt(z,V.value),{startX:he=0,startY:Z=0}=s.value,re={startX:he,startY:Z,x:Q<he?Q:he,y:ie<Z?ie:Z,width:Math.abs(Q-he),height:Math.abs(ie-Z)},le=x.value,fe=v.value;x.value=new Set(Jf(o.value,re,r.value,h.value===ql.Partial,!0).map($=>$.id)),v.value=new Set;const ue=((J=E.value)==null?void 0:J.selectable)??!0;for(const $ of x.value){const B=S.value.get($);if(B)for(const{edgeId:F}of B.values()){const R=w.value.get(F);R&&(R.selectable??ue)&&v.value.add(F)}}if(!_p(le,x.value)){const $=En(b.value,x.value,!0);i.nodesChange($)}if(!_p(fe,v.value)){const $=En(w.value,v.value);i.edgesChange($)}s.value=re,a.value=!0,d.value=!1}function K(z){var J;z.button!==0||!P||((J=z.target)==null||J.releasePointerCapture(z.pointerId),!a.value&&s.value&&z.target===N.value&&X(z),a.value=!1,s.value=null,d.value=x.value.size>0,i.selectionEnd(z),e.selectionKeyPressed&&(Y=!1),P=!1)}return(z,J)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:N,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:z.isSelecting}]),onClick:J[0]||(J[0]=Q=>L.value?void 0:te(X,N.value)(Q)),onContextmenu:J[1]||(J[1]=Q=>te(D,N.value)(Q)),onWheelPassive:J[2]||(J[2]=Q=>te(U,N.value)(Q)),onPointerenter:J[3]||(J[3]=Q=>L.value?void 0:t.unref(i).paneMouseEnter(Q)),onPointerdown:J[4]||(J[4]=Q=>L.value?A(Q):t.unref(i).paneMouseMove(Q)),onPointermove:J[5]||(J[5]=Q=>L.value?T(Q):t.unref(i).paneMouseMove(Q)),onPointerup:J[6]||(J[6]=Q=>L.value?K(Q):void 0),onPointerleave:J[7]||(J[7]=Q=>t.unref(i).paneMouseLeave(Q))},[t.renderSlot(z.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(MI,{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(UI,{key:1})):t.createCommentVNode("",!0)],34))}}),qI={name:"Transform",compatConfig:{MODE:3}},zI=t.defineComponent({...qI,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Le(),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))}}),HI={name:"Viewport",compatConfig:{MODE:3}},YI=t.defineComponent({...HI,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:_,noWheelClassName:y,noPanClassName:g,emits:w,connectionStartHandle:b,userSelectionActive:S,paneDragging:E,d3Zoom:C,d3Selection:N,d3ZoomHandler:x,viewport:v,viewportRef:V,paneClickDistance:L}=Le();RI(V);const k=t.shallowRef(!1),Y=t.shallowRef(!1);let P=null,G=!1,j=0,te={x:0,y:0,zoom:0};const X=hr(s),D=hr(l),U=hr(a),A=t.toRef(()=>(!D.value||D.value&&l.value===!0)&&(X.value||u.value)),T=t.toRef(()=>X.value||c.value),K=t.toRef(()=>D.value||l.value===!0&&A.value!==!0);t.onMounted(()=>{if(!V.value){Mi("Viewport element is missing");return}const Z=V.value,re=Z.getBoundingClientRect(),le=yA().clickDistance(L.value).scaleExtent([n.value,o.value]).translateExtent(i.value),fe=Ft(Z).call(le),ue=fe.on("wheel.zoom"),$=Ao.translate(r.value.x??0,r.value.y??0).scale(zn(r.value.zoom??1,n.value,o.value)),B=[[0,0],[re.width,re.height]],F=le.constrain()($,B,i.value);le.transform(fe,F),le.wheelDelta(J),C.value=le,N.value=fe,x.value=ue,v.value={x:F.x,y:F.y,zoom:F.k},le.on("start",R=>{var ee;if(!R.sourceEvent)return null;j=R.sourceEvent.button,k.value=!0;const q=ie(R.transform);((ee=R.sourceEvent)==null?void 0:ee.type)==="mousedown"&&(E.value=!0),te=q,w.viewportChangeStart(q),w.moveStart({event:R,flowTransform:q})}),le.on("end",R=>{if(!R.sourceEvent)return null;if(k.value=!1,E.value=!1,z(A.value,j??0)&&!G&&w.paneContextMenu(R.sourceEvent),G=!1,Q(te,R.transform)){const ee=ie(R.transform);te=ee,w.viewportChangeEnd(ee),w.moveEnd({event:R,flowTransform:ee})}}),le.filter(R=>{var ee;const q=U.value||h.value,ae=m.value&&R.ctrlKey,I=R.button;if(I===1&&R.type==="mousedown"&&(he(R,"vue-flow__node")||he(R,"vue-flow__edge")))return!0;if(!A.value&&!q&&!T.value&&!p.value&&!m.value||S.value||!p.value&&R.type==="dblclick"||he(R,y.value)&&R.type==="wheel"||he(R,g.value)&&(R.type!=="wheel"||T.value&&R.type==="wheel"&&!U.value)||!m.value&&R.ctrlKey&&R.type==="wheel"||!q&&!T.value&&!ae&&R.type==="wheel")return!1;if(!m&&R.type==="touchstart"&&((ee=R.touches)==null?void 0:ee.length)>1)return R.preventDefault(),!1;if(!A.value&&(R.type==="mousedown"||R.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&I===0||Array.isArray(u.value)&&!u.value.includes(I)&&(R.type==="mousedown"||R.type==="touchstart"))return!1;const M=Array.isArray(u.value)&&u.value.includes(I)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!I||I<=1;return(!R.ctrlKey||X.value||R.type==="wheel")&&M}),t.watch([S,A],()=>{S.value&&!k.value?le.on("zoom",null):S.value||le.on("zoom",R=>{v.value={x:R.transform.x,y:R.transform.y,zoom:R.transform.k};const ee=ie(R.transform);G=z(A.value,j??0),w.viewportChange(ee),w.move({event:R,flowTransform:ee})})},{immediate:!0}),t.watch([S,T,d,U,m,_,y],()=>{T.value&&!U.value&&!S.value?fe.on("wheel.zoom",R=>{if(he(R,y.value))return!1;const ee=U.value||h.value,q=m.value&&R.ctrlKey;if(!(!_.value||T.value||ee||q))return!1;R.preventDefault(),R.stopImmediatePropagation();const I=fe.property("__zoom").k||1,M=Ri();if(!X.value&&R.ctrlKey&&m.value&&M){const ke=Ht(R),de=J(R),Ne=I*2**de;le.scaleTo(fe,Ne,ke,R);return}const O=R.deltaMode===1?20:1;let oe=d.value===gr.Vertical?0:R.deltaX*O,ne=d.value===gr.Horizontal?0:R.deltaY*O;!M&&R.shiftKey&&d.value!==gr.Vertical&&!oe&&ne&&(oe=ne,ne=0),le.translateBy(fe,-(oe/I)*f.value,-(ne/I)*f.value);const be=ie(fe.property("__zoom"));P&&clearTimeout(P),Y.value?(w.move({event:R,flowTransform:be}),w.viewportChange(be),P=setTimeout(()=>{w.moveEnd({event:R,flowTransform:be}),w.viewportChangeEnd(be),Y.value=!1},150)):(Y.value=!0,w.moveStart({event:R,flowTransform:be}),w.viewportChangeStart(be))},{passive:!1}):typeof ue<"u"&&fe.on("wheel.zoom",function(R,ee){const q=!_.value&&R.type==="wheel"&&!R.ctrlKey,ae=U.value||h.value,I=m.value&&R.ctrlKey;if(!ae&&!c.value&&!I&&R.type==="wheel"||q||he(R,y.value))return null;R.preventDefault(),ue.call(this,R,ee)},{passive:!1})},{immediate:!0})});function z(Z,re){return re===2&&Array.isArray(Z)&&Z.includes(2)}function J(Z){const re=Z.ctrlKey&&Ri()?10:1;return-Z.deltaY*(Z.deltaMode===1?.05:Z.deltaMode?1:.002)*re}function Q(Z,re){return Z.x!==re.x&&!Number.isNaN(re.x)||Z.y!==re.y&&!Number.isNaN(re.y)||Z.zoom!==re.k&&!Number.isNaN(re.k)}function ie(Z){return{x:Z.x,y:Z.y,zoom:Z.k}}function he(Z,re){return Z.target.closest(`.${re}`)}return(Z,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:V,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(GI,{"is-selecting":K.value,"selection-key-pressed":t.unref(D),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(zI,null,{default:t.withCtx(()=>[t.renderSlot(Z.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),WI=["id"],XI=["id"],ZI=["id"],JI={name:"A11yDescriptions",compatConfig:{MODE:3}},QI=t.defineComponent({...JI,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Le();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Kf)}-${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,WI),t.createElementVNode("div",{id:`${t.unref(jf)}-${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,XI),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(EA)}-${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,ZI))],64))}});function eP(){const e=Le();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function tP(e,n,o){return o===Ee.Left?e-n:o===Ee.Right?e+n:e}function nP(e,n,o){return o===Ee.Top?e-n:o===Ee.Bottom?e+n:e}const as=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=Ee.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:tP(n,e,r),cy:nP(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};as.props=["radius","centerX","centerY","position","type"],as.compatConfig={MODE:3};const Rp=as,oP=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:_,edgesUpdatable:y,edgesFocusable:g,hooks:w}=Le(),b=t.computed(()=>f(e.id)),{emit:S,on:E}=QA(b.value,a),C=t.inject(Li),N=t.getCurrentInstance(),x=t.ref(!1),v=t.ref(!1),V=t.ref(""),L=t.ref(null),k=t.ref("source"),Y=t.ref(null),P=t.toRef(()=>typeof b.value.selectable>"u"?_.value:b.value.selectable),G=t.toRef(()=>typeof b.value.updatable>"u"?y.value:b.value.updatable),j=t.toRef(()=>typeof b.value.focusable>"u"?g.value:b.value.focusable);t.provide(XA,e.id),t.provide(ZA,Y);const te=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),X=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),D=t.computed(()=>{const B=b.value.type||"default",F=C==null?void 0:C[`edge-${B}`];if(F)return F;let R=b.value.template??c.value[B];if(typeof R=="string"&&N){const ee=Object.keys(N.appContext.components);ee&&ee.includes(B)&&(R=t.resolveComponent(B,!1))}return R&&typeof R!="string"?R:(a.error(new lt(et.EDGE_TYPE_MISSING,R)),!1)}),{handlePointerDown:U}=Ep({nodeId:V,handleId:L,type:k,isValidConnection:p,edgeUpdaterType:k,onEdgeUpdate:K,onEdgeUpdateEnd:z});return()=>{const B=u(b.value.source),F=u(b.value.target),R="pathOptions"in b.value?b.value.pathOptions:{};if(!B&&!F)return a.error(new lt(et.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!B)return a.error(new lt(et.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!F)return a.error(new lt(et.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||B.hidden||F.hidden)return null;let ee;r.value===wn.Strict?ee=B.handleBounds.source:ee=[...B.handleBounds.source||[],...B.handleBounds.target||[]];const q=dp(ee,b.value.sourceHandle);let ae;r.value===wn.Strict?ae=F.handleBounds.target:ae=[...F.handleBounds.target||[],...F.handleBounds.source||[]];const I=dp(ae,b.value.targetHandle),M=(q==null?void 0:q.position)||Ee.Bottom,O=(I==null?void 0:I.position)||Ee.Top,{x:oe,y:ne}=Po(B,q,M),{x:be,y:ke}=Po(F,I,O);return b.value.sourceX=oe,b.value.sourceY=ne,b.value.targetX=be,b.value.targetY=ke,t.h("g",{ref:Y,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${D.value===!1?"default":b.value.type||"default"}`,s.value,te.value,{updating:x.value,selected:b.value.selected,animated:b.value.animated,inactive:!P.value&&!w.value.edgeClick.hasListeners()}],tabIndex:j.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":j.value?`${jf}-${n}`:void 0,"aria-roledescription":"edge",role:j.value?"group":"img",...b.value.domAttributes,onClick:Q,onContextmenu:ie,onDblclick:he,onMouseenter:Z,onMousemove:re,onMouseleave:le,onKeyDown:j.value?$:void 0},[v.value?null:t.h(D.value===!1?c.value.default:D.value,{id:e.id,sourceNode:B,targetNode:F,source:b.value.source,target:b.value.target,type:b.value.type,updatable:G.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:X.value,markerStart:`url('#${br(b.value.markerStart,n)}')`,markerEnd:`url('#${br(b.value.markerEnd,n)}')`,sourcePosition:M,targetPosition:O,sourceX:oe,sourceY:ne,targetX:be,targetY:ke,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...R}),[G.value==="source"||G.value===!0?[t.h("g",{onMousedown:fe,onMouseenter:A,onMouseout:T},t.h(Rp,{position:M,centerX:oe,centerY:ne,radius:i.value,type:"source","data-type":"source"}))]:null,G.value==="target"||G.value===!0?[t.h("g",{onMousedown:ue,onMouseenter:A,onMouseout:T},t.h(Rp,{position:O,centerX:be,centerY:ke,radius:i.value,type:"target","data-type":"target"}))]:null]])};function A(){x.value=!0}function T(){x.value=!1}function K(B,F){S.update({event:B,edge:b.value,connection:F})}function z(B){S.updateEnd({event:B,edge:b.value}),v.value=!1}function J(B,F){B.button===0&&(v.value=!0,V.value=F?b.value.target:b.value.source,L.value=(F?b.value.targetHandle:b.value.sourceHandle)??null,k.value=F?"target":"source",S.updateStart({event:B,edge:b.value}),U(B))}function Q(B){var F;const R={event:B,edge:b.value};P.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(F=Y.value)==null||F.blur()):o([b.value])),S.click(R)}function ie(B){S.contextMenu({event:B,edge:b.value})}function he(B){S.doubleClick({event:B,edge:b.value})}function Z(B){S.mouseEnter({event:B,edge:b.value})}function re(B){S.mouseMove({event:B,edge:b.value})}function le(B){S.mouseLeave({event:B,edge:b.value})}function fe(B){J(B,!0)}function ue(B){J(B,!1)}function $(B){var F;!h.value&&Gf.includes(B.key)&&P.value&&(B.key==="Escape"?((F=Y.value)==null||F.blur(),d([f(e.id)])):o([f(e.id)]))}}}),rP=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}=Le(),p=(e=t.inject(Li))==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}),_=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),y=t.computed(()=>c.value.markerStart?`url(#${br(c.value.markerStart,n)})`:""),g=t.computed(()=>c.value.markerEnd?`url(#${br(c.value.markerEnd,n)})`:"");return()=>{var w,b,S;if(!m.value||!r.value)return null;const E=r.value.id,C=r.value.type,N=m.value.handleBounds;let x=(N==null?void 0:N[C])??[];if(o.value===wn.Loose){const X=(N==null?void 0:N[C==="source"?"target":"source"])??[];x=[...x,...X]}if(!x)return null;const v=(E?x.find(X=>X.id===E):x[0])??null,V=(v==null?void 0:v.position)??Ee.Top,{x:L,y:k}=Po(m.value,v,V);let Y=null;h.value&&(o.value===wn.Strict?Y=((w=h.value.handleBounds[C==="source"?"target":"source"])==null?void 0:w.find(X=>{var D;return X.id===((D=i.value)==null?void 0:D.id)}))||null:Y=((b=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:b.find(X=>{var D;return X.id===((D=i.value)==null?void 0:D.id)}))||null);const P=((S=i.value)==null?void 0:S.position)??(V?Ql[V]:null);if(!V||!P)return null;const G=l.value??c.value.type??qn.Bezier;let j="";const te={sourceX:L,sourceY:k,sourcePosition:V,targetX:_.value.x,targetY:_.value.y,targetPosition:P};return G===qn.Bezier?[j]=Pp(te):G===qn.Step?[j]=is({...te,borderRadius:0}):G===qn.SmoothStep?[j]=is(te):G===qn.SimpleBezier?[j]=Op(te):j=`M${L},${k} ${_.value.x},${_.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:L,sourceY:k,sourcePosition:V,targetX:_.value.x,targetY:_.value.y,targetPosition:P,sourceNode:m.value,sourceHandle:v,targetNode:h.value,targetHandle:Y,markerEnd:g.value,markerStart:y.value,connectionStatus:d.value}):t.h("path",{d:j,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":g.value,"marker-start":y.value})))}}}),iP=["id","markerWidth","markerHeight","markerUnits","orient"],aP={name:"MarkerType",compatConfig:{MODE:3}},lP=t.defineComponent({...aP,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(mr).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(mr).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,iP))}}),sP={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},cP={name:"MarkerDefinitions",compatConfig:{MODE:3}},dP=t.defineComponent({...cP,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Le(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=br(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",sP,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(lP,{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))])]))}}),uP={name:"Edges",compatConfig:{MODE:3}},fP=t.defineComponent({...uP,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Le();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(dP),(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(DA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(oP),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(rP))],64))}}),pP=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:_,snapToGrid:y,snapGrid:g,nodeDragThreshold:w,nodesDraggable:b,elementsSelectable:S,nodesConnectable:E,nodesFocusable:C,hooks:N}=Le(),x=t.ref(null);t.provide(kp,x),t.provide(wp,e.id);const v=t.inject(Li),V=t.getCurrentInstance(),L=xp(),{node:k,parentNode:Y}=Np(e.id),{emit:P,on:G}=oI(k,l),j=t.toRef(()=>typeof k.draggable>"u"?b.value:k.draggable),te=t.toRef(()=>typeof k.selectable>"u"?S.value:k.selectable),X=t.toRef(()=>typeof k.connectable>"u"?E.value:k.connectable),D=t.toRef(()=>typeof k.focusable>"u"?C.value:k.focusable),U=t.computed(()=>te.value||j.value||N.value.nodeClick.hasListeners()||N.value.nodeDoubleClick.hasListeners()||N.value.nodeMouseEnter.hasListeners()||N.value.nodeMouseMove.hasListeners()||N.value.nodeMouseLeave.hasListeners()),A=t.toRef(()=>!!k.dimensions.width&&!!k.dimensions.height),T=t.computed(()=>{const F=k.type||"default",R=v==null?void 0:v[`node-${F}`];if(R)return R;let ee=k.template||u.value[F];if(typeof ee=="string"&&V){const q=Object.keys(V.appContext.components);q&&q.includes(F)&&(ee=t.resolveComponent(F,!1))}return ee&&typeof ee!="string"?ee:(l.error(new lt(et.NODE_TYPE_MISSING,ee)),!1)}),K=Cp({id:e.id,el:x,disabled:()=>!j.value,selectable:te,dragHandle:()=>k.dragHandle,onStart(F){P.dragStart(F)},onDrag(F){P.drag(F)},onStop(F){P.dragStop(F)},onClick(F){$(F)}}),z=t.computed(()=>k.class instanceof Function?k.class(k):k.class),J=t.computed(()=>{const F=(k.style instanceof Function?k.style(k):k.style)||{},R=k.width instanceof Function?k.width(k):k.width,ee=k.height instanceof Function?k.height(k):k.height;return!F.width&&R&&(F.width=typeof R=="string"?R:`${R}px`),!F.height&&ee&&(F.height=typeof ee=="string"?ee:`${ee}px`),F}),Q=t.toRef(()=>Number(k.zIndex??J.value.zIndex??0));return f(F=>{(F.includes(e.id)||!F.length)&&he()}),t.onMounted(()=>{t.watch(()=>k.hidden,(F=!1,R,ee)=>{!F&&x.value&&(e.resizeObserver.observe(x.value),ee(()=>{x.value&&e.resizeObserver.unobserve(x.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>k.type,()=>k.sourcePosition,()=>k.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:x.value,forceUpdate:!0}])})}),t.watch([()=>k.position.x,()=>k.position.y,()=>{var F;return(F=Y.value)==null?void 0:F.computedPosition.x},()=>{var F;return(F=Y.value)==null?void 0:F.computedPosition.y},()=>{var F;return(F=Y.value)==null?void 0:F.computedPosition.z},Q,()=>k.selected,()=>k.dimensions.height,()=>k.dimensions.width,()=>{var F;return(F=Y.value)==null?void 0:F.dimensions.height},()=>{var F;return(F=Y.value)==null?void 0:F.dimensions.width}],([F,R,ee,q,ae,I])=>{const M={x:F,y:R,z:I+(m.value&&k.selected?1e3:0)};typeof ee<"u"&&typeof q<"u"?k.computedPosition=TA({x:ee,y:q,z:ae},M):k.computedPosition=M},{flush:"post",immediate:!0}),t.watch([()=>k.extent,p],([F,R],[ee,q])=>{(F!==ee||R!==q)&&ie()}),k.extent==="parent"||typeof k.extent=="object"&&"range"in k.extent&&k.extent.range==="parent"?Nl(()=>A).toBe(!0).then(ie):ie(),()=>k.hidden?null:t.h("div",{ref:x,"data-id":k.id,class:["vue-flow__node",`vue-flow__node-${T.value===!1?"default":k.type||"default"}`,{[o.value]:j.value,dragging:K==null?void 0:K.value,draggable:j.value,selected:k.selected,selectable:te.value,parent:k.isParent},z.value],style:{visibility:A.value?"visible":"hidden",zIndex:k.computedPosition.z??Q.value,transform:`translate(${k.computedPosition.x}px,${k.computedPosition.y}px)`,pointerEvents:U.value?"all":"none",...J.value},tabIndex:D.value?0:void 0,role:D.value?"group":void 0,"aria-describedby":h.value?void 0:`${Kf}-${n}`,"aria-label":k.ariaLabel,"aria-roledescription":"node",...k.domAttributes,onMouseenter:Z,onMousemove:re,onMouseleave:le,onContextmenu:fe,onClick:$,onDblclick:ue,onKeydown:B},[t.h(T.value===!1?u.value.default:T.value,{id:k.id,type:k.type,data:k.data,events:{...k.events,...G},selected:k.selected,resizing:k.resizing,dragging:K.value,connectable:X.value,position:k.computedPosition,dimensions:k.dimensions,isValidTargetPos:k.isValidTargetPos,isValidSourcePos:k.isValidSourcePos,parent:k.parentNode,parentNodeId:k.parentNode,zIndex:k.computedPosition.z??Q.value,targetPosition:k.targetPosition,sourcePosition:k.sourcePosition,label:k.label,dragHandle:k.dragHandle,onUpdateNodeInternals:he})]);function ie(){const F=k.computedPosition,{computedPosition:R,position:ee}=Xl(k,y.value?Di(F,g.value):F,l.error,p.value,Y.value);(k.computedPosition.x!==R.x||k.computedPosition.y!==R.y)&&(k.computedPosition={...k.computedPosition,...R}),(k.position.x!==ee.x||k.position.y!==ee.y)&&(k.position=ee)}function he(){x.value&&d([{id:e.id,nodeElement:x.value,forceUpdate:!0}])}function Z(F){K!=null&&K.value||P.mouseEnter({event:F,node:k})}function re(F){K!=null&&K.value||P.mouseMove({event:F,node:k})}function le(F){K!=null&&K.value||P.mouseLeave({event:F,node:k})}function fe(F){return P.contextMenu({event:F,node:k})}function ue(F){return P.doubleClick({event:F,node:k})}function $(F){te.value&&(!r.value||!j.value||w.value>0)&&es(k,a.value,c,s,i,!1,x.value),P.click({event:F,node:k})}function B(F){if(!(zl(F)||h.value))if(Gf.includes(F.key)&&te.value){const R=F.key==="Escape";es(k,a.value,c,s,i,R,x.value)}else j.value&&k.selected&&Io[F.key]&&(F.preventDefault(),_.value=`Moved selected node ${F.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~k.position.x}, y: ${~~k.position.y}`,L({x:Io[F.key].x,y:Io[F.key].y},F.shiftKey))}}});function mP(e={includeHiddenNodes:!1}){const{nodes:n}=Le();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 gP={class:"vue-flow__nodes vue-flow__container"},hP={name:"Nodes",compatConfig:{MODE:3}},yP=t.defineComponent({...hP,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Le(),i=mP(),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",gP,[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(pP),{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 _P(){const{emits:e}=Le();t.onMounted(()=>{if(mp()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new lt(et.MISSING_STYLES))}})}const bP=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),wP={name:"VueFlow",compatConfig:{MODE:3}},Dp=t.defineComponent({...wP,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=xl(r,"modelValue",o),l=xl(r,"nodes",o),s=xl(r,"edges",o),c=Le(r),d=lI({modelValue:a,nodes:l,edges:s},r,c);return cI(o,c.hooks),eP(),_P(),t.provide(Li,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(YI,null,{default:t.withCtx(()=>[t.createVNode(fP),bP,t.createVNode(yP),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(QI)],512))}}),kP={name:"Panel",compatConfig:{MODE:3}},CP=t.defineComponent({...kP,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Le(),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 fn=(e=>(e.Lines="lines",e.Dots="dots",e))(fn||{});const Mp=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]}`})},Lp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};fn.Lines+"",fn.Dots+"";const EP={[fn.Dots]:"#81818a",[fn.Lines]:"#eee"},NP=["id","x","y","width","height","patternTransform"],xP={key:2,height:"100",width:"100"},SP=["fill"],vP=["x","y","fill"],AP={name:"Background",compatConfig:{MODE:3}},IP=t.defineComponent({...AP,props:{id:{},variant:{default:()=>fn.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}=Le(),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||EP[e.variant||fn.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(fn).Lines?(t.openBlock(),t.createBlock(t.unref(Mp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(fn).Dots?(t.openBlock(),t.createBlock(t.unref(Lp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",xP,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,SP)])):t.createCommentVNode("",!0)])],8,NP)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,vP),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),PP={name:"ControlButton",compatConfig:{MODE:3}},TP=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},OP={class:"vue-flow__controls-button"};function $P(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",OP,[t.renderSlot(e.$slots,"default")])}const wr=TP(PP,[["render",$P]]),BP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},VP=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function RP(e,n){return t.openBlock(),t.createElementBlock("svg",BP,VP)}const DP={render:RP},MP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},LP=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function FP(e,n){return t.openBlock(),t.createElementBlock("svg",MP,LP)}const UP={render:FP},KP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},jP=[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 GP(e,n){return t.openBlock(),t.createElementBlock("svg",KP,jP)}const qP={render:GP},zP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},HP=[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 YP(e,n){return t.openBlock(),t.createElementBlock("svg",zP,HP)}const WP={render:YP},XP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},ZP=[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 JP(e,n){return t.openBlock(),t.createElementBlock("svg",XP,ZP)}const QP={render:JP},eT={name:"Controls",compatConfig:{MODE:3}},tT=t.defineComponent({...eT,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Ff.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}=Le(),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 _(){l(),n("zoomIn")}function y(){s(),n("zoomOut")}function g(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(b,S)=>(t.openBlock(),t.createBlock(t.unref(CP),{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(wr,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(DP))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(wr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(UP))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(wr,{class:"vue-flow__controls-fitview",onClick:g},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(qP))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(wr,{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(QP))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(WP))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),nT=["undo","redo","duplicate","cut","copy","paste"],Fp=()=>{};function oT(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function rT(e){if(!(e.metaKey||e.ctrlKey))return;switch(e.key.toLowerCase()){case"z":return e.shiftKey?"redo":"undo";case"y":return"redo";case"d":return"duplicate";case"x":return"cut";case"c":return"copy";case"v":return"paste"}}const iT=qe.createSharedComposable(()=>{const e=new Set;qe.useEventListener("keydown",o=>{if(oT(o.target))return;const r=rT(o);if(r)for(const i of e){if(!t.toValue(i.enabled))continue;const a=i[r];if(a){if(o.defaultPrevented){t.warn(`[useHotkeys] event for "${r}" was already defaultPrevented. Hotkey ignored.`);return}o.preventDefault(),a();return}}},{passive:!1});function n(o){if(!nT.some(i=>typeof o[i]=="function"))return Fp;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function Up(e={}){if(typeof window>"u")return Fp;const n=iT().subscribe(e);return t.onScopeDispose(n),n}const Kp=44,aT=220,jp=366,lT=1e3,sT=Kp+parseFloat(kd),zi=1,cT=0,dT=1,uT=2,fT=3,To=parseInt(yC,10),kr="application/x-datakit+json",Hi={delete:["Delete"],undo:["Mod","Z"],redo:{mac:["Mod","Shift","Z"],windows:["Mod","Y"],linux:["Mod","Shift","Z"]},copy:["Mod","C"],paste:["Mod","V"],duplicate:["Mod","D"]},Cr={padding:80,gaps:{nodes:40,edges:80,ranks:40}},pT=1600,mT=1.2,gT=0,hT=200,Gp=Symbol("confirm-modal"),Oo="{key}",Wn={"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(Wn).filter(e=>e.includes(Oo)).map(e=>e.replace(Oo,""));function ls(e){if(!e||!Nr(e))return;const n=Yi.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Oo,"")}function Er(e){if(!e)return null;const n=Yi.find(o=>e.startsWith(o));return n||e}function Nr(e){return e?Yi.some(n=>e.startsWith(n)):!1}function qp(e){return e?Nr(e)?Er(e)+Oo:e:null}function ss(e){var o;if(!e)return!1;const n=qp(e);return n?((o=Wn[n])==null?void 0:o.readable)??!1:!1}function cs(e){var o;if(!e)return!1;const n=qp(e);return n?((o=Wn[n])==null?void 0:o.writable)??!1:!1}function yT(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var _T="\0",Xn="\0",zp="";let bT=class{constructor(n){rt(this,"_isDirected",!0);rt(this,"_isMultigraph",!1);rt(this,"_isCompound",!1);rt(this,"_label");rt(this,"_defaultNodeLabelFn",()=>{});rt(this,"_defaultEdgeLabelFn",()=>{});rt(this,"_nodes",{});rt(this,"_in",{});rt(this,"_preds",{});rt(this,"_out",{});rt(this,"_sucs",{});rt(this,"_edgeObjs",{});rt(this,"_edgeLabels",{});rt(this,"_nodeCount",0);rt(this,"_edgeCount",0);rt(this,"_parent");rt(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[Xn]={})}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]=Xn,this._children[n]={},this._children[Xn][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=Xn;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!==Xn)return o}}children(n=Xn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===Xn)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=xr(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=wT(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Hp(this._preds[o],n),Hp(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?ds(this._isDirected,arguments[0]):xr(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?ds(this._isDirected,arguments[0]):xr(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?ds(this._isDirected,arguments[0]):xr(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],Yp(this._preds[o],n),Yp(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 Hp(e,n){e[n]?e[n]++:e[n]=1}function Yp(e,n){--e[n]||delete e[n]}function xr(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+zp+a+zp+(r===void 0?_T:r)}function wT(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 ds(e,n){return xr(e,n.v,n.w,n.name)}var us=bT,kT="2.2.4",CT={Graph:us,version:kT},ET=us,NT={write:xT,read:AT};function xT(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:ST(e),edges:vT(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function ST(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 vT(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 AT(e){var n=new ET(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 IT=PT;function PT(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 Wp=class{constructor(){rt(this,"_arr",[]);rt(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}},TT=Wp,Xp=$T,OT=()=>1;function $T(e,n,o,r){return BT(e,String(n),o||OT,r||function(i){return e.outEdges(i)})}function BT(e,n,o,r){var i={},a=new TT,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 VT=Xp,RT=DT;function DT(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=VT(e,i,n,o),r},{})}var Zp=MT;function MT(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 LT=Zp,FT=UT;function UT(e){return LT(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var KT=GT,jT=()=>1;function GT(e,n,o){return qT(e,n||jT,o||function(r){return e.outEdges(r)})}function qT(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 Jp(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new fs;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 fs;return r}class fs extends Error{constructor(){super(...arguments)}}var Qp=Jp;Jp.CycleException=fs;var em=Qp,zT=HT;function HT(e){try{em(e)}catch(n){if(n instanceof em.CycleException)return!1;throw n}return!0}var tm=YT;function YT(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?WT:XT,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 WT(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]),nm(n(a[0]),l=>i.push([l,!1])))}}function XT(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),nm(n(a),l=>i.push(l)))}}function nm(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var ZT=tm,JT=QT;function QT(e,n){return ZT(e,n,"post")}var eO=tm,tO=nO;function nO(e,n){return eO(e,n,"pre")}var oO=us,rO=Wp,iO=aO;function aO(e,n){var o=new oO,r={},i=new rO,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 lO={components:IT,dijkstra:Xp,dijkstraAll:RT,findCycles:FT,floydWarshall:KT,isAcyclic:zT,postorder:JT,preorder:tO,prim:iO,tarjan:Zp,topsort:Qp},om=CT,jt={Graph:om.Graph,json:NT,alg:lO,version:om.version};let sO=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return rm(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&rm(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,cO)),r=r._prev;return"["+n.join(", ")+"]"}};function rm(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function cO(e,n){if(e!=="_next"&&e!=="_prev")return n}var dO=sO;let uO=jt.Graph,fO=dO;var pO=gO;let mO=()=>1;function gO(e,n){if(e.nodeCount()<=1)return[];let o=yO(e,n||mO);return hO(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function hO(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)ps(e,n,o,l);for(;l=i.dequeue();)ps(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(ps(e,n,o,l,!0));break}}}return r}function ps(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,ms(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,ms(n,o,d)}),e.removeNode(r.v),a}function yO(e,n){let o=new uO,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=_O(i+r+3).map(()=>new fO),l=r+1;return o.nodes().forEach(s=>{ms(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function ms(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 _O(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let im=jt.Graph;var nt={addBorderNode:vO,addDummyNode:am,applyWithChunking:Wi,asNonCompoundGraph:wO,buildLayerMatrix:NO,intersectRect:EO,mapValues:BO,maxRank:sm,normalizeRanks:xO,notime:TO,partition:IO,pick:$O,predecessorWeights:CO,range:dm,removeEmptyRanks:SO,simplify:bO,successorWeights:kO,time:PO,uniqueId:cm,zipObject:gs};function am(e,n,o,r){for(var i=r;e.hasNode(i);)i=cm(r);return o.dummy=n,e.setNode(i,o),i}function bO(e){let n=new im().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 wO(e){let n=new im({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 kO(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 gs(e.nodes(),n)}function CO(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 gs(e.nodes(),n)}function EO(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 NO(e){let n=dm(sm(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 xO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=Wi(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function SO(e){let n=e.nodes().map(l=>e.node(l).rank),o=Wi(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 vO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),am(e,"border",i,n)}function AO(e,n=lm){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const lm=65535;function Wi(e,n){if(n.length>lm){const o=AO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function sm(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return Wi(Math.max,o)}function IO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function PO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function TO(e,n){return n()}let OO=0;function cm(e){var n=++OO;return e+(""+n)}function dm(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 $O(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function BO(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 gs(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let VO=pO,RO=nt.uniqueId;var DO={run:MO,undo:FO};function MO(e){(e.graph().acyclicer==="greedy"?VO(e,o(e)):LO(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,RO("rev"))});function o(r){return i=>r.edge(i).weight}}function LO(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 FO(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 UO=nt;var KO={run:jO,undo:qO};function jO(e){e.graph().dummyChains=[],e.edges().forEach(n=>GO(e,n))}function GO(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=UO.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 qO(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:zO}=nt;var Xi={longestPath:HO,slack:YO};function HO(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=zO(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function YO(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var WO=jt.Graph,Zi=Xi.slack,um=XO;function XO(e){var n=new WO({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;ZO(n,e)<r;)i=JO(n,e),a=n.hasNode(i.v)?Zi(e,i):-Zi(e,i),QO(n,e,a);return n}function ZO(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!Zi(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function JO(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=Zi(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function QO(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var e$=um,fm=Xi.slack,t$=Xi.longestPath,n$=jt.alg.preorder,o$=jt.alg.postorder,r$=nt.simplify,i$=Zn;Zn.initLowLimValues=ys,Zn.initCutValues=hs,Zn.calcCutValue=pm,Zn.leaveEdge=gm,Zn.enterEdge=hm,Zn.exchangeEdges=ym;function Zn(e){e=r$(e),t$(e);var n=e$(e);ys(n),hs(n,e);for(var o,r;o=gm(n);)r=hm(n,e,o),ym(n,e,o,r)}function hs(e,n){var o=o$(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>a$(e,n,r))}function a$(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=pm(e,n,o)}function pm(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,s$(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function ys(e,n){arguments.length<2&&(n=e.nodes()[0]),mm(e,{},1,n)}function mm(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=mm(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function gm(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function hm(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===_m(e,e.node(f.v),s)&&c!==_m(e,e.node(f.w),s));return d.reduce((f,u)=>fm(n,u)<fm(n,f)?u:f)}function ym(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),ys(e),hs(e,n),l$(e,n)}function l$(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=n$(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 s$(e,n,o){return e.hasEdge(n,o)}function _m(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var c$=Xi,bm=c$.longestPath,d$=um,u$=i$,f$=p$;function p$(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":wm(e);break;case"tight-tree":g$(e);break;case"longest-path":m$(e);break;case"none":break;default:wm(e)}}var m$=bm;function g$(e){bm(e),d$(e)}function wm(e){u$(e)}var h$=y$;function y$(e){let n=b$(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=_$(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 _$(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 b$(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 Ji=nt;var w$={run:k$,cleanup:N$};function k$(e){let n=Ji.addDummyNode(e,"root",{},"_root"),o=C$(e),r=Object.values(o),i=Ji.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=E$(e)+1;e.children().forEach(s=>km(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function km(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=Ji.addBorderNode(e,"_bt"),d=Ji.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{km(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,_=p.borderTop?r:2*r,y=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:_,minlen:y,nestingEdge:!0}),e.setEdge(h,d,{weight:_,minlen:y,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function C$(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 E$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function N$(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 x$=nt;var S$=v$;function v$(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)Cm(e,"borderLeft","_bl",o,i,a),Cm(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function Cm(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=x$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var A$={adjust:I$,undo:P$};function I$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&Em(e)}function P$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&T$(e),(n==="lr"||n==="rl")&&(O$(e),Em(e))}function Em(e){e.nodes().forEach(n=>Nm(e.node(n))),e.edges().forEach(n=>Nm(e.edge(n)))}function Nm(e){let n=e.width;e.width=e.height,e.height=n}function T$(e){e.nodes().forEach(n=>_s(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(_s),Object.hasOwn(o,"y")&&_s(o)})}function _s(e){e.y=-e.y}function O$(e){e.nodes().forEach(n=>bs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(bs),Object.hasOwn(o,"x")&&bs(o)})}function bs(e){let n=e.x;e.x=e.y,e.y=n}let xm=nt;var $$=B$;function B$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=xm.applyWithChunking(Math.max,r),a=xm.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 V$=nt.zipObject;var R$=D$;function D$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=M$(e,n[r-1],n[r]);return o}function M$(e,n,o){let r=V$(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 L$=F$;function F$(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 U$=nt;var K$=j$;function j$(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 G$(r)}function G$(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&q$(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=>U$.pick(i,["vs","i","barycenter","weight"]))}function q$(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 z$=nt;var H$=Y$;function Y$(e,n){let o=z$.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(W$(!!n)),c=Sm(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Sm(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Sm(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 W$(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let X$=L$,Z$=K$,J$=H$;var Q$=vm;function vm(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=X$(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=vm(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&tB(p,m)}});let f=Z$(d,o);eB(f,c);let u=J$(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 eB(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function tB(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 nB=jt.Graph,oB=nt;var rB=iB;function iB(e,n,o){let r=aB(e),i=new nB({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 aB(e){for(var n;e.hasNode(n=oB.uniqueId("_root")););return n}var lB=sB;function sB(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 cB=$$,dB=R$,uB=Q$,fB=rB,pB=lB,mB=jt.Graph,Qi=nt;var gB=Am;function Am(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,Am);return}let o=Qi.maxRank(e),r=Im(e,Qi.range(1,o+1),"inEdges"),i=Im(e,Qi.range(o-1,-1,-1),"outEdges"),a=cB(e);if(Pm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){hB(c%2?r:i,c%4>=2),a=Qi.buildLayerMatrix(e);let f=dB(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Pm(e,s)}function Im(e,n,o){return n.map(function(r){return fB(e,r,o)})}function hB(e,n){let o=new mB;e.forEach(function(r){let i=r.graph().root,a=uB(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),pB(r,o,a.vs)})}function Pm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let yB=jt.Graph,pn=nt;var _B={positionX:IB};function bB(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=kB(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(_=>{let y=e.node(_),g=y.order;(g<l||m<g)&&!(y.dummy&&e.node(h).dummy)&&Tm(o,_,h)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function wB(e,n){let o={};function r(a,l,s,c,d){let f;pn.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)&&Tm(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 kB(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function Tm(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 CB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function EB(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]&&!CB(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function NB(e,n,o,r,i){let a={},l=xB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),_={};for(;h;)_[h]?u(h):(_[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,_)=>Math.min(h,a[_.w]-l.edge(_)),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 xB(e,n,o,r){let i=new yB,a=e.graph(),l=PB(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 SB(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=TB(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 vB(e,n){let o=Object.values(n),r=pn.applyWithChunking(Math.min,o),i=pn.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-pn.applyWithChunking(Math.min,d);l!=="l"&&(f=i-pn.applyWithChunking(Math.max,d)),f&&(e[s]=pn.mapValues(c,u=>u+f))})})}function AB(e,n){return pn.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 IB(e){let n=pn.buildLayerMatrix(e),o=Object.assign(bB(e,n),wB(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=EB(e,i,o,c),f=NB(e,i,d.root,d.align,s==="r");s==="r"&&(f=pn.mapValues(f,u=>-u)),r[l+s]=f})});let a=SB(e,r);return vB(r,a),AB(r,e.graph().align)}function PB(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 TB(e,n){return e.node(n).width}let Om=nt,OB=_B.positionX;var $B=BB;function BB(e){e=Om.asNonCompoundGraph(e),VB(e),Object.entries(OB(e)).forEach(([n,o])=>e.node(n).x=o)}function VB(e){let n=Om.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 $m=DO,Bm=KO,RB=f$,DB=nt.normalizeRanks,MB=h$,LB=nt.removeEmptyRanks,Vm=w$,FB=S$,Rm=A$,UB=gB,KB=$B,Rt=nt,jB=jt.Graph;var GB=qB;function qB(e,n){let o=n&&n.debugTiming?Rt.time:Rt.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>tV(e));o(" runLayout",()=>zB(r,o,n)),o(" updateInputGraph",()=>HB(e,r))})}function zB(e,n,o){n(" makeSpaceForEdgeLabels",()=>nV(e)),n(" removeSelfEdges",()=>uV(e)),n(" acyclic",()=>$m.run(e)),n(" nestingGraph.run",()=>Vm.run(e)),n(" rank",()=>RB(Rt.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>oV(e)),n(" removeEmptyRanks",()=>LB(e)),n(" nestingGraph.cleanup",()=>Vm.cleanup(e)),n(" normalizeRanks",()=>DB(e)),n(" assignRankMinMax",()=>rV(e)),n(" removeEdgeLabelProxies",()=>iV(e)),n(" normalize.run",()=>Bm.run(e)),n(" parentDummyChains",()=>MB(e)),n(" addBorderSegments",()=>FB(e)),n(" order",()=>UB(e,o)),n(" insertSelfEdges",()=>fV(e)),n(" adjustCoordinateSystem",()=>Rm.adjust(e)),n(" position",()=>KB(e)),n(" positionSelfEdges",()=>pV(e)),n(" removeBorderNodes",()=>dV(e)),n(" normalize.undo",()=>Bm.undo(e)),n(" fixupEdgeLabelCoords",()=>sV(e)),n(" undoCoordinateSystem",()=>Rm.undo(e)),n(" translateGraph",()=>aV(e)),n(" assignNodeIntersects",()=>lV(e)),n(" reversePoints",()=>cV(e)),n(" acyclic.undo",()=>$m.undo(e))}function HB(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 YB=["nodesep","edgesep","ranksep","marginx","marginy"],WB={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},XB=["acyclicer","ranker","rankdir","align"],ZB=["width","height","rank"],Dm={width:0,height:0},JB=["minlen","weight","width","height","labeloffset"],QB={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},eV=["labelpos"];function tV(e){let n=new jB({multigraph:!0,compound:!0}),o=ks(e.graph());return n.setGraph(Object.assign({},WB,ws(o,YB),Rt.pick(o,XB))),e.nodes().forEach(r=>{let i=ks(e.node(r));const a=ws(i,ZB);Object.keys(Dm).forEach(l=>{a[l]===void 0&&(a[l]=Dm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=ks(e.edge(r));n.setEdge(r,Object.assign({},QB,ws(i,JB),Rt.pick(i,eV)))}),n}function nV(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 oV(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};Rt.addDummyNode(e,"edge-proxy",a,"_ep")}})}function rV(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 iV(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 aV(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 lV(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(Rt.intersectRect(r,a)),o.points.push(Rt.intersectRect(i,l))})}function sV(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 cV(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function dV(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 uV(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 fV(e){var n=Rt.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=>{Rt.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 pV(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 ws(e,n){return Rt.mapValues(Rt.pick(e,n),Number)}function ks(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let mV=nt,gV=jt.Graph;var hV={debugOrdering:yV};function yV(e){let n=mV.buildLayerMatrix(e),o=new gV({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 _V="1.1.5",bV={graphlib:jt,layout:GB,debug:hV,util:{time:nt.time,notime:nt.notime},version:_V};const Mm=yT(bV);function Lm(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(nd,e);return o=>n(o)}function ea(e,n,o){const r=n?bn(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Sr(e,n){const o=n(e.source),r=n(e.target);return[ea(o,e.sourceField,"output"),ea(r,e.targetField,"input")]}function Cs(e,n,o,r,i){const a=i(e),l=i(o);return[ea(a,n,"output"),ea(l,r,"input")]}function Fm(e){if(e.length===0)throw new Error("getBoundingRect requires at least one rect");let n=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;for(const{x:a,y:l,width:s,height:c}of e){if(![a,l,s,c].every(Number.isFinite))throw new Error("Rect values must be finite numbers");if(s<0||c<0)throw new RangeError("Rect width and height must be non-negative");const d=a+s,f=l+c;if(!Number.isFinite(d)||!Number.isFinite(f))throw new RangeError("Rect boundaries must be finite numbers");a<n&&(n=a),l<o&&(o=l),d>r&&(r=d),f>i&&(i=f)}return{x:n,y:o,width:r-n,height:i-o}}function wV({phase:e,readonly:n,flowId:o}){const{findNode:r}=Le(o),i=at(),{state:a,groupMapById:l,getNodeById:s,moveNode:c,moveGroup:d,setGroupLayout:f,commit:u,branchGroups:p}=i,{memberGroupMap:m,groupsByOwner:h,getNodeDepth:_,getGroupDepth:y}=p,g=t.ref(),w=D=>!!D&&D.startsWith("branch:");function b(D){const U=[];for(const A of D.memberIds){const T=s(A);T&&U.push(T)}return U}const S=t.computed(()=>{const D=new Map;return m.value.forEach((U,A)=>{if(U.phase!==e||!U.position)return;const T=s(A);T&&(T.phase!==e||T.hidden||D.set(A,U))}),D}),E=t.computed(()=>{const D=new Map;return h.value.forEach((U,A)=>{const T=U.filter(K=>K.phase===e);T.length>0&&D.set(A,T)}),D}),C=t.computed(()=>{const D=[];for(const U of a.value.groups){const A=s(U.ownerId);if(!A||A.phase!==e)continue;const T=U.position,K=U.dimensions;if(!T||!K)continue;const z=b(U).filter(Q=>Q.phase===e&&!Q.hidden),J=y(U.id);D.push({id:U.id,type:"group",position:T,width:K.width,height:K.height,data:{...U,memberIds:z.map(Q=>Q.id)},draggable:!n,selectable:!1,zIndex:J*zi+cT})}return D}),N=t.computed(()=>{let D=0;for(const U of a.value.groups){if(U.phase!==e)continue;const A=y(U.id);A>D&&(D=A)}return D}),x=t.computed(()=>{const D=[];for(const U of a.value.groups){if(U.phase!==e||!U.position||!U.dimensions)continue;const A=s(U.ownerId);if(!A||A.phase!==e||A.hidden||!b(U).filter(J=>J.phase===e&&!J.hidden).length)continue;const K=Math.max(_(A.id),y(U.id))+N.value+1,z={id:`branch:${U.id}`,source:A.id,target:U.id,sourceHandle:`branch@${U.branch}`,targetHandle:"input",markerEnd:mr.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:A.id,branch:U.branch,groupId:U.id},zIndex:K*zi+uT};D.push(z)}return D}),v=new Map,V=new Map;let L;function k(D,U=!0){if(D.phase!==e)return;const A=b(D).filter(Q=>Q.phase===e&&!Q.hidden);if(!A.length)return;const T=[];for(const Q of A){const ie=r(Q.id),he=ie==null?void 0:ie.dimensions,Z=(he==null?void 0:he.width)??0,re=(he==null?void 0:he.height)??0;if(Z<=0||re<=0)return;T.push({...Q.position,width:Z,height:re});const le=h.value.get(Q.id)??[];for(const fe of le){if(fe.phase!==e)continue;const ue=v.get(fe.id),$=(ue==null?void 0:ue.position)??fe.position,B=(ue==null?void 0:ue.dimensions)??fe.dimensions;!$||!B||T.push({x:$.x,y:$.y,width:B.width,height:B.height})}}const K=Fm(T),z=K.width+To*2,J=K.height+To*2;return{position:{x:Math.round(K.x-To),y:Math.round(K.y-To)},dimensions:{width:Math.round(z),height:Math.round(J)},commit:U}}function Y(){if(v.size===0){L=void 0;return}const D=[];let U=!1;v.forEach((A,T)=>{const K=f(T,A,!1);D.push({id:T,changed:K,commit:A.commit}),A.commit&&K&&!U&&(U=!0)}),v.clear(),L=void 0;for(const{id:A,changed:T,commit:K}of D){if(!T)continue;const z=l.value.get(A);if(!z)continue;const J=S.value.get(z.ownerId);J&&V.set(J.id,{commit:K})}if(V.size>0){const A=Array.from(V);V.clear();for(const[T,{commit:K}]of A)G(T,K)}U&&u("*")}function P(){v.size!==0&&(L||(L=t.nextTick().then(Y)))}function G(D,U=!0){const A=l.value.get(D);if(!A)return;const T=k(A,U);T&&(v.set(D,T),P())}function j(D,U,A,T){const K=l.value.get(D);if(!K)return;if(!K.position){d(D,U,!1),G(D);return}if(A===0&&T===0){d(D,U,!1);return}d(D,U,!1);const z=[D],J=new Set([D]),Q=new Set;for(;z.length;){const ie=z.shift(),he=l.value.get(ie);if(!he)continue;const Z=b(he).filter(re=>re.phase===e&&!re.hidden);for(const re of Z){Q.has(re.id)||(c(re.id,{x:re.position.x+A,y:re.position.y+T},!1),Q.add(re.id));const le=E.value.get(re.id)??[];for(const fe of le){if(J.has(fe.id))continue;const ue=l.value.get(fe.id);ue!=null&&ue.position&&d(fe.id,{x:ue.position.x+A,y:ue.position.y+T},!1),J.add(fe.id),z.push(fe.id)}}}}function te(D,U){const A=g.value;if(!A)return!1;if(A===D||U.some(T=>A===T))return!0;for(const T of U){const K=E.value.get(T)??[];if(K!=null&&K.some(z=>z.id===A))return!0}return!1}const X=new Map;return t.watch(()=>a.value.groups.filter(U=>U.phase===e).map(U=>{const A=U.memberIds.map(T=>{var Q,ie;const K=r(T),z=Math.round(((Q=K==null?void 0:K.dimensions)==null?void 0:Q.width)??0),J=Math.round(((ie=K==null?void 0:K.dimensions)==null?void 0:ie.height)??0);return`${T}:${z}x${J}`});return{id:U.id,memberIds:U.memberIds,signature:A.join(",")}}),D=>{const U=new Set(D.map(A=>A.id));for(const A of X.keys())U.has(A)||X.delete(A);for(const A of D)te(A.id,A.memberIds)||X.get(A.id)===A.signature||(X.set(A.id,A.signature),G(A.id))},{deep:!0,flush:"post"}),{groupsByOwner:E,memberGroupMap:S,groupNodes:C,branchEdges:x,isBranchEdgeId:w,updateGroupLayout:G,translateGroupTree:j,updateDragging:D=>{g.value=D},getNodeDepth:_,maxGroupDepth:N,waitForLayoutFlush:()=>L??Promise.resolve()}}function kV(e){t.provide(Gp,e)}function Um(){return t.inject(Gp,void 0)}function Km(){const e=Um();if(!e)throw new Error("Confirm modal not provided");return e}function CV({phase:e,groupMapById:n,getNodeDepth:o}){const r=t.shallowRef(),i=t.shallowRef();function a(d){r.value=d,i.value=void 0}function l(){r.value&&(r.value=void 0,i.value=void 0)}function s(d){let f;return n.value.forEach(u=>{if(u.phase!==e)return;const p=u.position,m=u.dimensions;if(!p||!m||!(d.x>=p.x&&d.x<=p.x+m.width&&d.y>=p.y&&d.y<=p.y+m.height))return;const _=o(u.ownerId);(!f||_>f.depth)&&(f={depth:_,id:u.id})}),f==null?void 0:f.id}function c(d){if(!r.value){i.value=void 0;return}if(!d){i.value=void 0;return}i.value=s(d)}return{activeGroupId:i,start:a,updateActiveGroup:c,end:l}}function jm(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const EV={default:iC,hover:lC,selected:aC};let Gm,Es;function ta(e){const n=e.id===Gm?"selected":e.id===Es?"hover":"default",o=EV[n],{markerEnd:r}=e,i=typeof r=="object"?{...r,color:o}:{type:r,color:o},a=e.zIndex??0,l=n==="selected"?a+2:n==="hover"?a+1:a;return{...e,style:{...e.style,stroke:o,strokeWidth:n==="selected"?1.5:void 0},markerEnd:i,zIndex:l}}const[NV,xV]=qe.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Cr.padding,gaps:s=Cr.gaps}=r,{nodes:c=Cr.gaps.nodes,edges:d=Cr.gaps.edges,ranks:f=Cr.gaps.ranks}=s,u=Le(o),p=at(),m=Um(),h=Lm(),{i18n:{t:_}}=Be(),{findNode:y,fitView:g,deleteKeyCode:w,onNodeDrag:b,onNodeDragStop:S,onConnect:E,onNodesChange:C,onEdgesChange:N,onEdgeUpdate:x,onEdgeMouseEnter:v,onEdgeMouseLeave:V,getNodes:L,setNodes:k,setEdges:Y,addSelectedNodes:P,screenToFlowCoordinate:G}=u;w.value=["Delete","Backspace"];const{state:j,commit:te,moveNode:X,selectNode:D,removeNode:U,getNodeById:A,connectEdge:T,disconnectEdge:K,getInEdgesByNodeId:z,branchGroups:J,commit:Q,reset:ie,groupMapById:he}=p,{isGroupId:Z}=J;function re(se,_e){const ce=A(se.source),pe=A(se.target);return!!(ce&&pe&&ce.phase===_e&&pe.phase===_e)}const{groupsByOwner:le,memberGroupMap:fe,groupNodes:ue,branchEdges:$,isBranchEdgeId:B,updateGroupLayout:F,translateGroupTree:R,updateDragging:ee,getNodeDepth:q,maxGroupDepth:ae,waitForLayoutFlush:I}=wV({phase:n,readonly:i,flowId:o}),{activeGroupId:M,start:O,updateActiveGroup:oe,end:ne}=CV({phase:n,groupMapById:he,getNodeDepth:q}),be=t.computed(()=>j.value.nodes.filter(se=>se.phase===n&&!se.hidden).map(se=>{const _e=fe.value.get(se.id),ce=_e==null?void 0:_e.position,pe=_e==null?void 0:_e.dimensions,we=_e&&ce&&pe?{x:se.position.x-ce.x,y:se.position.y-ce.y}:se.position,Se=q(se.id),Oe=!!(_e&&ce&&pe),Re=(Oe?Se:0)+ae.value+1;return{id:se.id,type:"flow",position:we,data:se,deletable:!Tu(se),parentNode:Oe?_e.id:void 0,zIndex:Re*zi+fT}})),ke=t.computed(()=>j.value.edges.filter(se=>re(se,n)).filter(se=>{const _e=A(se.source),ce=A(se.target);return!(_e!=null&&_e.hidden)&&!(ce!=null&&ce.hidden)}).map(se=>{const _e=A(se.source),ce=A(se.target);if(_e){if(!ce)throw new Error(`Missing target node "${se.target}" for edge "${se.id}" in phase "${n}"`)}else throw new Error(`Missing source node "${se.source}" for edge "${se.id}" in phase "${n}"`);const pe=Math.max(q(se.source),q(se.target))+ae.value+1;return ta({id:se.id,source:se.source,target:se.target,sourceHandle:se.sourceField?`outputs@${se.sourceField}`:"output",targetHandle:se.targetField?`inputs@${se.targetField}`:"input",markerEnd:mr.ArrowClosed,data:se,updatable:!i,zIndex:pe*zi+dT})})),de=t.computed(()=>[...$.value,...ke.value]);t.watch([be,ue,de],([se,_e,ce])=>{k([..._e,...se]),Y(ce)},{immediate:!0});const Ne=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function Pe({source:se,sourceHandle:_e,target:ce,targetHandle:pe}){if(!_e||!pe)return;const we=jm(_e),Se=jm(pe);if((we==null?void 0:we.io)==="input"||(Se==null?void 0:Se.io)==="output"||_e==="output"&&pe==="output")return;const Oe=z(ce);let Re=!1,Me=!1;const At=[],Ge=[],Ue=(Se==null?void 0:Se.io)==="input"?Oe.filter(We=>!We.targetField):Oe.filter(We=>!!We.targetField);Ue.length>0&&(Re=!0,Ue.forEach(We=>{Ge.push(Sr(We,A)),K(We.id,!1)}));const Ke=(Se==null?void 0:Se.io)==="input"?Se!=null&&Se.field?Oe.filter(We=>We.targetField===Se.field):Oe.filter(We=>!!We.targetField):Oe.filter(We=>!We.targetField);if(Ke.length>0){if(Ke.some(gt=>gt.source===se&&gt.target===ce&&gt.targetField===(Se==null?void 0:Se.field)&&gt.sourceField===(we==null?void 0:we.field)))return;Me=!0,Ke.forEach(gt=>{Ge.push(Sr(gt,A)),K(gt.id,!1)})}if(!T({source:se,sourceField:we==null?void 0:we.field,target:ce,targetField:Se==null?void 0:Se.field},!1)){ie(),h({message:_("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(At.push(Cs(se,we==null?void 0:we.field,ce,Se==null?void 0:Se.field,A)),Re||Me){if(!m)throw ie(),new Error("Expected confirm modal to be provided here when reachable");if(!await m(_(Re?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),At,Ge)){ie();return}}Q()}E(Pe);let me=!1;const ge=()=>{me&&(me=!1,Q())};C(se=>{se.filter(pe=>pe.type==="select").filter(pe=>!Z(pe.id)).sort((pe,we)=>pe.selected===we.selected?0:pe.selected?1:-1).forEach(pe=>{D(pe.selected?pe.id:void 0)});let ce=!1;se.forEach(pe=>{if(pe.type==="remove"){if(Z(pe.id))return;ce=!0,U(pe.id,!1)}}),ce&&!me&&(me=!0,queueMicrotask(ge))}),b(({node:se,event:_e})=>{var At,Ge,Ue;if(!se)return;if(Z(se.id)){const Ke=se.id;ee(Ke),oe(void 0);const Qt=he.value.get(Ke);if(!Qt)return;const We=Qt.position??{...se.position},gt=se.position.x-We.x,sa=se.position.y-We.y;R(Ke,se.position,gt,sa);const Ar=fe.value.get(Qt.ownerId);Ar&&F(Ar.id,!1);return}const ce=se.id;O("canvas"),ee(ce);const pe=se.parentNode;let we={...se.position};if(pe&&Z(pe)){const Ke=he.value.get(pe);Ke!=null&&Ke.position&&(we={x:Ke.position.x+se.position.x,y:Ke.position.y+se.position.y})}X(ce,we,!1);const Se={x:we.x,y:we.y,width:((At=se.dimensions)==null?void 0:At.width)??0,height:((Ge=se.dimensions)==null?void 0:Ge.height)??0},Oe=_e&&"clientX"in _e?G({x:_e.clientX,y:_e.clientY}):void 0,Re={x:Se.x+Se.width/2,y:Se.y+Se.height/2};oe(Oe??Re);const Me=pe&&Z(pe)?pe:(Ue=fe.value.get(ce))==null?void 0:Ue.id;Me&&F(Me,!1)}),S(({node:se})=>{var Se;if(!se)return;if(ee(void 0),Z(se.id)){te();return}const _e=se.id,ce=se.parentNode;let pe={...se.position};if(ce&&Z(ce)){const Oe=he.value.get(ce);Oe!=null&&Oe.position&&(pe={x:Oe.position.x+se.position.x,y:Oe.position.y+se.position.y})}X(_e,pe,!1);const we=ce&&Z(ce)?ce:(Se=fe.value.get(_e))==null?void 0:Se.id;we&&F(we,!1),mt(_e),ne(),te()}),N(se=>{se.filter(pe=>pe.type==="select").sort((pe,we)=>pe.selected===we.selected?0:pe.selected?1:-1).forEach(pe=>{B(pe.id)||(Gm=pe.selected?pe.id:void 0,Y(we=>we.map(Se=>Se.id!==pe.id||!Se.markerEnd?Se:ta({...Se,zIndex:pe.selected?1:void 0}))))});let ce=!1;se.forEach(pe=>{if(pe.type==="remove"){if(B(pe.id))return;ce=!0,K(pe.id,!1)}}),ce&&!me&&(me=!0,queueMicrotask(ge))}),v(({edge:se})=>{B(se.id)||(Es=se.id,Y(_e=>_e.map(ce=>ce.id!==se.id?ce:ta(ce))))}),V(({edge:se})=>{B(se.id)||(Es=void 0,Y(_e=>_e.map(ce=>ce.id!==se.id?ce:ta(ce))))}),x(({edge:se,connection:_e})=>{B(se.id)||(K(se.id,!1),Pe(_e))});function ot(se,_e,ce){var gt,sa,Ar,ug,fg;const pe=_e?y(_e.id):void 0,we=ce?y(ce.id):void 0;let Se;if(se.length>0){Se=new Mm.graphlib.Graph({multigraph:!0}),Se.setGraph({rankdir:n==="request"?"LR":"RL",nodesep:c,edgesep:d,ranksep:f});const Et=new Set;for(const It of se){const en=y(It.id);if(!en){console.warn(`Cannot find graph node '${It.id}' in ${n} phase`);continue}Et.add(It.id),ai(It)?Se.setNode(It.id,It.dimensions??en.dimensions):Se.setNode(It.id,en.dimensions)}for(const It of de.value)!Et.has(It.source)||!Et.has(It.target)||Se.setEdge(It.source,It.target,{points:[]});Mm.layout(Se)}const Oe=[],Re=Et=>({x:Et.x-Et.width/2,y:Et.y-Et.height/2,width:Et.width,height:Et.height});if(se.length>0){if(!Se)throw new Error("Expected dagreGraph to be initialized");for(const Et of se){const It=Se.node(Et.id),en=Re(It);Oe.push(en),ai(Et)?R(Et.id,en,en.x+To,en.y+To):X(Et.id,{x:en.x,y:en.y},!1)}}const Me=Oe.length>0?Fm(Oe):{x:0,y:0,width:0,height:0},At=Me.width,Ge=Me.height,Ue=Me.x,Ke=Me.x+Me.width,Qt=Math.max(0,Math.min(t.toValue(a==null?void 0:a.width)??Number.POSITIVE_INFINITY,pT)-At-2*c-(((gt=pe==null?void 0:pe.dimensions)==null?void 0:gt.width)??0)-(((sa=we==null?void 0:we.dimensions)==null?void 0:sa.width)??0)-2*l),We=Me.y+Ge/2;_e&&X(_e.id,{x:Ue-c-Qt/2-(((Ar=pe==null?void 0:pe.dimensions)==null?void 0:Ar.width)??0),y:We-(((ug=pe==null?void 0:pe.dimensions)==null?void 0:ug.height)??0)/2},!1),ce&&X(ce.id,{x:Ke+c+Qt/2,y:We-(((fg=we==null?void 0:we.dimensions)==null?void 0:fg.height)??0)/2},!1)}function Sn(se){let _e,ce;const pe=[];for(const we of se){if(ai(we)){pe.push(we);continue}switch(we.name){case"request":{if(n!=="request")throw new Error(`Unexpected request node in ${n} phase`);if(_e)throw new Error("Duplicated request node in request phase");_e=we;break}case"service_request":{if(n!=="request")throw new Error(`Unexpected service_request node in ${n} phase`);if(ce)throw new Error("Duplicated service_request node in request phase");ce=we;break}case"service_response":{if(n!=="response")throw new Error(`Unexpected service_response node in ${n} phase`);if(ce)throw new Error("Duplicated service_response node in response phase");ce=we;break}case"response":{if(n!=="response")throw new Error(`Unexpected response node in ${n} phase`);if(_e)throw new Error("Duplicated response node in response phase");_e=we;break}default:{pe.push(we);break}}}return{autoNodes:pe,leftNode:_e,rightNode:ce}}async function vn(se=!0){const _e=new Map(be.value.map(Re=>[Re.id,Re.data])),ce=j.value.groups.toSorted((Re,Me)=>q(Me.ownerId)-q(Re.ownerId));for(const Re of ce)ot(Re.memberIds.reduce((Me,At)=>{const Ge=A(At);if(!Ge)return console.warn(`Cannot find node '${At}' of group '${Re.id}' by getNodeById`),Me;if(Ge.phase!==n)return Me;if(Ge.type==="branch"){const Ue=le.value.get(Ge.id);Ue&&Me.push(...Ue)}return _e.delete(Ge.id),Me.push(Ge),Me},[])),await t.nextTick(),F(Re.id,!1),await I();const pe=_e.values().toArray();for(const Re of pe){if(ai(Re)||Re.type!=="branch")continue;const Me=le.value.get(Re.id);Me&&pe.push(...Me)}const{autoNodes:we,leftNode:Se,rightNode:Oe}=Sn(pe);ot(we,Se,Oe),se&&te()}function st(se){g({...Ne.value,...se})}async function Ye(se){return D(se),new Promise(_e=>setTimeout(()=>{const ce=y(se);P(ce?[ce]:[]),_e()},0))}function pt(se){const _e=L.value.filter(({type:Ue})=>Ue!=="group"),ce=_e.find(({id:Ue})=>Ue===se);if(!ce)throw new Error(`Node ${se} not found`);const{position:{x:pe,y:we},dimensions:{width:Se,height:Oe}}=ce,Re=we,Me=we+Oe,At=_e.filter(({id:Ue})=>Ue!==se).filter(({position:{y:Ue},dimensions:{height:Ke}})=>Ue<Me&&Ue+Ke>Re).map(({position:{x:Ue},dimensions:{width:Ke}})=>({left:Ue,right:Ue+Ke})).sort((Ue,Ke)=>Ue.left-Ke.left);let Ge=pe+Se+c;for(const{left:Ue,right:Ke}of At)if(!(Ke<=Ge)){if(Ge+Se<=Ue)return{x:Ge,y:Re};Ge=Math.max(Ge,Ke)+c}return{x:Ge,y:Re}}function Ct(se){if(!se)return;const _e=y(se);if(!_e)throw new Error(`Node ${se} not found`);const{position:{x:ce},dimensions:{width:pe}}=_e,we=ce+pe,{viewport:Se,dimensions:Oe,setViewport:Re}=u,{x:Me,y:At,zoom:Ge}=Se.value,{width:Ue}=Oe.value,Ke=ce*Ge+Me,Qt=we*Ge+Me,We=Ue-jp-c;if(Qt<=We)return;let gt=We-Qt;Ke+gt<0&&(gt=-Ke),gt!==0&&Re({x:Me+gt,y:At,zoom:Ge},{duration:hT})}function mt(se){if(!M.value)return!1;const{nodeId:_e,branch:ce}=s1(M.value),pe=J.addMember(_e,ce,se,{commit:!1});return oe(void 0),pe}return{vueFlowStore:u,editorStore:p,readonly:i,nodes:be,edges:de,selectNode:Ye,autoLayout:vn,placeToRight:pt,scrollRightToReveal:Ct,fitViewParams:Ne,fitView:st,groupDrop:{activeGroupId:M,startPanelDrag:()=>O("panel"),endPanelDrag:ne,updateActiveGroup:oe,attachNodeToActiveGroup:mt}}}),na=ve(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>Ee.Left},size:{default:()=>Number.parseFloat(kd)},type:{}},setup(e){t.useCssVars(o=>({v753622c4: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",[e.type,e.position===t.unref(Ee).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),qm=ve(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>kt[e.type]),o=t.computed(()=>i1(e.type));return(r,i)=>{var l;const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:"neutral",class:t.normalizeClass(["dk-node-badge",{"icon-only":e.iconOnly,"has-colors":!!n.value.colors}]),size:e.size},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]);let $o=null;function SV(){var n;if($o)return $o;if(typeof navigator>"u")return $o="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?$o="mac":/Linux/i.test(e)&&!/Android/i.test(e)?$o="linux":$o="windows"}const vV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},AV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Win",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Spacebar",Delete:"Delete"},IV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Super",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Space",Delete:"Delete"};function PV(e,n={}){const o=n.platform??SV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?vV:o==="linux"?IV:AV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const TV={key:0,class:"label"},OV={class:"keys"},oa=ve(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=PV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:e.reverse}])},[e.label?(t.openBlock(),t.createElementBlock("span",TV,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",OV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),$V={class:"indicator-box"},BV={key:1,class:"additional-count"},ra=ve(t.defineComponent({__name:"ValueIndicator",props:{edgeId:{},sourceNode:{},sourceFieldName:{},targetNodes:{},targetFieldNames:{},mode:{},reversed:{type:Boolean,default:!1}},setup(e){const n=t.createPropsRestProxy(e,["reversed"]),o=t.computed(()=>n.mode==="input"&&n.sourceNode?n.sourceFieldName?`${n.sourceNode.name}.${n.sourceFieldName}`:n.sourceNode.name:n.mode==="output"&&n.targetNodes?n.targetNodes.map((s,c)=>{var f;const d=(f=n.targetFieldNames)==null?void 0:f[c];return d?`${s.name}.${d}`:s.name}).join(", "):""),r=t.computed(()=>{var s;let l;if(n.mode==="input"&&n.sourceNode?l=n.sourceNode:n.mode==="output"&&n.targetNodes&&n.targetNodes.length>0&&(l=n.targetNodes[0]),!!l)return(s=kt[l.type])==null?void 0:s.icon}),i=t.computed(()=>n.mode==="output"&&n.targetNodes&&n.targetNodes.length>1?n.targetNodes.length-1:0),a=t.computed(()=>n.mode==="input"?e.reversed:!e.reversed);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["value-indicator",{reversed:a.value}])},[t.createVNode(t.unref(Te.KTooltip),{placement:"top",text:o.value},{default:t.withCtx(()=>[t.createElementVNode("div",$V,[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,color:t.unref(Wr),size:16},null,8,["color"])):t.createCommentVNode("",!0),i.value>0?(t.openBlock(),t.createElementBlock("span",BV," +"+t.toDisplayString(i.value),1)):t.createCommentVNode("",!0)])]),_:1},8,["text"])],2))}}),[["__scopeId","data-v-d8506ba3"]]),VV={class:"body"},RV={class:"name"},DV={class:"handle"},MV={class:"handle-label-wrapper"},LV={class:"handle-label-wrapper"},FV={class:"handle-label text"},UV={class:"handle"},KV={class:"handle-label-wrapper"},jV={class:"handle-label-wrapper"},GV={class:"handle-label text"},qV={key:2,class:"branch-handles"},zV={class:"handle-label-wrapper"},HV={class:"handle-label text"},zm=ve(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=xV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d,branchGroups:f}=at(),u=t.computed(()=>Co(e.data.type)),p=t.computed(()=>e.data.fields.input.length>0),m=t.computed(()=>e.data.fields.output.length>0),h=t.computed(()=>p.value&&r(e.data.id).every(A=>A.targetField===void 0)),_=t.computed(()=>m.value&&i(e.data.id).every(A=>A.sourceField===void 0)),y=t.computed(()=>e.data.expanded.input??!1),g=t.computed(()=>e.data.expanded.output??!1),w=t.computed(()=>{var A,T,K;return((K=(T=(A=u.value.io)==null?void 0:A.next)==null?void 0:T.branches)==null?void 0:K.map(({name:z})=>z))??[]}),b=t.computed(()=>w.value.length>0),S=t.computed(()=>f.findMembership(e.data.id)),E=t.computed(()=>{var A,T;if(e.data.type==="property"){const K=(A=e.data.config)==null?void 0:A.property;return cs(K)}return(T=u.value.io)==null?void 0:T.input}),C=t.computed(()=>{var A,T;if(e.data.type==="property"){const K=(A=e.data.config)==null?void 0:A.property;return ss(K)}return(T=u.value.io)==null?void 0:T.output}),N=t.computed(()=>Tu(e.data)),x=t.computed(()=>e.data.phase==="response"),v=t.computed(()=>e.data.phase==="request"?Ee.Left:Ee.Right),V=t.computed(()=>e.data.phase==="request"?Ee.Right:Ee.Left),L=t.computed(()=>e.data.phase==="request"?Ee.Right:Ee.Left),k=t.computed(()=>N.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),Y=t.computed(()=>N.value?tC:nC),P=t.computed(()=>{const A=new Map,T=r(e.data.id);for(const K of T){const z=a(K.source);if(!z)continue;const J=z.type==="vault",Q=z.phase!==e.data.phase;if(!J&&!Q)continue;let ie;if(K.sourceField){const he=z.fields.output.find(Z=>Z.id===K.sourceField);ie=he==null?void 0:he.name}if(K.targetField){const he=e.data.fields.input.find(Z=>Z.id===K.targetField);if(!he)continue;A.set(K.targetField,{fieldId:K.targetField,edgeId:K.id,field:he,sourceNode:z,sourceFieldName:ie})}else A.set("input",{fieldId:"input",edgeId:K.id,field:null,sourceNode:z,sourceFieldName:ie})}return A}),G=t.computed(()=>{const A=new Map,T=i(e.data.id);for(const K of T){const z=a(K.target);if(!z||!(z.phase!==e.data.phase))continue;let Q;if(K.targetField){const Z=z.fields.input.find(re=>re.id===K.targetField);Q=Z==null?void 0:Z.name}const ie=K.sourceField||"output";if(!A.has(ie)){const Z=K.sourceField&&e.data.fields.output.find(re=>re.id===K.sourceField)||null;A.set(ie,{fieldId:ie,edgeIds:[],field:Z,targetNodes:[],targetFieldNames:[]})}const he=A.get(ie);he.edgeIds.push(K.id),he.targetNodes.push(z),he.targetFieldNames.push(Q)}return A});function j(A){return P.value.get(A)}function te(A){return G.value.get(A)}function X(A){!o||o.readonly||A==="input"&&!h.value||A==="output"&&!_.value||l(e.data.id,A)}async function D(){if(!o||o.readonly)return;const A=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(A),o.scrollRightToReveal(A),d.value=!0}function U(){if(e.readonly||o&&o.readonly||!S.value)return;const{ownerId:A,branch:T}=S.value,K=f.getMembers(A,T),z=K.filter(J=>J!==e.data.id);z.length!==K.length&&f.setMembers(A,T,z)}return t.watch(h,A=>{A||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(_,A=>{A||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(A,T)=>{qo(A,T)||l(e.data.id,"input",A.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(A,T)=>{qo(A,T)||l(e.data.id,"output",A.length>0,!0,"*")},{deep:!0}),(A,T)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:x.value,implicit:N.value,readonly:e.readonly}])},[t.createElementVNode("div",VV,[N.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Te.KTooltip),{key:0,class:"badge",placement:"top",text:e.data.type},{default:t.withCtx(()=>[t.createVNode(qm,{"icon-only":"",size:"small",type:e.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",RV,t.toDisplayString(k.value),1),e.error?(t.openBlock(),t.createBlock(t.unref(xe.WarningIcon),{key:1,class:"error-icon",color:t.unref(Xa),size:16},null,8,["color"])):t.createCommentVNode("",!0),N.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Te.KDropdown),{key:2,class:"menu",disabled:e.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:T[1]||(T[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(Te.KDropdownItem),{onClick:D},{default:t.withCtx(()=>[t.createVNode(oa,{keys:t.unref(Hi).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),S.value?(t.openBlock(),t.createBlock(t.unref(Te.KDropdownItem),{key:0,onClick:U},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(Te.KDropdownItem),{danger:"",onClick:T[0]||(T[0]=K=>t.unref(c)(e.data.id))},{default:t.withCtx(()=>[t.createVNode(oa,{keys:t.unref(Hi).delete,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.delete")},null,8,["keys","label"])]),_:1})]),default:t.withCtx(()=>[t.createVNode(t.unref(Te.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.MoreIcon),{color:t.unref(Wa)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:x.value}])},[E.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":p.value}])},[t.createElementVNode("div",DV,[t.createVNode(t.unref(Jt),{id:"input",position:v.value,type:"target"},null,8,["position"]),j("input")?(t.openBlock(),t.createBlock(ra,{key:0,"edge-id":j("input").edgeId,mode:"input",reversed:x.value,"source-field-name":j("input").sourceFieldName,"source-node":j("input").sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",MV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:h.value}]),onClick:T[2]||(T[2]=t.withModifiers(K=>X("input"),["stop"]))},[T[4]||(T[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(xe.UnfoldMoreIcon),{key:0,size:t.unref(Xo)},null,8,["size"])),y.value?(t.openBlock(),t.createBlock(t.unref(xe.UnfoldLessIcon),{key:1,color:h.value?void 0:t.unref(bd),size:t.unref(Xo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&y.value?(t.openBlock(),t.createBlock(na,{key:0,color:Y.value,position:v.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),p.value&&y.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.input,(K,z)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${K.id}`,class:"handle indented"},[t.createVNode(t.unref(Jt),{id:`inputs@${K.id}`,position:v.value,type:"target"},null,8,["id","position"]),j(K.id)?(t.openBlock(),t.createBlock(ra,{key:0,"edge-id":j(K.id).edgeId,mode:"input",reversed:x.value,"source-field-name":j(K.id).sourceFieldName,"source-node":j(K.id).sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",LV,[t.createElementVNode("div",FV,t.toDisplayString(K.name),1),t.createVNode(na,{color:Y.value,position:v.value,type:z<e.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),C.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":m.value}])},[t.createElementVNode("div",UV,[t.createElementVNode("div",KV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:_.value}]),onClick:T[3]||(T[3]=t.withModifiers(K=>X("output"),["stop"]))},[T[5]||(T[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),m.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[g.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(xe.UnfoldMoreIcon),{key:0,size:t.unref(Xo)},null,8,["size"])),g.value?(t.openBlock(),t.createBlock(t.unref(xe.UnfoldLessIcon),{key:1,color:_.value?void 0:t.unref(bd),size:t.unref(Xo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),m.value&&g.value?(t.openBlock(),t.createBlock(na,{key:0,color:Y.value,position:V.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Jt),{id:"output",position:V.value,type:"source"},null,8,["position"]),te("output")?(t.openBlock(),t.createBlock(ra,{key:0,mode:"output",reversed:x.value,"target-field-names":te("output").targetFieldNames,"target-nodes":te("output").targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]),m.value&&g.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.output,(K,z)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${K.id}`,class:"handle indented"},[t.createElementVNode("div",jV,[t.createElementVNode("div",GV,t.toDisplayString(K.name),1),t.createVNode(na,{color:Y.value,position:V.value,type:z<e.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Jt),{id:`outputs@${K.id}`,position:V.value,type:"source"},null,8,["id","position"]),te(K.id)?(t.openBlock(),t.createBlock(ra,{key:0,mode:"output",reversed:x.value,"target-field-names":te(K.id).targetFieldNames,"target-nodes":te(K.id).targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),b.value?(t.openBlock(),t.createElementBlock("div",qV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(w.value,K=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${K}`,class:"handle"},[t.createElementVNode("div",zV,[t.createElementVNode("div",HV,t.toDisplayString(K),1)]),t.createVNode(t.unref(Jt),{id:`branch@${K}`,connectable:!1,position:L.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-b1701720"]]),YV=ve(t.defineComponent({__name:"GroupNode",props:{data:{},active:{type:Boolean}},setup(e){const n=e,o=t.computed(()=>n.data.phase==="response"),r=t.computed(()=>o.value?Ee.Right:Ee.Left);return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-branch-group-node",{reversed:o.value,"drop-target":e.active}])},[t.createVNode(t.unref(Jt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),WV={key:0,class:"dk-flow-mask"},Hm=ve(t.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=qe.useElementBounding(i),{i18n:{t:l}}=Be(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:h,groupDrop:_}=NV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:y,propertiesPanelOpen:g,invalidConfigNodeIds:w,selectedNode:b,duplicateNode:S,commit:E}=c,{screenToFlowCoordinate:C,zoomIn:N,zoomOut:x,viewport:v,maxZoom:V,minZoom:L}=s,{activeGroupId:k,startPanelDrag:Y,endPanelDrag:P,updateActiveGroup:G,attachNodeToActiveGroup:j}=_,te=t.ref(!1);function X(J){var ie;const Q=(ie=J.dataTransfer)==null?void 0:ie.types.find(he=>he.startsWith(`${kr}/`));if(Q)return Q.replace(`${kr}/`,"")}function D(J){var Q;if(e.mode==="edit"){if(((Q=J==null?void 0:J.node)==null?void 0:Q.type)==="group"){p(void 0);return}g.value=!0}}function U(J){e.mode!=="edit"||te.value||(J.preventDefault(),G(C({x:J.clientX,y:J.clientY})))}function A(J){var ue;if(e.mode!=="edit"||te.value)return;const Q=(ue=J.dataTransfer)==null?void 0:ue.getData(kr);if(!Q)return;J.preventDefault();const ie=JSON.parse(Q);if(ie.action!=="create-node")return;const he=C({x:J.clientX,y:J.clientY}),{type:Z,anchor:re}=ie.data,le={type:Z,phase:e.phase,position:{x:he.x-re.offsetX,y:he.y-re.offsetY}},fe=y(le,!1);if(!fe){P();return}j(fe),E(),p(fe),g.value=!0,P()}async function T(){await d(),setTimeout(()=>u(),0)}const K=t.computed(()=>{if(e.mode==="preview")return[];const J=[{name:"zoom_in",icon:xe.AddIcon,action:N,disabled:v.value.zoom>=V.value},{name:"zoom_out",icon:xe.RemoveIcon,action:x,disabled:v.value.zoom<=L.value},{name:"fit_view",icon:xe.FullscreenIcon,action:u}];return e.mode==="edit"&&J.push({name:"auto_layout",icon:xe.AutoLayoutIcon,action:T}),J});if(e.phase==="response"&&e.mode==="edit"){qe.useEventListener("dragstart",Q=>{X(Q)==="call"&&(te.value=!0)});const{start:J}=qe.useTimeoutFn(()=>{te.value=!1},80);qe.useEventListener("dragover",()=>{J()}),qe.useEventListener("dragend",()=>{te.value=!1})}e.mode==="edit"&&(qe.useEventListener("dragstart",J=>{X(J)&&Y()}),qe.useEventListener("dragend",()=>{P()}));async function z(){const J=b.value;if(e.mode!=="edit"||!J||J.phase!==e.phase)return;const Q=S(J.id,m(J.id));Q&&(await p(Q),g.value=!0,h(Q))}return Up({enabled:t.computed(()=>!!b.value&&e.mode==="edit"&&b.value.phase===e.phase),duplicate:z}),n({autoLayout:d,fitView:u}),(J,Q)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Dp),{id:e.flowId,class:t.normalizeClass(["flow",{readonly:e.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":e.mode==="edit","max-zoom":t.unref(mT),"min-zoom":t.unref(gT),"multi-selection-key-code":null,"nodes-connectable":e.mode==="edit","nodes-draggable":e.mode==="edit","pan-on-drag":e.mode==="preview"?!1:void 0,"pan-on-scroll":e.mode!=="edit"?!1:void 0,"zoom-on-double-click":e.mode!=="edit"?!1:void 0,"zoom-on-pinch":e.mode!=="edit"?!1:void 0,"zoom-on-scroll":e.mode!=="edit"?!1:void 0,onDragover:U,onDrop:A,onNodeClick:D,onNodesChange:Q[0]||(Q[0]=ie=>r("nodes-change")),onNodesInitialized:Q[1]||(Q[1]=ie=>r("initialized"))},{"node-flow":t.withCtx(({data:ie})=>[t.createVNode(zm,{data:ie,error:t.unref(w).has(ie.id),readonly:e.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:ie})=>[t.createVNode(YV,{active:t.unref(k)===ie.id,data:ie},null,8,["active","data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(IP)),t.createVNode(t.unref(tT),{"fit-view-params":t.unref(f),position:"bottom-left","show-fit-view":!1,"show-interactive":!1,"show-zoom":!1},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(K.value,ie=>(t.openBlock(),t.createBlock(t.unref(Te.KTooltip),{key:ie.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${ie.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(wr),{disabled:ie.disabled,onClick:t.withModifiers(ie.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(ie.icon),{size:18}))]),_:2},1032,["disabled","onClick"])]),_:2},1032,["text"]))),128))]),_:1},8,["fit-view-params"])]),_:1},8,["id","class","elements-selectable","max-zoom","min-zoom","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"]),te.value?(t.openBlock(),t.createElementBlock("div",WV,t.toDisplayString(t.unref(l)("plugins.free-form.datakit.flow_editor.phase_mask_help")),1)):t.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-556f8c11"]]),Ns=ve(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const n=t.ref(!1),o=t.ref(!1),{state:r,clearPendingLayout:i,setPendingFitView:a,commit:l,clear:s}=at(),c=t.useId(),d=`${c}-request`,f=`${c}-response`,u=Le(d),p=Le(f);function m(T,K){const{onPaneClick:z,onNodesChange:J,onEdgesChange:Q,getSelectedNodes:ie,getSelectedEdges:he}=T,{removeSelectedElements:Z}=K;function re(le){if(!le){Z();return}le.some(fe=>fe.type==="select")&&ie.value.length+he.value.length>0&&Z()}J(re),Q(re),z(()=>re())}m(u,p),m(p,u);const h=t.useTemplateRef("flowPanels"),_=t.useTemplateRef("requestLabel"),y=t.useTemplateRef("requestCanvasContainer"),g=t.useTemplateRef("requestFlow"),w=t.useTemplateRef("resizeHandle"),b=t.useTemplateRef("responseLabel"),S=t.useTemplateRef("responseCanvasContainer"),E=t.useTemplateRef("responseFlow"),C=qe.useElementBounding(h),N=qe.useElementBounding(_),x=qe.useElementBounding(y),v=qe.useElementBounding(w),V=qe.useElementBounding(b),L=qe.useElementBounding(S),k=t.computed(()=>Math.max(30,C.height.value*.03)),Y=t.computed(()=>x.height.value<k.value),P=t.computed(()=>L.height.value<k.value),G=t.ref("50%"),j=t.ref("50%"),te=()=>{e.resizable&&(Y.value?(G.value="50%",j.value="50%"):(G.value="0",j.value="100%"))},X=()=>{e.resizable&&(P.value?(G.value="50%",j.value="50%"):(G.value="100%",j.value="0"))},D=t.computed(()=>C.height.value-N.height.value-v.height.value-V.height.value),{isDragging:U}=qe.useDraggable(w,{onMove(T){if(!e.resizable)return;const K=Math.max(0,T.y-x.top.value),z=Math.min(1,Math.max(0,K/D.value));G.value=`${z*100}%`,j.value=`${(1-z)*100}%`},onEnd(){e.resizable&&(x.height.value<k.value?(G.value="0",j.value="100%"):L.height.value<k.value&&(G.value="100%",j.value="0"))}});function A(){t.nextTick(()=>{var T,K;(T=g.value)==null||T.fitView(),(K=E.value)==null||K.fitView()})}return t.watch([n,o,()=>r.value.pendingLayout,()=>r.value.pendingFitView],([T,K,z,J])=>{e.inactive||!T||!K||!z&&!J||(z&&i(),J&&a(!1),setTimeout(async()=>{var Q,ie;z&&(await((Q=g.value)==null?void 0:Q.autoLayout(!1)),await((ie=E.value)==null?void 0:ie.autoLayout(!1)),l("*"),z==="clearHistory"&&s()),J&&setTimeout(()=>A(),0)},0))}),(T,K)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:h,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:_,class:t.normalizeClass(["label request",{resizable:e.resizable}]),onClick:te},[e.resizable?(t.openBlock(),t.createBlock(t.unref(xe.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:Y.value}])},null,8,["class"])):t.createCommentVNode("",!0),K[4]||(K[4]=t.createElementVNode("div",{class:"label-content"}," Request ",-1))],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:y,class:t.normalizeClass(["canvas",{dragging:t.unref(U)}]),style:t.normalizeStyle({flexBasis:G.value})},[t.createVNode(Hm,{ref_key:"requestFlow",ref:g,"flow-id":d,mode:e.mode,phase:"request",onInitialized:K[0]||(K[0]=z=>n.value=!0),onNodesChange:K[1]||(K[1]=z=>n.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:t.normalizeClass(["resize-handle",{resizable:e.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:b,class:t.normalizeClass(["label response",{dragging:t.unref(U),resizable:e.resizable}]),onClick:X},[e.resizable?(t.openBlock(),t.createBlock(t.unref(xe.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:P.value}])},null,8,["class"])):t.createCommentVNode("",!0),K[5]||(K[5]=t.createElementVNode("div",{class:"label-content"}," Response ",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:S,class:t.normalizeClass(["canvas response",{dragging:t.unref(U)}]),style:t.normalizeStyle({flexBasis:j.value})},[t.createVNode(Hm,{ref_key:"responseFlow",ref:E,"flow-id":f,mode:e.mode,phase:"response",onInitialized:K[2]||(K[2]=z=>o.value=!0),onNodesChange:K[3]||(K[3]=z=>o.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-f6dd01e7"]]),XV={class:"dk-confirm-modal-body"},ZV={class:"connections"},JV=ve(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=Be(),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,_){return l.value=m,s.value=h??[],c.value=_??[],a.value=!0,await new Promise(y=>{d=y})}return n({open:p}),(m,h)=>{const _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:e.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",XV,[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",ZV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([y,g])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${g}`,class:"connection"},[t.createVNode(t.unref(xe.AddIcon),{color:t.unref(oC)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(g),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([y,g])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${g}`,class:"connection"},[t.createVNode(t.unref(xe.RemoveIcon),{color:t.unref(Xa)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(g),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),QV={class:"dk-editor-nav"},eR={class:"top"},tR={class:"bottom"},nR=ve(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Je),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:xe.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=Cl(),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",QV,[t.createElementVNode("div",eR,[(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(Xr)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",tR,[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(xe.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(Xr)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(xe.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(Xr)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),oR={class:"dk-editor-main"},rR={class:"header"},iR={class:"actions"},aR={class:"settings"},lR={ref:"canvasContainer",class:"body"},sR=ve(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=at();function c(u){const p=ri.load(u,{schema:oi,json:!0});if(typeof p!="object"||p===null)return;const m=p,h={config:{...m,nodes:m.nodes??[]}};s(h,!0)}function d(){o.value=!1}Up({enabled:o,undo:r,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(u,p)=>(t.openBlock(),t.createElementBlock("div",oR,[t.createElementVNode("header",rR,[t.createElementVNode("div",iR,[t.createVNode(t.unref(Te.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(oa,{keys:t.unref(Hi).undo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Te.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(Te.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(oa,{keys:t.unref(Hi).redo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Te.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",aR,[t.createVNode(qr,{label:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:f},name:"config.debug"},null,8,["label","label-attributes"])]),p[1]||(p[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(Te.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples")},{items:t.withCtx(()=>[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(ul,(m,h)=>t.createVNode(t.unref(Te.KDropdownItem),{key:h,onClick:_=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${h}`)),1)]),_:2},1032,["onClick"])),64))]),_:1},8,["trigger-text"]),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.actions.view_docs"))+" ",1),t.createVNode(t.unref(xe.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Te.KButton),{onClick:d},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",lR,[t.createVNode(Ns,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-ce8026b0"]]),cR=["draggable"],dR={class:"icon"},uR={class:"content"},fR={class:"title"},pR={class:"description"},mR=ve(t.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(c=>({f628e926:t.unref(a),v4a9b9f82:t.unref(l)}));const o=n,{summary:r,icon:i,colors:{background:a,foreground:l}={}}=ml[e.type];function s(c){o("dragstart",c,e.type)}return(c,d)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${e.type}`]:!0,unsupported:e.unsupported}]),draggable:!e.unsupported,onDragstart:s},[t.createElementVNode("div",dR,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",uR,[t.createElementVNode("div",fR,t.toDisplayString(e.type),1),t.createElementVNode("div",pR,t.toDisplayString(t.unref(r)),1)])],42,cR))}}),[["__scopeId","data-v-38d156c9"]]),gR={class:"dk-node-panel"},hR={key:0,class:"title"},yR={class:"node-list"},_R={"aria-hidden":"true",class:"preview",inert:""},Ym=ve(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),{createNode:o}=at(),r=t.inject(co.DATAKIT_M2,!1),i=["branch","cache"],a=`dk-drag-preview-${t.useId()}`,l=t.shallowRef(),s=t.computed(()=>l.value?[{id:"preview",type:"flow",data:l.value,position:{x:0,y:0}}]:[]),c=async(d,f)=>{var V,L,k;const u=d.currentTarget,{left:p,top:m,width:h,height:_}=u.getBoundingClientRect(),y=d.clientX-p,g=d.clientY-m;l.value=o({type:f}),await t.nextTick();const w=document.querySelector(`#${a}`)||u,b=w.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:S,offsetHeight:E}=w;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${S}px`,height:`${E}px`}),document.body.appendChild(b);const C=y/h,N=g/_,x={ratioX:C,ratioY:N,offsetX:S*C,offsetY:E*N},v={action:"create-node",data:{type:f,anchor:x}};(V=d.dataTransfer)==null||V.setData(kr,JSON.stringify(v)),(L=d.dataTransfer)==null||L.setData(`${kr}/${f}`,f),(k=d.dataTransfer)==null||k.setDragImage(b,x.offsetX,x.offsetY),requestAnimationFrame(()=>{b.remove(),l.value=void 0})};return(d,f)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",gR,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",hR,[t.createVNode(u,{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",yR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(ml)),p=>(t.openBlock(),t.createBlock(mR,{key:p,type:p,unsupported:!t.unref(r)&&i.includes(p),onDragstart:c},null,8,["type","unsupported"]))),128))]),t.createElementVNode("div",_R,[t.createVNode(t.unref(Dp),{nodes:s.value},{"node-flow":t.withCtx(p=>[t.createVNode(zm,{id:a,data:p.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-03b0fafb"]]);function bR(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=at(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var h;return((h=l.value.get("vault"))==null?void 0:h.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(h,_)=>{e(s.id,"output",h,!1);const y={...s.config,[h]:_};r(s.id,y)},removeVault:h=>{const _=_n(s,"output",h);if(!_)return;const y=s.fields.output.length===1;o(s.id,_.id,!0,!1);const g=zo(s.config,h);r(s.id,g,!y),y&&a(s.id)},updateVault:(h,_,y=!0)=>{const g={...s.config,[h]:_};r(s.id,g,y)},renameVault:(h,_,y=!0)=>{var S;const g=_n(s,"output",h);if(!g)return;i(s.id,g.id,_,!1);const w=((S=s.config)==null?void 0:S[h])??"",b={...zo(s.config,h),[_]:w};r(s.id,b,y)}}}const wR=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Fe.useI18n(),i=t.inject(De.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),h=e.validateName(m,e.isEditing);return l.value=h||"",h===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,h)=>{const _=t.resolveComponent("KInput"),y=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(Vo.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:e.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:u},{"form-prefix":t.withCtx(()=>[t.createVNode(_,{"model-value":a.value,"onUpdate:modelValue":[h[0]||(h[0]=g=>a.value=g),f],"data-testid":"vault-secret-picker-secret-name-input",error:!!l.value,"error-message":l.value,label:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.placeholder"),required:""},null,8,["model-value","error","error-message","label","label-attributes","placeholder"])]),_:1},8,["additional-disabled","config","proceed-button-text","setup","title"])):(t.openBlock(),t.createBlock(y,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),kR={class:"dk-vault-panel"},CR={class:"title"},ER={class:"vault-list"},NR={key:0,class:"vault-list-item"},xR={class:"vault-list-item-key"},SR={class:"vault-list-item-key-text"},vR=ve(t.defineComponent({__name:"VaultField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=zr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=Fe.useI18n(),f=t.computed(()=>new Set(i.value.map(g=>g.key))),u=()=>{const g=a();c.value=g,s.value=g},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=g=>{if(!s.value)throw new Error("no selected entry");const w=s.value.key,b=w!==g.secretName,S=s.value.value!==g.secretRef,E=b||S;s.value.value=g.secretRef,s.value.key=g.secretName,c.value?r("add",g.secretName,g.secretRef):E&&r("update",g.secretName,g.secretRef,b?w:void 0),c.value=null,p()},h=g=>{s.value=g},_=g=>{l(g.id),r("remove",g.key)},y=(g,w)=>{var b;if(!g)return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(g)&&!(w&&g===((b=s.value)==null?void 0:b.key)))return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(g,w)=>{var C,N;const b=t.resolveComponent("KButton"),S=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",kR,[t.createElementVNode("h3",CR,t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(b,{appearance:"tertiary",class:"add-button",size:"small",onClick:u},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",ER,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),x=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:x.id},[x.key?(t.openBlock(),t.createElementBlock("div",NR,[t.createElementVNode("div",xR,[t.createVNode(t.unref(xe.KeyIcon),{color:t.unref(Wr),size:16},null,8,["color"]),t.createElementVNode("div",SR,t.toDisplayString(x.key),1)]),t.createVNode(E,null,{items:t.withCtx(()=>[t.createVNode(S,{onClick:v=>h(x)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),t.createVNode(S,{danger:"",onClick:v=>_(x)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.MoreIcon),{color:t.unref(Wa)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(wR,{"is-editing":!!s.value&&!c.value,"secret-name":(C=s.value)==null?void 0:C.key,"secret-ref":(N=s.value)==null?void 0:N.value,"validate-name":y,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function AR(){const{getSchema:e}=He();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=ln(n);return o.fields.forEach(r=>{const i=Object.keys(r)[0];if(i==="cache"){const a=r[i];r[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]}}}),o})}const IR={class:"dk-cache-panel"},PR={class:"title"},TR={key:0,class:"cache-item"},OR={class:"cache-item-key"},$R={class:"cache-item-key-text"},BR={class:"dk-resource-cache-form"},VR={key:1},RR={key:2,class:"dk-cache-inline-redis"},DR=ve(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const o=n,{getDefault:r,formData:i}=He(),a=Nt("cache");if(a.error)throw new Error("No cache schema");const l=t.ref(!1),{i18n:{t:s}}=Fe.useI18n(),c=t.computed(()=>!(d.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),d=t.computed(()=>{var S;return(S=a.value.value)==null?void 0:S.strategy}),f=t.computed(()=>{var S;return(S=a.value.value)!=null&&S.redis?ri.dump(a.value.value.redis,{indent:2,noRefs:!0}):""}),u=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},h=()=>{u(),a.value.value||(a.value.value=r("cache"),a.value.value.strategy="memory")},_=()=>{l.value=!1,o("update",i)},y=Bs.createdBundledHighlighter({langs:{yaml:()=>import("@shikijs/langs/yaml")},themes:{"github-dark":()=>import("@shikijs/themes/github-dark")},engine:()=>mg.createJavaScriptRegexEngine()}),{codeToHtml:g}=Bs.createSingletonShorthands(y),w=()=>{var S,E;d.value==="memory"&&((S=i.cache)!=null&&S.partial_id)&&((E=i.cache)==null||delete E.partial_id)};async function b({codeElement:S,language:E,code:C}){S.innerHTML=await g(C,{lang:E,theme:"github-dark",structure:"inline"})}return(S,E)=>{const C=t.resolveComponent("KButton"),N=t.resolveComponent("KDropdownItem"),x=t.resolveComponent("KDropdown"),v=t.resolveComponent("KLabel"),V=t.resolveComponent("KCodeBlock"),L=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",IR,[t.createElementVNode("h3",PR,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",TR,[t.createElementVNode("div",OR,[t.createVNode(t.unref(xe.DeployIcon),{color:t.unref(Wr),size:t.unref(wd)},null,8,["color","size"]),t.createElementVNode("div",$R,t.toDisplayString(e.strategy),1)]),t.createVNode(x,null,{items:t.withCtx(()=>[t.createVNode(N,{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),t.createVNode(N,{danger:"",onClick:m},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:t.withCtx(()=>[t.createVNode(C,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.MoreIcon),{color:t.unref(Wa)},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(C,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode(L,{"action-button-disabled":!c.value,"action-button-text":t.unref(s)("actions.save"),"max-width":"640px",title:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:l.value,onCancel:p,onProceed:_},{default:t.withCtx(()=>{var k,Y;return[t.createElementVNode("div",BR,[t.createVNode(_d,{items:[{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":w},null,8,["items"]),d.value==="memory"?(t.openBlock(),t.createBlock(ht,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),d.value==="redis"?(t.openBlock(),t.createElementBlock("div",VR,[t.createVNode(v,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(oo.RedisConfigurationSelector),{"model-value":(k=t.unref(i).cache)==null?void 0:k.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":E[0]||(E[0]=P=>t.unref(i).cache.partial_id=P)},null,8,["model-value"])])):t.createCommentVNode("",!0),d.value==="redis"&&!((Y=t.unref(i).cache)!=null&&Y.partial_id)&&f.value?(t.openBlock(),t.createElementBlock("div",RR,[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),t.createVNode(V,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:b},null,8,["code"])])):t.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-ad53942e"]]),MR={class:"dk-resources-panel"},LR=ve(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=AR(),o=t.ref(0),{addVault:r,removeVault:i,updateVault:a,renameVault:l,formData:s}=bR();function c(_,y,g){g&&g!==_&&l(g,_,!1),a(_,y)}const{state:d,commit:f}=at(),u=t.computed(()=>({cache:d.value.cacheConfig}));function p(_){d.value.cacheConfig=_.cache,f()}function m(){d.value.cacheConfig=void 0,f()}function h(){o.value++}return(_,y)=>(t.openBlock(),t.createElementBlock("div",MR,[t.createVNode(yt,{data:t.unref(s),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(vR,{name:"vault",onAdd:t.unref(r),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),y[0]||(y[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(yt,{key:`${o.value}`,data:u.value,schema:t.unref(n)},{default:t.withCtx(()=>{var g;return[t.createVNode(DR,{strategy:(g=u.value.cache)==null?void 0:g.strategy,onCancel:h,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),FR={class:"header"},UR={class:"title"},KR={class:"body"},jR={class:"panel"},GR=ve(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{sidePanelExpanded:o}=Cl(),{propertiesPanelOpen:r,selectedNode:i}=at(),a=t.inject(co.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,d=>{d||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(d,f)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",FR,[t.createElementVNode("h2",UR,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",KR,[t.createElementVNode("div",jR,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(u,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=p=>l.value=p),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),l.value==="nodes"?(t.openBlock(),t.createBlock(Ym,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(LR,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(Ym,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),qR=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock($t,{items:t.unref(La)([...t.unref(Pu)]),name:e.name},null,8,["items","name"]))}}),zR=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=He(),{i18n:o}=Be(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(xt,{"as-child":"",name:e.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($t,{key:l,clearable:"","enable-filtering":"",items:e.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)},t.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:t.withCtx(s=>[t.renderSlot(i.$slots,"item-label",t.mergeProps({ref_for:!0},s))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),HR=["data-testid"],YR={class:"dk-inputs-map-field-entry-body"},WR={class:"dk-inputs-map-field-entry-content"},XR=ve(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}=zr(o,r),{i18n:{t:c}}=Be(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(E,C="key"){var N;d.value&&(await t.nextTick(),(N=d.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function h(){const{id:E}=a(),C=i.value.findIndex(({key:N})=>!N);m(C===-1?i.value.length-1:C),f.value=E}function _(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function y(E){p=E.key}function g(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 C=o.fieldNameValidator("input",p,E.key);if(C)return u.value[E.id]=C,C}function b(E){w(E)}function S(E,C){E.id!==f.value&&r("change:inputs",E.key,C)}return t.watch(()=>i.value,E=>{f.value&&(E.find(({id:C})=>C===f.value)||(f.value=null))}),(E,C)=>{const N=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),v=t.resolveComponent("KInput"),V=t.resolveComponent("KSelect"),L=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(N,{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),(k,Y)=>(t.openBlock(),t.createElementBlock("div",{key:k.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${Y}`},[t.createVNode(x,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${Y}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),t.createElementVNode("div",YR,[t.createElementVNode("div",WR,[t.createVNode(v,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${Y}`,modelValue:k.key,"onUpdate:modelValue":[P=>k.key=P,P=>w(k)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Y,"data-testid":`ff-key-${t.unref(s).path.value}.${Y}`,error:!!u.value[k.id],"error-message":u.value[k.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:P=>b(k),onChange:P=>g(k),onFocus:P=>y(k)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(V,{modelValue:k.value,"onUpdate:modelValue":P=>k.value=P,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${Y}`,"enable-filtering":"",items:e.items,label:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:P=>S(k,(P==null?void 0:P.value)??null)},t.createSlots({_:2},[E.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:P})=>[t.renderSlot(E.$slots,"item-label",t.mergeProps({ref_for:!0},P),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(L,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${Y}`,icon:"",onClick:P=>_(k)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,HR))),128)),t.createVNode(L,{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(xe.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-dda8b239"]]),ZR={class:"dk-source-item"},ia=ve(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("span",ZR,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(kt)[e.item.type].icon),{color:t.unref(Wr),size:t.unref(Xr)},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),JR={key:1,class:"dk-inputs-field-or"},xn=ve(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}=He(),{i18n:{t:i}}=Be(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?zR:XR: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.createVNode(t.unref(Te.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(r)("input")?(t.openBlock(),t.createBlock($t,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":t.withCtx(h=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),()=>[t.createVNode(ia,{item:h},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",JR,[t.createElementVNode("span",null,t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(Te.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:3,"field-name-validator":e.fieldNameValidator,items:e.items,"key-order":e.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},{"item-label":t.withCtx(h=>[t.createVNode(ia,{item:h},null,8,["item"])]),_:1},8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-90518c04"]]),QR={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"},eD={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 tD(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function Jn(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Bo(e){const{i18n:{t:n}}=Be(),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 Wm(e,n){const{i18n:{t:o}}=Be();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 nD(e=0,n=1/0,o){const{i18n:{t:r}}=Be();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 Xm(e){const{i18n:{t:n}}=Be();return function(r){if(!tD(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 xs(e,n){const{i18n:{t:o}}=Be();return function(i){if(i==null)return;const a=Xm(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 Ss(e=-1/0,n=1/0,o){const{i18n:{t:r}}=Be();return function(a){if(a==null)return;const l=Xm(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 oD(e,n){const{state:o}=at(),{i18n:{t:r}}=Be();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 rD(e,n,o){const{i18n:{t:r}}=Be();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 iD(){const{i18n:{t:e}}=Be();return function(o){if(hl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Zm(e){const{i18n:{t:n}}=Be(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Jn(Bo(o),Wm("identifier",o),iD(),oD(e,o))}function aD(e){const{i18n:{t:n}}=Be(),{getNodeById:o}=at();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 Jn(Bo(s),rD(i,o(e),l))(a)}}function lD(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 vr(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=at(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>lD(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(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function mn(e,n){const o=t.inject(co.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:d,disconnectEdge:f,connectEdge:u,invalidConfigNodeIds:p,commit:m,revert:h}=at(),{i18n:{t:_}}=Be(),y=Km(),g=t.computed(()=>{const D=a(e);if(!D)throw new Error("Node not existed");return D}),w=t.computed(()=>{const U=r.value.edges.filter(A=>A.target===e).reduce((A,T)=>{var ie,he;const K=a(T.source),z=(ie=bn(K,"output",T.sourceField))==null?void 0:ie.id,J=(he=bn(g.value,"input",T.targetField))==null?void 0:he.name,Q=K.id+(z?`.${z}`:"");return J?A.inputs={...A.inputs,[J]:Q}:A.input=Q,A},{});return g.value.fields.input.forEach(A=>{U.inputs||(U.inputs={}),U.inputs[A.name]||(U.inputs[A.name]=null)}),{...g.value.config,...U,name:g.value.name}}),b=D=>{i(e,D??"",!0,`${e}:rename`)},S=(D,U=!0)=>{if(!n)throw new Error("getFormInnerData is not defined");const A=zo(n(),["name","input","inputs"]),T=D?`update:${e}:${D}`:void 0;d(e,A,U,T)},E=(D,U)=>{const A=_n(g.value,D,U);if(!A)throw new Error(`Field with name "${U}" not found in node "${g.value.name}"`);return A},C=(D,U,A)=>{const T=!!A;l(e,D,U,!T),T&&L(U,A)},N=(D,U,A)=>{const T=E(D,U).id;s(e,T,A)},x=(D,U)=>{const A=E(D,U).id;c(e,A)},v=t.computed(()=>r.value.edges.filter(D=>D.target===e&&!D.targetField)[0]),V=t.computed(()=>r.value.edges.filter(D=>D.target===e&&D.targetField)),L=async(D,U)=>{const A=U==null,T=E("input",D).id;if(A){const le=V.value.find(fe=>fe.targetField===T);le&&f(le.id);return}const{nodeId:K,fieldId:z}=$u(U),J=E("input",D).id,Q=[];v.value&&(Q.push(Sr(v.value,a)),f(v.value.id,!1));const ie=V.value.find(le=>le.targetField===T);ie&&(Q.push(Sr(ie,a)),f(ie.id,!1)),u({source:K,sourceField:z,target:e,targetField:J},!1);const he=Cs(K,z,e,J,a),Z=Q[0]&&he?Q[0][1]===he[1]:!1;if(m(),Z||Q.length===0)return;await y(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[he],Q)||h()},k=async D=>{if(D==null){v.value&&f(v.value.id);return}const A=[];for(const Q of V.value)A.push(Sr(Q,a)),f(Q.id,!1);v.value&&f(v.value.id,!1);const{nodeId:T,fieldId:K}=$u(D);u({source:T,sourceField:K,target:e,targetField:void 0},!1);const z=Cs(T,K,e,void 0,a);if(m(),A.length===0)return;await y(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[z],A)||h()},Y=D=>{const U=[...r.value.edges,{source:D,target:e}];return wl(ci(U))},P=t.computed(()=>{var U,A;const D=[];for(const T of r.value.nodes)if(!(!o&&T.type==="vault"||!((U=Co(T.type).io)!=null&&U.output))&&T.fields.output&&T.id!==e&&!(T.type==="property"&&!ss((A=T.config)==null?void 0:A.property))&&!Y(T.id)&&!(g.value.phase==="request"&&T.phase==="response")&&!(T.type==="vault"&&T.fields.output.length===0)){D.push({value:T.id,label:T.name,type:T.type});for(const z of T.fields.output)D.push({value:`${T.id}.${z.id}`,label:`${T.name}.${z.name}`,type:T.type})}return D}),G=t.computed(()=>g.value.fields.input.map(D=>D.name)||[]);function j(D){p.value.delete(e),D||p.value.add(e)}const te=aD(e);function X(D,U,A){const T=a(e);if(!T)throw new Error("Node not found when validating field name");const K=_n(T,D,U);return te(D,A,K==null?void 0:K.id)}return{formData:w,inputOptions:P,inputEdge:v,inputsEdges:V,inputsFieldNames:G,currentNode:g,setName:b,setConfig:S,addField:C,renameFieldByName:N,removeFieldByName:x,setInputs:L,setInput:k,nameValidator:Zm(e),fieldNameValidator:X,toggleNodeValid:j}}function gn(e){const{getSchema:n}=He();return t.computed(()=>{if(Vt(e))switch(e){case"response":return eD;case"service_request":return QR}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 Qn=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Be(),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"])}}}),sD=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Be(),o=t.useTemplateRef("form"),r=gn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=mn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:h}=vr({validationConfig:{url:Jn(Bo({fieldName:"URL"}),Wm("url",{fieldName:"URL"})),timeout:Jn(xs("integer"),Ss(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),_=h("url",()=>l("url")),y=h("timeout",()=>l("timeout"));return(g,w)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{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(mo,{error:t.unref(_).error.value,"error-message":t.unref(_).errorMessage.value,name:"url",onBlur:t.unref(_).onBlur,"onUpdate:modelValue":t.unref(_).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(qR,{name:"method",onUpdate:w[0]||(w[0]=S=>t.unref(l)())}),t.createVNode(Mn,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"timeout",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(mo,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=S=>t.unref(l)("ssl_server_name"))}),t.createVNode(xn,{"field-name-validator":t.unref(m),"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"])}}}),cD=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=mn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(yt,{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"]))}}),dD=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=mn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(yt,{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"]))}}),Jm={jqlang:"https://jqlang.org/manual/"},uD=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=Be(),r=t.useTemplateRef("form"),i=gn("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:h,nameValidator:_,toggleNodeValid:y,fieldNameValidator:g}=mn(e.nodeId,()=>r.value.getInnerData());function w(x,v){u("input",x,v)}function b(x){p("input",x)}function S(x,v){m("input",x,v)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=vr({validationConfig:{jq:Jn(Bo({fieldName:E}),nD(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:y}),N=C("jq",()=>s("jq"));return(x,v)=>{const V=t.resolveComponent("KLabel"),L=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(a).name,validate:t.unref(_),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(V,{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(mo,{autosize:"",error:t.unref(N).error.value,"error-message":t.unref(N).errorMessage.value,label:t.unref(E),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(N).onBlur,"onUpdate:modelValue":t.unref(N).onUpdate},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(L,{"hide-icon":"",href:t.unref(Jm).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Jm).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(g),"field-names":t.unref(h),items:t.unref(c),"onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":S},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),fD=ve(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}=zr(o,r,!1),{i18n:d}=Be(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(E,C="key"){var N;f.value&&(await t.nextTick(),(N=f.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function h(){const E=l(),C=a.value.findIndex(({key:N})=>!N);m(C===-1?a.value.length-1:C),u.value=E}function _(E){var C;E.id===((C=u.value)==null?void 0:C.id)&&(u.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function y(E){p=E.key}function g(E){var C;if(b(E)){E.key=p,delete i.value[E.id];return}if(E.id===((C=u.value)==null?void 0:C.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,C){var x;if(C.id===((x=u.value)==null?void 0:x.id))return;const N=E.target.value.trim();r("change:value",C.key,N)}function b(E){delete i.value[E.id];const C=o.fieldNameValidator("output",p,E.key);if(C)return i.value[E.id]=C,C}function S(E){b(E)}return t.watchEffect(()=>{u.value&&!a.value.some(E=>E.id===u.value.id)&&a.value.push(u.value)}),(E,C)=>{const N=t.resolveComponent("KAlert"),x=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton"),V=t.resolveComponent("KInput"),L=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(N,{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),(k,Y)=>(t.openBlock(),t.createBlock(L,{key:k.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${Y}`},{actions:t.withCtx(()=>[t.createVNode(v,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${Y}`,icon:"",onClick:P=>_(k)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(V,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${Y}`,modelValue:k.key,"onUpdate:modelValue":[P=>k.key=P,P=>b(k)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":Y,"data-testid":`ff-key-${t.unref(c).path.value}.${Y}`,error:!!i.value[k.id],"error-message":i.value[k.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:P=>S(k),onChange:P=>g(k),onFocus:P=>y(k)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(V,{modelValue:k.value,"onUpdate:modelValue":P=>k.value=P,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${Y}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:P=>w(P,k)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(v,{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(xe.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-5e17f8cb"]]);function pD(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 aa(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 mD(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 gD=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=at(),{fieldNameValidator:c}=mn(e.nodeId),d=gn("static"),f=Zm(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(S=>S.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const h=t.computed(()=>{var v;if(!u.value)return{};const b=((v=u.value.config)==null?void 0:v.values)??{},S={},E=o(u.value.id).map(V=>V.sourceField).filter(Boolean).map(V=>bn(u.value,"output",V)).map(V=>V==null?void 0:V.name).filter(Boolean),C=u.value.fields.output.map(V=>V.name),N=Object.keys(b);return new Set([...N,...E,...C]).forEach(V=>{if(V in b){S[V]=b[V];return}S[V]=""}),{name:u.value.name,values:pD(S)}});function _(b,S){if(!u.value)throw new Error("No selected node");const E=S!==void 0;if(r(e.nodeId,"output",b,!E),E){const C={values:aa({...h.value.values,[b]:S})};l(e.nodeId,C)}}function y(b,S){if(!u.value)throw new Error("No selected node");const E=_n(u.value,"output",b);if(!E)throw new Error("No field found to rename");const C={values:aa(mD(h.value.values??{},b,S))};l(e.nodeId,C,!1),i(e.nodeId,E.id,S)}function g(b){var C;if(!u.value)throw new Error("No selected node");const S=_n(u.value,"output",b);if(!S)throw new Error("No field found to delete");a((C=u.value)==null?void 0:C.id,S.id,!0,!1);const E={values:aa({...h.value.values})};delete E.values[b],l(e.nodeId,E)}function w(b,S){if(!u.value)throw new Error("No selected node");const E={...h.value.values};E[b]=S;const C={values:aa(E)};l(e.nodeId,C)}return(b,S)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>{var E;return[t.createVNode(Qn,{name:((E=u.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(fD,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":_,"onChange:value":w,"onRemove:field":g,"onRename:field":y},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),hD={class:"dk-kong-property-item"},yD={class:"property-type"},_D={class:"property-badges"},bD=ve(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=Be(),r=e,i=n,{formData:a}=He(),l=t.ref(Er(a.property)),s=t.computed(()=>Nr(a.property)),c=t.ref(ls(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(Wn).map(([m])=>{var y;const h=Nr(m)?(y=a.property)==null?void 0:y.startsWith(m.replace(Oo,"")):a.property===m;return{label:h&&c.value?m.replace(Oo,c.value):m,value:m,selected:h}}));function u(m){const h=Yi.find(_=>{var y;return(y=a.property)==null?void 0:y.startsWith(_)});h&&(a.property=h+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Er(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Er(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=ls(m),l.value=Er(m)}),(m,h)=>{const _=t.resolveComponent("KBadge"),y=t.resolveComponent("KSelect"),g=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(y,{key:d.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.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=>e.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",hD,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",yD,t.toDisplayString(t.unref(Wn)[w.value].dataType),1)]),t.createElementVNode("div",_D,[t.unref(Wn)[w.value].readable?(t.openBlock(),t.createBlock(_,{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(Wn)[w.value].writable?(t.openBlock(),t.createBlock(_,{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(g,{key:0,"model-value":c.value,"onUpdate:modelValue":[h[1]||(h[1]=w=>c.value=w),u],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:h[2]||(h[2]=w=>e.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),wD=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=at(),a=gn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,fieldNameValidator:_}=mn(e.nodeId,()=>n.value.getInnerData()),y=t.computed(()=>cs(l.value.property));function g(b){var E;const S=(E=o.value)==null?void 0:E.id;if(!S)throw new Error("Expected selectedNode to be defined");ss(b)||i(S,!1),cs(b)||r(S,!1),c()}const{fields:w}=vr({validationConfig:()=>({property:Bo({fieldName:"Property"}),key:Nr(l.value.property)?Bo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:ls(l.value.property)}),toggleNodeValid:h});return(b,S)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode($t,{name:"content_type",onUpdate:S[0]||(S[0]=E=>t.unref(c)())}),t.createVNode(bD,{validators:t.unref(w),"onUpdate:modelValue":g,"onUpdate:propertyKey":S[1]||(S[1]=E=>t.unref(c)("property-key"))},null,8,["validators"]),y.value?(t.openBlock(),t.createBlock(xn,{key:0,"field-name-validator":t.unref(_),"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"]))}}),kD=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=mn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:m}=vr({validationConfig:{status:Jn(xs("integer",{fieldName:"Status"}),Ss(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),h=m("status",()=>a("status"));return(_,y)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Mn,{error:t.unref(h).error.value,"error-message":t.unref(h).errorMessage.value,name:"status",onBlur:t.unref(h).onBlur,"onUpdate:modelValue":t.unref(h).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(qr,{name:"warn_headers_sent","onUpdate:modelValue":y[0]||(y[0]=g=>t.unref(a)())}),t.createVNode(xn,{"field-name-validator":t.unref(p),"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"]))}});function CD(e){const n=mn(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=at(),{i18n:{t:l}}=Be(),s=Km(),c=Lm(),d=t.computed(()=>{var b;const g={...n.formData.value},w=nr(((b=n.currentNode.value)==null?void 0:b.type)||"branch");for(const S of w)(!(S in g)||g[S]==null)&&(g[S]=[]);return g});function f(g,w,b){const S=r(g),E=r(b),C=S?`${S.name}.${w}`:`${g}.${w}`,N=E?E.name:b;return[C,N]}function u(g){return(g==null?[]:Array.isArray(g)?g:[g]).filter(w=>Ou(w))}function p(g,w){return i.wouldCreateCycle(g,w)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(g,w,b){const S=[],E=[],C=[];for(const N of b){const x=i.findMembership(N);if(!x||x.ownerId===g&&x.branch===w)continue;const v=i.getMembers(x.ownerId,x.branch).filter(V=>V!==N);C.push({ownerId:x.ownerId,branch:x.branch,members:v}),S.push(f(g,w,N)),E.push(f(x.ownerId,x.branch,N))}return{conflictUpdates:C,addedAssignments:S,removedAssignments:E}}function h(g,w,b,S){let E=!1;for(const C of S)E=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||E;return E=i.setMembers(g,w,b,{commit:!1})||E,E}async function _(g,w){const b=n.currentNode.value,S=u(w),E=i.prepareMembers(b.id,g,S),C=i.getMembers(b.id,g);if(yl(C,E))return!0;const N=E.filter(k=>!C.includes(k));for(const k of N)if(p(b.id,k))return!1;const{conflictUpdates:x,addedAssignments:v,removedAssignments:V}=m(b.id,g,N);return x.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),v,V)?!1:(h(b.id,g,E,x)&&a(),!0)}const y=t.computed(()=>{const g=n.currentNode.value;return!g||!i?[]:o.value.nodes.filter(w=>w.id!==e&&!Vt(w.type)&&w.phase===g.phase&&!i.wouldCreateCycle(g.id,w.id)).map(w=>({value:w.id,label:w.name,type:w.type}))});return{...n,formData:d,branchOptions:y,updateBranchMembers:_}}const ED=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Be(),o=gn("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:d,setInputs:f,inputsFieldNames:u,fieldNameValidator:p,updateBranchMembers:m}=CD(e.nodeId);async function h(_,y){await m(_,y)||(r.value+=1)}return(_,y)=>(t.openBlock(),t.createBlock(yt,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Te.KLabel),{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($t,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:y[0]||(y[0]=g=>h("then",g))},{"item-label":t.withCtx(g=>[t.createVNode(ia,{item:g},null,8,["item"])]),_:1},8,["items"]),t.createVNode($t,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:y[1]||(y[1]=g=>h("else",g))},{"item-label":t.withCtx(g=>[t.createVNode(ia,{item:g},null,8,["item"])]),_:1},8,["items"]),t.createVNode(xn,{"field-name-validator":t.unref(p),"field-names":t.unref(u),items:t.unref(l),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),ND=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("cache"),{i18n:{t:r}}=Be(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=mn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:h}=vr({validationConfig:()=>({ttl:Jn(xs("integer",{fieldName:"TTL"}),Ss(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),_=h("ttl",()=>l("ttl"));return(y,g)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Qn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Te.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(qr,{name:"bypass_on_error","onUpdate:modelValue":g[0]||(g[0]=w=>t.unref(l)("bypass_on_error"))}),t.createVNode(Mn,{error:t.unref(_).error.value,"error-message":t.unref(_).errorMessage.value,name:"ttl",onBlur:t.unref(_).onBlur,"onUpdate:modelValue":t.unref(_).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(m),"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"]))}}),xD=["innerHTML"],SD=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${jp}px`},offsetTop:{default:`${sT}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=at(),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 sD;case"service_request":return cD;case"response":return dD;case"jq":return uD;case"static":return gD;case"property":return wD;case"exit":return kD;case"branch":return ED;case"cache":return ND;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":e.maxWidth,"offset-top":e.offsetTop,visible:e.visible,"z-index":t.unref(lT),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(Bt)(o.value.type)},null,8,xD)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(qm,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),vD=ve(SD,[["__scopeId","data-v-bad25d77"]]),AD={class:"dk-editor-content"},ID={class:"main"},PD=ve(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=at();function r(){n.value=!1}t.watch(o,a=>{a||r()});const i=t.ref(!1);return t.onMounted(()=>{i.value=!0}),(a,l)=>{var s;return t.openBlock(),t.createElementBlock("div",AD,[t.createVNode(t.unref(GR)),t.createElementVNode("div",ID,[t.createVNode(sR)]),t.createVNode(vD,{"node-id":(s=t.unref(o))==null?void 0:s.id,visible:t.unref(n),onClose:r},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-8f04afa6"]]),TD={key:0,class:"dk-editor-modal"},OD=ve(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({v8758bbfe:`${t.unref(aT)}px`,v30e03211:`${t.unref(Kp)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=at();kV(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=qe.useScrollLock(document);t.watch(n,s=>{a.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(t.openBlock(),t.createElementBlock("div",TD,[t.createVNode(nR,{class:"nav",onBack:l}),t.createVNode(PD,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(JV,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),$D={class:"dk-flow-editor"},BD={class:"flow-panels-container"},VD={class:"overlay"},RD=ve(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Je),{formData:r}=He(),i=n;function a(c,d,f,u){const p={...r.config,nodes:c};f!==void 0&&(p.resources=f);const m={...r.__ui_data,...d};r.config=p,r.__ui_data=m,u!=null?r.partials=[{id:u}]:r.partials&&(r.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=ju(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),N1({enabled:l}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",$D,[t.createElementVNode("div",BD,[t.createVNode(Ns,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",VD,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=u=>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(xe.ExpandIcon))]),_:1})])]),t.createVNode(OD,{open:t.unref(l),"onUpdate:open":d[1]||(d[1]=u=>t.isRef(l)?l.value=u:null)},null,8,["open"])])}}}),[["__scopeId","data-v-82ca6e78"]]);function DD(e,n){const o=[],r=(i,a)=>{typeof a=="string"&&o.push({nodeName:e.name,path:["nodes",n,...i],value:a})};if("input"in e&&e.input!=null&&r(["input"],e.input),"inputs"in e&&e.inputs&&typeof e.inputs=="object")for(const[i,a]of Object.entries(e.inputs))a!=null&&r(["inputs",i],a);if("output"in e&&e.output!=null&&r(["output"],e.output),"outputs"in e&&e.outputs&&typeof e.outputs=="object")for(const[i,a]of Object.entries(e.outputs))a!=null&&r(["outputs",i],a);return o}function MD(e){const n=e.path[2];return n==="output"||n==="outputs"}function Qm(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function eg(e,n){const o=e.input!==void 0&&e.input!==null,r=Qm(e.inputs);o&&r&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=e.output!==void 0&&e.output!==null,a=Qm(e.outputs);i&&a&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function tg(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,d)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,d)=>{for(const f of DD(c,d)){const u=f.value.split(".",1)[0];if(a.has(u)||o.addIssue({code:"custom",message:`Unknown node "${u}" in connection "${f.value}"`,path:f.path}),MD(f)){const p=`${f.nodeName}->${u}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${u}" and "${u}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${u}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${u}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${u}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const LD=W.z.enum(Au),FD=W.z.enum(wo),ng=e=>wo.includes(e),vs=W.z.enum(Iu),og=vs.options;W.z.union([vs,LD]);const UD=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,rg=W.z.string().min(1).max(255).regex(UD,"Invalid node name (snake_case / kebab-case only)").refine(e=>!ng(e),"Name clashes with reserved implicit node").brand(),la=W.z.union([FD,rg]),KD=W.z.string().min(1).brand(),jD=["then","else"];W.z.enum(jD);const ut=W.z.string().refine(e=>{if(la.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return la.safeParse(o).success&&KD.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),ig=W.z.enum(Pu),eo=W.z.object({type:W.z.string(),name:rg,input:ut,inputs:W.z.record(W.z.string(),ut).nullish(),output:ut,outputs:W.z.record(W.z.string(),ut).nullish()}).loose().superRefine((e,n)=>{eg(e,n)}),GD=W.z.object({type:W.z.string(),name:W.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),og.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${og.join(", ")}`})}),qD=eo.safeExtend({type:W.z.literal("call"),method:ig.nullish(),ssl_server_name:W.z.string().min(1).nullish(),timeout:W.z.number().int().min(0).max(2147483646).nullish(),url:W.z.url(),inputs:W.z.object({body:ut,headers:ut,query:ut}).partial().nullish(),outputs:W.z.object({body:ut,headers:ut,status:ut}).partial().nullish()}).strict(),zD=eo.safeExtend({type:W.z.literal("exit"),status:W.z.number().int().min(200).max(599).nullish(),warn_headers_sent:W.z.boolean().nullish(),output:W.z.never().optional(),outputs:W.z.never().optional()}).strict(),HD=eo.safeExtend({type:W.z.literal("jq"),jq:W.z.string().min(1).max(10240),outputs:W.z.never().optional()}).strict(),YD=eo.safeExtend({type:W.z.literal("property"),content_type:W.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:W.z.string().min(1),inputs:W.z.never().optional(),outputs:W.z.never().optional()}).strict(),WD=eo.safeExtend({type:W.z.literal("static"),values:W.z.record(W.z.string(),W.z.unknown()),input:W.z.never().optional(),inputs:W.z.never().optional()}).strict(),XD=eo.safeExtend({type:W.z.literal("cache"),bypass_on_error:W.z.boolean().nullish(),inputs:W.z.object({data:ut,key:ut,ttl:ut}).partial().nullish(),outputs:W.z.object({data:ut,hit:ut,miss:ut,stored:ut}).partial().nullish(),ttl:W.z.number().int().gt(0).nullish()}).strict(),ZD=eo.safeExtend({type:W.z.literal("branch"),then:W.z.array(la).nullish(),else:W.z.array(la).nullish()}).strict(),JD=GD.pipe(W.z.discriminatedUnion("type",[qD,zD,HD,YD,WD,XD,ZD])),QD=W.z.record(W.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),W.z.string().min(1).max(4095)),eM=W.z.object({dictionary_name:W.z.string().default("kong_db_cache")}),tM=W.z.object({host:W.z.string().default("127.0.0.1"),port:W.z.number().int().min(0).max(65535).default(6379)}),nM=W.z.object({ip:W.z.string().default("127.0.0.1"),port:W.z.number().int().min(0).max(65535).default(6379)}),oM=W.z.object({host:W.z.string().optional().default("127.0.0.1"),port:W.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:W.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:W.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:W.z.number().int().min(0).max(2147483646).default(2e3),username:W.z.string().optional(),password:W.z.string().optional(),sentinel_username:W.z.string().optional(),sentinel_password:W.z.string().optional(),database:W.z.number().int().optional().default(0),keepalive_pool_size:W.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:W.z.number().int().min(0).max(2147483646).optional(),sentinel_master:W.z.string().optional(),sentinel_role:W.z.enum(["master","slave","any"]).optional(),sentinel_nodes:W.z.array(tM).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:W.z.array(nM).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:W.z.boolean().default(!1).optional(),ssl_verify:W.z.boolean().default(!1).optional(),server_name:W.z.string().optional(),cluster_max_redirections:W.z.number().int().default(5).optional(),connection_is_proxied:W.z.boolean().default(!1).optional(),timeout:W.z.number().int().optional(),sentinel_addresses:W.z.array(W.z.string()).min(1).optional(),cluster_addresses:W.z.array(W.z.string()).min(1).optional()}).superRefine((e,n)=>{var c;const o=e.host!==void 0&&e.host!==null,r=e.port!==void 0&&e.port!==null;(o&&!r||!o&&r)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,l=!!((c=e.sentinel_nodes)!=null&&c.length),s=[i,a,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!o&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),rM=W.z.object({strategy:W.z.enum(["memory","redis"]).optional(),memory:eM,redis:oM}),iM=W.z.object({vault:QD.nullish(),cache:rM.nullish()});W.z.array(W.z.object({id:W.z.string()})),W.z.object({nodes:W.z.array(JD).min(1,"At least one node is required"),debug:W.z.boolean().nullish(),resources:iM.nullish()}).strict().superRefine((e,n)=>{tg(e,wo,n)});const ag=vs.options,As=W.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!ng(e),"Node name conflicts with reserved implicit node"),ft=W.z.string().refine(e=>{if(!e||/\s/.test(e))return!1;const n=e.indexOf(".");if(n===-1)return!0;const o=e.slice(0,n),r=e.slice(n+1);return o.length>0&&r.length>0},"Invalid connection"),to=W.z.object({type:W.z.string(),name:As,input:ft.nullish(),inputs:W.z.record(W.z.string(),ft.nullish()).nullish(),output:ft.nullish(),outputs:W.z.record(W.z.string(),ft.nullish()).nullish()}).loose().superRefine((e,n)=>{eg(e,n)}),aM=W.z.object({type:W.z.string(),name:W.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),ag.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${ag.join(", ")}`})}),lM=to.safeExtend({type:W.z.literal("call"),method:ig.nullish(),ssl_server_name:W.z.string().nullish(),timeout:W.z.union([W.z.number(),W.z.string()]).nullish(),url:W.z.string().nullish(),inputs:W.z.object({body:ft.nullish(),headers:ft.nullish(),query:ft.nullish()}).partial().nullish(),outputs:W.z.object({body:ft.nullish(),headers:ft.nullish(),status:ft.nullish()}).partial().nullish()}).strict(),sM=to.safeExtend({type:W.z.literal("exit"),status:W.z.union([W.z.number(),W.z.string()]).nullish(),warn_headers_sent:W.z.boolean().nullish(),output:W.z.never().optional(),outputs:W.z.never().optional()}).strict(),cM=to.safeExtend({type:W.z.literal("jq"),jq:W.z.string().nullish(),outputs:W.z.never().optional()}).strict(),dM=to.safeExtend({type:W.z.literal("property"),content_type:W.z.string().nullish(),property:W.z.string().nullish(),inputs:W.z.never().optional(),outputs:W.z.never().optional()}).strict(),uM=to.safeExtend({type:W.z.literal("static"),values:W.z.record(W.z.string(),W.z.unknown()).nullish(),input:W.z.never().optional(),inputs:W.z.never().optional()}).strict(),fM=to.safeExtend({type:W.z.literal("cache"),bypass_on_error:W.z.boolean().nullish(),inputs:W.z.object({data:ft.nullish(),key:ft.nullish(),ttl:ft.nullish()}).partial().nullish(),outputs:W.z.object({data:ft.nullish(),hit:ft.nullish(),miss:ft.nullish(),stored:ft.nullish()}).partial().nullish(),ttl:W.z.union([W.z.number(),W.z.string()]).nullish()}).strict(),pM=to.safeExtend({type:W.z.literal("branch"),then:W.z.array(As).nullish(),else:W.z.array(As).nullish()}).strict(),mM=aM.pipe(W.z.discriminatedUnion("type",[lM,sM,cM,dM,uM,fM,pM])),gM=W.z.record(W.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),W.z.string().min(1).max(4095)),hM=W.z.object({dictionary_name:W.z.string().default("kong_db_cache")}),yM=W.z.object(),_M=W.z.object({strategy:W.z.enum(["memory","redis"]).optional(),memory:hM.optional(),redis:yM.optional()}),bM=W.z.object({vault:gM.nullish(),cache:_M.nullish()}),wM=W.z.object({nodes:W.z.array(mM).nullish(),debug:W.z.boolean().nullish(),resources:bM.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||tg(e,wo,n)}).nullish(),kM={class:"option-label"},CM=["innerHTML"],EM=ve(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}=Xe.createI18n("en-us",Je),o=e,r=t.inject(co.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(co.DATAKIT_M2,!1),{editorMode:a}=Cl(),l=t.computed(()=>r&&c.value?a.value:"code"),s={flow:xe.DesignIcon,code:xe.CodeblockIcon},c=t.ref(!0),d=t.computed(()=>{const _=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return _[0].disabled=!c.value,_}),f=t.computed(()=>{switch(l.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}});t.watch(l,()=>{var _;(_=o.onValidityChange)==null||_.call(o,{model:"config",valid:!0})});function u(){var _;(_=o.onValidityChange)==null||_.call(o,{model:"config",valid:!0})}function p(){u()}function m(_){var w;u();const{success:y}=wM.safeParse(_);let g=y;if(!i&&g){const b=_;(w=b==null?void 0:b.resources)!=null&&w.vault&&(g=!1)}c.value=g}function h(_){var y;c.value=!1,(y=o.onValidityChange)==null||y.call(o,{model:"config",valid:!1,error:_})}return(_,y)=>{const g=t.resolveComponent("KTooltip");return t.openBlock(),t.createBlock(xd,t.mergeProps(o,{class:"dk-form"}),t.createSlots({default:t.withCtx(w=>[t.createVNode(yt,t.mergeProps(w,{tag:"div"}),{default:t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(RD,{key:0,"is-editing":o.isEditing,onChange:p},null,8,["is-editing"])):l.value==="code"?(t.openBlock(),t.createBlock(r1,{key:1,class:"code-editor",editing:o.isEditing,onChange:m,onError:h},null,8,["editing"])):t.createCommentVNode("",!0)]),_:1},16)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:f.value},null,8,CM)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Te.KSegmentedControl),{"model-value":l.value,options:d.value,"onUpdate:modelValue":y[0]||(y[0]=w=>a.value=w)},{"option-label":t.withCtx(({option:w})=>[t.createVNode(g,{disabled:c.value||w.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",kM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(s[w.value]))),t.createTextVNode(" "+t.toDisplayString(w.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])]),key:"0"}:void 0]),1040)}}}),[["__scopeId","data-v-6b230b53"]]),lg=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))},sg=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},NM=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Fe.useI18n(),l={prepareFormData:c=>{var f,u;const d=so(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{sg(p.headers),sg(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=so(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{lg(p.headers),lg(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(yt,{config:l,data:e.data,schema:e.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(xt,{"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-proxy.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(Yr)]),_:1},8,["data","schema"]))}}),xM=t.defineComponent({__name:"AIMcpProxyForm",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(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ha,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(NM,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),SM=ve(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change"],setup(e,{emit:n}){const o=n,r=t.computed(()=>{const l=e.schema.fields.find(d=>Object.keys(d)[0]==="config").config.fields,s=[],c=[];for(const d of l){const f=Object.keys(d)[0];d[f].required?s.push(f):c.push(f)}return{required:s,nonRequired:c}}),i={hasValue:l=>!!(l!=null&&l.config)};function a(l){o("change",l)}return(l,s)=>(t.openBlock(),t.createBlock(yt,{config:i,data:e.data,schema:e.schema,tag:"div",onChange:a},{default:t.withCtx(()=>[t.createVNode(xt,{"as-child":"",name:"config",omit:r.value.nonRequired,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(Yr,{class:"ff-advanced-fields"},{default:t.withCtx(()=>[t.createVNode(xt,{"as-child":"",name:"config",omit:r.value.required,"reset-label-path":"reset"},null,8,["omit"])]),_:1})]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-3e5ed51d"]]),cg=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:xM,CommonForm:t.defineComponent({__name:"CommonForm",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 n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(xd,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(SM,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:EM,RequestCalloutForm:vk,ServiceProtectionForm:TC},Symbol.toStringTag,{value:"Module"})),vM={class:"kong-ui-entities-plugin-form"},AM={key:1,class:"entity-form"},IM={class:"plugin-config-empty-state"},PM=ve(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},engine:{type:String,required:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var ie,he;const o=Object.keys(De.sharedForms),r=Object.keys(cg);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}=ye.useAxios((ie=a.config)==null?void 0:ie.axiosRequestConfig),{parseSchema:s}=Fe.useSchemas({entityId:((he=a.entityMap.focusedEntity)==null?void 0:he.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}=Fe.usePluginHelpers(),m=Fe.useExperimentalFreeForms(),{objectsAreEqual:h}=ye.useHelpers(),{i18n:{t:_}}=Be(),y=Z=>a.config.app==="konnect"?Z.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?Z.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):Z,g=(Z,re)=>{let le=`${a.config.apiBaseUrl}${Ze.form[a.config.app].entityGetOne}`;return le=y(le),le=le.replace(/{entity}/gi,Z),le=le.replace(/{id}/gi,re),le},w=Z=>{let re=`${a.config.apiBaseUrl}${Ze.form[a.config.app].entityGetAll}`;return re=y(re),re=re.replace(/{entity}/gi,Z),re},b=(Z,re)=>{const le=g(Z,re);return l.get(le)},S=(Z,re)=>{const le=w(Z);return a.config.app==="konnect"?l.get(le).then(fe=>{const{data:{data:ue}}=fe;if(delete re.size,delete re.offset,ue.length&&Object.keys(re).length===1){const $=Object.keys(re)[0],B=ue.filter(F=>F[$]?!!F[$].toLowerCase().includes(re[$].toLowerCase()):!1);fe.data.data=B}return fe}):l.get(le,{params:re})},E=(Z,re,le)=>{const fe=w(Z);if(a.config.app==="konnect"){const{size:ue,offset:$,...B}=re;if(Z==="consumer_groups")return l.get(fe,{params:{size:1e3},signal:le}).then(R=>{const{data:{data:ee}}=R;if(ee.length&&Object.keys(B).length===1){const q=Object.keys(B)[0],ae=ee.filter(I=>I[q]?!!I[q].toLowerCase().includes(B[q].toLowerCase()):!1);R.data.data=ae}return R});const F={size:ue,offset:$};for(const R of Object.keys(B))F.filter={[R]:{contains:B[R]}};return l.get(fe,{params:F,signal:le})}return l.get(fe,{params:re,signal:le})},C=(Z,re=50)=>{const le=w(Z);return l.get(le,{params:{size:re}})};t.provide(De.FORMS_API_KEY,{getOne:b,getAll:S,getAllV2:E,peek:C}),t.provide(De.FORMS_CONFIG,a.config);const N=t.ref(""),x=t.ref(""),v=t.ref(null),V=t.ref({}),L=t.reactive({}),k=t.reactive({}),Y=t.computed(()=>{var Z;return(Z=v.value)==null?void 0:Z.options}),P=t.ref(!1),G=t.ref(),j=(Z,re)=>{P.value=Z??"",G.value=re},te=Z=>{var re;(re=G.value)==null||re.call(G,Z),P.value=!1},X=()=>{var B,F;const Z={...a.schema},re=k,le=L,fe=Object.keys(re),ue={};if(!u(V.value))for(let R=0;R<((F=(B=V.value)==null?void 0:B.fields)==null?void 0:F.length);R++)Z[V.value.fields[R].model]=V.value.fields[R];De.customFields.forEach(R=>{Z[R]&&(Z[R].fields.forEach(ee=>{ee.fields&&ee.fields.forEach(q=>{Z[q.model]=q}),ee.model&&(Z[ee.model]=ee)}),delete Z[R])}),fe.forEach(R=>{var be;if(!Z[R]){R==="partials"&&(ue[R]=re[R]);return}const ee=Z[R];let q=re[R];const ae=le[R],I=Array.isArray(q)?"array":typeof q,M=ee?ee.valueType:null,O=ee?ee.valueArrayType:null,oe=ee?ee.transform:null;if(q==null&&ae==null&&!ee.submitWhenNull)return;if(ee){if(M&&I!==M)switch(M){case"array":I==="string"&&q.length&&(q=q.split(",").map(ke=>{if(ke=ke.trim(),O==="string")return String(ke);if(O==="number")return Number(ke);if(O==="boolean"){if(typeof ke=="string")return ke.toLowerCase()==="true"||ke==="1";if(typeof ke=="number")return ke===1}return ke})),(!q||!q.length)&&(q=ee.submitWhenNull?null:[]);break;case"number":q=Number(q);break;case"boolean":I==="string"&&(q=q.toLowerCase()==="true"||q==="1"),I==="number"&&(q=q===1);break;case"string":q=q==null?"":String(q);break}else M==="array"&&(!q||!q.length?q=ee.submitWhenNull?null:[]:((be=ee.inputAttributes)==null?void 0:be.type)==="number"&&(q=q.map(ke=>Number(ke))));if(ee.type==="array"&&ee.nestedFields){const ke=de=>{Object.keys(de).forEach(Ne=>{de[Ne]&&typeof de[Ne]=="object"&&!Array.isArray(de[Ne])&&de[Ne]!==null?ke(de[Ne]):(de[Ne]===void 0||de[Ne]===null||typeof de[Ne]=="number"&&isNaN(de[Ne])||typeof de[Ne]=="string"&&de[Ne].trim().length===0)&&delete de[Ne]})};q&&typeof q=="object"&&ke(q)}ee.type==="object-advanced"&&ee.fields&&q!==null&&(Object.entries(q).length===0?q=null:Object.keys(q).forEach(ke=>{Array.isArray(q[ke])||(q[ke]=q[ke].split(","))}))}let ne=c(R);if(ee.fieldNameHasDashes){const[ke,...de]=ne.split(".").reverse();ne=[ke.replace(/_/g,"-"),...de].reverse().join(".")}if(M==="object-expand"){let ke;[ne,ke]=ne.split(".");let de={};ue[ne]&&(de=ue[ne]),de[ke]=q,q=de}ae!==void 0&&q===""&&q!==ae?ue[ne]=M==="object"?{}:null:ee.type==="checklist"&&q===""?ue[ne]=[]:q!==""&&(ue[ne]=q),ue[ne]=oe?oe(q):ue[ne],p(ne,ue)});const $=d(ue);return x.value&&Object.assign($,K.value),$},D=(Z,re={})=>{f(k,re,Z,a.editing),i("model-updated",{model:k,originalModel:L,data:X()})},U=(Z,re)=>{var ue;const le={[re]:Z};typeof((ue=a.schema[re])==null?void 0:ue.modelTransformer)=="function"&&(le[re]=a.schema[re].modelTransformer(Z));const fe=Object.assign({},k,le);Object.assign(k,fe),i("model-updated",{model:k,originalModel:L,data:X()})},A=Z=>{i("validity-change",Z)},T=(Z,re)=>{Object.keys(Z).forEach(le=>{var F,R;let fe=re?`${re}-${le}`:le,ue=a.schema[fe];if(!ue){const ee=re?`${re}-${le.replace(/-/g,"_")}`:le.replace(/-/g,"_");(F=a.schema[ee])!=null&&F.fieldNameHasDashes&&(fe=ee,ue=a.schema[fe]),re&&((R=a.schema[re])==null?void 0:R.keyFromObject)===le&&(fe=re,ue=a.schema[fe])}const $=Z[le],B=typeof $;if(ue&&ue.type==="object-advanced"&&!$){k[fe]={},L[fe]={};return}if(Array.isArray($)){k[fe]=JSON.parse(JSON.stringify($)),L[fe]=JSON.parse(JSON.stringify($));return}if(B==="object"&&$&&!$.length)return T($,fe);if(B==="object"&&$&&$.length&&ue.type==="input"){k[fe]=$.join(", "),L[fe]=$.join(", ");return}k[fe]=$,L[fe]=$}),i("model-updated",{model:k,originalModel:L,data:X()})},K=t.shallowRef(a.record),z=Z=>{K.value=Z,i("model-updated",{model:{...k,...Z},originalModel:L,data:X()})},J=t.ref(!0),Q=()=>{var Z;if(a.record&&a.schema&&(T({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)&&T({consumer_id:a.record.consumer_id||a.record.consumer}),T(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)&&T({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&&D("redis",{partials:a.record.partials}),x.value?z(a.record):T(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const re={};for(const le in a.entityMap){const fe=a.entityMap[le].id,ue=a.entityMap[le].idField,$=ue==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(ue).replace("_","-"));Object.prototype.hasOwnProperty.call(k,$)&&(re[$]=fe)}T(re)}if((Z=a.entityMap.consumer)!=null&&Z.id&&a.schema&&a.credential){const re={};Object.prototype.hasOwnProperty.call(k,"consumer")&&(re.consumer=a.entityMap.consumer.id),T(re)}J.value=!1};return t.watch(J,Z=>{i("loading",Z)}),t.watch(()=>a.schema,(Z,re)=>{var fe,ue;if(h(Z||{},re||{}))return;const le=s(Z,void 0,void 0,a.engine);Object.assign(k,le.model),V.value={fields:(ue=(fe=V.value)==null?void 0:fe.fields)==null?void 0:ue.map($=>({...$,disabled:$.disabled||!1}))},Object.assign(L,JSON.parse(JSON.stringify(le.model))),x.value=a.engine?a.engine==="vfg"?void 0:Da(le.model.name,m)||"CommonForm":Da(le.model.name,m),N.value=De.getSharedFormName(le.model.name),Q()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var Z,re;v.value=s(a.schema,void 0,void 0,a.engine),Object.assign(k,((Z=v.value)==null?void 0:Z.model)||{}),V.value=((re=v.value)==null?void 0:re.schema)||{},Q()}),(Z,re)=>{var fe;const le=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",vM,[J.value?(t.openBlock(),t.createBlock(le,{key:0,type:"form"})):k.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",AM,[x.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(cg[x.value]),{key:0,"form-model":k,"form-options":Y.value,"form-schema":V.value,"is-editing":e.editing,model:e.record,"on-form-change":z,"on-model-updated":U,"on-validity-change":A,schema:e.rawSchema,onGlobalAction:re[0]||(re[0]=(ue,$)=>Z.$emit("globalAction",ue,$))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(ue=>[ue.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Vo.VaultSecretPickerProvider),t.mergeProps({key:0},ue,{onOpen:j}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):N.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(De.sharedForms)[N.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":k,"form-options":Y.value,"form-schema":V.value,"is-editing":e.editing,"on-model-updated":U,"on-partial-toggled":D,"show-new-partial-modal":ue=>Z.$emit("showNewPartialModal",ue)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(ue=>[ue.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Vo.VaultSecretPickerProvider),t.mergeProps({key:0},ue,{onOpen:j}),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(De.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:k,options:Y.value,schema:V.value,onModelUpdated:U,onPartialToggled:D,onRefreshModel:X,onShowNewPartialModal:re[1]||(re[1]=ue=>Z.$emit("showNewPartialModal",ue))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",IM,t.toDisplayString(t.unref(_)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(fe=t.unref(Gt)[k.name])!=null&&fe.fieldRules&&(a.config.isNewOtelSchema||k.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(A0,{rules:t.unref(Gt)[k.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(ue=>[ue.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Vo.VaultSecretPickerProvider),t.mergeProps({key:0},ue,{onOpen:j}),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(Vo.VaultSecretPicker),{config:a.config,setup:P.value,onCancel:re[2]||(re[2]=()=>P.value=!1),onProceed:te},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-3a5319dd"]]),TM={key:1},OM=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",TM,[t.renderSlot(n.$slots,"default")]))}}),$M={class:"kong-ui-entities-plugin-form-container"},BM={key:0},VM={class:"plugin-form-actions"},RM=ve(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},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var ae;const o=n,r=e,i=no.useRouter(),{i18n:{t:a}}=Fe.useI18n(),{customSchemas:l,typedefs:s}=Fe.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Fe.usePluginHelpers(),{getMessageFromError:d}=ye.useErrors(),{capitalize:f}=ye.useStringHelpers(),{objectsAreEqual:u}=ye.useHelpers(),{axiosInstance:p}=ye.useAxios((ae=r.config)==null?void 0:ae.axiosRequestConfig),m=t.ref(!1),h=t.computed(()=>!!r.pluginId),_=t.computed(()=>r.pluginId?ye.EntityBaseFormType.Edit:ye.EntityBaseFormType.Create),y=t.ref(void 0),g=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),S=t.ref({}),E=t.ref(),C=t.ref();t.provide(Cd,{redisType:E,redisPath:C,isEditing:h.value});const N=t.ref(!1),x=t.reactive({enabled:!0,protocols:[],tags:[]}),v=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),V=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&V.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const L=t.ref(""),k=t.computed(()=>{var M;if(w.value){let O=Ze.form[r.config.app].credential[_.value];return O=O.replace(/{resourceEndpoint}/gi,j.value),O}let I;return r.config.entityType&&r.config.entityId?I=Ze.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):I=Ze.form[r.config.app].edit.all,r.config.app==="konnect"&&((M=Gt[r.pluginType])!=null&&M.useUIData)?`${I}?__ui_data=true`:I}),Y=()=>{m.value=!m.value},P=t.computed(()=>{var be,ke,de,Ne,Pe,me,ge,ot;const I=r.config.entityType==="consumers"&&r.config.entityId||((ke=(be=b.value)==null?void 0:be.consumer)==null?void 0:ke.id),M=r.config.entityType==="consumer_groups"&&r.config.entityId||((Ne=(de=b.value)==null?void 0:de.consumer_group)==null?void 0:Ne.id),O=r.config.entityType==="services"&&r.config.entityId||((me=(Pe=b.value)==null?void 0:Pe.service)==null?void 0:me.id),oe=r.config.entityType==="routes"&&r.config.entityId||((ot=(ge=b.value)==null?void 0:ge.route)==null?void 0:ot.id);if(!(I||M||O||oe))return{global:{entity:H.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ne={};return O&&(ne.service={entity:H.PluginScope.SERVICE,entityEndpoint:"services",id:O,idField:An.SERVICE}),oe&&(ne.route={entity:H.PluginScope.ROUTE,entityEndpoint:"routes",id:oe,idField:An.ROUTE}),I&&(ne.consumer={entity:H.PluginScope.CONSUMER,entityEndpoint:"consumers",id:I,idField:An.CONSUMER}),M&&(ne.consumer_group={entity:H.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:M,idField:An.CONSUMER_GROUP}),r.config.entityType&&(ne.focusedEntity={entity:H.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:An[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),ne}),G=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||_.value===ye.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}),j=t.computed(()=>{var O;const I=r.developer?"developers":"consumers",M=((O=io[r.pluginType])==null?void 0:O.endpoint)||"/plugins";return`${I}/${r.config.entityId}${r.developer?"/credentials":""}${M}`}),te=I=>{const M=Array.from(new Set(I.map(O=>typeof O)));return M.length>1?"string":M[0]},X=(I,M,O,oe)=>{var de,Ne;let ne=M&&M.fields||[];const be=l[r.pluginType],ke=(Ne=(de=io[r.pluginType])==null?void 0:de.schema)==null?void 0:Ne.fields;return Array.isArray(ne)&&(ne=ne.reduce((Pe,me)=>{const ge=Object.keys(me)[0];return ge.match(/-/g)?Pe[ge.replace(/-/g,"_")]={...me[ge],fieldNameHasDashes:!0}:Pe[ge]=me[ge],Pe},{})),Object.keys(ne).sort().forEach(Pe=>{var Sn,vn,st,Ye,pt,Ct,mt;const me=ne[Pe];me.type==="set"&&(me.type="array");const ge=I?`${I}-${Pe}`:`${Pe}`;if((Sn=be==null?void 0:be.fieldsToDelete)!=null&&Sn.includes(ge)){td(O,ge);return}if(Object.prototype.hasOwnProperty.call(me,"overwrite")||me.hidden)return;if(me.type==="table")return X(ge,me.schema,O);if(me.fields)return oe&&me.type==="record"?(O[ge]={type:"object",model:Pe,schema:{fields:Object.values(X(ge,me,{},!0))}},O):X(ge,me,O);if(O[ge]={id:ge,model:Pe},O[ge].type=me.type==="boolean"?"checkbox":"input",O[ge].required=me.required,O[ge].referenceable=me.referenceable,ge.startsWith("config-"))if(!oe&&me.type==="array"&&(L.value=ge),oe&&L.value&&ge.startsWith(L.value)){const $e=ge.slice(L.value.length+1);O[ge].label=$e.split("-").map(c).join(".")}else O[ge].label=c(ge);if((I==="config"||I.startsWith("config-"))&&(vn=ne[Pe])!=null&&vn.description&&(O[ge].help=Ir.marked.parse(ne[Pe].description,{mangle:!1,headerIds:!1})),me.type==="map"){if(O[ge].type="object-advanced",O[ge].values=me.values,me.values.type==="array"){const{type:$e}=me.values.elements||{};O[ge].schema={fields:[{schema:{fields:[{...Ve,model:ge,valueArrayType:$e==="integer"?"number":$e||"string",inputAttributes:{...Ve.inputAttributes,type:$e==="integer"?"number":"text",inputMode:$e==="integer"?"numeric":"text"}}]}}]}}else me.values.fields&&(O[ge].schema={fields:[{type:"object",model:"object",schema:{fields:me.values.fields.map($e=>{const se=Object.keys($e)[0];return{model:se,type:"input",label:f(se),placeholder:se,inputType:$e[se].type}})}}]});return O}if(me.enum&&me.type==="array"&&(O[ge].type="checklist",O[ge].values=me.enum,O[ge].multi=!0,O[ge].multiSelect=!0),me.one_of&&me.type!=="array"&&(O[ge].type="select",O[ge].values=me.one_of,O[ge].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),me.elements&&me.type==="array"){const $e=me.elements;if(O[ge].referenceable=$e.referenceable,O[ge].elements=$e,["string","integer","number"].includes($e.type)&&!$e.one_of){const{id:se,help:_e,label:ce,hint:pe,values:we,referenceable:Se,model:Oe}=O[ge],{inputAttributes:Re,...Me}=JSON.parse(JSON.stringify(Ve));Re.type=$e.type==="string"?"text":"number",O[ge]={id:se,help:_e,label:ce,hint:pe,values:we,referenceable:Se,model:Oe,inputAttributes:Re,...Me}}}if(me.hint&&(O[ge].hint=me.hint),be&&!be.overwriteDefault&&Object.keys(be).forEach($e=>{if($e===ge){const{help:se,label:_e,hint:ce,values:pe,referenceable:we,elements:Se}=O[ge],{help:Oe,...Re}=be[$e];O[ge]={help:se,label:_e,hint:ce,values:pe,referenceable:we,elements:Se,...Re},typeof Oe=="string"&&(O[ge].help=Ir.marked.parse(Oe,{mangle:!1,headerIds:!1}))}}),me.type==="array"&&((st=me.elements)==null?void 0:st.type)==="record"&&Array.isArray(me.elements.fields)){let $e={};for(const _e of me.elements.fields)$e={...$e,..._e};const se=(Ct=(pt=(Ye=O[ge])==null?void 0:Ye.items)==null?void 0:pt.schema)==null?void 0:Ct.fields;if(Array.isArray(se))for(const _e of O[ge].items.schema.fields){const ce=(mt=$e[_e.model])==null?void 0:mt.description;_e.help===void 0&&typeof ce=="string"&&(_e.help=Ir.marked.parse(ce,{mangle:!1,headerIds:!1}))}if(se||(O[ge].type="array",O[ge].newElementButtonLabelClasses="kong-form-new-element-button-label",O[ge].fieldClasses="array-card-container-wrapper",O[ge].itemContainerComponent="FieldArrayCardContainer",O[ge].items={type:"object",schema:{fields:Object.values(X(ge,me.elements,{},!0))}},O[ge].items.schema.fields.forEach(_e=>{var ce,pe;for(const we of me.elements.fields){const Se=Object.keys(we)[0],Oe=((pe=(ce=_e.id)==null?void 0:ce.split)==null?void 0:pe.call(ce,"-"))??[];if(Oe[Oe.length-1]===Se){_e.model=Se,_e.label=c(Se);break}}}),me.elements.type==="record"&&(O[ge].nestedFields=!0)),!O[ge].nestedFields)O[ge].items.default=()=>me.elements.fields.reduce((_e,ce)=>{const pe=Object.keys(ce)[0];return _e[pe]=ce[pe].default,_e},{});else{const _e=(ce,pe)=>{if(ce.type==="object"){ce.model&&(pe[ce.model]={});for(const we of ce.schema.fields)_e(we,ce.model?pe[ce.model]:pe)}else ce.model&&(pe[ce.model]=ce.default)};O[ge].items.default=()=>{const ce={};return _e(O[ge].items,ce),ce}}}if(w.value&&ke){for(let $e=0;$e<ke.length;$e++)if(ke[$e][ge]){O[ge]={...O[ge],...ke[$e][ge]};break}}if(me.required&&me.type!=="boolean"&&(O[ge].required=!0,O[ge].selectOptions={hideNoneSelectedText:!0}),me.required&&me.type==="boolean"&&(O[ge].default=me.default??!1),me.default!=null&&typeof me.default!="object"&&me.default!=="function"&&(O[ge].default=me.default),O[ge].type==="input"){["string","number"].includes(typeof O[ge].default)&&r.config.app==="konnect"&&(O[ge].placeholder=`Default: ${O[ge].default===""?"<empty string>":O[ge].default}`);const{type:$e}=me.elements||{};$e&&(O[ge].valueArrayType=$e==="integer"?"number":$e),O[ge].inputType=me.type==="array"||me.type==="string"?me.encrypted?"password":"text":me.type}let ot="string";me.enum?ot=te(me.enum):me.type==="boolean"?ot="boolean":me.type==="number"||me.type==="integer"?(ot="number",O[ge].inputType="number"):me.type==="array"?(ot="array",O[ge].default=me.default,me.len_min>0&&(O[ge].submitWhenNull=!0)):me.type==="foreign"?ot="object":me.default&&Array.isArray(me.default)?(ot="array",O[ge].valueArrayType=te(me.default)):me.default&&(ot=typeof me.default),O[ge].valueType=ot,me.fieldNameHasDashes&&(O[ge].fieldNameHasDashes=!0)}),O},D=()=>{var ge,ot,Sn,vn,st,Ye,pt,Ct,mt,$e,se,_e;const I=((ge=Gt[r.pluginType])==null?void 0:ge.scope.includes(H.PluginScope.SERVICE))??!0,M=((ot=Gt[r.pluginType])==null?void 0:ot.scope.includes(H.PluginScope.ROUTE))??!0,O=((Sn=Gt[r.pluginType])==null?void 0:Sn.scope.includes(H.PluginScope.CONSUMER))??!0,oe=r.config.disableConsumerGroupScope?!1:((vn=Gt[r.pluginType])==null?void 0:vn.scope.includes(H.PluginScope.CONSUMER_GROUP))??!0,ne=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Ye=(st=b.value)==null?void 0:st.consumer)!=null&&Ye.id),be=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((Ct=(pt=b.value)==null?void 0:pt.consumer_group)!=null&&Ct.id),ke=r.config.entityType==="services"&&!!r.config.entityId||!!(($e=(mt=b.value)==null?void 0:mt.service)!=null&&$e.id),de=r.config.entityType==="routes"&&!!r.config.entityId||!!((_e=(se=b.value)==null?void 0:se.route)!=null&&_e.id),Ne=[],Pe=(ce,pe,we)=>ce?a("plugins.form.disable_source_scope_change",{scope:we}):pe?a("plugins.form.disable_data_retrieving",{scope:we}):"",me=ce=>{var pe,we;return((we=(pe=r.scopedEntitiesPermissions)==null?void 0:pe[ce])==null?void 0:we.canRetrieve)===!1};if(I){const ce=me("service"),pe="services",we=ke&&r.disableScopeSelection;Ne.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:pe,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:we||ce,disabledTooltip:Pe(we,ce,pe)})}if(M){const ce=me("route"),pe="routes",we=de&&r.disableScopeSelection;Ne.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:pe,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:we||ce,disabledTooltip:Pe(we,ce,pe)})}if(O){const ce=me("consumer"),pe="consumers",we=ne&&r.disableScopeSelection;Ne.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:pe,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:we||ce,disabledTooltip:Pe(we,ce,pe)})}if(oe){const ce=me("consumer_group"),pe="consumer_groups",we=be&&r.disableScopeSelection;Ne.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:pe,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:we||ce,disabledTooltip:Pe(we,ce,pe)})}if(Ne.length){const ce=[...I?["service"]:[],...M?["route"]:[],...O?["consumer"]:[],...oe?["consumer_group"]:[]],we=ce.splice(ce.length-2,2).map(Oe=>a(Oe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Oe}.plural`)).join(`${ce.length>0?",":""} and/or `),Se=["Specific",[...ce.length>0?[ce.map(Oe=>a(Oe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Oe}.plural`)).join(", ")]:[],we].join(", ")].join(" ");G.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Se,fields:[]}),G.selectionGroup.fields[1].fields=Ne}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(G,l[r.pluginType].formSchema)},U=t.computed(()=>!u(v.fields,x,!0)),A=t.computed(()=>!ee.value&&!N.value&&(_.value===ye.EntityBaseFormType.Create||U.value)),T=t.ref(!1),K=t.ref(),z=I=>{r.credential&&I.password&&(I.password=""),v.fields.id=(I==null?void 0:I.id)||void 0,K.value=I==null?void 0:I.ordering,Object.assign(x,v.fields),b.value=I,T.value=!0},J=t.ref({}),Q=I=>{var M;v.fields=I.model,v.fields.id=((M=b.value)==null?void 0:M.id)||void 0,Object.assign(x,I.originalModel),J.value=I.data,r.isWizardStep&&o("model-updated",{model:v.fields,data:I.data,resourceEndpoint:j.value})},ie=t.ref(new Map),he=t.computed(()=>[v.clientErrorMessage,v.serverErrorMessage].filter(Boolean).join("; ")),Z=I=>{I.valid?ie.value.delete(I.model):ie.value.set(I.model,I.error),v.clientErrorMessage=[...ie.value.entries()].map(([M,O])=>`${M}: ${typeof O=="string"?O:d(O)}`).join("; "),v.clientErrorMessage&&(v.serverErrorMessage="")};t.watch([P,T],(I,M)=>{const O=I[0]!==M[0],oe=I[1],ne=M[1];if(!w.value&&_.value===ye.EntityBaseFormType.Edit&&(O||oe&&oe!==ne)){const be=X("config",S.value,G);fe.value&&(be._isCustomPlugin=!0),E.value&&(be._supported_redis_partial_type=E.value),g.value=be}},{deep:!0});const re=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},le=t.computed(()=>{const I=r.config.entityType&&r.config.entityId&&!r.developer,M=w.value?Ze.form[r.config.app].credential[_.value]:Ze.form[r.config.app][_.value][I?"forEntity":"all"];let O=`${r.config.apiBaseUrl}${M}`;return r.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),O=O.replace(/{resourceEndpoint}/gi,j.value),O=O.replace(/{id}/gi,r.pluginId),O=O.replace(/{entityType}/gi,r.config.entityType||""),O=O.replace(/{entityId}/gi,r.config.entityId||""),O}),fe=t.computed(()=>!Object.keys(Gt).includes(r.pluginType)),ue=t.computed(()=>{const I=J.value;if(w.value){for(const M in H.PluginScope){const O=H.PluginScope[M];I[O]&&!I[O].id&&(I[O]={id:r.config.entityId})}delete I.created_at}return J.value.partials&&C.value&&td(I,C.value),I}),$=t.computed(()=>{const{__ui_data:I,...M}={...ue.value};return M}),B=async()=>{if(!v.clientErrorMessage&&!r.isWizardStep)try{v.isReadonly=!0;let I;const M=JSON.parse(JSON.stringify(ue.value)),O=l[r.pluginType];typeof(O==null?void 0:O.shamefullyTransformPayload)=="function"&&O.shamefullyTransformPayload({originalModel:x,model:v.fields,payload:M,schema:g.value}),_.value==="create"?I=await p.post(le.value,M):_.value==="edit"&&(I=r.config.app==="konnect"||E.value&&M.partials?await p.put(le.value,Object.assign({ordering:K.value},M)):await p.patch(le.value,M)),Object.assign(x,v.fields),o("update",I==null?void 0:I.data)}catch(I){v.serverErrorMessage=d(I),o("error",I)}finally{v.isReadonly=!1}},F=t.computed(()=>{var oe;const I=w.value?(oe=io[r.pluginType])==null?void 0:oe.schemaEndpoint:r.pluginType,M=w.value?Ze.form[r.config.app].credentialSchema:Ze.form[r.config.app].pluginSchema;let O=`${r.config.apiBaseUrl}${M}`;return r.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),O=O.replace(/{plugin}/gi,I),O}),R=t.ref(""),ee=t.ref(!1),q=t.ref("");return t.onBeforeMount(async()=>{var I,M,O,oe;ee.value=!0;try{if(w.value&&r.config.app==="konnect"){const ne=(I=io[r.pluginType])==null?void 0:I.schemaEndpoint,be=Ig[ne];R.value=ne,g.value=X("",be,{}),ee.value=!1}else{const ne=r.schema??(await p.get(F.value)).data;if(y.value=ne,ne)if(w.value)g.value=X("",ne,{}),ee.value=!1;else{const be=ne.fields.find(de=>de.config);S.value=be?be.config:ne,ne.supported_partials&&(E.value=Object.keys(ne.supported_partials).find(de=>[Tr.REDIS_CE,Tr.REDIS_EE].includes(de)),C.value=(M=ne.supported_partials[E.value])==null?void 0:M[0]),D();const ke=(O=ne.fields.find(de=>de.protocols))==null?void 0:O.protocols;if(ke){const{default:de=[],elements:Ne={}}=ke;G.protocols.default=de,G.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:de.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(oe=Ne.one_of)!=null&&oe.length&&(G.protocols.values=Ne.one_of.map(Pe=>({label:Pe,value:Pe})))}if(T.value||_.value===ye.EntityBaseFormType.Create){const de=X("config",S.value,G);E.value&&(de._supported_redis_partial_type=E.value),fe.value&&(de._isCustomPlugin=!0),g.value=de}}}}catch(ne){console.error(ne),q.value=d(ne),o("error:fetch-schema",ne)}finally{ee.value=!1}}),(I,M)=>{const O=t.resolveComponent("KSkeleton"),oe=t.resolveComponent("KEmptyState"),ne=t.resolveComponent("KButton"),be=t.resolveComponent("KTabs"),ke=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",$M,[ee.value?(t.openBlock(),t.createBlock(O,{key:0,type:"form"})):q.value?(t.openBlock(),t.createBlock(oe,{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(ye.EntityBaseForm),{key:2,"can-submit":A.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ye.SupportedEntityType).Plugin,"error-message":he.value,"fetch-url":k.value,"form-fields":ue.value,"is-readonly":v.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:re,"onFetch:error":M[4]||(M[4]=de=>I.$emit("error",de)),"onFetch:success":z,onLoading:M[5]||(M[5]=de=>I.$emit("loading",de))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",BM)):(t.openBlock(),t.createBlock(OM,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",VM,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ne,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:M[3]||(M[3]=de=>Y())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(ne,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:v.isReadonly,onClick:re},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(ne,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!A.value||v.isReadonly,type:"submit",onClick:B},{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:B},null,32),t.createVNode(PM,{config:e.config,credential:w.value,editing:_.value===t.unref(ye.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":P.value,"raw-schema":y.value,record:b.value,schema:g.value,onGlobalAction:M[0]||(M[0]=(de,Ne)=>I.$emit("globalAction",de,Ne)),onLoading:M[1]||(M[1]=de=>N.value=de),onModelUpdated:Q,onShowNewPartialModal:M[2]||(M[2]=de=>I.$emit("showNewPartialModal",de)),onValidityChange:Z},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","engine","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(ke,{"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:Y},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(be,{"data-testid":"form-view-configuration-slideout-tabs",tabs:V.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ye.JsonCodeBlock),{config:e.config,"entity-record":$.value,"fetcher-url":le.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ye.YamlCodeBlock),{"entity-record":$.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ye.TerraformCodeBlock),{"credential-type":R.value,"entity-record":$.value,"entity-type":t.unref(ye.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-b9713619"]]),DM={class:"kong-ui-entities-plugins-list"},MM={class:"button-row"},LM={class:"name-cell-wrapper"},FM={class:"info-wrapper"},UM={key:0,class:"info-name"},KM={key:1,class:"info-name"},jM={key:2,class:"info-type"},GM={key:1},qM=ve(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 R,ee;const o=Fe.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Fe.useI18n(),l=no.useRouter(),{axiosInstance:s}=ye.useAxios((R=i.config)==null?void 0:R.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ye.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var q;return((q=i.config)==null?void 0:q.entityType)==="consumers"}),m=t.computed(()=>{var q;return((q=i.config)==null?void 0:q.entityType)==="consumer_groups"}),h=i.config.app==="konnect"||ye.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),_=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),y={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(ee=i.config)!=null&&ee.entityId||(y.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),y.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(y.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),y.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const g=y,w=t.computed(()=>{var ae,I,M,O;let q=i.config.entityType?`${i.config.apiBaseUrl}${Ze.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Ze.list[i.config.app].all}`;return i.config.app==="konnect"?q=q.replace(/{controlPlaneId}/gi,((ae=i.config)==null?void 0:ae.controlPlaneId)||""):i.config.app==="kongManager"&&(q=q.replace(/\/{workspace}/gi,(I=i.config)!=null&&I.workspace?`/${i.config.workspace}`:"")),q.replace(/{entityType}/gi,((M=i.config)==null?void 0:M.entityType)||"").replace(/{entityId}/gi,((O=i.config)==null?void 0:O.entityId)||"")}),b=t.ref(""),S=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:y.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:{...y.enabled,label:a("search.filter.field.enabled")},name:y.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:C,fetcherCacheKey:N}=ye.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),x=()=>{b.value=""},v=()=>{N.value++},V=t.ref(null),L=q=>{var I,M,O,oe;const ae=[];return((I=q.route)!=null&&I.id||q.route_id)&&ae.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((M=q.service)!=null&&M.id||q.service_id)&&ae.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((O=q.consumer)!=null&&O.id||q.consumer_id)&&ae.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((oe=q.consumer_group)!=null&&oe.id||q.consumer_group_id)&&ae.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),ae.length?ae:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},k=async(q,ae)=>{var I;return q===null?!1:await((I=i.canRetrieveScopedEntity)==null?void 0:I.call(i,q,ae.id))},Y=(q,ae)=>{var M,O,oe,ne,be;let I=null;switch(q){case"route":I=(M=ae.route)==null?void 0:M.id;break;case"service":I=(O=ae.service)==null?void 0:O.id;break;case"consumer":I=(oe=ae.consumer)==null?void 0:oe.id;break;case"consumer_group":I=(ne=ae.consumer_group)==null?void 0:ne.id;break}I&&((be=i.config)!=null&&be.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(q,I))},P=t.ref(!1),G=t.ref(null),j=t.computed(()=>{const q={action:"disable",id:"",name:""};if(G.value){const{enabled:ae,id:I,name:M}=G.value;q.action=ae?"disable":"enable",q.id=I,q.name=o.getDisplayName(M)||I}return q}),te=q=>{P.value=!0,G.value=q},X=()=>{P.value=!1,G.value=null},D=async()=>{var M,O,oe,ne,be,ke,de,Ne;if(!await((M=i.canEdit)==null?void 0:M.call(i,G.value))||!G.value)return;let ae=`${i.config.apiBaseUrl}${(be=Ze.item[i.config.app])==null?void 0:be[(O=i.config)!=null&&O.entityType?"forEntity":"all"].replace(/{entityType}/gi,((oe=i.config)==null?void 0:oe.entityType)||"").replace(/{entityId}/gi,((ne=i.config)==null?void 0:ne.entityId)||"")}`.replace(/{id}/gi,G.value.id||"");i.config.app==="konnect"?ae=ae.replace(/{controlPlaneId}/gi,((ke=i.config)==null?void 0:ke.controlPlaneId)||""):i.config.app==="kongManager"&&(ae=ae.replace(/\/{workspace}/gi,(de=i.config)!=null&&de.workspace?`/${i.config.workspace}`:""));const I=!G.value.enabled;try{const{data:Pe}=((Ne=i.config)==null?void 0:Ne.app)==="konnect"?await s.put(ae,{...G.value,enabled:I},{timeout:12e4}):await s.patch(ae,{...G.value,enabled:I},{timeout:12e4});r("toggle-enabled",I,Pe),G.value.enabled=I}catch(Pe){r("error",Pe)}},U=async(q,ae)=>{const I=q.id;if(!await ae(I)){r("copy:error",{entity:q,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:q,field:"id",message:a("copy.success",{val:I})})},A=async(q,ae)=>{const I=JSON.stringify(q);if(!await ae(I)){r("copy:error",{entity:q,message:a("errors.copy")});return}r("copy:success",{entity:q,message:a("copy.success_brief")})},T=async q=>{var I;await((I=i.canRetrieve)==null?void 0:I.call(i,q))&&l.push(i.config.getViewRoute(q))},K=q=>({label:a("actions.view"),to:i.config.getViewRoute(q)}),z=q=>({label:a("actions.edit"),to:i.config.getEditRoute(q)}),J=q=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(q)}),Q=t.ref(void 0),ie=t.ref(!1),he=t.ref(!1),Z=t.ref(""),re=ye.useDeleteUrlBuilder(i.config,w.value),le=q=>{Q.value=q,ie.value=!0},fe=()=>{ie.value=!1},ue=async()=>{var q,ae,I;if((q=Q.value)!=null&&q.id){he.value=!0;try{await s.delete(re(Q.value.id)),he.value=!1,ie.value=!1,N.value++,r("delete:success",Q.value)}catch(M){Z.value=((I=(ae=M.response)==null?void 0:ae.data)==null?void 0:I.message)||M.message||a("errors.delete"),r("error",M)}finally{he.value=!1}}},$=()=>{l.push(i.config.createRoute)};t.watch(C,q=>{var ae,I,M;if(q.status===ye.FetcherStatus.Error){V.value={title:a("errors.general")},(M=(I=(ae=q.error)==null?void 0:ae.response)==null?void 0:I.data)!=null&&M.message&&(V.value.message=q.error.response.data.message),r("error",q.error);return}V.value=null});const B=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")}),F=t.ref(!1);return t.onBeforeMount(async()=>{F.value=await i.canCreate(),F.value&&(B.value.title=a("plugins.list.empty_state.title"),B.value.ctaText=a("actions.create"))}),(q,ae)=>{const I=t.resolveComponent("KButton"),M=t.resolveComponent("KEmptyState"),O=t.resolveComponent("KBadge"),oe=t.resolveComponent("KTruncate"),ne=t.resolveComponent("KInputSwitch"),be=t.resolveComponent("KDropdownItem"),ke=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",DM,[t.createVNode(t.unref(ye.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":B.value,"enable-entity-actions":"","error-message":V.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(N),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(g),title:e.title,"title-tag":e.titleTag,onClearSearchInput:x,"onClick:row":ae[4]||(ae[4]=de=>T(de)),onSort:v,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ye.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":ae[0]||(ae[0]=de=>b.value=de),config:S.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",MM,[!u.value&&f.value?(t.openBlock(),t.createBlock(I,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ae[1]||(ae[1]=de=>q.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(I,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.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:de})=>[t.createElementVNode("div",LM,[t.createVNode(t.unref(Ro.PluginIcon),{class:"plugin-icon",name:de.name,size:24},null,8,["name"]),t.createElementVNode("div",FM,[de.instance_name?(t.openBlock(),t.createElementBlock("span",UM,t.toDisplayString(de.instance_name),1)):(t.openBlock(),t.createElementBlock("span",KM,t.toDisplayString(t.unref(o).getDisplayName(de.name)),1)),de.instance_name?(t.openBlock(),t.createElementBlock("span",jM,t.toDisplayString(t.unref(o).getDisplayName(de.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:de})=>[L(de).length>0?(t.openBlock(),t.createBlock(oe,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(L(de),Ne=>(t.openBlock(),t.createBlock(t.unref(ye.PermissionsWrapper),{key:Ne.badgeText,"auth-function":()=>k(Ne.type,de),"force-show":""},{default:t.withCtx(({isAllowed:Pe})=>[t.createVNode(O,{class:t.normalizeClass(Pe||"disabled"),onClick:t.withModifiers(me=>Pe&&Ne.type&&Y(Ne.type,de),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(Ne.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",GM,"-"))]),enabled:t.withCtx(({row:de})=>[t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(de)&&await e.canToggle(de)),"force-show":""},{default:t.withCtx(({isAllowed:Ne})=>{var Pe,me;return[t.createElementVNode("div",{onClick:ae[3]||(ae[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(ne,{disabled:!Ne,"disabled-tooltip-text":!Ne&&((me=(Pe=e.config).getToggleDisabledTooltip)==null?void 0:me.call(Pe,de))||void 0,"model-value":de.enabled,onClick:t.withModifiers(ge=>Ne&&te(de),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:de})=>[t.createVNode(O,{appearance:t.unref(Jc)(de)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Jc)(de)?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:de})=>[t.createVNode(t.unref(ye.TableTags),{tags:de},null,8,["tags"])]),actions:t.withCtx(({row:de})=>[t.createVNode(ke,null,{default:t.withCtx(({copyToClipboard:Ne})=>[t.createVNode(be,{"data-testid":"action-entity-copy-id",onClick:Pe=>U(de,Ne)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(ke,null,{default:t.withCtx(({copyToClipboard:Ne})=>[t.createVNode(be,{"data-testid":"action-entity-copy-json",onClick:Pe=>A(de,Ne)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(de)},{default:t.withCtx(()=>[t.createVNode(be,{"data-testid":"action-entity-view","has-divider":"",item:K(de)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canEdit(de)},{default:t.withCtx(()=>[t.createVNode(be,{"data-testid":"action-entity-edit",item:z(de)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(ye.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(de)},{default:t.withCtx(()=>[J(de)?(t.openBlock(),t.createBlock(be,{key:0,"data-testid":"action-entity-config-dyn-order",item:J(de)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canDelete(de)},{default:t.withCtx(()=>[t.createVNode(be,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:Ne=>le(de)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var de;return[t.createVNode(M,{"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:t.unref(a)("plugins.list.empty_state_v2.description"),title:t.unref(a)("plugins.list.empty_state_v2.title")},t.createSlots({icon:t.withCtx(()=>[t.createVNode(t.unref(xe.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[F.value?(t.openBlock(),t.createBlock(I,{key:0,"data-testid":"entity-create-button",onClick:$},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(I,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ae[2]||(ae[2]=Ne=>q.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(de=e.config)!=null&&de.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","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(ye.EntityToggleModal),{action:j.value.action,"entity-id":j.value.id,"entity-name":j.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":D,visible:P.value,onCancel:X,onProceed:X},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ye.EntityDeleteModal),{"action-pending":he.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(ye.EntityTypes).Plugin,error:Z.value,title:t.unref(a)("delete.title"),visible:ie.value,onCancel:fe,onProceed:ue},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-582a936c"]]),zM={class:"plugin-select-card-wrapper"},HM=["data-testid"],YM={class:"plugin-card-header"},WM={class:"plugin-card-title"},XM={key:0,class:"plugin-card-actions"},ZM=["data-testid","title"],JM={key:0,class:"plugin-card-text"},QM={key:0},e2=["title"],Is=ve(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=no.useRouter(),{i18n:{t:a}}=Fe.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===H.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},_=(g,w)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(g,w))},y=()=>{if(!s.value&&r.config.app==="konnect"){const g=r.config;p.value&&g.createCustomRoute?i.push(g.createCustomRoute):m.value&&d()}};return(g,w)=>{const b=t.resolveComponent("KButton"),S=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",zM,[t.createVNode(C,{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]=N=>s.value||m.value?void 0:f())},[t.createElementVNode("div",YM,[t.createElementVNode("div",WM,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",XM,[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(xe.MoreIcon),{size:t.unref(wd)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(S,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(N=>_(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(S,{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:y},[t.createVNode(t.unref(Ro.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",JM,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",QM,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,e2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,ZM),t.createElementVNode("div",{class:"plugin-card-footer",onClick:y},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,HM)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),t2=ve(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}}=Fe.useI18n(),{getMessageFromError:l}=ye.useErrors(),{axiosInstance:s}=ye.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var _;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((_=o.plugin)==null?void 0:_.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 _=o.plugin.customPluginType==="streaming"?Ze.select[o.config.app].streamingCustomPluginItem:Ze.select[o.config.app].schemaCustomPluginItem;let y=`${o.config.apiBaseUrl}${_}`;return y=y.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),y=y.replace(/{pluginId}/gi,o.plugin.id),y}return null}),m=async()=>{var _,y,g,w;if(d.value=!0,f.value="",!(!((_=o.plugin)!=null&&_.name)||((y=o.config)==null?void 0:y.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:S}=b;(S==null?void 0:S.status)===400&&((w=(g=S.data)==null?void 0:g.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(_,y)=>{const g=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ye.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(ye.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:y[0]||(y[0]=b=>_.$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:y[2]||(y[2]=b=>_.$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(g,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:y[1]||(y[1]=b=>_.$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"]]),n2={class:"custom-plugins-grid"},o2={class:"empty-state-title"},r2={class:"empty-state-description"},Ps=310,i2=ve(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}}=Fe.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Fe.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))[H.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:H.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(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 C;E&&(r("revalidate"),r("delete:success",((C=u.value)==null?void 0:C.name)||"")),f.value=!1,u.value=null},h=t.ref(Ps),_=t.ref(null),y=t.ref(null),g=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),w=t.ref(!1),b=()=>{h.value=Math.max(a(y.value),Ps),S()},S=()=>{var E,C;(E=y.value)!=null&&E.length&&(w.value=l(_.value,(C=y.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(y.value),Ps),S(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(E,C)=>{const N=t.resolveComponent("KEmptyState"),x=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",n2,[d.value.length?(t.openBlock(),t.createBlock(x,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=v=>s.value=v),class:"custom-plugins-collapse","data-testid":`${t.unref(H.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(H.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:_,class:"plugin-card-container",style:t.normalizeStyle(g.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(v,V)=>(t.openBlock(),t.createBlock(Is,{key:`plugin-card-${V}`,ref_for:!0,ref_key:"pluginCardRef",ref:y,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:v,onCustomPluginDelete:L=>p(v),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(()=>[C[2]||(C[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(N,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",o2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",r2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(t2,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:C[1]||(C[1]=v=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Ts=310,dg=ve(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}}=Fe.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Fe.usePluginHelpers(),c=t.ref(Ts),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),Ts),h()},h=()=>{var _,y;(_=f.value)!=null&&_.length&&(p.value=s(d.value,(y=f.value)==null?void 0:y.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),Ts),h(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(_,y)=>{const g=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(g,{modelValue:o.value,"onUpdate:modelValue":y[0]||(y[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(Is,{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(()=>[y[1]||(y[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),a2={class:"plugin-select-grid"},l2={class:"empty-state-title"},s2={class:"empty-state-description"},Os=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}}=Fe.useI18n(),a=t.ref(!1),l=t.ref(Ds),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[H.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",a2,[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",l2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",s2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(dg,{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(Rs),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(dg,{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))])}}}),c2={class:"kong-ui-entities-plugin-select-form"},d2={class:"plugins-filter-input-container"},u2={key:0},f2={key:3,"aria-live":"polite",class:"plugins-results-container"},p2={"data-testid":"kong-tab"},m2={class:"tab-description"},g2={"data-testid":"custom-tab"},h2={class:"tab-description"},y2=ve(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 U;const o=e,r=n,i=no.useRoute(),a=no.useRouter(),{i18n:{t:l}}=Fe.useI18n(),{pluginMetaData:s}=Fe.usePluginMetaData(),{getMessageFromError:c}=ye.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ye.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),_=t.ref([]),y=t.ref([]),g=t.ref({}),w=t.ref([]),{axiosInstance:b}=ye.useAxios((U=o.config)==null?void 0:U.axiosRequestConfig),S=t.computed(()=>g.value?Object.entries(g.value).filter(([A])=>A!==H.PluginGroup.CUSTOM_PLUGINS).reduce((A,[,T])=>{for(const K of T)A[K.id]=K;return A},{}):{}),E=t.computed(()=>{var K;if(!g.value)return{};const A=u.value.toLowerCase(),T=JSON.parse(JSON.stringify(g.value));for(const z in g.value){const J=((K=g.value[z])==null?void 0:K.filter(Q=>Q.name.toLowerCase().includes(A)||Q.id.toLowerCase().includes(A)||Q.group.toLowerCase().includes(A)))||[];J.length?T[z]=J:delete T[z]}return T}),C=t.computed(()=>o.highlightedPluginIds.reduce((A,T)=>{const K=S.value[T];return K&&A.push(K),A},[])),N=t.computed(()=>Object.keys(E.value).length>0),x=t.computed(()=>Object.keys(g.value).length>0&&!N.value),v=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)}]:[]),V=t.computed(()=>{var T;let A=v.value.length&&((i==null?void 0:i.hash)||((T=v.value[0])==null?void 0:T.hash))||"";return A==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(A="#kong"),A}),L=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),..._.value])].filter(A=>!o.ignoredPlugins.includes(A)).filter(A=>o.config.entityType&&(o.config.entityType==="services"&&s[A]&&!s[A].scope.includes(H.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[A]&&!s[A].scope.includes(H.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[A]&&!s[A].scope.includes(H.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[A]&&!s[A].scope.includes(H.PluginScope.CONSUMER))?!1:A).reduce((A,T)=>{var ie;const K=s[T]&&s[T].name||T,z={...s[T],id:T,name:K,available:_.value.includes(T),disabledMessage:"",group:((ie=s[T])==null?void 0:ie.group)||H.PluginGroup.CUSTOM_PLUGINS};z.group===H.PluginGroup.CUSTOM_PLUGINS&&(z.customPluginType=y.value.find(he=>he.name===T)?"streaming":"schema"),o.disabledPlugins&&(z.disabledMessage=o.disabledPlugins[T]);const J=z.group||l("plugins.select.misc_plugins");let Q=A[J];return Q||(Q=[]),Q.push(z),Q.sort(d("name")),A[J]=Q,A},{}),k=t.computed(()=>{var T;let A=`${o.config.apiBaseUrl}${Ze.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=((T=o.config.gatewayInfo)==null?void 0:T.edition)==="community"?`${o.config.apiBaseUrl}${Ze.select[o.config.app].availablePluginsForOss}`:A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A}),Y=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let A=`${o.config.apiBaseUrl}${Ze.select[o.config.app].streamingCustomPlugins}`;return A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),A}return null}),P=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let A=`${o.config.apiBaseUrl}${Ze.list[o.config.app].forEntity}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),G=A=>{a.replace({hash:A,query:i.query})};t.watch(()=>o.disabledPlugins,(A,T)=>{!f(A,T)&&!p.value&&(g.value=L())}),t.watch(()=>o.ignoredPlugins,(A,T)=>{!f(A,T)&&!p.value&&(g.value=L())}),t.watch(p,A=>{r("loading",A)});const j=t.ref(!1),te=t.ref(!1),X=t.ref(!1);t.onBeforeMount(async()=>{j.value=await o.canCreateCustomPlugin(),te.value=await o.canEditCustomPlugin(),X.value=await o.canDeleteCustomPlugin()});const D=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var A,T;(T=(A=D.value)==null?void 0:A.input)==null||T.focus();try{const{data:K}=await b.get(k.value);if(o.config.app==="konnect"){const{names:z}=K;if(_.value=z||[],Y.value){const{data:J}=await b.get(Y.value);y.value=J.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:z}}=K;_.value=z?Object.keys(z):[]}}catch(K){m.value=!0,h.value=c(K)}if(P.value)try{const{data:{data:K}}=await b.get(P.value);if(K!=null&&K.length){const z=K.reduce((J,Q)=>(Q.name&&J.push(Q.name),J),[]);w.value=w.value.concat(z)}}catch{}m.value||(g.value=L()),p.value=!1}),(A,T)=>{const K=t.resolveComponent("KInput"),z=t.resolveComponent("KSkeletonBox"),J=t.resolveComponent("KSkeleton"),Q=t.resolveComponent("KEmptyState"),ie=t.resolveComponent("KTooltip"),he=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",c2,[t.createElementVNode("div",d2,[t.createVNode(K,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":T[0]||(T[0]=Z=>u.value=Z),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",u2,[t.createVNode(z,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(J,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(Q,{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(Q,{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",f2,[v.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(he,{key:0,modelValue:V.value,"onUpdate:modelValue":T[5]||(T[5]=Z=>V.value=Z),"data-testid":"plugins-tabs",tabs:v.value,onChange:G},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",p2,[t.createElementVNode("p",m2,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Os,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:T[1]||(T[1]=Z=>A.$emit("plugin-clicked",Z))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",g2,[t.renderSlot(A.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",h2,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(i2,{"can-create-custom-plugin":j.value,"can-delete-custom-plugin":X.value,"can-edit-custom-plugin":te.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":T[2]||(T[2]=Z=>A.$emit("delete-custom:success",Z)),onPluginClicked:T[3]||(T[3]=Z=>A.$emit("plugin-clicked",Z)),onRevalidate:T[4]||(T[4]=()=>g.value=L())},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(ie,{"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(Os,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:T[6]||(T[6]=Z=>A.$emit("plugin-clicked",Z))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-7b1adaaa"]]),_2={class:"datakit-config-card-canvas"},b2={class:"config-card-details-label","data-testid":"datakit-configuration-label"},w2={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},k2={class:"canvas-wrapper"},C2=ve(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return ju(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",_2,[t.createElementVNode("div",b2,[t.createVNode(r,null,{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",w2,[t.createElementVNode("div",k2,[t.createVNode(Ns,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),E2={class:"kong-ui-entity-plugin-config-card"},N2={class:"name-cell-wrapper"},x2={class:"info-name"},S2={key:0},v2={key:0},A2={key:0},I2={key:0},P2={key:0},$s="config",T2=ve(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 C;const o=n,r=e,{i18n:{t:i}}=Fe.useI18n(),a=Fe.usePluginMetaData(),{setFieldType:l}=Fe.usePluginHelpers(),{getPropValue:s}=ye.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),d=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var x;let N=(x=Ze.item[r.config.app])==null?void 0:x[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const v=r.expandPartial?"&":"?";N=N.concat(`${v}__ui_data=true`)}return N}),u=t.computed(()=>{var v,V;const N={},x=((v=b.value)==null?void 0:v.fields)||[];for(let L=0;L<x.length;L++){const k=b.value.fields[L],Y=(V=Object.keys(k))==null?void 0:V[0];l(N,Y,k[Y])}return{...N,instance_name:{section:ye.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ye.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ye.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ye.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ye.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ye.ConfigurationSchemaType.BadgeTag,section:ye.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var x,v,V;if(!((x=b.value)!=null&&x.fields))return[];const N=(v=b.value.fields)==null?void 0:v.find(L=>{var Y;return((Y=Object.keys(L))==null?void 0:Y[0])===$s});return((V=N==null?void 0:N[$s])==null?void 0:V.fields)||[]}),m=t.computed(()=>{var x,v;const N={};if(!p.value)return N;for(let V=0;V<((x=p.value)==null?void 0:x.length);V++){const L=p.value[V],k=(v=Object.keys(L))==null?void 0:v[0],Y=L[k];Y.required&&(N[k]={order:1}),l(N,k,Y)}return N}),h=N=>{var v;const x=(v=a.pluginMetaData[r.config.pluginType])==null?void 0:v.scope;return x?Object.fromEntries(Object.entries(N).filter(([V,L])=>L?!0:!(V==="service"&&!x.includes(H.PluginScope.SERVICE)||V==="route"&&!x.includes(H.PluginScope.ROUTE)||V==="consumer"&&!x.includes(H.PluginScope.CONSUMER)||V==="consumer_group"&&!x.includes(H.PluginScope.CONSUMER_GROUP)))):N},_=N=>zo(N,"__ui_data"),{getMessageFromError:y}=ye.useErrors(),{axiosInstance:g}=ye.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),w=t.computed(()=>{var x,v;let N=`${r.config.apiBaseUrl}${Ze.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((x=r.config)==null?void 0:x.controlPlaneId)||""):r.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(v=r.config)!=null&&v.workspace?`/${r.config.workspace}`:"")),N=N.replace(/{plugin}/gi,r.config.pluginType),N}),b=t.ref({});ye.useSchemaProvider(b);const S=t.ref(!1),E=t.ref("");return t.onBeforeMount(async()=>{S.value=!0;try{const{data:N}=await g.get(w.value);b.value=N}catch(N){E.value=y(N),o("error:fetch-schema",N)}finally{S.value=!1}}),(N,x)=>{const v=t.resolveComponent("KSkeleton"),V=t.resolveComponent("KEmptyState"),L=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",E2,[S.value?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):E.value?(t.openBlock(),t.createBlock(V,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(E.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ye.EntityBaseConfigCard),{key:2,"code-block-record-formatter":_,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":u.value,"entity-type":t.unref(ye.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":$s,"plugin-config-schema":m.value,"record-resolver":h,"onFetch:error":x[0]||(x[0]=k=>N.$emit("fetch:error",k)),"onFetch:success":x[1]||(x[1]=k=>N.$emit("fetch:success",k)),onLoading:x[2]||(x[2]=k=>N.$emit("loading",k))},t.createSlots({name:t.withCtx(k=>[t.createElementVNode("div",N2,[t.createVNode(t.unref(Ro.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",k),size:24},null,8,["name"]),t.createElementVNode("span",x2,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",k))),1)])]),consumer:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(L,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",S2,"–"))]),route:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",k).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(L,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",v2,"–"))]),service:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",k).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(L,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",A2,"–"))]),consumer_group:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(L,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",I2,"–"))]),partials:t.withCtx(k=>{var Y,P,G,j,te,X,D,U,A;return[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:(P=(Y=t.unref(s)("rowValue",k))==null?void 0:Y[0])==null?void 0:P.id,value:((j=(G=t.unref(s)("rowValue",k))==null?void 0:G[0])==null?void 0:j.id)+((X=(te=t.unref(s)("rowValue",k))==null?void 0:te[0])!=null&&X.name?"/"+((U=(D=t.unref(s)("rowValue",k))==null?void 0:D[0])==null?void 0:U.name):""),type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var T,K;return N.$emit("navigation-click",(K=(T=t.unref(s)("rowValue",k))==null?void 0:T[0])==null?void 0:K.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(L,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"partial-copy-uuid",text:(A=t.unref(s)("rowValue",k))==null?void 0:A[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",P2,"–"))]}),_:2},[d.value?{name:"config-card-item-nodes",fn:t.withCtx(k=>[t.createVNode(C2,{"plugin-data":k.record},null,8,["plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-a5302acb"]]),{usePluginMetaData:O2,useProvideExperimentalFreeForms:$2}=Fe;Object.defineProperty(Ae,"PluginGroup",{enumerable:!0,get:()=>H.PluginGroup}),Object.defineProperty(Ae,"PluginScope",{enumerable:!0,get:()=>H.PluginScope}),Object.defineProperty(Ae,"PluginIcon",{enumerable:!0,get:()=>Ro.PluginIcon}),Object.defineProperty(Ae,"getPluginIconURL",{enumerable:!0,get:()=>Ro.getPluginIconURL}),Ae.EXPERIMENTAL_FREE_FORM_PROVIDER=Ma,Ae.EntityTypeIdField=An,Ae.FEATURE_FLAGS=co,Ae.PLUGIN_GROUPS_COLLAPSE_STATUS=Ds,Ae.PluginConfigCard=T2,Ae.PluginForm=RM,Ae.PluginGroupArray=Rs,Ae.PluginList=qM,Ae.PluginPartialType=Tr,Ae.PluginSelect=y2,Ae.PluginSelectCard=Is,Ae.PluginSelectGrid=Os,Ae.TOASTER_PROVIDER=nd,Ae.pluginEndpoints=Ze,Ae.usePluginMetaData=O2,Ae.useProvideExperimentalFreeForms=$2,Object.defineProperty(Ae,Symbol.toStringTag,{value:"Module"})});